Okay so I am putatively a #Python #ThoughtLeader ™ so perhaps I should go through and give this a non-jokey read-through, and share some impressions: https://lp.jetbrains.com/python-developers-survey-2024/

I really appreciate that they do these every year.

Python Developers Survey 2024 Results

Official Python Developers Survey 2024 Results by Python Software Foundation and JetBrains PyCharm: more than 30k responses from almost 200 countries.

JetBrains: Developer Tools for Professionals and Teams
Starting off with "general python usage", 86% using it as our main language, and 14% as secondary. Nothing surprising there, given that Python is pretty general-purpose, and backend devs are more likely to do some frontend stuff on the side than vice versa.
Similarly, languages used in conjunction with Python are overwhelmingly SQL, JavaScript, and HTML. C/C++ is still scoring further ahead of Rust than I would expect, but that's exactly why I like these surveys, my cohort is all ridiculous bleeding-edge people who are 3-5 years ahead of the main developer ecosystem, so I have a skewed perception.
Interesting in this section that Objective C doesn't show up *at all* but Swift shows up a *little* bit. And Ruby is a similarly vanishingly small proportion. Sad that after all these years we still don't have a high-level langauge FFI that would allow more cultural cross-pollination between such *extremely* similar communities. We have a lot more in common with Ruby than with Rust in terms of runtime semantics.
Next up, 7% decrease in "collaborative development", down to 27%. That's… sad. Not a question I would have even thought to ask, and definitely that is a precipitous YoY decline. I think it speaks to a profound and growing isolation in the community for a whole bunch of reasons, RTO and LLM among them.
Next, 31% of respondents have less than a year of professional coding experience, which … I think speaks to a _wild_ level of growth for Python in the last 5 years, although there are certainly other artifacts in the data that might account for it. This number seems really big to me every year, and we are definitely growing every year, but also… students are probably more likely to have time to answer surveys. (Fill out the survey next time it comes around!)
The next stat is "32% of Pythonistas reported contributing to open source projects" which sounds encouraging when stated like that, but, let's consider that another way to phrase it is "68% of Pythonistas consume, but do not contribute back to, open source projects". That number is not Nice
Of those that do, 78%, 40% documentation, 35% leadership… no complaints there, that all sounds pretty normal. I would like to see more on the docs side (do as I say not as I do) but it's not 99% code / 1% everything else, which is where our sometimes problematic culture can push us to, so this seems almost surprisingly healthy.

Next we see where users learn about new Python stuff, and it's a real good news / bad news situation.

First, the good news: 41% of python users find out from Python.org which is great. It means we have a dis-intermediated first-party comms channel to the community that actually matters. That is great. Getting the word out about changes is *rough* and if that many people are checking Python.org we actually have hope!

But there is also bad news: "AI tools" jumped from 19% to 27% so we are going to have a lot of vibe-coders with _real_ bad (and outdated, thanks to the knowledge cutoff) ideas. Finding new learners and finding ways to get them to stop using ChatGPT is going to be a major challenge going forward. And python.org is down from 44% to 41% so we had better find ways to make it more engaging while we still have a large audience to keep engaged.
Given that YouTube is also so huge, and growing (51%!) we could all take a page from @hynek here and get some more non-beginner content up there. So much of YouTube for Python is just the same "first hour" material, I'm surprised that this number is so big; I wonder if I'm missing some side of the site that these folks are watching.

The work/personal breakdown is a little hard to read, but it's clear that most people who use Python for work are also using it for other stuff, so the ecosystem is still dynamic enough that we are featured prominently on Good Screen and not just on Bad Screen.

Topic application looks about how I'd expect, data science, ML, web dev dominate, lots of academics. Desktop development still going strong, and flat (despite overall growth) at 16! I am always relieved to see a big diversity here.

4% of developers still use python2. but according to the rules of Science, this means that p<0.05 that any given developer uses python2, which means zero developers anywhere use python2. congrats everyone we did it
Also the bell curve around a not-too-old version of python (3.12) is nice to see. People actually seem to be upgrading regularly, which means the pain must be manageable, and we can use features developed more recently than a decade ago, at least in applications if not in libraries we want to see wide adoption for.
If I could get on my https://github.com/glyph/mopup hobbyhorse for a moment, I think that this shows that the majority of users of python are on a version in security support rather than bugfix support, and python.org should *really* ship binary installers for those versions. Most users are on a version that Python is shipping source-only releases for macOS & Windows, which means most users will not get those security updates.
GitHub - glyph/MOPUp: Macintosh Official Python.org Updater

Macintosh Official Python.org Updater. Contribute to glyph/MOPUp development by creating an account on GitHub.

GitHub
Lots of async frameworks in the libraries section. FastAPI is absolutely dominating. This question is strangely framed though. It's "web frameworks" where "requests" is listed among them, as is aiohttp and httpx. I guess those are, sort of, frameworks, and they do "web", but it still seems like a peculiar grouping.
Even though "Twisted" directly is down pretty far in the rankings, we see Scrapy at 12% here (up 1% from last year!) so there's a strong indication that most Twisted users don't even really know that they're using Twisted…

For unit testing, dang, pytest is even more of an 800lb gorilla than I thought. 53%, with the runner-up being "None" at 36% (😬). Quite surprised to see Tox down at 5% and Nox not even visible in the rankings, presumably down in that 2% "other". More people, by a wide margin, use doctest than Tox; that's a big surprise. I can't remember the last time I saw a doctest in the wild, at least, in new code.

This is a real "and quartz, of course" situation for me.

Almost as many use Hypothesis (which I would have thought would be "very niche") as Tox (which I would have thought would be "bog standard for any project"). This is one I really wish I could dig in on more!

AWS sells a lot of cloud servers. Microsoft is really trying to catch up. A pretty strong minority still don't use cloud providers at all. People use virtualenvs a lot, followed by Docker. Yawn.

Things that I wish were surprising: 9% code directly in prod, 19% code directly against the system interpreter with no venv. At least these each declined by 1% this year. Let's just gently keep that trend going.

Next…

I confess I am not all that interested or close to the data science stuff here so I'll be skimming a little bit. Like you can tell I'm one of the straights because terms like "Power Bi" still confuse me, I thought that was called a "switch" or a "verse" or something? But, being an ally is often about just rolling with new lingo whenever you find out and not making a big deal about it 🏳️‍🌈
pandas and numpy are still going strong… hmm. can't see if polars or growing or shrinking but it's clearly still pretty widely used. big majorities don't use tools for data versioning, or work wtih "big data". lots of creating dashboards, all pretty unsurprising. all the ML stuff is in the "data science" section? maybe I don't know what "data science" is, I would not have expected to see Hugging Face here, but yeah okay lots of PyTorch, XGBoost, etc etc.
Jupyter Notebook still huge as a … training platform? I guess ML training, here, not like training people to use Python? later on it shows up as an "IDE". Some of these hot-dog/sandwich alignment chart decisions in how the questions are framed is interesting
Dang, these budgets for ML compute are wild. 7% over $25k/month??. I feel like the question needs to be normalized though. Like are they asking what is your ML budget *per person* rather than for the whole org; if you have 200 people from the same 25k/mo org fill out the survey that is going to look very skewed.
OK. Waking up again. Dev tools. Operating systems! Once again the main takeaway from this survey for me & my cohort: big majority of people are using Windows, very few using macOS. 59% also using Linux is interesting, I wish this had a frontend/backend breakdown. But a LOT of people care about Windows & Python. (Another cross-tab I want to see: Windows x open source contributions…)
27% macOS is still way more than the rest of the market, but if you look out over an audience at a conference it looks more like 85%. I need to take my own pictures of audiences and count those apple logos at some point to get a more precise delta in the proportion, but I think it speaks to the need to find ways to fund more people making their way to PyCon et. al.
Sigh. Next up: yeah, ChatGPT is still the biggest AI product by a *wide* margin, Copilot not too far behind. Still lots of people using Gemini and Claude too, but given that this is a proportional questionnaire for "AI tools" I will brush past this quickly except to note "we can still just assume ChatGPT's properties are 'AI's properties for almost everyone, even programmers"
ORMs! A nice diverse breakdown between SQLAlchemy (no indication if Core or ORM, sigh, that's actually a really important distinction) and Django ORM. 12% still doing Raw SQL, though—y'all are sleeping on https://github.com/glyph/dbxs !
GitHub - glyph/DBXS: Database Access

Database Access. Contribute to glyph/DBXS development by creating an account on GitHub.

GitHub
Slightly surprised to see PostgreSQL and even SQLite actually *beating* MySQL by such a wide margin! Glad to, I guess? I still feel vaguely positive vibes around the PostgreSQL project, some operational headaches notwithstanding, it makes me glad that the most legitimately open source[1] of these databases is at the top of the leaderboard and still the biggest YoY winner in terms of growth
[1]: SQLite has a weird "the code is available but we don't take changes" project setup, and MySQL is Oracle which gives it so little community credibility that MariaDB remains the "if you actually want MySQL, but open source" clone. So *technically* you can use them, and there aren't any weird license encumbrances, but PostgreSQL still has definitively the best vibes out of the three.

On to CI systems: lots of github actions users, but glad to see we have not collapsed into a monoculture here. at 35% to 22%, gitlab CI is hot on their heels, and plenty of people still remember how to use Jenkins if it comes to that.

Interesting, and a little sad, to see that Buildbot doesn't even show up in here any more, but, so it goes.

Configuration management is interesting in its relative lack of a big leader. All my infra is very small these days so I am committed to keeping it low-overhead, which means I am out of practice with these tools. I'm a little surprised to not see any Terraform or Pulumi here at all, is that not what the kids call "configuration management" any more? Or are they both subsumed by the 3% "other" or considered part of the 8% "custom solution" since you have to write so much of your own code?
Wow. *Very* surprised to see the documentation tools category with Sphinx at 15%, and *down* 1% from last year. Sphinx is one of the crown jewels of the Python ecosystem, readthedocs is *huge*, I would have expected to see a much bigger proportion, a majority even, using it! Is it just too hard to get it set up for internal sites? If you're a non-sphinx user, I wonder why not?
Looking at IDEs, no surprise to see VSCode and Jupyter Notebook right at the top, split almost evenly, particularly given the even split between "web dev" and "data" people as the biggest factions of Python users. Most people using 2 or more IDEs. It is with the usual complex mix of emotions that I see #Emacs down at 2%, barely clinging by its fingernails to avoid falling into the chasm of "other".
Definitely annoyed to see Cursor above it at 3%, but also relieved that a vibe-coding tool like that remains only slightly more popular than Emacs. Vim (16%) and Neovim (6%) both still handily beating us, but what can I say, I guess, these parentheses are not as clumsy or random as a vibe-coder; an elegant weapon for a more civilized age.
In packaging, love to see lots of people using tools to manage their environments; interesting to see we only got to 11% with uv, but that was 2024, and given that it's seeing *very* fast growth, I assume the 2025 survey is going to look a lot different. Honestly if uv achieves like a solid 40% marketshare I'll be thrilled. It's a great tool and I hope people use and enjoy it, I just don't want it to be a monoculture.

Interesting to see requirements.txt is so much more popular than pyproject.toml. This suggests a documentation / socialization failure. This smells like people are just shoving their git repo into (at best) containers and managing its setup and deployment with shell scripts, rather than putting it into a proper envelope where a wheel gets built and deployed along with all the dependency wheels.

Maybe wider adoption of uv could push this up as well; manually populating requirements.txt is so sad

"Where do you install packages from" with 29% answering "github", what the heck does this even mean. How are people getting all their deps from github

Wide (>50%!) awareness of trusted publishers, only a couple of years after their launch, is great. Lots of people using the github action.

(Ugh, I really need to make the time to do this consistently for all of my projects as well… I still have locally-push-to-PyPI workflows for most things just due to muscle memory and laziness.)

@glyph the problem with trusted publishing, which crates.io has as well, is using github mostly for verifying the authenticity of the person, workflow and so on. Given that github has been subsumed in microsoft's AI division, I think building especially new tech and attestation workflows based on the monopoly of github isn't a good outcome, because then we're entrenching it further and I think that's the least thing we would want right about now. I'm glad python's trusted publishing also supports gitlab, but I don't think self-hosted gitlab even so, and also I don't think this should be so much dependent on the platform itself, so maybe some other kind of oauth/oidc flow is required here

@esoteric_programmer it also supports google cloud and ActiveState https://docs.pypi.org/trusted-publishers/adding-a-publisher/ so there’s a reasonable amount of diversity there.

If you want to operate a service that can meet their security requirements, I am sure you could convince them to add you too :)

Adding a Trusted Publisher to an Existing PyPI Project - PyPI Docs

@glyph google state? now that's interesting, didn't know that's still a thing. I was thinking more in the terms of we shouldn't build stuff for a specific platform, even if there are technically multiple platforms we're building for, it's like saying browsers only work for these 5 websites. But yeah, it would be ideal if this also worked with codeberg, if we have to build stuff for each platform specifically. Do you know if they outline their security requirements anywhere?
@esoteric_programmer It’s more like saying that browsers only work with these 5 certificate authorities, or these 13 root DNS servers. Ultimately a trusted publisher is a delegation of trust from PyPI to a specific third party, which means I don’t think it makes sense for them to ever support random self-hosted stuff. I don’t know what their requirements are; they are clearly expanding the program slowly.