Python Dominating the Planet : How a Trivial Side Project Took the World of Programming Languages by Storm ?

Fauzia A.
Nerd For Tech
Published in
12 min readMay 5, 2021

Programmer Guido van Rossum came up with Python because he didn’t like existing programming languages. In an interview with ZDNet, van Rossum told the story of how Python was created, as well as its prospects.

Prologue

In late 1994, a group of programmers from all over the United States gathered to talk about their new secret weapon. Engineer Barry Warsaw was among the participants in the first workshop on the recently introduced Python language. The meeting was attended by about 20 developers, and they were all delighted with the new tool.

Barry recalls the words of one of the workshop participants: “Please do not tell anyone that I was here, let Python be my secret weapon in the competition.” According to Warsaw, already in 1994, it was clear that Python opens up new opportunities for programmers, and that it is easier and more convenient to write code and solve practical problems using this language.

“It’s a combination of readability and fun to work with,” is how Barry Warszawa shares his first impressions of Python.

The participants in the first workshop did not keep the secret. Today, there are far more than 20 Python enthusiasts who celebrated Python in 1994. It is one of the most popular languages, it has good prospects, and Python specialists are in demand in the job market.

Python is a general purpose language. It is applied in various fields, including web development, Machine Learning, Data Science. This language is used by large companies, government organizations, educational institutions. For example, Python is used by NASA, Netflix, and Instagram.

Python: Early Years

Python became popular and in demand as quickly and unexpectedly as the British comic group Monty Python, after which the language was named.

Python was created by programmer Guido van Rossum from the Netherlands. In the late 1980s, Guido worked at the Center for Mathematics and Computer Science in Amsterdam. Van Rossum didn’t like existing programming languages, so he started working on a new one. Guido wanted to make both a simple and powerful instrument.

Guido van Rossum — Creator of Python Programming Language
Python creator Guido van Rossum — ( Photo ) Thanks to wikipedia

To an outside observer, the idea of ​​creating your own programming language may seem similar to the idea of ​​assembling an airplane yourself. However, Guido van Rossum, who was about 30 years old in the late 1980s, did not start from scratch.

For three years at the Center for Mathematics and Informatics, he worked on ABC, an interpreted programming language. Therefore, Guido imagined how to develop a command interpreter and syntax.

It is important to understand the difficulties faced by van Rossum at the end of the 20th century. It ran on the Amoeba operating system, which requires the use of a C or Unix shell. These skins have serious limitations. For example, C requires manual memory management.

It also lacks libraries, so the programmer needs to reinvent the wheel in every project. And the main limitation of the Unix command shell is its low speed, which makes it difficult for a specialist to implement complex logic.

The limitations of these languages ​​were so severe that creating a language of his own did not seem like a crazy idea to van Rossum. “I thought, why not take the best ideas from ABC and create a simpler, more convenient programming language,” recalls Guido van Rossum. He borrowed the name from the Flying Circus comedian Monty Python and began working on the language in late 1989.

“In those days, I rarely left the house, as I mostly watched TV and wrote the code,” says Guido. By the way, van Rossum was in good company. In the late 1980s, the world saw several programming languages ​​that emerged from the dissatisfaction of engineers with the tools that were available to them. This is how Larry Wall created Perl and John Ousterhout developed Tcl.

Within three months, van Rossum created a working Python prototype. Guido says that Python was immediately similar to today’s version of the language, although it lacked the important abstractions that are implemented today.

“All the basic components of the interpreter and language worked, the first simple Python programs probably still work today,” says van Rossum. According to the engineer, functions in the late 1980s were defined the same way, dictionaries and tuples had the same syntax, and the indentation was the same.

Van Rossum’s colleagues immediately started using the first version of Python. But Guido doubted the language would become popular. In the pre-Internet era, when online courses did not exist, it was more difficult to popularize and learn programming languages.

Today, anyone can publish a training course on a specialized platform, for example, on Code Basics, in a few clicks. And in the late 80s and early 90s, it was more difficult to popularize programming languages. Guido van Rossum faced this when he was working on ABC.

“When I first came to the United States around 1985, I had magnetic tape cassettes in my luggage,” says Guido. In his notebook, van Rossum had addresses and phone numbers of people who were interested in ABC. Guido met with them and demonstrated the possibilities of the language with the help of cassettes.

The rise of the Internet helped van Rossum popularize Python without a suitcase of cassettes.

Guido van Rossum introduced Python to the alt. sources newsgroups in 1991. It was actually an open-source project, although the term open source was first used only 6 years later. Usenet users had to download the Python interpreter file overnight. But this was already much more effective than door-to-door trips with cassettes.

Van Rossum received constant feedback from the experts who used Python. He took their suggestions into account while working on new versions of the language.

Why Python Won

By the mid-90s, Python had become a popular programming language. This inspired Guido van Rossum. The specialist believed that other programmers were using Python for the same reason that led Guido to the idea of ​​creating a new programming language. They wanted to work with a high-level language that does not have the limitations of a Unix shell, but at the same time remains simple.

Barry Warszawa argues that Python was already a balanced language in the 90s: simple and convenient on the one hand, and powerful on the other. According to Warsaw, in those days no programming language had such qualities, except for Python.

“I’ve worked with Perl, C, and Tcl, and it didn’t give me pleasure,” says Barry. He continues, “When Python came along, I realized what it meant to enjoy writing code.”

Already in the first years of its existence, Python stood out for its clean and understandable syntax. Grouping blocks of code with indentation attracted programmers in the 90s and attracts them in 2019.

Fintan Ryan, a spokesman for research company Gartner, notes that syntax cleanliness has played almost a major role in popularizing Python.

According to Guido van Rossum, pure Python syntax didn’t come about by accident. Guido stresses that programming is not only about creating instructions for a machine. It is also an exchange of ideas between developers. Therefore, the code should be understandable for people.

In turn, Fintan Ryan emphasizes that Python has offered programmers more than pure syntax since the early 90s. “The language has implemented classes, exception handling, lambda functions, higher-order map and filter functions,” says Fintan.

According to van Rossum, Python might not have appeared if the languages ​​existing in the 1980s were more advanced. Guido liked Perl, but he couldn’t use it on the Amoeba operating system. “If it weren’t for this incompatibility, I would never have thought about creating a new programming language,” says van Rossum.

Python gained popularity and recognition in the mid-90s, but it still lagged behind the most popular languages. Python’s main competitors were Perl and Tcl / Tk. The developers of these languages ​​also strived for ease of use and broad capabilities.

According to the StackOverflow Developer Survey, Python is currently developing faster than other programming languages. Perl has fallen in popularity so much that it does not make it into all the research. The illustration below visualizes the phenomenal rise in popularity of Python.

The Rise in Popularity of Python

How do you explain the different fates of Perl and Python? Guido van Rossum says the secret of Python’s success is how easy it is to code for relatively large applications. “Perl was convenient for programs with 10 lines of code,” Guido recalls.

According to him, when it came to applications with 500 lines of code and thousands of lines of libraries, the programmer required extra effort to maintain such a Perl program. “With Python, there is no such problem, the code remains readable all the time, and the programmer does not have to spend too much time maintaining it,” says van Rossum.

According to van Rossum, in the early to mid-90s, developers needed a tool that allowed them to write large applications without additional effort. Here Python was superior to Perl, C, C ++, and Java.

Guido van Rossum still worked at the Center for Mathematics and Informatics in the mid-90s. But Python had already gained momentum, so Guido spent a lot of time talking with developers from around the world.

Python and the Internet

By the mid-90s, programmers were using Python for a variety of tasks, including programs for creating audio recordings and the first attempts at web development, which later became one of the main areas of use of the language. Guido van Rossum notes that he was very interested in the experience of using Python in web development.

And Fintan Ryan recalls that by using Python, programmers could quickly create complex programs. According to the expert, this language has lowered the threshold for entering development in general and web development in particular. Ryan emphasizes the versatility of Python: “System administrators used the new language to automate systems, and developers loved it for being able to write code in a functional style.” According to Fintan Ryan, Perl was much inferior to Python in this sense.

In 1994, Python was brought to the attention of Michael McLay of the US National Bureau of Standards (NBS). Today this agency is called the National Institute of Standards and Technology. McLay saw the promise of Python in NBS. At the time, the organization had “a lot of data, but not enough programmers to process it,” van Rossum said.

Michael McLay invited Guido van Rossum to work at NBS as a visiting expert from the Center for Mathematics and Computer Science. As conceived by the specialists, this step was to help sell Python to the NBS management. McLay’s decision played an important role in the life of van Rossum and the fate of Python. By the way, the first workshop on this language took place at the NBS office.

Python Most Popular Language. Guido van Rossum, Barry Warsaw, and Roger Masse
Guido van Rossum, Barry Warsaw, and Roger Masse. Credit: Barry Warsaw

At NBS, van Rossum met Bob Kahn, who was involved in the development of the TCP / IP protocol. Kahn invited van Rossum to work for the Corporation for National Research Initiatives (CNRI). It is a non-governmental organization that has been researching and developing information networks. This invitation came in handy since at that time van Rossum was seriously thinking about his future at the Center for Mathematics and Informatics.

According to Guido, the Center for Mathematics and Informatics was a scientific institution, so the leadership put the specialist in front of the need to obtain a Ph.D. degree. Van Rossum preferred to develop Python over scientific research.

In April 1995, Guido van Rossum joined the CNRI team. Here he developed Knowbot software. The team worked in Python. At CNRI, van Rossum collaborated with Jeremy Hilton, Roger Masse, Barry Warsaw, Ken Manheimer, Fred Drake. These people became the core of the Python community and were instrumental in the development of the language.

Together with new friends, Guido van Rossum opened the python.org website. This resource hosted the Python core. The site also helped coordinate the work of specialists who participated in the development of Python.

Already in the second half of the 90s, a large community was formed around Python. To formalize the governance of the language, Guido van Rossum and his friends modeled the Python Software Foundation. This organization was finally formed in 2001. Regular Python workshops have evolved into annual PyCon conferences.

By the beginning of the 21st century, Python was evolving largely thanks to community contributions. Programmers were no longer joking about “what will happen to the language if van Rossum retires due to unforeseen circumstances.” Nevertheless, Guido played a key role in the development of the language. He has even been labeled as a “benevolent dictator.” It perfectly illustrates van Rossum’s commitment to engaging in key Python development issues.

Gartner’s Fintan Ryan emphasizes that the desire of the creator of a language to control its development is normal. Similarly, Perl creators Larry Wall and Node.js creator Ryan Dahl behaved.

Guido van Rossum himself believes that openness has become an important factor in Python’s success. According to him, the key issues of language development have always been discussed in the community.

Python Evolution

Python developed rapidly over the following years. Tectonic changes took place in 2008 when Python 3.0 was introduced.

In 2018, Guido van Rossum left the informal post of benevolent dictator, that is, he ceased to lead the development of the language. This decision is due to the reluctance of the community to implement van Rossum’s proposal to use assignment expressions in Python. Guido believed the new tool would speed up Python. The community felt that assignment expressions would reduce the readability of Python code.

According to van Rossum, he is used to discussing innovations. And he resigned because of the aggressive manner of arguing with some opponents, as well as because of the critics’ personalization.

“It was not a revolution, but I felt that the key people in the community did not trust me,” Guido van Rossum commented on the situation. According to Guido, the debate that led to his resignation was made possible by the popularity of Python.

The community later elected Guido van Rossum, Barry Warsaw, Brett Cannon, Carol Willing, and Nick Coglan to the supervisory board that oversees the development of the language. According to Barry Warsaw, these permutations will help drive the development of Python as the programming language grows in popularity.

Barry Warszawa notes that 25 years ago, Guido van Rossum handled responsibility for the future of Python on his own. “In the current environment, this is too much workload for one person,” says Warsaw.

According to Warsaw, elections to the Supervisory Board will be held after every major Python update. “If we want Python to thrive as well over the next 25 years, it’s young leaders, not Guido and myself, who must manage the process,” Barry Warszawa emphasizes.

Mariatta Vijaya, one of the key members of the community, believes that the situation is developing correctly. “The supervisory board is better at handling language development than one person,” said Mariatta.

The future of Python

The popularity of Python is growing, as of the beginning of autumn 2019, it is one of the most popular programming languages. But experienced community members are already talking about the challenges the language will face in the near future. Python must overcome these challenges in order to remain popular.

For example, at one of the conferences, BeeWare co-founder Russell Keith-Maggie said during a speech that Python would start having serious problems if support for mobile and modern web platforms did not improve soon.

“Almost everyone uses smartphones and tablets, laptops and desktops have never dreamed of such a thing,” says Keith-Maggi. According to him, the Python developer community needs to think about using the language on this type of device.

Russell Keith-Maggie pointed out other issues that require community attention. Among the main ones:

Python testing tools do not work correctly on mobile devices;
installation files for applications on “python” are too “heavy”;
additional efforts are required for the asyncio library to work correctly on different platforms;
many standard library modules cannot be used with interpreters other than CPython.

Barry Warsaw echoes Keith Maggi’s fears. Warsaw believes the Python community should pay attention to the language’s compatibility with tablets and smartphones, as well as modern technologies such as WebAssembly.

Warsaw considers it important to “teach” Python to effectively distribute tasks between processor cores. Barry highlights the important role of the Python interpreters Eric Snow is working on. These interpreters provide the ability to execute Python code on different processor cores.

Python developers are updating the standard library. Recently, the community suggested removing obsolete modules from it. The standard library is considered one of Python’s strengths. Thanks to her, they say about Python that it has “batteries in the kit”. However, the Python Language Summit 2019 actively discussed the possibility of choosing libraries from the PyPl repository. In theory, such a capability would provide programmers with greater freedom in choosing tools.

The Python community is actively discussing the possibility of expanding controls. This step would reflect the diversity of the community members, in particular, its gender and racial makeup. Mariatta Vijaya notes that she would like to bring more people from India and Africa to the PyLadies community.

Barry Warszawa says Python development is largely driven by the community, despite the talk of a benevolent dictatorship. An example of a community-created project that has had a major impact on Python is Type Hints. This tool allows you to check types and reduce errors at runtime. Another example of a community created tool is the asyncio library mentioned above.

Guido van Rossum is also confident that the community will be the main engine for the future development of Python. “We have a very strong community and a new governance system, so we are ready for the challenges that the language will face,” says van Rossum.

Barry Warsaw supports van Rossum: “If anyone doubts the community’s ability to find new ways to use language, look at the first ever snapshot of a black hole.” In early 2019, thanks to programs written in Python, astronomers managed to get a snapshot of a space object.

An adapted and referred from the article “ Python is eating the world: How one developer’s side project became the hottest programming language on the planet “ by Nick Heath.

--

--