Stack Overflow is the most popular website that programmers across the world visit for code examples and solution to common programming problems. Stack Overflow works as questions and answers website, where every question is tagged to one or more programming languages.
Python is the fastest-growing major programming language the most visited tag on Stack Overflow.
A question naturally follows why Python is growing so fast. I know Python can be used for many purposes—python app development to data science to DevOps. So can be Java, Perl, Ruby, etc. What sets Python apart for other languages. What is driving the growth?
An initial analysis suggests two major reasons:
- There is a sudden rise of Python usage in web development
- Something else is driving this growth. It could be its application in data science, DevOps or something else entirely.
A versatile language, python
Python is a multipurpose language used for various tasks, such as web development and data science. How could we unravel Python’s current growth across these fields?
We could examine the growth in traffic from notable Python packages. We could compare the web frameworks Django and Flask to the data science packages NumPy, matplotlib, and pandas. I have used Stack Overflow Trends here.
The new python trends
Stack Overflow clearly indicates pandas is clearly the fastest growing Python package. It was introduced only in 2011 but now is responsible for 1% of Stack Overflow question views.
Questions about the data science packages, numpy and matplotlib, have grown considerable over the years while traffic to Django questions has remained steady during that time.
Although Flask is growing, it’s growth is nowhere near those of data science packages of Python.
It is clear the rise of data science is a major driver in the growth of Python as a programming language. But we cannot say for sure if it has beaten Web Development in that metrics.
Top factors driving python ahead in 2018
Now let’s know about the factors which has caused enormous growth of Python in 2018
1. Data science libraries
Data Science is the single biggest reason why everyone is migrating top Python. Data Science offers exciting work along with high pay. Now let us see deep-dive and know about the details the following three Data Science Libraries.
Pandas: Pandas is a software library written for the Python programming language for data manipulation and analysis. In particular, it offers data structures and operations for manipulating numerical tables and time series.
It is free software released under the three-clause BSD license. pandas assumes general familiarity with NumPy.
NumPy: NumPy is a library for the Python programming language, adding support for large, multi-dimensional arrays and matrices, along with a large collection of high-level mathematical functions to operate on these arrays.
pandas is built on top of NumPy and is intended to integrate well within a scientific computing environment with many other 3rd party libraries.
Read more: Unique C# platform for cross platform apps
Matplotlib: Matplotlib is a Python 2D plotting library which produces publication quality figures in a variety of hardcopy formats and interactive environments across platforms.
Matplotlib can be used in Python scripts, the Python and IPython shell, the jupyter notebook, web application servers, and four graphical user interface toolkits.
2. Web development frameworks
Django: jango is a high-level Python Web framework that encourages rapid development and clean, pragmatic design.
Flask: Flask is a Python web framework built with a small core and easy-to-extend philosophy. Flask is considered more Pythonic than Django because Flask web application code is in most cases more explicit.
Flask is easy to get started with as a beginner because there is little boilerplate code for getting a simple app up and running.
3. Machine learning
Machine learning and AI has been a hot topic for the IT industry. We see every IT firm just latching on this new opportunity. Algorithms have become sophisticated as the time has gone.
Google search engine is the most common example as it predicts our searches. This is a huge reason why everyone who is interested in machine learning or AI is learning Python as presently it is the major language which makes the task easy.
4. Simplicity & convenience
Python being a comparatively easier language becomes an easy alternative for beginners to opt for it. It’s obvious that a beginner wouldn’t want to bother itself with the complex codes and syntax of other programming language.
Python is simple as well as readable which gives it an edge over languages such as Java and C++ where the coder has to deal with classpath & compiler problems respectively.
One thing that sets Python apart from other languages is that it serves multiple purposes. Unlike other languages, it can be utilized in more multiple technologies. For example, R is only good in Data Science and Machine Learning.
However, it can’t be of any use when it comes to web development.
On the other, Python can do so many things like creating your web application using Flask and Django, Data analysing using Scikit-Learn, Scipy, NumPy, and NLTK.
6. Large communities
Learning is a long process and it is shortened if you got assistance. Usually, the ones who help are the friends. However, even if you don’t find any friend near your vicinity you can always google your queries.
Apart from being easy Python has huge presence on the internet in the form of communities. These communities play a significant role in imparting knowledge and solving queries of the beginners as well the pros.
Industries that are driving the growth
As per another Stack Overflow trend, the industry with the highest amount of Python traffic (by a substantial margin) is academic world, comprised of schools and universities. Is this because Python is often imparted in UG programs?
Partially, if not completely. Java is also taught to UG students in computer science and related discipline. Python traffic from universities is usual in the summer, not just in the autumn and spring. The same goes for Java. So why is the difference in their periodic trends.
The traffic to Java falls sharply around the time summer while in the case of Python, the fall is more balanced and evident. Java, in fact, is a comparatively a more common subject in UG courses than Python is.
Yet, Python takes a larger share of summer traffic. This points to one thing. Research goes on a university round the year, not just Summer, Spring and fall.
Academic researchers make up a majority of the high traffic to Python from universities. They work around the year. According to a question on Quora: What are currently the hot topics in computer science research?
Read More: How to hire a full stack developer?
answered by Igor Markov, Michigan EECS Prof, who works at Google. Abundant-data applications, algorithms, and architectures is biggest topic of research in computer science.
The other industries
As for the other industries, we’ve saw that Python is prevalent in public sector. It is also the programming language of choice in the electronics and manufacturing industries.
I’m less acquainted with those industries and they make me wonder–why the language hasn’t emerged much in retail or finance sector.
Is Python traffic growing more quickly in some industries than others?
The rise of Python as a programming in the last year has been consistently spread out across industries, at least in the UK and US.
In many of these industries, Java remains the most-used language, but Python is making immense progress. For example, Python second most popular language in finance after Java. An year ago it was nowhere to be seen.
In any case, data science is an exhilarating, rising field, and there’s ample room for numerous languages to prosper. My foremost inference is to cheer developers early in their career to start building skills in data science.
Python is the fastest growing programming language and data science is the fastest growing field in computer science.