Very interesting survey named: Python Developers Survey 2017 Results was done at the end of 2017 by Python Software Foundation and JetBrains. The survey participents are about 9,500 developers from almost 150 different countries.

Some of the results are expected and other are surprising. This survey is showing trends for Python in 2018 and it's near future. Let's have a look on some of the topics:

  • General Python Usage
  • Types of Development
  • Python 3 Adoption
  • Technologies
  • Tools and Features
  • Developer Profile
  • Raw Data
  • Key Takeaways

Python 3 vs Python 2

The first question for newbies in python world: Python 3 or Python 2? Which one to choose. Now the answer seems to be more clear:

  • Python 3 - 75% used most python 3
  • Python 2 - while 25% use python 2

It's interesting to mention that trend is changing from 60% to 40% for Python 2 in 2016. It seems that the end of life for Python 2 combined with the new features in Python 3 are convicing users to migrate to the newer version. Here you can find more about python 2 end date : PEP 373 -- Python 2.7 Release Schedule

There is difference in the usage of python 2 depending on the profile:

  • Web developers - 30%
  • Data scientists - 20%

It seems that Data Science and Machine Learning adopt Python 3 faster in comparisson to Web Development.

Operating Systems

This one is surprising for me. The results from this survey are:

  • Windows - 49%
  • Linux - 19%
  • MacOS - 15%
  • Other - 17%

Personally I expected the number of Linux users to be higher than this. I'm noticing a migration of many developers from Windows to Linux.

According to the authors of the survey they didn't ask the users but they track the OS used for the survey. Which could corelate to the real results.

Python Tools, Editors, IDEs

Often question in the python groups and comunities is: what is the best IDE for python? If you ask me - personally I prefer PyCharm and IntelliJ with python plugin.

According to the survey:

one thirde of web developers prefer PyCharm Professional Edition:

  • 30% PyCharm Professional Edition
  • 12% PyCharm Community Edition
  • 14% Sublime Text
  • 11% Vim
  • 10% VS Code

While data scientist like more PyCharm Community Edition:

  • 12% PyCharm Professional Edition
  • 17% PyCharm Community Edition
  • 9% Sublime Text
  • 8% Vim
  • 7% IDLE

As a programmer using 3 programming languages:

  • Groovy
  • Python
  • Java

I found that IntelliJ is working best from all the other IDEs or editors that I've tested. It's stable, it has good integration with versioning systems, increase performance and it's faster. So far I'm using the community edition which is free for use.

Python Frameworks, Libraries and Technologies

Taking a look on the libraries and technologies is giving us the following picture:

  • 41% Django
  • 39% NumPy / pandas / Matplotlib / scipy and similar
  • 34% Requests
  • 32% Flask
  • 17% Keras / Theano / TensorFlow / scikit-learn and similar

As it can be expected the numbers are totally different for data scientist and web developers. The segmentation in this section is higher and shows the difference in the work of the two groups of developers.

Employment status

In the beginning of 2018 the employment in python world looks like(according to the survey data):

  • 52% Fully employed by a company / organization
  • 28% Student
  • 7% Freelancer
  • 6% Self-Employed

Big numbers of python seems to be students which is a sign for the future of the language. Accoding to some people(even me) Python will replace Java as the most popular language in the future.

Statistic by Job Role:

  • 73% Developer / Programmer
  • 19% Data analyst
  • 18% Architect
  • 18% Team-Lead
  • 13% Technical Support

Python Installation and Upgrade

The final intersting results is the download source for python. The majority of the users prefer: python.org. Big number use the OS default installation method:

  • 39% Installer from python.org
  • 31% OS-provided Python (via apt-get, yum, homebrew, etc.)
  • 15% Anaconda
  • 7% Build from source
  • 6% pyenv
  • 3% Automatic upgrade via cloud provider
  • 2% ActivePython

Please do share what do you think for the results of this survey in the comment section below.