This is the second annual Django Developers Survey, conducted September – October, 2022, as a collaborative effort between the Django Software Foundation and JetBrains. To help us get a better idea of the current state of the framework and the ecosystem around it, 4,900 Django users and enthusiasts from 248 countries and regions took the survey.
55%
0%
4.1
34%
0%
4.0
47%
75%
3.2
10%
30%
3.1
13%
39%
3.0 or lower
The majority of users migrated to the latest version 4.1 but almost half of Django developers still rely on the 3.2 LTS version.
Django versions 3.1 and lower are used by experienced Python developers, while newcomers use only the newest versions.
Django developers usually upgrade their projects with either every stable release (44%) or only with long-term support (LTS) (32%).
Django officially supports the following databases: PostgreSQL, SQLite, MySQL, MariaDB, and Oracle. Since last year’s survey, PostgreSQL has become even more popular, with shares increasing by 2 percentage points.
Only 6% of developers use databases that are not supported by Django. The database mentioned most often by these developers is MongoDB.
Practiced by more than half of Django developers, caching with Redis is the most popular.
Developers who use Redis as a cache backend use TypeScript more often than those who choose other caching methods.
PostgreSQL database users prefer Redis and Memcached.
Among SQLite users, the biggest share is Filesystem, with local memory being the second most popular.
The use of GeoDjango backend highly correlates with the choice of database backend.
More than 80% of respondents chose admin or auth, which makes them the most popular contrib apps for the second year in a row.
The favorite core component among respondents is Models. It was chosen by 76% of Django users, which is 4 percentage points higher than the previous year.
Django templates
Jinja2
Other
None
36%
37%
React
32%
37%
jQuery
25%
28%
Vue
16%
5%
htmx
8%
10%
Angular
Released in 2020, htmx is now getting more attention. The usage of this JavaScript framework has tripled since our previous survey in August 2021. Additionally, Alpine.js has doubled its share, although this value is still too small to make any specific conclusions.
Compared to last year's results, the share of jQuery decreased by 5 percentage points.
It’s interesting to note that frameworks that used to be leaders are beginning to lose their share to newly emerging ones.
62%
68%
Bootstrap
22%
15%
Tailwind CSS
13%
14%
Pure CSS
9%
12%
Material Design/Lite
6%
6%
Bulma
Since last year, the share of Tailwind CSS has increased 7 percentage points, rising from 15% to 22%. Those who use Tailwind CSS tend to use JavaScript frameworks, such as Alpine.js, htmx, React, and Vue, more often than Bootstrap users. Bootstrap users use jQuery almost twice as often.
Half of Django developers write asynchronous (async) views. However, whether or not respondents use async technologies does not necessarily correlate with their developer experience.
Check out more about Django asynchronous support here.
The more experienced developers use type hints significantly more often than those developers with less experience. Overall, 46% of Django developers use type hints.
A lot, or often
Some, or sometimes
A little, or hardly ever
None, or never
Bigger teams are more likely to document software, such as on Github Pages which is mostly used by bigger teams.
Smaller teams publish documentation less often.
Primary
Secondary
This question was only shown to those who chose Python as a secondary language.
The biggest users of YouTube and Stack Overflow are developers who have worked for less than 2 years.
Those with 6 or more years of work experience almost never use YouTube for Django learning purposes. They typically read djangoproject.com and Django News.
YouTube channels
Blogs
Podcasts
Twitter handles
Forums
Other
58%
13%
3.10
51%
60%
3.9
36%
53%
3.8
17%
31%
3.7
8%
21%
3.6 - 3.0
According to the official Python Developers Survey, Django developers prefer to use the newest Python versions more often than Python developers in general. This is particularly the case with the usage of version 3.9, which is 29 percentage points higher with Django (51%) than with Python in general (22%).
Developers who visit python.org tend to upgrade Python to every stable release more often than those who use OS-provided Python.
Developers located in Asia prefer using python.org twice as much as developers in general (27% vs 13%), while those located in Europe choose OS-provided Python 22 percentage points more (55% vs. 33%).
55%
44%
venv
43%
55%
Virtualenv
42%
40%
Docker
21%
23%
Pipenv
19%
13%
Poetry
There has been a 6 percentage point rise in Poetry’s share from 13% in 2021 to 19% by the end of 2022.
51%
35%
Black
28%
18%
isort
23%
30%
autopep8
19%
0%
pre-commit
1%
2%
YAPF
The share of Black code formatter has significantly increased (by 16 percentage points) when compared with last year’s survey results.
43%
40%
Flake8
41%
26%
Black
33%
37%
pylint
18%
14%
mypy
3%
4%
Other
Psycopg2 and Requests are the most used Python packages among Django users, each with 54%.
Requests is a popular platform among all Python developers, while Psycopg2 seems to be Django-specific.
Pillow, a module for working with images, is popular with less experienced developers.
With 56% share, AWS is usually the choice for developers from North and Central America.
Heroku is leading in Africa with 39% share, whereas AWS is a close second with 37%.
Furthermore, PythonAnywhere has higher demand in Africa and the Middle East with 20% share, and in Asia it has 19%. In all other parts of the world it has less than 10%.
Linux
macOS
Windows with WSL
Windows without WSL
Other
42%
35%
GitHub Actions
28%
27%
GitLab CI
10%
12%
Jenkins/Hudson
8%
8%
CircleCI
2%
6%
TravisCI
Since last year, the share of GitHub Actions has increased slightly by 7 percentage points, while Jenkins and Travis CI have lost 2 and 4 percentage points respectively.
I use containers during development
The application I build runs in containers in production
Containers are used in the CI/CD process
No / I’m not sure
I use containers for another purpose
The use of Docker containers for backing services and utilities is lower for individuals and small companies with fewer than 10 people.
45% of developers with 11 or more years of experience debug their applications using shell / pdb, while only 20% of developers with less than 1 year’s experience and 30% of developers with 1–2 years’ experience do so.
Django users freelance at twice the rate of developers in general: the share of freelancers in this survey is 11%, compared with just 5% in the total developer ecosystem and 6% in the Python Developers Survey.
9%
11%
Less than 1 year
15%
17%
1–2 years
22%
24%
3–5 years
21%
19%
6–10 years
33%
29%
11+ years
This year’s demographics show that the 2022 survey respondents are slightly more experienced than last year’s.
6%
8%
Less than 1 year
16%
21%
1–2 years
30%
31%
3–5 years
28%
24%
6–10 years
19%
16%
11+ years
Django developers tend to work in small teams.
The more experienced the developer, the more projects they tend to have. Developers with less experience generally work on one main project with several side projects, or even on a single main project.
Want to dig further into the data? Download the anonymized survey responses and see what you can learn! Share your findings and insights by mentioning @jetbrains and @djangoproject on Twitter with the hashtag #djangosurvey.
The data set includes responses only from official Django Software Foundation channels. After filtering out duplicate and unreliable responses, the data set includes around 4,900 responses collected in September – October, 2022 through the promotion of the survey on official Django channels, such as djangoproject.com and the DSF's Twitter account. In order to prevent the survey from being slanted in favor of any specific tool or technology, no product-, service-, or vendor-related channels were used to collect responses.
The data are anonymized, with no personal information or geolocation details. Moreover, to prevent the identification of any individual respondents by their verbatim comments, all open-ended fields have been deleted.
To help you better understand the logic of the survey, we are sharing the data set, the survey questions, and all the survey logic.
Once again, on behalf of both the Django Software Foundation and JetBrains, we’d like to thank everyone who took part in this survey.
If you have any questions or suggestions, please contact us at surveys@jetbrains.com.