What Makes Python Popular?

Python has come a long way since it was first introduced in 1991 by Guido van Rossum. In this article, I’ll cover a wide range of things about Python such as statistics related to its usage, its main disadvantage, why it is still popular among developers, and so forth. So, let’s begin.

 

Statistics on Python popularity over time

Python’s popularity is increasing with each passing year, the table below compares Python’s position with 9 other languages’ positions in 2020 to 2019. 

But when did its popularity first started to rise? According to the TIOBE Index,  it has become a language of the year three times since its introduction: in ’07, ’10, and ’18. Moreover, in ’20, it was recognized as the most popular language by the PYPL Index, beating Java, JavaScript, C#, PHP, C/C++, and other well-established technologies.  See below the Python popularity graph over Java & C/C++.

Now, one can easily infer from the statistics above that Python’s popularity is on an upward spiral. Nevertheless, there are still some doubts concerning its leading position among other languages, dictated by a commonly discussed disadvantage.

 

The counterpoint to Python programming popularity

Although, there are multiple reasons why this language is so popular (we’ll soon discuss them in detail), the key one among them is that it is actually good for everything, but despite all that, there is still a significant disadvantage and that is of speed. Below, I list 4 factors that make it slower than other languages.

  • First, it has to abstract memory management, pointers, and other such details of the computer, and for this reason, it loses to many other technologies in terms of speed.
  • Moreover, the code of Python is interpreted at runtime, which down-speeds the process of execution.
  • A dynamically typed language, Python requests the declaration of the variable type like String, Numeric, etc, thus requiring more work from the system. 
  • Finally, the Python GIL (Global Interpreter Lock), works in the way that threads are processed by the interpreter one by one, making multithreading impossible.   

 

So why is this programming language so popular with developers and beneficial to businesses?

Despite its speed issues, Python remains popular in the development community for several good reasons.

  • It is comparatively easy, both in terms of learning and working with it.

Python’s syntax is very similar to English, this makes the code written in Python very simple and easy to read which means even entry-level programmers can learn it with minimum efforts. Moreover, Python generally needs much shorter lines of code than, say, C++, and in this way, it becomes a more efficient solution for development.

So, no matter what sort of operation you want to perform, Python will take less time and effort as compared to other programming languages, thus making the development process more productive.

  • The speed of applications written in this programming language does not negatively affect user experience.

Let me tell you of my own experience, I as an end-user don’t care if the application takes some time to execute (unless of course, it takes hundreds of years). In comparison to apps written in other programming languages, the speed of those written in Python differs in milliseconds. But even if the execution takes too long, and there are concerns about UX, this issue can be easily solved with horizontal scaling.

  • It allows businesses to enjoy faster time-to-market.

Today, almost all modern computers have multi-core processors, due to which the execution speed and performance issues have taken a back seat with the business speed on the front. Moreover, as mentioned above, the issue of execution speed can be fixed with horizontal scaling, while human costs can’t. Also mentioned above is that it takes less time and effort to develop with Python. All-in-all, it allows companies to enjoy faster time-to-market, increases their business speed, and improves competitiveness.

  • It’s suitable for almost all sorts of projects.

In most situations, the suitability of the programming language for the project is of higher importance than speed. This language comes with a wide range of frameworks and libraries thus enabling you to develop solutions that perfectly suit the needs of both enterprise-level and small scale businesses. Furthermore, Python has a very large community, so finding and hiring Python developers is quite easy: both for development and maintenance purposes. 

  • Why is Python so popular today? Mind the key reasons

As mentioned above, almost any sort of system or application can be developed using Python, and this is one of the primary reasons behind its popularity. Let’s take a look at the top solutions that can be developed using this language.

  • IoT (Internet of Things)

When it comes to IoT, Java still sits at top of the stack, but Python has also started to gain traction in recent times, mostly because of the rising trend for connected devices and related software solutions. From sensors to displays and robots, the language opens up space for the creation of code that ensures communication between all sorts of devices (most if not all), as well as allows sending and receiving data through Internet, Bluetooth, and other different communication channels. Moreover, developers can also use Micropython, which not only offers the advantage of extra simplicity but also significantly speeds up the development.

  • Data science and AI-based applications

I don’t think at the moment you’ll find a better option than Python for the development of applications and systems that feature artificial intelligence (AI), and machine learning (ML), as well as cover the needs of data science. In contrast to R (widely used in data science), Python is far more robust and comes with a wide range of built-in libraries that perfectly fit the needs of data science. 

  • Web application development

The advantages of this language also extend to web development purposes. For instance, instead of opting for Java, Node.js, and .NET, you can go for Python for the creation of web servers. Moreover, it is possible to take advantage of the Flask (a micro web framework written in Python) for system design, as well as Django (a Python-based free and open-source web framework) for structuring and prototyping.

 

Final Words…

As you can see, there are enough strong reasons behind the popularity of this language, as well as why you should use it as the key technology for your project. But still, it should not be considered as a programming panacea, because there are tons of projects that are better to be developed with other programming languages. The point of this article is that we should not underestimate the potential and value of Python, I hope you’ve got the point.

That’s all folks!