2016 ist erst drei Jahre her, aber das ist in Bezug auf die Webentwicklung fast eine ganze Ära. Die JavaScript-Landschaft war im Umbruch, und der aufstrebende React – sowie ein wenig bekanntes Framework namens Vue – kämpften darum, Angular zu entthronen.
Wie viele andere Entwickler fühlte ich mich verloren. Ich brauchte Klarheit und ich dachte mir, der beste Weg, sie zu bekommen, sei, einfach Kollegen zu fragen, was sie verwendeten und, was noch wichtiger war, was sie *gerne* verwendeten. Das Ergebnis war die allererste Ausgabe der inzwischen jährlichen State of JavaScript Umfrage.

Seitdem hat sich die Situation in der JavaScript-Welt stabilisiert. Es stellt sich heraus, dass man mit keinem der drei großen Frameworks wirklich falsch liegen kann, und selbst weniger Mainstream-Optionen wie Ember haben leidenschaftliche Communities aufgebaut und zeigen keine Anzeichen, sich zurückzuziehen.
Aber während all unsere Aufmerksamkeit auf JavaScript fixiert war, braute sich in der CSS-Welt Unheil zusammen. Jahrelang war mein Eindruck von der Entwicklung von CSS ein langsamer, inkrementeller Fortschritt. Damals war ich ziemlich sicher, dass die Unterstützung für border-radius die krönende, endgültige Errungenschaft der Webbrowser-Technologie darstellte.
Aber plötzlich ging es bergauf. Flexbox kam heraus und stellte die erste neue und weit verbreitete Layout-Methode seit über einem Jahrzehnt dar. Und Grid folgte kurz darauf und fegte Jahre von Hacky-Grid-Frameworks in die Gosse schlechter CSS-Praktiken.
Etwas noch Verrückteres geschah: Nachdem die JavaScript-Leute aufgehört hatten, alle zwei Wochen ein neues Framework zu erstellen, beschlossen sie, all ihre zusätzliche Freizeit damit zu verbringen, CSS noch besser zu machen! Und so wurde CSS-in-JS geboren.
Und jetzt ist es 2019, und der Flexbox Cheatsheet Tab, den ich die letzten zwei Jahre offen gelassen habe, wurde nun um ein Grid Cheatsheet ergänzt, denn egal wie oft ich sie benutze, ich muss immer noch die Syntax nachschlagen. Und obwohl ich eine beliebte Einführung in CSS-in-JS geschrieben habe, greife ich bei neuen Projekten immer noch faul auf vertrautes Sass zurück und verspreche mir selbst, dass ich es beim nächsten Mal "richtig machen" werde.
All das nur, um zu sagen, dass ich mich im Jahr 2019 mit CSS genauso verloren und verwirrt fühle wie 2016 mit JavaScript. Es ist höchste Zeit, dass CSS eine eigene Umfrage bekommt.
Von Grund auf neu beginnen
Die Idee für eine CSS-Umfrage zu entwickeln war einfach, aber die Fragen selbst auszuwählen war alles andere als einfach. Wie gesagt, ich war mir meiner eigenen CSS-Kenntnisse nicht sicher, und einfach zum 37. Mal nach Sass vs. Less zu fragen, erschien mir wie eine verpasste Gelegenheit...
Glücklicherweise beschlossen die CSS-Götter, mich anzulächeln: Während der DotJS Konferenz in Frankreich entdeckte ich, dass nicht nur der ebenfalls vortragende Florian Rivoal, wie ich, in Kyoto, Japan lebte; sondern dass er auch Mitglied der CSS Working Group war! Mit anderen Worten, einer der Menschen, die am meisten über CSS wissen, lebte nur ein paar Zugstationen von mir entfernt!
Florian war eine riesige Hilfe bei der Entwicklung der Gesamtstruktur und des Inhalts der Umfrage. Und er half mir auch zu erkennen, wie wenig ich wirklich über CSS wusste.

Du kennst CSS nicht
Ich spreche hier nicht nur von obskuren CSS-Eigenschaften oder gar neuen aufkommenden, sondern davon, wie CSS *selbst* entwickelt wird. Wussten Sie zum Beispiel, dass die Entwicklung der CSS Grid Spezifikation von Bloomberg gesponsert wurde, weil sie eine Möglichkeit brauchten, das Layout ihres berühmten Terminals ins Web zu portieren?
Haben Sie jemals darüber nachgedacht, was top: 30px auf einem runden Bildschirm, wie dem einer Smartwatch, bedeuten soll? Oder wussten Sie, dass einige Leute ganze *gedruckte* Bücher in CSS layouten, und damit Software wie InDesign ersetzen?
Das Gespräch mit Florian erweiterte meinen Geist enorm, wie breit und interessant CSS wirklich ist, und überzeugte mich, dass die Umfrage es wert war.

Über diese Kluft...
Die Idee einer CSS-Umfrage wurde umso wichtiger, als meine neu entdeckte Bewunderung für CSS mit der allgemeinen Meinung zusammenzufallen schien, dass HTML- und CSS-Kenntnisse im Angesicht der JavaScript-Hegemonie immer weniger geschätzt wurden.
Ich persönlich habe es immer genossen, ein Generalist zu sein, in dem Sinne, dass ich glücklich von einer Seite der großen Kluft zur anderen springe, wann immer ich Lust habe. Gleichzeitig bin ich auch zutiefst davon überzeugt, dass die Welt Spezialisten wie Florian braucht; Menschen, die ihr Leben der Förderung und Verbesserung eines einzigen Aspekts des Webs widmen.
Die Arbeit von Generalisten abzuwerten ist nicht nur unfair, sondern auch kontraproduktiv – schließlich sind HTML und CSS das Fundament, auf dem alle modernen JavaScript-Frameworks aufgebaut sind; und andererseits werden neue Muster und Ansätze, die von CSS-in-JS-Bibliotheken entwickelt wurden, hoffentlich früher oder später ihren Weg zurück ins Vanilla-CSS finden.
Glücklicherweise habe ich das Gefühl, dass nur eine Minderheit von Entwicklern diese Ansichten vertritt, und diejenigen, die dies tun, tun dies im Allgemeinen eher aus Unwissenheit darüber, wofür die "andere Seite" wirklich steht, als aus einer fundierten Meinung heraus.
Und da kommt die Umfrage ins Spiel: Ich sage nicht, dass ich die Kluft füllen kann, aber vielleicht kann ich ein paar Gehwege darüber schlagen oder ein paar Jetpacks verteilen – Sie wissen schon, was auch immer funktioniert. 🚀
Wenn Ihnen das gefällt, dann ist der erste Schritt – Sie haben es erraten – die Umfrage auszufüllen!
„Die Idee einer CSS-Umfrage wurde umso wichtiger, als meine neu entdeckte Bewunderung für CSS mit der allgemeinen Meinung zusammenzufallen schien, dass HTML- und CSS-Kenntnisse im Angesicht der JavaScript-Hegemonie immer weniger geschätzt wurden.“
Ich liebe diesen Teil
Ich mache jetzt normalerweise Backend-Entwicklung, nach Jahren der Frontend-Entwicklung, und wurde kürzlich in ein Frontend-Projekt hineingezogen. Ich war sofort erstaunt, dass sich CSS tatsächlich verändert hatte! Seit wann dürfen wir diesen Flex-Unsinn benutzen? Ich gehe zu caniuse und dort steht, dass ich die Dinge benutzen kann! Wann ist das passiert?
Zu meiner Zeit hatten wir nur Floats und wenn etwas schief ging, border: 1px solid red, UND WIR WAREN DANKBAR!
Daher danke ich Ihnen für diesen Beitrag. Er ist eine Erinnerung daran, dass man in jedem Bereich einen Experten kratzen kann und immer noch einen Typen findet, der sich durchwurstelt, nur auf einem etwas höheren Niveau aufgrund jahrelang erworbener Weisheit, und dass man nie aufhören darf zu lernen ;)