Dies ist die zweite jährliche Django-Entwicklerumfrage, die von der Django Software Foundation und JetBrains im September und Oktober 2022 gemeinsam durchgeführt wurde. 4.900 Django-Benutzer*innen und -Fans aus 248 Ländern und Regionen haben an der Umfrage teilgenommen, um uns einen besseren Überblick über die aktuelle Situation rund um das Framework und dessen Ökosystem zu verschaffen.
55%
0%
4.1
34%
0%
4.0
47%
75%
3.2
10%
30%
3.1
13%
39%
3.0 oder früher
Die Mehrheit der Benutzer*innen ist auf die neueste Version 4.1 migriert, aber fast die Hälfte der Django-Entwickler*innen setzt noch auf die Version 3.2 LTS.
Die Django-Versionen 3.1 und niedriger werden von erfahrenen Python-Entwickler*innen verwendet, während Neueinsteiger*innen stets die neuesten Versionen nutzen.
Django-Entwickler*innen aktualisieren ihre Projekte in der Regel entweder mit jedem stabilen Release (44%) oder nur mit LTS-Releases (Long Term Support) (32%).
Django unterstützt offiziell die folgenden Datenbanken: PostgreSQL, SQLite, MySQL, MariaDB und Oracle. Seit der letztjährigen Umfrage hat PostgreSQL seinen Nutzungsanteil um weitere 2 Prozentpunkte ausgebaut.
Nur 6% der Entwickler*innen verwenden Datenbanken, die nicht von Django unterstützt werden. MongoDB liegt in dieser Nische auf dem ersten Platz.
Beim Caching liegt Redis vorn – mehr als der Hälfte der Django-Entwickler*innen setzen darauf.
Entwickler*innen, die Redis als Cache-Backend nutzen, verwenden häufiger TypeScript als diejenigen, die andere Caching-Methoden nutzen.
PostgreSQL-Benutzer*innen bevorzugen Redis und Memcached.
Unter den SQLite-Benutzer*innen hat Dateisystem-Caching den größten Anteil, während der lokale Arbeitsspeicher am zweithäufigsten verwendet wird.
Die Verwendung des GeoDjango-Backends korreliert stark mit der Wahl des Datenbank-Backends.
Mehr als 80% der Befragten wählten admin oder auth. Dadurch sind diese Module im zweiten Jahr in Folge die populärsten Contrib-Apps.
Die beliebteste Kernkomponente unter den Befragten sind Modelle. 76% der Django-Benutzer*innen stimmten dafür – 4 Prozentpunkte mehr als im Vorjahr.
Django Templates
Jinja2
Sonstiges
Keine
36%
37%
React
32%
37%
jQuery
25%
28%
Vue
16%
5%
htmx
8%
10%
Angular
Das 2020 veröffentlichte htmx bekommt erst jetzt mehr Aufmerksamkeit. Die Nutzung dieses JavaScript-Frameworks hat sich seit unserer letzten Umfrage im August 2021 verdreifacht. Alpine.js hat seinen Nutzungsanteil verdoppelt, allerdings ist dieser Wert immer noch zu niedrig, um daraus belastbare Schlüsse zu ziehen.
Im Vergleich zum Vorjahr ist der Anteil von jQuery um 5 Prozentpunkte gesunken.
Es ist interessant zu beobachten, wenn Frameworks, die früher eine führende Rolle spielten, allmählich Anteile an neue Frameworks abgeben.
62%
68%
Bootstrap
22%
15%
Tailwind CSS
13%
14%
Pure CSS
9%
12%
Material Design/Lite
6%
6%
Bulma
Seit dem vergangenen Jahr ist der Anteil von Tailwind CSS um 7 Prozentpunkte gestiegen, von 15% auf 22%. Diejenigen, die Tailwind CSS verwenden, nutzen JavaScript-Frameworks wie Alpine.js, htmx, React und Vue häufiger als Bootstrap-Benutzer*innen. Bootstrap-Anwender*innen nutzen jQuery fast doppelt so häufig.
Die Hälfte der Django-Entwickler*innen schreibt asynchrone Views. Die Verwendung asynchroner Technologien korreliert dabei nicht unbedingt mit der Erfahrung als Entwickler*in.
Mehr über die Async-Unterstützung in Django erfahren Sie hier.
Erfahrenere Entwickler*innen verwenden Type-Hints deutlich häufiger als solche mit weniger Erfahrung. Insgesamt verwenden 46% der Django-Entwickler*innen Type-Hints.
Viel oder oft
Etwas oder manchmal
Ein wenig oder selten
Überhaupt nicht
Größere Teams neigen eher dazu, ihre Software zu dokumentieren, z. B. auf GitHub Pages, das ebenfalls vornehmlich von größeren Teams genutzt wird.
Kleinere Teams veröffentlichen seltener eine Dokumentation.
Hauptsprache
Nebensprache
Diese Frage wurde nur gezeigt, wenn Python als Nebensprache angegeben wurde.
Am häufigsten werden YouTube und Stack Overflow von Entwickler*innen mit weniger als 2 Jahren Berufserfahrung genutzt.
Entwickler*innen, die 6 oder mehr Jahre Berufserfahrung gesammelt haben, nutzen YouTube fast nie für Django-bezogenes Lernen. Sie lesen normalerweise djangoproject.com und Django News.
YouTube-Kanäle
Blogs
Podcasts
Twitter-Accounts
Foren
Sonstiges
58%
13%
3.10
51%
60%
3.9
36%
53%
3.8
17%
31%
3.7
8%
21%
3.0–3.6
Laut der offiziellen Python-Entwicklerumfrage zeigen Django-Entwickler*innen eine höhere Präferenz für die neuesten Python-Versionen als der Durchschnitt aller Python-Entwickler*innen. Dies gilt insbesondere für Version 3.9, deren Nutzungsanteil unter Django-Benutzer*innen (51%) um 29 Prozentpunkte höher liegt als bei der Gesamtheit der Python-Anwenderschaft (22%).
Entwickler*innen, die python.org besuchen, neigen häufiger dazu, Python auf jedes stabile Release zu aktualisieren als diejenigen, die das vom Betriebssystem bereitgestellte Python verwenden.
Entwickler*innen in Asien bevorzugen python.org doppelt so häufig wie Entwickler*innen im Allgemeinen (27% ggü. 13%), während Entwickler*innen in Europa das vom Betriebssystem bereitgestellte Python um 22 Prozentpunkte häufiger nutzen (55% vs. 33%).
55%
44%
venv
43%
55%
Virtualenv
42%
40%
Docker
21%
23%
Pipenv
19%
13%
Poetry
Der Anteil von Poetry ist um 6 Prozentpunkte gestiegen – von 13% im Jahr 2021 auf 19% zum Ende des Jahres 2022.
51%
35%
Black
28%
18%
isort
23%
30%
autopep8
19%
0%
pre-commit
1%
2%
YAPF
Mit einem Plus von 16 Prozentpunkten ist der Anteil des Formatierungsmoduls Black im Vergleich zur letztjährigen Umfrage deutlich gestiegen.
43%
40%
Flake8
41%
26%
Black
33%
37%
pylint
18%
14%
mypy
3%
4%
Sonstiges
Psycopg2 und Requests sind mit jeweils 54% die meistverwendeten Python-Pakete in der Django-Gemeinde.
Requests ist bei allen Python-Entwickler*innen beliebt, während Psycopg2 eher Django-spezifisch zu sein scheint.
Das Bildbearbeitungsmodul Pillow ist bei weniger erfahrenen Entwickler*innen besonders beliebt.
Mit einem Anteil von 56% ist AWS die häufigste Wahl von Entwickler*innen in Nord- und Mittelamerika.
In Afrika liegt Heroku mit einem Anteil von 39% vorn, dicht gefolgt von AWS mit 37%.
PythonAnywhere wird insbesondere in Afrika und dem Nahen Osten (20%) sowie in Asien (19%) genutzt. In allen anderen Teilen der Welt liegt der Nutzungsanteil bei weniger als 10%.
Linux
macOS
Windows mit WSL
Windows ohne WSL
Sonstiges
42%
35%
GitHub Actions
28%
27%
GitLab CI
10%
12%
Jenkins/Hudson
8%
8%
CircleCI
2%
6%
TravisCI
Seit dem letzten Jahr ist der Anteil von GitHub Actions um 7 Prozentpunkte gestiegen, während Jenkins und Travis CI 2 bzw. 4 Prozentpunkte eingebüßt haben.
Ich verwende Container während der Entwicklung
Meine Anwendung wird in der Produktion in Containern ausgeführt
Container werden im CI/CD-Prozess verwendet
Nein / Ich weiß es nicht
Ich benutze Container für einen anderen Zweck
Einzelpersonen und kleine Unternehmen mit weniger als 10 Mitarbeitenden nutzen seltener Docker-Container für Hintergrunddienste und Hilfsprogramme.
45% der Entwickler*innen mit mindestens 11 Jahren Erfahrung debuggen ihre Anwendungen auf der Befehlszeile/mit pdb. Unter Entwickler*innen mit weniger als 1 Jahr Erfahrung liegt dieser Anteil bei nur 20%; mit 1 bis 2 Jahren Erfahrung steigt der Wert auf 30%.
Freelancer sind in der Django-Gemeinde doppelt so häufig vertreten wie in der allgemeinen Entwicklerpopulation: Der Freelancer-Anteil lag in dieser Umfrage bei 11%, verglichen mit nur 5% im gesamten Entwickler-Ökosystem und 6% in der Python-Entwicklerumfrage.
9%
11%
Weniger als 1 Jahr
15%
17%
1–2 Jahre
22%
24%
3–5 Jahre
21%
19%
6–10 Jahre
33%
29%
Mehr als 11 Jahre
Die demografische Auswertung zeigt, dass die Teilnehmenden der Umfrage 2022 etwas erfahrener sind als die Befragten des Vorjahres.
6%
8%
Weniger als 1 Jahr
16%
21%
1–2 Jahre
30%
31%
3–5 Jahre
28%
24%
6–10 Jahre
19%
16%
Mehr als 11 Jahre
Django-Entwickler*innen arbeiten in der Regel in kleinen Teams.
Die Anzahl der Projekte steigt mit der Erfahrung. Entwickler*innen mit weniger Erfahrung arbeiten meist an einem Hauptprojekt und mehreren Nebenprojekten, oder sogar nur an einem einzigen Hauptprojekt.
Sie möchten tiefer in die Daten eintauchen? Laden Sie die anonymisierten Umfrageantworten herunter und führen Sie Ihre eigenen Analysen durch! Teilen Sie Ihre Erkenntnisse auf Twitter unter dem Hashtag #djangosurvey und erwähnen Sie dabei @jetbrains und @djangoproject.
Der Datensatz enthält nur Antwortbögen aus den offiziellen Kanälen der Django Software Foundation. Nach dem Herausfiltern doppelter und unzuverlässiger Antwortbögen umfasst der Datensatz mehr als 4900 Antwortbögen, die im Zeitraum September bis Oktober 2022 durch die Bekanntmachung der Umfrage auf offiziellen Django-Kanälen – etwa djangoproject.com und dem Twitter-Account der DSF gesammelt wurden. Um eine Verzerrung der Umfrage zugunsten bestimmter Tools oder Technologien zu verhindern, wurden keine Produkt-, Service- oder Herstellerkanäle zur Rekrutierung verwendet.
Die Daten sind anonymisiert und enthalten keine persönlichen Informationen oder Ortungsdaten. Darüber hinaus wurden alle offenen Antworten gelöscht, um eine Identifizierung einzelner Befragter anhand ihrer wörtlichen Antworten zu verhindern.
Um Ihnen zu einem besseren Verständnis der Umfrage zu verhelfen, stellen wir den Datensatz, die gestellten Fragen und die gesamte Umfragelogik zur Verfügung.
Im Namen der Django Software Foundation und von JetBrains möchten wir uns noch einmal bei allen bedanken, die an dieser Umfrage teilgenommen haben.
Wenn Sie Fragen oder Anregungen haben, schreiben Sie uns bitte unter surveys@jetbrains.com.