Die jährlichen Umfragen State of JavaScript, State of CSS und State of GraphQL sind Schöpfungen des Entwicklers und Entrepreneurs Sacha Greif. Seine Umfragen haben sich inzwischen zu Happenings entwickelt, die von der Frontend-Entwickler-Community mit Spannung verfolgt und erwartet werden. Hier ein kleiner Einblick:
Die Kollegen unserer US-Schwesterpublikation InfoWorld hatten vor kurzem die Gelegenheit zu einem persönlichen Stelldichein mit Sacha Greif, welches wir Ihnen nicht vorenthalten wollen. Im Interview erklärt der State-of-JavaScript-Visionär unter anderem, wie er auf die Idee für seine Umfragen kam und was er bei der Entwicklung der dafür notwendigen, wiederverwendbaren Infrastruktur lernen konnte. Darüber hinaus erfahren Sie auch, welche (Technologie-) Trends in den Augen des Entrepreneurs künftig die Frontend-Entwicklung prägen werden.
"State of React ist unser nächstes Projekt"
Hallo Sacha, vielen Dank für einen weiteren aufschlussreichen State-of-JavaScript-Report. Alle drei von dir erstellten Umfragen erfordern enormen Aufwand und insbesondere State of JavaScript hat sich dabei zu einem öffentlichen Gut entwickelt, auf das sich die Community verlassen kann. Was motiviert Sie, an diesem Projekt weiterzuarbeiten?
Sacha Greif: Es motiviert mich, an etwas zu arbeiten, das den Leuten am Herzen liegt. Die Umfragen sind auch eine Chance, einen (hoffentlich positiven) Einfluss auf die Webentwicklung zu nehmen und dabei mit einer ganzen Reihe von Technologien zu arbeiten. Darüber hinaus hoffe ich, dass ich irgendwann in der Zukunft ein nachhaltiges Business rund um die Umfragen aufbauen kann.
Haben Sie jemals daran gedacht, auch andere Sprachen und Plattformen im Rahmen einer State-of-Programming-Umfrage mit einzubeziehen?
Greif: Das ist für die Zukunft definitiv angedacht. Das nächste Projekt auf unserer Liste ist jedoch aller Voraussicht nach eine State-of-React-Umfrage.
Wie und warum wollten Sie über JavaScript und CSS hinausgehen?
Greif: Wir wollten schon seit einiger Zeit weitere Umfragen auf die Beine stellen. Dabei schien GraphQL eine gute Wahl, um über CSS und JavaScript hinauszugehen. Ich benutze GraphQL auch selbst und unsere Survey-Infrastruktur basiert darauf. Und es gibt in diesem Bereich diverse Fragen rund um GraphQL-Tools, Best Practices oder auch unterschiedlichen Ansätzen - darum war es für uns naheliegend, auch diese Community mit einer Umfrage anzusprechen.
Hat das Projekt wesentlich mehr Aufwand erfordert, als Sie dachten?
Greif: Ich würde sagen, dass der Aufwand bei circa 50 Prozent dessen lag, was wir für die letztjährigen Umfragen zum Stand von JavaScript und CSS investiert haben. Das liegt vor allem daran, dass unsere Infrastruktur allmählich reift und wir mehr Komponenten wiederverwenden können. Zudem habe ich mich von einigen Ideen verabschiedet, etwa ein benutzerdefiniertes GraphQL-Shirt anzubieten oder neue Datenvisualisierungen einzuführen.
Geben Sie uns einen Einblick in Ihre Teamstrukturen: Wie viele Leute tragen zu den State-of-Umfragen bei? Und wie können sich Außenstehende dabei einbringen?
Greif: Im Wesentlichen besteht unser Team heute aus Eric Burel und mir. Darüber hinaus haben wir auch einige feste Kontributoren wie Lea Verou, die in diesem Jahr für das Design der "State of CSS"-Umfrage verantwortlich zeichnet. Wie sich die Community bei den Surveys einbringen kann, erläutere ich in einem ausführlichen Blogpost.
Was schätzen Sie am meisten, wenn es darum geht, mit der Entwickler-Community zusammenzuarbeiten?
Greif: Die Umfragen ermöglichen mir, mit diversen Persönlichkeiten zu interagieren, zu denen ich aufschaue und von denen ich lerne. Davon abgesehen, stärkt die Arbeit mit der Community natürlich auch das Zusammengehörigkeitsgefühl. Umgekehrt motivieren die Surveys aber auch andere Menschen, sich mit mir in Verbindung zu setzen, was ich ebenfalls sehr schätze.
"Performance wird immer wichtiger"
Was denken Sie über Machine Learning und Code-Generierung durch KI-Instanzen? Rechnen Sie damit, dass diese Technologien Developer obsolet machen?
Greif: Was die KI-Code-Generierung angeht, habe ich mir noch keine abschließende Meinung gebildet. Sehr wahrscheinlich wird es jedoch zu einem weiteren Referenz-Tool wie Stack Overflow werden. Dass Entwickler dadurch überflüssig werden könnten, sehe ich nicht. Erstens braucht man schließlich jemanden, der den Originalcode schreibt, den die KI für ihr Modell verwendet. Zweitens jemanden, der überprüft, ob der von der KI geschriebene Code funktioniert. Bestenfalls könnte man also argumentieren, dass die Entwickler immer mehr zu Reviewern werden und weniger selbst coden. Als alter Open-Source-Hase kann ich Ihnen an dieser Stelle allerdings versichern, dass ein Code Review oft mehr Arbeit bedeutet, als eigenen Code von Grund auf neu zu schreiben.
Was war der ursprüngliche Impuls dafür, State of JavaScript auf die Beine zu stellen? Wie sind Sie darauf gekommen?
Greif: Ursprünglich wollte ich damit in erster Linie meine eigenen Fragen beantworten. Damals hatte ich viel mit dem All-in-One-JavaScript-Framework Meteor zu tun. Als ich dieses Ökosystem verlassen habe, fühlte ich mich ein wenig verloren. Und ich musste feststellen, dass beispielsweise die populärsten Bibliotheken nicht immer auch die beste Developer Experience bieten.
Können Sie uns auch einen Einblick geben, wie Sie die JavaScript-Umfrage-App und -Website "reusable" gestaltet haben?
Greif: Die Umfragen als einmalige Projekte durchzuführen, war bereits ein massiver Task. Was wirklich große Anstrengungen erforderte, war jedoch der Aufbau der wiederverwendbaren Infrastruktur - die uns ermöglichte, weiter Survey-Themen aufzusetzen. Inzwischen betreiben wir zwei Next.js-Apps, zwei Node.js-GraphQL-APIs, eine Gatsby- und eine Astro-Codebasis. Sie können sich sicher vorstellen, dass es einige Zeit in Anspruch nimmt, diese Code-Mengen zu pflegen.
Wir sind jedoch zuversichtlich, dass wir irgendwann den Punkt erreichen, an dem eine neue Survey nur noch kleinere Änderungen am Design und Tasks in Sachen Datenvisualisierung aufwirft. Alles andere sollte dann auf Grundlage unserer bereits geleisteten Arbeit bereits reibungslos funktionieren.
Das hört sich nach einer Menge Arbeit an, sowohl was den Code als auch was die Infrastruktur betrifft. Können Sie an dieser Stelle auch etwas über die Architektur verraten?
Greif: Der wesentliche Unterschied zwischen den "State of"-Umfragen und anderen, traditionelleren Surveys besteht - zumindest aus technischer Perspektive - darin, dass alle unsere Daten über eine Live-API zur Verfügung gestellt werden, statt sie einmal mit Skripten zu kompilieren.
Das ermöglicht es uns, Features wie den neuen Data Explorer oder Chart Filters anzubieten, bei denen die Endbenutzer dynamisch auswählen können, welche Variablen sie vergleichen und wie sie bestehende Diagramme optimieren möchten, um personalisierte Visualisierungen und hoffentlich auch neue Erkenntnisse zu gewinnen.
Interesting find: when you split developers into two groups based on <5 yrs vs >5 yrs of experience, the more experienced group almost always has a slightly more negative opinion about libraries. pic.twitter.com/LYcwNMT9pU
— Sacha Greif @sachagreif@hachyderm.io (@SachaGreif) January 30, 2023
Verwenden Sie auch Edge- oder Serverless-Implementierungen wie Vercel? Oder gibt es Überlegungen in diese Richtung?
Greif: Wir nutzen Vercel, um unsere Umfrage-App zu hosten - haben uns darüber hinaus aber noch nicht besonders mit diesem Bereich beschäftigt.
Was wird Ihrer Meinung nach im Jahr 2023 in der Frontend-Entwicklung passieren? Gibt es wichtige Trends?
Greif: Der wichtigste Trend ist in meinen Augen, dass Performance immer wichtiger wird - und, dass mehr Dinge auf Servern abgewickelt werden. Das könnte unerwartete Folgen haben - etwa eine Rückbesinnung auf die Verwendung kleinerer, Single-use JavaScript-Bibliotheken, die nicht Teil eines großen Frameworks sind. (fm)
Dieser Beitrag basiert auf einem Artikel unserer US-Schwesterpublikation InfoWorld.