November 15, 2022
Despite being a veteran among programming languages, Python still holds the 4th solid position in popularity contests, according to the 2022 Stack Overflow survey.
And it doesn’t come as a surprise.
Thanks to its "multitasking" character, relatively flat learning curve, and many libraries, Python can be used in almost all software development areas. The number and variety of apps developed in Python serve as a case in point, and here’s the proof.
As of 2023, Python also keeps the leading position in terms of popularity in the TIOBE Index, and there is no indication that it could be knocked off the podium any time soon. Why this particular language - despite being considered relatively slow - is so entrenched in its positions?
Python, with its beginning in the early 90s, is a kind of "Jack of all trades" in the programming world. It was designed by Guido Van Rossum in 1991, who was looking for a way to reduce the amount of code with no harm to language readability.
Van Rossum based it on the long-forgotten ABC programming language that he helped create. As the co-author, he was deeply aware of its issues, but he still liked most of its features, so he took the main syntax, fixed the issues, and wrapped it all up in the brand new "Python" name, inspired by Monty Python's Flying Circus. The new language he created was also designed to be easy to learn (thanks to Van Rossum’s involvement with the Computer Programming for Everybody (CP4E) program) and to share with others.
Then, in 1991 Python was released to the open-source community on then freshly-made GitHub. Even though the open-source concept was a very mysterious way of publishing IT stuff those days, Guido took the risk. It turned out to be a bull's eye.
Python's popularity immediately skyrocketed. The developers' community appreciated that Python needed fewer lines of code to express the same concepts compared with Java, C++, and C, which is way more pleasant to work with.
Since then, Python has been updated regularly with new features and supports, the new libraries pop in regularly, and now - with the 3rd version of this language, we are dealing with an entire, robust ecosystem of tools used in a variety of software development areas - machine learning, artificial intelligence, web development, mobile and desktop applications, scientific calculation, computer vision, etc.
Why is Python so popular?
Let's go big. What is the most popular app built with Python? Well, there is Google. Of course, Python is not the only language used in Mountain View, yet it is recognized as one of the key ones, alongside C++ and Java. Python runs on multiple Google internal systems and shows up in many Google APIs, as it best suits the engineering process at Google. Python was the language used, for example, to build Google App Engine. This cloud computing platform enables the creation of scalable web applications using its rich collection of libraries, tools, and frameworks.
When it comes to more popular Python usage, there is YouTube, whose entire site uses Python for different purposes: viewing videos, controlling templates for websites, administering videos, access to canonical data, and many more. Python is everywhere on YouTube, but it is also used in Google AdWords API and many system administration tools for reporting, log analysis, and testing.
Python is also heavily used by Facebook infrastructure teams and is ubiquitous in production engineering, in particular. Not all the code lines of Facebook are written in Python, but still, there is a lot; in fact, Python is the third most favored programming language currently being used at Facebook after PHP and C++.
According to internal company data, it covers over 21 percent of the overall Facebook codebase.
At Netflix, Python handles security issues such as risk classification, security automation, data mining, and cleaning. Python is also the foundation of Netflix's recommendation engine, given its AI focus. What is more, Netflix initially bet on Java as the primary backend-oriented language and later decided to switch to Python and rewrite some Java processes.
It wouldn't be an exaggeration to say that Python is also the heart of the most crucial element of Netflix's architecture: Open Connect, which is responsible for video streaming on the platform.
Python was appreciated at Spotify for similar reasons. It is used on the backend, in security areas, for proprietary content distribution networks (CDN), Open Connect, DevOps, and data analysis.
Moreover, there is a Python-driven module, Luigi, which is used to power the Radio and Discover features and deliver recommendations for users.
Instagram’s architecture evolved, but Python was one of its foundations from the beginning. Before the app got acquired by Facebook, it was just a reasonably simple platform written with Django; a high-level Python web framework praised as fast, secure, and scalable.
Amazon, which also needs no introduction, is very fond of Python. Amazon devs used it for building the recommendation engine, and the recommendations drive its two primary businesses - eCommerce and streaming. The machine learning system written in Python works on a Hadoop database; Python also works as the founding technology of its data analysis solutions.
Pinterest developers chose Python to build their social media platform for collecting and sharing visual content because the technology was already familiar to them. Still, despite Pinterest's codebase being extended and enriched daily with various technologies, a massive part of the platform's source code remains written in Python.
Quora, a well-known QA platform, also chose Python as its primary programming language as the dev team wanted to avoid disliked PHP. The Quora founders considered Java, Scala, and C++ for a while, but ultimately the speed of development spoke for Python.
The founders of the skyrocketing ride-sharing start-up chose between Ruby or Python, but ultimately - even though there is a lot of argument supporting the first one - they went with the latter. Python is considered the language able to perform many heavy calculations, and the Uber app needs to deliver accurate traffic data and arrival times and dynamically calculate pricing and rankings. Also - and it was not a trivial argument - Python was considered way easier to learn. It was a massive advantage in Silicon Valley, where start-ups constantly deal with IT talent shortages.
Lyft, the Uber competitor, is known as a big fan of the Python language, although - just as in the rest of the examples - this language is not the only one used at the company.
Lyft devs use SciPy for fraud detection, Salt for provision hosts, but Python remains a vital part of its architecture.
As we hope to prove with the apps mentioned above, Python remains a vital component of the most demanding software services worldwide, but it doesn't mean that it is reserved for the high name brands. On the contrary, thanks to its popularity, this language is often a first development choice by start-up founders, and Panda's case proves that. This healthcare app was looking for an experienced software house able to wrap its ideas into the most suitable tech stack.
The main challenge was to align a super user-friendly front with an ultra-stable and secure backend. Python was a go-to direction from the beginning as Panda's features include high-quality streaming audio and video data and - as we are talking about healthcare apps - the highest data security standards.
Are you still wondering whether Python is the best foundation for your product? Read on: Panda - Case Study