Python, recently named Programming Language of the Year 2018, is part of our success story: It forms the foundation of CONTACT's development environment and software stack. Frank Patz-Brockmann, head of development, explains why we are using open source software since the mid-1990s.
Python achieves top positions in all rankings and is more popular than ever. The authors of the TIOBE index can easily justify its choice as programming language of the year 2018: Python is the clear number one in statistics, AI programming, scripting and writing system tests, a leader in web programming and the most widely taught language at universities.
20 years of experience with Python are a great opportunity to get back on track from our pioneering days in the open source field to the present day - together with Frank Patz-Brockmann, who and his team have always proven the right "nose" for future-oriented technologies.
Frank, we have been using Python as a central development tool alongside C++ since 1999. How did this happen?
Early in the 90s, we customized our software with "user exits", usually with separate shell scripts. From our point of view, this was not an optimal solution. That is why we were looking for a programming language that could be embedded in our application. Besides Python, we evaluated other alternatives like Tcl and Perl, and I talked to James Gosling (one of Sun's Java inventors) about possibly using the Java stack. In the end, we opted for Python because of its ease of learning, the openness of the Python community, and the very good integration possibilities in a software product like ours.
Was it also crucial that Python is open source?
That makes it easier on the cost side, but this only played a marginal role. We already had a lot of experience with open source software (OSS) that we used directly in the product or in our development process. One example is the GNU Compiler Collection, which allowed us to use the same C++ compiler on different Unix platforms.
Even then, we understood OSS as a joint investment of many market participants who would not have the same success with certain categories of software alone. Programming languages are an example of this. On the one hand, they have a certain complexity and, on the other hand, they thrive on a strong community behind them: Their members - including us - invest money, time and knowledge in the technology and provide tools, libraries and know-how.
Your understanding of open source was not mainstream at that time, was it?
At least not in breadth. In enterprise IT, and especially in mission-critical applications like CIM Database, OSS was often viewed critically in terms of security and maintenance, and we had to answer many questions.
Easily imaginable! According to a Gartner study, the OSS share in companies in 2005 was still below 10%. Today, things look quite different. What has caused this change?
In the 90s, enterprise IT was the technological avant-garde supplied with more or less proprietary hardware and software from a single source by large corporations such as IBM or Sun. With the Internet, everything has changed: The mega-scaling of companies like Google was neither technically nor economically feasible with conventional providers. The Internet giants have therefore relied on horizontally scalable commodity hardware and open software, and have pushed many innovations. At the same time, companies like Red Hat emerged that base their business model on open software.
Together, these companies have invested many billions in OSS and made the architecture and technology of the Internet the blueprint for today's enterprise applications - with "internal IT" and the Web increasingly merging through the digitization of business models and processes.
What does this mean for our ecosystem?
That we and our customers have backed the right horse! Python is one of the most successful programming languages in the world - for the same reasons that led us to use it 20 years ago: steep learning curve, low entry barriers, excellent integration. In addition, it is the first choice not only for CONTACT in the areas of data science and AI, which we deal with intensively.
In addition to Python, we use numerous other OSS components in-house and in our products and continue to pursue this course consistently. For example, as a member of the Eclipse Foundation, we invest in OSS components for the Internet of Things (IoT), which is dominated by open software.
Proprietary Unix providers no longer exist; instead, our products support Linux and modern deployment technology such as Kubernetes and Containers. This is also becoming increasingly important for companies, because automation increases agility and reduces costs.
Thank you very much for the interview, Frank!