Python Lives: Why This Old School Language Keeps Getting More Popular
Python's been around for a while, but its adoption rates have never ebbed and flowed like we see with other languages. We dive into why that is.
Join the DZone community and get the full member experience.Join For Free
Python is an old mainstay when it comes to programming languages and it is still on top. Python was the “most wanted” language in StackOverflow’s 2018 Developer Survey, and recently received the top rating for a programming language in the IEEE Spectrum ranking. Not only is it the most highly rated, it’s also one of the most versatile languages, applicable to web, enterprise, and embedded systems programming.
Despite the fact that Python has been around longer than Facebook, Google, or even Amazon, the language has retained its popularity over time. In fact, it has found a strong niche in some of the trendiest technology applications, as the preferred language for machine learning and data science capabilities. Technologists currently use Python to do everything from testing microchips to powering Instagram and building video games.
So why has Python done so well while other languages, like Ruby, seem to be losing steam? By answering this question, designers and maintainers of other languages can learn how to draw more users and stand the test of time.
Easy to Use
First up, Python is one of the easiest languages to use, and perhaps more importantly, one of the easiest languages to learn. The original creators got a lot of things right when they built the original edition of the language that made it intuitive. The learning curve for the language is pretty shallow, so new users can feel like they accomplish useful goals earlier in the education process than other languages. This is why Python has replaced Java in a lot of “introduction to programming” courses. And its broad applicability to several different tasks means that developers who are experienced in this language can feel comfortable writing code for several different projects.
While it is safe to say Python never died, it has seen a marked rise in popularity as data science and machine learning technology have taken off. One of my favorite things about PyCon is that half of the attendees use this language for data science instead of web development. The fact that it has taken off so wildly has to do with the strong math fundamentals baked into it. Combined with the low learning curve, Python has become an ideal language for academics and business executives who don’t need to understand deep programming functionality to accomplish their goals. The user base has embraced this use case and developed full libraries with useful data science tools in Python to make it even easier to use. Which brings me to my next point.
Community engagement for Python is off the charts. Some programming language communities see growing their developer base as a zero-sum game, engaging in religious arguments with other communities. But the community behind Python has always focused on building and supporting its own users. It is welcoming to beginners and inclusive. More women and people of color attend and speak at Python events than most other communities. By focusing on supporting the developers who use the language, Python has built a loyal user base that will support it consistently over the years. I have even created a few Python tutorials myself and use my team at Twilio to run a documentation site specifically for Python users on our platform. Twilio’s main API gateway uses Python—everything that happens on our platform goes through this layer of Python—so we decided it was important to give our community the resources to succeed with this language.
All of this is not to say that Python is above repute. Recent changes between Python v2 and v3 sparked controversy amongst users. But overall the Python Software Foundation, which guides Python’s growth, has developed a language that is both capable enough to remain useful as the technology landscape changes, and also easy enough to keep welcoming new generations. Anyone ambitious enough to tackle building a new programming language should follow suit: focus on good design and building a loyal user base.
Opinions expressed by DZone contributors are their own.