Who is using Python? Every year, JetBrains (makers of the popular PyCharm IDE, among other things) partners with the Python Software Foundation to ask Python programmers about themselves, their work, their software projects, and their open-source contributions. The results from the 2024 survey are out, and this week, we'll examine that data.
There are blog posts summarizing the survey from the PSF (https://pyfound.blogspot.com/2025/08/the-2024-python-developer-survey.html) and also from JetBrains, in a guest blog post from Michael Kennedy (https://blog.jetbrains.com/pycharm/2025/08/the-state-of-python-2025/).
But I saw these results and thought... if the data is publicly available, then maybe we can ask our own questions, exploring the data for ourselves? Of course, with a data set this large and rich, we can only explore a small fraction of the possible questions that we might want to ask. So once you're done with this week's questions, consider what else you might want to do with this data.
Data and five questions
The home page for this year's survey results is at https://lp.jetbrains.com/python-developers-survey-2024/. To download the raw data, go to the bottom of the page. and click on the yellow "download survey's raw data" button. That'll take you to a shared Google Drive folder, from which you can download the survey data (in a zipped CSV file), along with a data dictionary, the survey itself, and some other related information.
We'll work with the CSV data file to answer this week's questions.
Learning goals include working with NaN
values, PyArrow, filtering and renaming columns, formatting strings, and plotting with Plotly.
Paid subscribers, including subscribers to my LernerPython+data program, can download the file from the end of this message.
Here are the five tasks and questions; I'll be back tomorrow with my solutions and extended explanations:
- Read the data into a Pandas data frame. Why do get a warning regarding dtypes using the default CSV-loading engine? Why dooes this warning go away if we use the PyArrow engine? For what percentage of respondents is Python their main programming language? Display this number with 2 digits after the decimal point, and a % sign. Why shouldn't we be surprised?
- Produce a bar plot with Plotly express, showing the number of people who use each language other than Python. The language names should be on the x axis. Sort the results by the number of respondents using each language.