Python is the fastest-growing programming language according to software quality company Tiobe which publishes an index of language popularity every month – the ratings are based on the number of skilled engineers worldwide, courses and third-party vendors. It has consistently topped the index month on month and in June 2019 had an all-time high index – predicting that if it keeps its current pace of adoption, it will probably replace C and Java in 3 to 4 years’ time, becoming the most popular programming language in the world.

But what’s driving its adoption and pushing its popularity ratings through the roof? Here we look at the reasons for its meteoric rise and highlight the top five explanations for why we agree that in time it will become the world’s most popular programming language.

Python is Relatively Simple

Python’s ease of learning, understanding and use is its main driver for adoption. It’s simple enough to learn quickly by even those who have little or no experience in software development. That fact alone means that it is the most studied language – 27% of 7,000 respondents to JetBrains’ State of Developer Ecosystem 2019 research had started or continued to learn Python in the last 12 months. It also has many applications – it can be used for web development, writing scripts to automate simple tasks and can analyse data (we’ll come on to that in a moment). In short, its simplicity over other programming languages attracts newcomers and that continues to fuel its future growth.

Code is more often read than written. Making code easy to read (and its intention easy to understand) is one of the intended features of the language. The Python Style Guide reinforces the message that code must be clear, concise and maintainable (“pythonic”).

Developer Productivity

Spyder Idle PyDev VS Code Eclipse

Python makes developers more productive. Thanks to the language features, programmers typically write less boilerplate code in Python than in other programming languages to achieve equivalent results. It also offers developers high-quality development tools, editors, debuggers and IDEs: PyCharm, Microsoft VS Code, Eclipse + PyDev, Atom, IDLE, Spyder, even Thonny distributed with Raspberry Pi.

Python’s Versatility

Python is not only a fully-featured object-oriented programming language, but it is also a versatile cross-platform scripting language. It’s ideal to write admin scripts, or “duct tape” code that binds together applications in a toolchain. It is no surprise it has found a niche in DevOps, testing automation, etc.

Python has wide platform support. Python interpreters are available for almost every major operating system (incl. Windows, Linux, Mac) and computer architecture. It is even available as cloud-based “function as a service” in AWS Lambda, Azure Functions (in tech preview) and Google Cloud Functions.

Open Source and Extensible

Python is Open Source, with zero start-up costs and barriers to entry. Anyone can download the interpreter and development tools and start work! It also a modular and extensible language – hundreds of freely available open-source packages extend Python’s core functionality and are available from public repositories. All a developer has to do is run “pip install”.

There is huge community support and as a result Python recently dethroned JavaScript as the programming language for which most questions are asked (and answered by the community!) in Stack Overflow.

Data Science

NumPy SciKit Learn Pandas Prometheus Keras PyTorch

Extensibility has a further positive side-effect for Python – there are many well-supported libraries for numeric computation, data analysis, machine learning, neural networks, and Big Data transformations: NumPy, Pandas, Scikit-learn, TensorFlow, Keras, PyTorch, PySpark.

According to the same JetBrains survey, around 49% of the 7,000 respondents stated they use Python for data analytics and a further 42% for machine learning. Python developers are in increasing demand due to the rise in AI and machine learning projects, which further cements the notion that the language is very much in the ascendency and will continue to be so for the foreseeable future.

If you’d like to speak to Godel about Python, please email hello@godeltech.com for more information, alternatively, you can call us on 0161 219 8100.