Ende 2016 habe ich die 2016 Front-End-Tooling-Umfrage . Die Antwort war phänomenal . Vielen Dank an alle, die sich die Zeit genommen haben.

Das Ziel war ziemlich geradlinig; um mehr über die Tools zu erfahren, die Frontend-Entwickler derzeit in ihren eigenen Workflows verwenden. In unserer Branche ist es nur allzu leicht zu verstehen, was Menschen aufgrund Ihres Wissens verwenden. Diese Umfrage soll einen besseren Einblick in die aktuellen Trends bei Front-End-Werkzeugen aus einer breiteren Perspektive geben.

In diesem Jahr umfasste die Umfrage 19 Fragen, die eine breite Palette von Front-End-Tools und -Methoden abdeckten.

Schneller Dank

Diese Umfrage wäre ohne die Unterstützung von Just Eat (meinem Arbeitgeber) und Wes Bos, der freundlicherweise mit der diesjährigen Umfrage in Verbindung gebracht wurde, viel schwieriger zusammenzubringen, was es mir ermöglicht hat, mehr Zeit mit der Analyse der Ergebnisse zu verbringen.

Wes ist bekannt dafür, großartige Lernmaterialien für Webentwickler zu erstellen. Seine Kurse sind ein großartiger Ausgangspunkt, wenn Sie mehr über Themen wie Reagieren und ES6 .

Die Antworten

Die diesjährige Umfrage hat über 4.700 Antworten erhalten. Im Vergleich dazu hatte die Umfrage, als ich die ersten Ergebnisse im Jahr 2015 veröffentlichte, nur 648 Antworten erhalten, die dann bei Abschluss der Umfrage auf einen endgültigen Wert von 2.028 Antworten anstiegen. Das sind fast zweieinhalb Mal so viele Antworten wie im letzten Jahr, oder 132 Prozent mehr für Leute, die Prozentsätze mögen.

Was die Antworten betrifft, habe ich die Umfrage auf Twitter, Reddit, HackerNews, DesignerNews, Echo.js, LinkedIn und Frontendfront veröffentlicht. Es wurde auch von einer Reihe von Newslettern wie Responsive Design Weekly, Sitepoint Weekly und FrontEnd Focus vorgestellt.

Der Grund, warum ich diese Quellen hervorheben möchte, ist zu zeigen, dass es eine gute Verbreitung der Antwort über verschiedene Kanäle gegeben hat; Die Befragten stammen nicht alle aus einem sozialen Kanal.

Die Ergebnisse

Pre-Amble Disclaimer: Diese Ergebnisse stellen eine Stichprobe von Front-End-Entwicklern dar, die in der Branche arbeiten - daher sollten sie nicht als Gospel verstanden werden, sondern lediglich als Hinweis auf einen groben Trend.

Sehen wir uns also ohne weiteres die Ergebnisse an! Gönnen Sie sich eine Tasse Tee / Kaffee und lassen Sie uns einen Blick darauf werfen ...

Q1: Allgemeine Front-End-Erfahrung

Die erste Frage, die ich gestellt habe, war, eine Vorstellung von dem Erfahrungsniveau der Antworten zu bekommen; etwas, das in der letztjährigen Umfrage nicht erfasst wurde. Die Frage war ungefähr, wie lange arbeitest du schon mit Frontend-Technologien?

Hier sind die Ergebnisse:

Antworten Anzahl der Stimmen Prozentsatz
0-1 Jahr 232 4.92%
1-2 Jahre 589 12.49%
2-5 Jahre 1.508 31.98%
5-10 Jahre 1,323 28.06%
10-15 Jahre 673 14.27%
Über 15 Jahre 390 8.27%
Wie lange arbeiten Sie ungefähr mit Front-End-Technologien? - Tortendiagramm mit den Ergebnissen

Die Mehrheit der Befragten gab an, dass sie mit Front-End-Technologien entweder für 2-5 Jahre oder 5-10 Jahre gearbeitet haben, was zusammen 60,04% (2.831) der Antworten ausmacht.

Interessanterweise gibt es eine sehr gleichmäßige Kluft zwischen denen, die bis zu 5 Jahre mit Front-End gearbeitet haben (49,39%), verglichen mit denen mit mehr als 5 Jahren Erfahrung (50,6%). Dies bedeutet im positiven Fall, dass die Ergebnisse der Umfrage von einer recht gleichmäßigen Verteilung der Erfahrungswerte ausgehen.

Q2: CSS-Kenntnisse

Die zweite Frage war ein subjektiver Blick darauf, wie die Befragten ihre eigenen CSS-Kenntnisse bewerteten.

Es ist selbstverständlich, dass diese Frage ziemlich relativ ist, da dies von jedem Befragten unterschiedlich interpretiert werden kann und dass man sich auf eine gewisse Bescheidenheit verlässt, wenn es darum geht, sein eigenes Qualifikationsniveau zu bewerten - aber es ist trotzdem interessant zu sehen die Ergebnisse!

Die Frage war: Wie bewerten Sie Ihr eigenes Wissen über CSS und die damit verbundenen Tools und Methoden?

So sahen die Antworten aus:

Niveau Anzahl der Stimmen Prozentsatz
Anfänger 78 1,65%
Anfänger (zwischen Anfänger und Fortgeschrittene) 424 8.99%
Mittlere 1.243 26.36%
Fortgeschritten (zwischen Mittelstufe und Experte) 2.203 46.72%
Experte 767 16.27%
Wie bewerten Sie Ihr eigenes Wissen über CSS und die damit verbundenen Tools und Methoden? - Tortendiagramm mit den Ergebnissen

Wenn man sich die Ergebnisse anschaut , gaben 89,36% (4.213) der Befragten an, dass sie über ein mittleres Niveau an CSS-Kenntnissen oder höher verfügten, wobei die meisten - 46,72% (2.203) - sagten, sie seien auf einem fortgeschrittenen Niveau. Nur 16,27% (767) der Befragten gaben an, dass sie über Fachwissen verfügten.

Wenn wir uns ein wenig genauer mit diesen Ergebnissen und der Filterung auf der Grundlage der Antworten zu Frage 1 beschäftigen, haben sich 10% derjenigen, die bis zu 12 Monate Erfahrung mit Front-End-Technologien haben, fortgeschrittene Kenntnisse von CSS oder höher angeeignet (obwohl einer in dieser Unterkategorie bewertete sich selbst als Experte). Dieser Prozentsatz stieg auf 22% für Teilnehmer mit bis zu 2 Jahren Erfahrung.

Dies kann auf verschiedene Arten interpretiert werden, aber es scheint ein relativ hoher Prozentsatz angesichts der kurzen Zeit, die sie mit CSS gearbeitet haben. Es könnte auch widerspiegeln, dass CSS im Vergleich zu anderen Sprachen wie JavaScript oft einfacher zu erlernen ist - etwas, womit ich nicht einverstanden wäre, wenn es darum geht, die Feinheiten und Nuancen der Sprache und ihrer Methoden zu lernen.

Wir werden versuchen, diese Ergebnisse in den folgenden Fragen zu referenzieren.

Q3: Verwendung des CSS-Prozessors

Die nächste Frage war die erste technologiespezifische Frage: Was ist Ihr CSS-Bearbeitungswerkzeug der Wahl?

Diese Frage wurde in der letztjährigen Umfrage gestellt, wobei Sass für die Mehrheit der Entwickler im Jahr 2015 die erste Wahl war. Die möglichen Antworten enthielten alle im vergangenen Jahr verfügbaren und zusätzlich die beiden neuen modularen CSS-Prozessoren PostCSS und Rework.

Die folgenden Ergebnisse zeigen auch den prozentualen Unterschied zwischen den Ergebnissen dieses Jahres und des letzten Jahres, sofern zutreffend.

Präprozessor Anzahl der Stimmen Prozentsatz % Diff (bis 2015)
Sass 2.989 63.39% -0.56%
Weniger 478 10,14% -5.05%
Stift 137 2.91% -0.84%
Post-CSS 392 8.31% N / A
Nacharbeit 3 0,06% N / A
Kein Präprozessor 643 13.64% -1,4%
Andere 73 1.55% -0.52%
Was ist Ihr CSS-Bearbeitungswerkzeug der Wahl? - Tortendiagramm mit den Ergebnissen

Wenn man sich die Ergebnisse anschaut, ist Sass mit 63,39% immer noch das CSS-Bearbeitungswerkzeug der Wahl für die Mehrheit der Befragten. Im Vergleich zu den Ergebnissen des letzten Jahres ist der Rückgang der Nutzung leicht auf 10,14% gesunken (minus 5,05%).

PostCSS zeigte ein gutes Wachstum mit 8,31% der Befragten, die sagten, dass sie es ausschließlich nutzten. Es ist wahrscheinlich, dass die Verwendung in der Realität etwas höher ist, da dies nicht für die Befragten gilt, die es in Kombination mit einem anderen Verarbeitungstool verwenden.

Interessanterweise ist der Anteil der Befragten, die kein CSS-Verarbeitungstool verwenden, von 15,04% im Jahr 2015 auf 13,64% gesunken. Dies bestätigt, dass die CSS-Verarbeitung heute eine Schlüsselqualifikation in der modernen Frontend-Entwicklung ist und die Mehrheit (86.36 %) der Front-End-Entwickler verwenden derzeit in ihren eigenen Workflows.

Q4: CSS-Prozessor Erfahrung

Im Anschluss an die letzte Frage wollte ich mehr Details über die Wissensniveaus in den CSS-Verarbeitungstools herausfinden, wobei die Befragten gebeten wurden, ihre Erfahrungen in beiden zu teilen.

So haben die Leute geantwortet, wenn sie gefragt wurden - Bitte geben Sie Ihre Erfahrung mit den folgenden Tools zur CSS-Bearbeitung an :

Niemals davon gehört Gehört von / lesen über Gebraucht ein wenig Sich wohl fühlen mit
Sass - Standard oder SCSS-Syntax 0,57% (27) 11,11% (524) 17,16% (809) 71.16% (3.355)
Weniger 0,81% (38) 30,86% (1.455) 33.32% (1.571) 35,02% (1.651)
Stift 24,22% (1.142) 57,26% (2.700) 11,11% (524) 7,40% (349)
Post-CSS 21,76% (1.026) 45,37% (2.139) 18,73% (883) 14,15% (667)
Nacharbeit 78,43% (3.698) 20,17% (951) 0,91% (43) 0,49% (23)
Bitte geben Sie Ihre Erfahrung mit den folgenden CSS-Verarbeitungstools an - Balkendiagramm mit den Ergebnissen

Das Tool mit den höchsten Wissensniveaus war Sass ziemlich weit entfernt, und 71,16% der Befragten gaben an, dass sie sich darin wohlfühlen. In der Tat hatten nur 11,68% der Menschen es nie benutzt, nur 0,57% (27 Leute) hatten noch nie davon gehört. Zusammen mit den Ergebnissen von Frage 3 dominiert Sass deutlich, wenn es um die Nutzung und das Wissen der CSS-Verarbeitungstools geht.

Betrachtet man die anderen Tools, gaben 35,02% der Befragten an, dass sie sich mit Less wohl fühlen, gefolgt von 14,15%, die dasselbe in Bezug auf PostCSS sagten. Interessanterweise hat sich diese Zahl von den 7,15% der Befragten, die sagten, dass sie PostCSS in der Umfrage des letzten Jahres gut gebrauchen konnten, fast verdoppelt, was einen Aufwärtstrend des Wissens über das Tool zeigt.

Q5: CSS-Benennungsschemata

Die nächste Frage war ein Bereich von CSS, an dem ich großes Interesse habe - CSS Naming Schemes. Nachdem ich in meiner eigenen Arbeit seit einigen Jahren ein Benennungsschema verwendet habe, war ich interessiert zu sehen, ob dies etwas war, das andere Frontend-Entwickler auch übernommen hatten.

Die Frage lautete: - Verwenden Sie beim Schreiben von CSS ein Benennungsschema wie BEM oder SUIT?

Antworten Anzahl der Stimmen Prozentsatz
Ja 2.170 46.02%
Nein - Ich habe von CSS-Benennungsschemas gehört, verwende aber keines 1,731 36.71%
Nein - ich habe noch nie von CSS-Benennungsschemas gehört 814 17.26%
Verwenden Sie ein Benennungsschema beim Schreiben von CSS, z. B. BEM oder SUIT? - Tortendiagramm mit den Ergebnissen

Die Ergebnisse zeigen eine ziemlich gleichmäßige Aufteilung, obwohl nur knapp die Hälfte der Befragten (46,02%) angaben, dass sie ein CSS-Benennungsschema verwenden im Vergleich zu denen, die dies nicht taten (53,98%).

Es ist ermutigend, dass insgesamt 82,73% (3.901) der Befragten zumindest von CSS-Benennungsschemata gehört hatten, aber 36,71% (1.731) noch eins verwenden mussten.

Wie zu erwarten war, stieg die Verwendung von CSS-Benennungssystemen auf 56,94%, wenn man sich die Befragten anschaute, die sich mit fortgeschrittenen CSS-Kenntnissen oder höher auszeichneten. Dies wird verglichen mit einer Verwendung von nur 27,47% unter denjenigen, die sich selbst als Zwischenstufe oder niedriger einstuften.

CSS-Benennungsschemata sind ein Werkzeug, von dem ich denke, dass es in der Nutzung weiter wachsen wird. Daher wird es interessant sein, zu sehen, wie sich diese Zahlen in Zukunft ändern.

Q6: CSS-Linierung

Als nächstes kam CSS Linting - ist das ein Werkzeug, das viele Entwickler in ihren Workflows verwenden?

Ich fragte : Verwenden Sie ein Tool, um Ihr CSS zu flinken?

Die Ergebnisse waren wie folgt:

Antworten Anzahl der Stimmen Prozentsatz
Ja 2,232 47.34%
Nein - ich füge mein CSS nicht ein 2.483 52.66%
Verwenden Sie ein Tool, um Ihr CSS zu flinken? - Tortendiagramm mit den Ergebnissen

Wie die vorherige Frage, war dies eine ziemlich gleichmäßige Aufteilung mit 47,34% (2,232) der Befragten, die sagten, dass sie ein Tool verwenden, um ihre CSS zu flinken, verglichen mit 52,66% (2.483) derjenigen, die dies nicht tun.

Es überrascht nicht, dass diese Zahlen auch steigen, wenn wir uns die Befragten mit fortgeschritteneren CSS-Kenntnissen ansehen. 52,42% der Befragten, die sich mit fortgeschrittenen oder höheren CSS-Kenntnissen ausgaben, erklärten auch, dass sie ihre CSS-Punkte läuten, im Vergleich zu nur 38,70% derjenigen mit Anfänger- und Fortgeschrittenenkenntnissen.

CSS-Linting ist immer noch relativ neu in Bezug auf Tooling und Nutzung, insbesondere im Vergleich zu der Zeit, die JavaScript-Linting benötigt. Da immer bessere Tools wie Stylelint von Entwicklern entdeckt werden, würde ich erwarten, dass die Nutzung wächst, wenn dieser Bereich der CSS-Werkzeuge reift.

Q7: CSS Tool Erfahrung

Die nächsten drei Fragen in der Umfrage bezogen sich auf den Wissensstand und die Verwendung in einer Reihe von CSS-Tools und -Methoden. Zuerst Frage 7 fragte die Befragten Bitte geben Sie Ihre Erfahrung mit den folgenden CSS-Tools an .

Schauen wir uns die Ergebnisse an:

Niemals davon gehört Gehört von / lesen über Gebraucht ein wenig Sich wohl fühlen mit
Autoprefixer 18.28% (862) 17,18% (810) 15,93% (751) 48,61% (2,292)
Susi 55.02% (2.594) 29,78% (1.404) 9.69% (457) 5,51% (260)
Modernizr 6,64% (313) 22,93% (1.081) 37,96% (1.790) 32,47% (1.531)
Stillint 54,68% (2.578) 24,35% (1,148) 10,39% (490) 10,58% (499)
Bitte geben Sie Ihre Erfahrung mit den folgenden CSS-Tools an - Balkendiagramm mit den Ergebnissen

Von diesen war Autoprefixer mit 48,61% (2.292) das CSS-Tool, das die meisten Befragten als angenehm empfanden, gefolgt von Modernizr (32,47%), Stylelint (10,58%) und schließlich Susy (5,51%).

Bei der Erweiterung auf diejenigen Befragten, die das Tool ein wenig genutzt haben, kam Modernizr dann mit 70,43% an die Spitze, verglichen mit den 64,54% der Befragten, die sagten, dass sie zumindest ein wenig Erfahrung mit Autoprefixer haben.

Die Mehrheit der Befragten sagte, dass sie nie von Stylelint (54,68%), einem CSS Linting Tool, und Susy (55,02%), einem Sass Layout Tool, gehört hatten.

Interessanterweise hatte ein hoher Prozentsatz der Befragten, die sich in CSS und seinen Tools als fortgeschritten oder höher einstuften, noch nie von diesen beiden Tools gehört - 46,53% für Stylelint und 45,52% für Susy. Ich denke, dies zeigt, wie schwierig es für Entwickler jeder Erfahrungsstufe, ganz zu schweigen von Anfängern, ist, mit den Werkzeugen, die uns allen zur Verfügung stehen, Schritt zu halten.

Q8: CSS-Methoden und Namensschemaerfahrung

Diese nächste Frage folgte auf die letzte, indem die Befragten gebeten wurden , Ihre Erfahrungen mit den folgenden CSS-Methoden anzugeben .

Die Ergebnisse sahen so aus:

Niemals davon gehört Gehört von / lesen über Gebraucht ein wenig Sich wohl fühlen mit
SMACSS 40,57% (1,913) 33,91% (1.599) 14,74% (695) 10,77% (508)
Objektorientiertes CSS (OOCSS) 28,27% (1,333) 41,80% (1,971) 17,77% (838) 12,15% (573)
Atomdesign 41,53% (1958) 33,74% (1.591) 14,34% (676) 10,39% (490)
ITCSS 68,34% (3.222) 22,38% (1,055) 4,50% (212) 4,79% (226)
CSS-Module 27,42% (1.293) 44,77% (2.111) 15.95% (752) 11,86% (559)
BEM 24.90% (1.174) 23.52% (1.109) 18,49% (872) 33,09% (1.560)
KOFFER-CSS 69,42% (3.273) 24,14% (1,138) 3,90% (184) 2,55% (120)
Bitte geben Sie Ihre Erfahrung mit den folgenden CSS-Methoden an - Balkendiagramm mit den Ergebnissen

Von diesen war BEM - ein CSS-Benennungsschema - am weitesten verbreitet, wobei 33,09% der Befragten angaben, dass sie sich damit wohlfühlen. Diese Zahl steigt auf 51,58% der Befragten an, wenn sie diejenigen mit einbeziehen, die sagten, sie hätten sie ein wenig benutzt.

Überraschenderweise (zumindest für mich) ist das Wissen über viele der bekanntesten CSS-Methoden ziemlich gering. Nur 29,92% der Entwickler gaben an, dass sie OOCSS entweder ein wenig genutzt oder sich in ihren Projekten wohl fühlen, wobei 27,81% dasselbe für CSS-Module, 25,51% für SMACSS und 24,73% für Atomic Design sagten.

Selbst unter denjenigen mit fortgeschrittenem oder Expertenwissen über CSS, bricht keine dieser Methoden die 20% -Marke in Bezug auf die Anzahl der Befragten, die sagten, dass sie sich wohl fühlen, sie zu benutzen.

Ein Blick auf die Antworten zeigt, dass weniger als ein Drittel (29,20%) der Befragten sich mit mindestens einer der aufgelisteten CSS-Methoden wohlfühlen - also eines von SMACSS-, OOCSS-, Atomic Design-, ITCSS- und CSS-Modulen. Dies entspricht 55,02% der Befragten, wenn wir diejenigen, die sagen, dass sie mindestens eine dieser Methoden verwendet haben, berücksichtigen.

Bevor wir weitere Schlussfolgerungen aus diesen Ergebnissen ziehen, werfen wir einen Blick auf Frage 9, die eng verwandt ist.

Q9: CSS Tool Verwendung

Zum Abschluss der Befragungsfragen zu CSS fragte ich die Befragten: Welche dieser CSS-Methoden oder Tools verwenden Sie derzeit für Ihre Projekte?

Hier sind die Ergebnisse:

Werkzeug / Methodik Anzahl der Stimmen Prozentsatz
SMACSS 613 13.00%
Objektorientiertes CSS (OOCSS) 696 14.76%
Atomdesign 680 14.42%
ITCSS 248 5.26%
CSS-Module 740 15.69%
BEM 1905 40.40%
KOFFER-CSS 111 2.35%
Autoprefixer 2,414 51,20%
Susi 237 5.03%
Modernizr 1,828 38.77%
Stillint 682 14.46%
Ich benutze keine dieser Ansätze oder Werkzeuge 1.095 23.22%
Welche dieser CSS-Methoden oder Tools verwenden Sie derzeit für Ihre Projekte? - Balkendiagramm mit den Ergebnissen

An der Spitze der tatsächlichen Nutzung stand Autoprefixer (51,20%), gefolgt von BEM (40,40%) und Modernizr (38,77%), die von den Befragten alle gut genutzt wurden.

Obwohl die einzelnen Benutzungslevel von CSS-Methoden bescheiden sind - sogar unter denen, die fortgeschrittene Erfahrung mit CSS angegeben haben -, wenn man die Nutzung über alle zusammen betrachtet, gaben 41,21% der Befragten an, dass sie mindestens eines von SMACSS, OOCSS, Atomic Design, ITCSS- oder CSS-Module in ihren Projekten.

Es ist auch ein wenig überraschend, aufgrund der relativen Neuheit des Ansatzes zu sehen, dass die Verwendung von CSS-Modulen eine höhere Nutzung als die anderen CSS-Methoden hat.

Für mich sind die relativ geringen Benutzungslevel - und Wissenslevels aus Frage 8 - in den CSS-Methoden zwei Dinge. Die Vielfalt der Arten, auf die Menschen ihr CSS schreiben, ist sehr breit - es gibt keine einzige Methode, auf die Entwickler beim Schreiben ihres CSS hingewiesen zu werden scheinen.

Zweitens, aufgrund der Antworten, die eine große Anzahl von Front-End-Entwicklern für fortgeschrittene CSS-Kenntnisse hält, wenn sie nicht über einige der bekanntesten CSS-Methoden Bescheid wissen. Das Erlernen verschiedener Ansätze zum Schreiben von CSS (wie SMACSS, OOCSS und ITCSS) hilft Ihnen dabei, Ihre eigenen Stile besser zu strukturieren - unabhängig davon, ob Sie sie in Ihrem eigenen Workflow verwenden oder nicht.

CSS kann eine einfache Sprache auf der Oberfläche sein, aber es kann eine komplexe Sprache sein, die man beherrscht und vollständig versteht.

Q10: JavaScript-Kenntnisse

Die zweite Hälfte der Umfrage konzentrierte sich auf JavaScript und sein Werkzeug-Ökosystem.

Zuerst habe ich die Befragten gefragt Wie bewerten Sie Ihr eigenes Wissen über JavaScript und die damit verbundenen Tools und Methoden?

Dies waren die Ergebnisse:

Wissen Anzahl der Stimmen Prozentsatz
Anfänger 197 4.18%
Anfänger (zwischen Anfänger und Fortgeschrittene) 553 11.73%
Mittlere 1555 32.98%
Fortgeschritten (zwischen Mittelstufe und Experte) 1684 35.72%
Experte 726 15.40%
Wie bewerten Sie Ihr eigenes Wissen über JavaScript und die damit verbundenen Tools und Methoden? - Tortendiagramm mit den Ergebnissen

Die Antworten zeigten eine ähnliche Verteilung auf Wissensebene wie in Bezug auf CSS. Die Hauptausnahme liegt in der Anzahl der Befragten, die sich mit fortgeschrittenen JavaScript-Kenntnissen zufrieden geben, was 35,72% entspricht.

Zum Vergleich: 51,12% der Befragten gaben an, dass sie entweder über ein fortgeschrittenes Expertenwissen im JavaScript-Bereich verfügten, verglichen mit 62,99% der Befragten, die dasselbe in Bezug auf ihre CSS-Kenntnisse sagten.

Q11: Aufgabenläufer

Task Runner sind zu einem wichtigen Bestandteil der Arbeitsabläufe vieler Frontend-Entwickler geworden. Aber hat sich dieser Bereich in den letzten 12 Monaten stark verändert oder blieb die Nutzung der Tools und Ansätze konsistent?

Die Frage, die von den Befragten gestellt wurde, lautet: Welchen Task-Läufer bevorzugen Sie in Ihrem typischen Projekt-Workflow?

Werfen wir einen Blick auf die Ergebnisse - wenn möglich, habe ich die prozentuale Veränderung aus der Umfrage aus dem letzten Jahr hinzugefügt:

Aufgaben-Runner Anzahl der Stimmen Prozentsatz % Diff (bis 2015)
Schluck 2.060 43.69% -0,1%
NPM-Skripte 1.223 25.94% + 22.78%
Grunzen 554 11.75% -15.81%
Machen 54 1,15% N / A
GUI-Anwendung (zB Codekit) 93 1,97% N / A
Sonstiges (bitte angeben) 214 4.54% -0,34%
Ich benutze keinen Aufgabenläufer 517 10.97% -8.56%
Welchen Aufgabenläufer bevorzugen Sie in Ihrem typischen Projekt-Workflow? (falls vorhanden) - Tortendiagramm mit den Ergebnissen

In Bezug auf die Ergebnisse ist Gulp mit 43,69% (2.060) der Antworten immer noch der klare Anführer, wenn es um Front-End-Aufgabenläufer geht.

Die größte Bewegung besteht in der Verwendung von NPM-Skripten, die einen Anteil von 25,94% (1.223) der Antwort erhalten haben. Damit ist sie das am zweithäufigsten genutzte Tool für Task-Runner. Das ist eine Steigerung von 22,8% im Vergleich zu den Vorjahreszahlen. Dies deutet darauf hin, dass mehr Front-End-Entwickler versuchen, ihre Build-Aufgaben zu vereinfachen und die Abstraktionsschicht wegzunehmen, die Tools wie Gulp und Grunt bereitstellen.

In der Zwischenzeit hat Grunt einen deutlichen Rückgang der Nutzung erfahren. Nur 11,75% der Befragten gaben an, dass sie das Tool lieber verwenden - ein Rückgang von über 15% gegenüber 2015.

Interessanterweise ist die Anzahl der Befragten, die keinen Task-Runner verwenden, auf nur 10,97% gesunken (gegenüber 19,5% im letzten Jahr). Dies zeigt, dass die überwältigende Mehrheit der Front-End-Entwickler jetzt ein Task-Running-Tool für ihre Projekte einsetzt.

Q12: Kenntnisse von JavaScript-Bibliotheken und Frameworks

Das war eine der Fragen, auf die ich am meisten gespannt war. Wie haben sich die Kenntnisse der beliebtesten JavaScript-Bibliotheken und -Frameworks im letzten Jahr verändert?

Zum Zeitpunkt der Umfrage 2015 war React ein relativer Newcomer, der bei Angular noch an Boden gewinnt. Seitdem hat das Angular-Team die Version 2 des Frameworks veröffentlicht, aber haben die Entwickler damit angefangen, zu migrieren?

Hier ist, was die Ergebnisse zeigen:

Niemals davon gehört Gehört von / lesen über Gebraucht ein wenig Sich wohl fühlen mit
jQuery 0,11% (5) 0,85% (40) 12,17% (574) 86,87% (4.096)
Unterstreichen 10,22% (482) 28,12% (1.326) 24,41% (1,151) 37,24% (1.756)
Lodasch 15,89% (749) 26,70% (1,259) 19,75% (931) 37,67% (1.776)
Rückgrat 4,31% (203) 58.13% (2.741) 23,01% (1.085) 14,55% (686)
Eckig 1 0,66% (31) 40,21% (1,896) 30,43% (1.435) 28,70% (1.353)
Eckig 2 0,89% (42) 73,59% (3,470) 20,19% (952) 5,32% (251)
Glut 3,75% (177) 78,41% (3.697) 11,71% (552) 6,13% (289)
Reagieren 0,76% (36) 42,29% (1.994) 28,04% (1,322) 28,91% (1.363)
Polymer 13,55% (639) 72,68% (3,427) 11,75% (554) 2,01% (95)
Aurelia 43,71% (2.061) 50,03% (2.359) 3,20% (151) 3,05% (144)
Vue.js 14,68% (692) 66,55% (3.138) 13,11% (618) 5.66% (267)
MeteorJS 9,59% (452) 75,91% (3.579) 11,69% (551) 2,82% (133)
Schlagen 16,14% (761) 66,62% (3.141) 11,33% (534) 5,92% (279)
Bitte geben Sie an, in welchen JavaScript-Bibliotheken und / oder Frameworks Sie Erfahrung haben - Balkendiagramm mit den Ergebnissen

Wie im letzten Jahr ist jQuery nach wie vor die Bibliothek oder das Framework mit dem höchsten Prozentsatz der Befragten - 86,87% (4.096) -, die sagten, dass sie sich damit wohl fühlen. Tatsächlich gaben über 99% der Befragten an, dass sie es zumindest ein wenig benutzt hätten, was für jedes Tool ziemlich bemerkenswert ist.

Sowohl Underscore (37,24%) als auch Lazash (37,67%) hatten ebenfalls eine beträchtliche Anzahl von Befragten, die sagten, dass sie sich wohl fühlten.

Wenn man sich die großen JS-Frameworks anschaut, ist das wachsende Wissen von React die bemerkenswerteste Veränderung gegenüber dem letzten Jahr. Es hat nicht nur Angular 1 (das führende MVW-Framework letztes Jahr) eingeholt, sondern es sogar geschafft, es sogar etwas zu übertreffen, mit 28,91% (1363) der Entwickler, die sagen, dass sie es bequem nutzen, verglichen mit 28,70% (1.353) von denen, die dasselbe über Angular 1 sagten.

Es ist auch interessant zu sehen, dass die Aufnahme von Angular 2 bisher ziemlich langsam war, wobei 20,19% der Befragten angaben, dass sie es ein wenig genutzt hatten, aber nur 5,32% sagten, dass sie sich wohl fühlten. Ich würde vermuten, dass diese Zahl im Laufe der Zeit wachsen wird, aber es wird interessant sein zu sehen, wie viel und wenn es das Niveau erreicht, das Angular 1 derzeit hat.

Betrachtet man die Wissensniveaus in den MV * -Frameworks - alles in der Liste außer jQuery, Underscore und Lazash - 62,23% der Befragten gaben an, dass sie sich bei der Verwendung mindestens eines dieser Frameworks wohlgefühlt haben. Das sind etwas mehr als 12% (von 50,2%), die dasselbe in der letzten Umfrage gesagt haben.

Wie ich letztes Jahr angemerkt habe, ist die Kenntnis von mindestens einem Framework für viele Frontend-Entwickler zu einer wichtigen Fähigkeit geworden.

F13: Welche JavaScript-Bibliotheken und / oder Frameworks verwenden Sie derzeit am häufigsten in Projekten?

Die nächste Frage bezog sich auf die tatsächliche Verwendung der in der vorherigen Frage aufgeführten Bibliotheken und Frameworks.

Die Frage war: Welche JavaScript-Bibliotheken und / oder Frameworks verwenden Sie derzeit am häufigsten für Projekte? mit den Befragten, die eingeladen wurden, alle Bewerbungen auszuwählen.

Hier sind die Ergebnisse:

Anzahl der Stimmen Prozentsatz
jQuery 3284 69.65%
Unterstreichen 714 15.14%
Lodasch 1527 32.39%
Rückgrat 301 6.38%
Eckig 1 1180 25.03%
Eckig 2 387 8.21%
Glut 280 5.94%
Reagieren 1776 37.67%
Polymer 87 1,85%
Aurelia 154 3.27%
Vue.js 456 9.67%
MeteorJS 115 2.44%
Schlagen 156 3.31%
Ich benutze keine dieser Ansätze oder Werkzeuge 132 2.80%
Welche JavaScript-Bibliotheken und / oder Frameworks verwenden Sie derzeit am häufigsten in Projekten? - Balkendiagramm mit den Ergebnissen

Die jQuery-Nutzung war erneut sehr stark, wobei mehr als zwei Drittel (69,65%) der Befragten angaben, dass sie es häufig für ihre Projekte nutzten.

Interessanterweise gaben 37,67% (1.776) der Befragten an, dass sie häufig React verwenden, obwohl dies fast 10% mehr sind als die Zahl derer, die sagten, dass sie sich bei der Beantwortung von Frage 12 wohl gefühlt hätten. Daraus kann geschlossen werden, dass a Eine ordentliche Anzahl derer, die sagten, dass sie es nur ein wenig genutzt haben, nutzen es auch häufig für ihre Projekte.

In Übereinstimmung mit den Ergebnissen von Frage 12 wurde Angular 1 von 25,03% (1.180) der Befragten häufig verwendet, während Angular 2 derzeit mit 8,21% (387) deutlich unter diesem Wert liegt.

Obwohl Lodash und Underscore in den Ergebnissen von Frage 12 ein ähnliches Wissensniveau aufwiesen, erhielt Lodash mehr als doppelt so viele Befragte, die sagten, dass sie es immer noch häufig für ihre Projekte verwenden - 32,39% (1.527) im Vergleich zu nur 15,14% (714). für Underscore.

Eine erwähnenswerte Erwähnung von Vue.js, die in letzter Zeit sehr oft erwähnt wurde, mit 9,67% der Befragten, die sagen, dass sie häufig in ihren Projekten verwendet werden.

F14: Welche JavaScript-Bibliothek oder welches Framework würden Sie für die meisten Ihrer Projekte als wichtig erachten?

In der Frage 14 wurde untersucht, welche JavaScript-Bibliothek oder Framework-Umfrageteilnehmer ihr wichtigstes Tool waren. Die Frage war: Welche JavaScript-Bibliothek oder welches Framework würden Sie für die meisten Ihrer Projekte als wesentlich erachten?

Werfen wir einen Blick auf die Ergebnisse:

Anzahl der Stimmen Prozentsatz
Keiner von ihnen ist wichtig - ich fühle mich wohl dabei, in meinen Projekten natives JavaScript zu verwenden 985 20.89%
jQuery 1468 31.13%
Unterstreichen 38 0,81%
Lodasch 262 5.56%
Rückgrat 38 0,81%
Eckig 1 386 8.19%
Eckig 2 129 2.74%
Glut 178 3,78%
Reagieren 857 18.18%
Polymer 16 0.34%
Aurelia 113 2.40%
Vue.js 148 3.14%
MeteorJS 8 0,17%
Schlagen 17 0.36%
Sonstiges (bitte angeben) 72 1.53%
Welche JavaScript-Bibliothek oder welches Framework würden Sie für die meisten Ihrer Projekte als wesentlich erachten? - Balkendiagramm mit den Ergebnissen

Die Tools, die die meisten Befragten für sie als wesentlich empfanden, waren jQuery mit 31,13% (1.468 Antworten), gefolgt von React mit 18,18% (857) der Stimmen.

20,89% (985) der Befragten gaben an, dass sie nicht glauben, dass eine Bibliothek oder ein Tool notwendig ist - höchstwahrscheinlich aufgrund des zunehmenden Wissens über ES6 (auch bekannt als ES2015).

Dies waren die einzigen Antworten, die mehr als 10% der Stimmen erhielten, wobei Angular 1 mit 8,19% (386) der Antworten die nächstbeste Wahl war.

Am interessantesten ist vielleicht, dass jQuery mit 25,98% der Antworten in dieser Kategorie immer noch die beliebteste Wahl ist, selbst wenn man JS-Kenntnisse auf mittlerem Niveau oder höher einschätzt, verglichen mit 20,06% für das nächste Werkzeug, das React ist.

Es ist klar, dass jQuery immer noch eine wichtige Rolle in den Toolsets vieler Frontend-Entwickler spielt.

Q15: JavaScript-Modul-Bundler

Bei den Ergebnissen der letztjährigen Umfrage waren JavaScript-Modul-Bundler immer noch ein Tool, das von einer Minderheit von Front-End-Entwicklern verwendet wurde. Nur 46,1% der Befragten gaben an, dass sie eines in ihrem eigenen Workflow verwendeten.

Wird sich das in etwas mehr als 12 Monaten geändert haben? Die Frage lautete : Verwenden Sie einen JavaScript Modul Bundler in Ihrem Workflow?

Werfen wir einen Blick auf die Ergebnisse:

Modulbündler Anzahl der Stimmen Prozentsatz % Diff (bis 2015)
Ich benutze keinen Modulbündler 1516 32.15% -21.75%
ErfordernJS 359 7.61% -5.85%
Browserifizieren 510 10.82% -5.65%
Webpaket 1962 41.61% + 31.11%
Aufrollen 79 1,68% N / A
JSPM 108 2.29% + 0,07%
Sonstiges (bitte angeben) 181 3.84% + 0,39%
Verwenden Sie einen JavaScript Modul Bundler in Ihrem Workflow? - Tortendiagramm mit den Ergebnissen

In einer massiven Verschiebung gegenüber dem letzten Jahr verwenden nun 41,61% (1.962) der Befragten Webpack, um ihre Modulbündelung in JavaScript zu handhaben. Damit sind sie in dieser Kategorie klar führend.

Der Prozentsatz derjenigen, die jetzt einen Modulbündler verwenden, ist auf 67,85% (3.199 Antworten) gestiegen, ein Anstieg von über 20% im Vergleich zu den Zahlen des letzten Jahres.

In Bezug auf andere Modulbündelungstools haben sowohl Browserify als auch RequireJS einen Rückgang von 5% verzeichnet, wobei 10,82% und 7,61% der Befragten sagten, dass sie diese entsprechenden Tools verwenden.

Alles in allem ist es toll zu sehen, dass so viele Entwickler Modulbündler einbeziehen. Webpack hat offensichtlich einen wahren Nervenkitzel bei Entwicklern gefunden und gilt nun als wichtigstes Werkzeug, wenn es um die Handhabung von JavaScript-Modul-Abhängigkeiten geht.

Q16: JavaScript-Übersetzer

Die nächste Frage in der Umfrage ist ein Thema, über das in den letzten 12 bis 18 Monaten viel gesprochen wurde.

Die Verwendung eines JS-Transpilers, wie Babel, ermöglicht es Entwicklern, ihr JavaScript von ES6 (ES2015) zurück zu ES5 zu übertragen, so dass sie die neuesten JS-Funktionen verwenden können, während sie gleichzeitig ältere Browser unterstützen.

Die Frage, die ich gestellt habe , lautet: Verwenden Sie ein Tool, um Ihr JavaScript von ES6 nach ES5 zu übertragen? (zB Babel)

Hier sind die Ergebnisse:

Antworten Anzahl der Stimmen Prozentsatz
Ja 2.942 62.40%
Nein - ich habe von diesen Tools gehört, aber keine verwendet 1,443 30.60%
Nein - ich habe noch nie von einem JavaScript-Transpiler gehört 330 7.00%
Verwenden Sie ein Tool, um Ihr JavaScript von ES6 nach ES5 zu übertragen? - Tortendiagramm mit den Ergebnissen

Die Mehrheit - 62,40% (2.942) - der Befragten gaben an, dass sie jetzt einen JavaScript-Transpiler verwenden. Angesichts der kurzen Zeitspanne, in der diese Tools zur Verfügung stehen, zeigt sich, wie wertvoll Entwickler heute mit ES6-Funktionen arbeiten.

Nur 7% (330) der Befragten hatten noch nie von einem JavaScript-Transpiler gehört, was wiederum die bemerkenswerte Reichweite zeigt, die in relativ kurzer Zeit erreicht wurde.

Wenn man sich diese Ergebnisse anschaut, kann man leicht zu dem Schluss kommen, dass das Wissen um ein Transpilationswerkzeug wie Babel für den modernen Front-End-Entwickler zu einer notwendigen Fähigkeit geworden ist.

Q17: JavaScript-Linting

JavaScript Linting, einst ein polarisierendes Thema, ist nun fest in viele Entwicklerworkflows eingebettet. Aber wie viele Leute nutzen einen und gibt es einen klaren Führer unter den Tools, die Frontend-Entwickler verwenden?

Die Frage, die ich gestellt habe, war: Welches Werkzeug verwendest du, um dein JavaScript zu füttern? (wenn überhaupt)

Hier sind die Ergebnisse:

Werkzeug Anzahl der Stimmen Prozentsatz
Ich benutze keinen JavaScript-Linter 1,076 22.82%
JSLint 894 18.96%
JSHint 657 13.93%
ESLint 1.927 40.87%
xo 24 0.51%
Sonstiges (bitte angeben) 137 2.91%
Mit welchem ​​Tool flinken Sie JavaScript? - Tortendiagramm mit den Ergebnissen

Die Mehrheit der Befragten - 77,18% (3.639 Personen) - gaben an, dass sie ein Tool verwenden, um ihr JavaScript zu füttern .

Vergleicht man dies mit den früheren Ergebnissen in Bezug auf CSS-Linting, gibt es eine offensichtliche Diskrepanz zwischen denen, die sich für JavaScript entscheiden, und denjenigen, die das gleiche mit CSS tun - eine Differenz von 29,84%, nur 47,34% der Befragten zeigte an, dass sie ein Tool zum flinken CSS verwendeten.

40,87% (1.927) der Befragten gaben an, dass ESLInt das von ihnen verwendete Tool sei und damit das beliebteste Linting-Tool sei, gefolgt von JSLint mit 18,96% (894) und JSHint mit 13,93% (657).

Es ist großartig zu sehen, dass Linting bei der Entwicklung von JavaScript mittlerweile zur Norm gehört, insbesondere angesichts der Vorteile, die es für die Codequalität und -konsistenz bringt.

Q18: JavaScript-Test

Das nächste Thema lieferte einige der interessantesten Ergebnisse der letztjährigen Umfrage.

Letztes Jahr sagte die Mehrheit der Befragten (59,66%), dass sie kein Tool zum Testen ihres JavaScript verwenden. Verwenden mehr Entwickler ein Jahr lang JS-Testtools?

Die Frage, die ich gestellt habe, war: Welches Tool verwendest du, um dein JavaScript zu testen? (wenn überhaupt)

Werfen wir einen Blick auf die Ergebnisse:

Werkzeug Anzahl der Stimmen Prozentsatz % Diff (bis 2015)
Ich benutze kein Werkzeug, um mein JS zu testen 2.241 47.53% -12.13%
Jasmin 802 17.01% +0,64
Mokka 1,061 22.50% + 7.46%
Band 69 1.46% -0,02%
Ava 84 1.78% N / A
QUnit 199 4.22% + 0,37%
Scherz 164 3.48% + 2.69%
Sonstiges (bitte angeben) 95 2.01% + 0,33%
Mit welchem ​​Tool testen Sie JavaScript? - Tortendiagramm mit den Ergebnissen

Wenn man sich die Ergebnisse anschaut, zeigen die Zahlen einige Veränderungen seit der letzten Umfrage.

Die Spanne zwischen den Testpersonen und denen, die dies nicht tun, ist jetzt ziemlich ausgeglichen. 47,53% (2.241) der Befragten gaben an, dass sie kein Tool verwenden, um ihre JavaScript-Tests zu unterstützen. Diese Zahl ist gegenüber dem Vorjahr um 12,13% gesunken.

Dies bedeutet, dass die Mehrheit der Befragten - 52,47% (2.474) - ein Tool verwenden, um ihr JavaScript zu testen. Dies zeigt, dass mehr Front-End-Entwickler die Vorteile des Lernens und Verwendens eines Tools zum Testen ihres JavaScript sehen, was - ich persönlich denke - großartige Neuigkeiten sind.

Diejenigen, die ihre JS testen, waren Jasmine mit 17,01% der Antworten und Mocha mit 22,50%. Mocha hat die größten Zuwächse zu verzeichnen, mit einem Anstieg der Nutzung um 7,46% gegenüber den Zahlen des letzten Jahres, was es zum beliebtesten Testwerkzeug macht.

Jest verzeichnete auch einen Anstieg der Nutzung um 2,69%, wobei 3,48% (164) der Befragten sagten, dass sie es jetzt als ihr primäres JS-Test-Tool verwenden.

All in all, I think this shows a positive step from last years figures on JavaScript testing, but there is clearly more work to be done to reduce the gap in knowledge of testing tools among front-end developers.

Q19: Miscellaneous Tools

The final question of the survey was to find out more information on tools that don't quite fit into the questions that have been asked so far.

The list this year consisted of package management tools – Bower, NPM and Yarn – as well as Babel, a popular JS transpilation tool, Yeoman and TypeScript.

Respondents were asked to Please indicate your experience with the following front-end tools .

Here is how people responded:

Never Heard of Heard of/Read About Used a little Feel Comfortable Using
Laube 2.52% (119) 21.34% (1,006) 33.96% (1,601) 42.18% (1,989)
NPM 1.76% (83) 4.01% (189) 14.15% (667) 80.08% (3,776)
Garn 21.40% (1,009) 50.56% (2,384) 14.32% (675) 13.72% (647)
Babel 7.15% (337) 29.20% (1,377) 24.16% (1,139) 39.49% (1,862)
Yeoman 11.56% (545) 41.53% (1,958) 33.47% (1,578) 13.45% (634)
Typoskript 6.68% (315) 60.87% (2,870) 19.53% (921) 12.92% (609)
Please indicate your experience with the following front-end tools – Bar Chart showing the results

The most well-known tools in this list were NPM, with a huge 80.08% of respondents saying that they feel comfortable using it, Bower with 42.18% and Babel with 39.49%.

It's interesting to see that although Yarn has only been around a few months, 78.6% of respondents had at least heard of it or used it in some way.

The number of respondents who felt comfortable using Yeoman, TypeScript and Yarn was fairly low, with these tools receiving between 12-14% in that category.

Zusammenfassung

So that's it – you made it through! But what conclusions can we make from the survey overall?

As with last years results, the adoption rate of front-end tools shows no signs of letting up, with tools such as Webpack and JavaScript transpilers becoming ever more essential in our workflows.

Although there has been a lot of talk about front-end developers moving away from using jQuery, the results show that usage and knowledge levels are still unrivalled in comparison with any other JavaScript tool of it's kind.

The great news is that more people seem to be using a JavaScript testing tool than not, showing that more front-end developers are embracing the value that these tools provide.

Looking specifically at CSS, the adoption of methodologies, linting and naming schemes seems to be a bit slower. This is most noticeable when comparing the number of respondents linting their CSS compared to those doing the same with their JavaScript.

Whether this is down to developers seeing less value in investing their time in learning these tools is unclear. I'd encourage anyone reading this to put the time into learning some of the more popular CSS methodologies and tools such as SMACSS, OOCSS, CSS Modules and BEM. They really do help broaden your knowledge of CSS in terms of learning ways to structure and maintain your CSS, so that you can then choose the approach that best works for you.

If anyone has any questions about any of the results, or would like me to look at other cross sections of the responses, message me on Twitter and I'll do my best to help!

Originally published Hier , republished with the writer's permission.