Eine Zusammenstellung von Erkenntnissen zu den größten Problemen von Entwicklern, die aus einer Reihe von Einzelgesprächen stammen.
Vor einigen Monaten hat Paul Kinlan einen Beitrag zu den größten Problemen für Entwickler im Jahr 2021 veröffentlicht. Daher ist es angebracht, diesen Artikel mit einem Update zu den letzten beiden Quartalen zu beginnen. Die Zahlen haben sich etwas verschoben, das Ranking ist aber gleich geblieben.
Herausforderung | 1. Quartal 2021 | 2. Quartal 2021 | 3. Quartal 2021 | 4. Quartal 2021 |
---|---|---|---|---|
Mit Änderungen an der Webplattform oder an Webstandards Schritt halten | 27 % | 26 % | 27 % | 22 % |
Mit einer großen Anzahl neuer und vorhandener Tools oder Frameworks Schritt halten. | 26 % | 26 % | 25 % | 21 % |
Ein Design oder eine Funktion soll in allen Browsern gleich funktionieren. | 26 % | 28 % | 24 % | 21 % |
Browserübergreifende Tests | 23 % | 24 % | 20 % | 20 % |
Sicherheitsmaßnahmen verstehen und implementieren | 23 % | 25 % | 20 % | 19 % |
Wie in Pauls Blogpost erwähnt, müssen wir diese Probleme angehen. Im Rahmen einer größeren Initiative dazu haben mein Kollege Kadir Topal und ich über 18 Entwickler interviewt. Unser Ziel ist es, die größten Probleme von Entwicklern zu untersuchen und zu beheben.
Entwicklerdiskussionen
Haftungsausschluss:Diese Informationen basieren auf einer kleinen Anzahl von Gesprächen mit Entwicklern. Wenn „alle“ oder „einige“ verwendet wird, bezieht sich das auf die befragten Entwickler, nicht auf die gesamte Community. Es sind weitere Untersuchungen erforderlich, um diese Erkenntnisse zu verallgemeinern.
Diese Gespräche haben uns noch einmal gezeigt, wie großartig und vielfältig die Webentwickler-Community ist. Wir möchten uns bei allen Entwicklern bedanken, die mit uns gesprochen haben. Einige Entwickler hatten über 25 Jahre Erfahrung, andere begannen erst 2020. Einige Entwickler haben ihre Karriere mit einem formalen Informatikstudium begonnen, andere haben sich selbstständig gemacht. Einige Entwickler suchen aktiv nach Neuigkeiten und informieren sich über Browser-Versionshinweise, während andere von Kollegen und Freunden über Neuerungen erfahren. Einige sehen Komplexität als Teil des Jobs und freuen sich über Herausforderungen, während andere einfach nur ihre Arbeit erledigen möchten. Wenn wir überlegen, wie wir diese Probleme lösen können, ist es wichtig, diese Vielfalt im Hinterkopf zu behalten.
Alle Entwickler verwenden ein CMS oder ein Framework, um ihre Arbeit zu erledigen. WordPress, React, Bootstrap, Angular und Tailwind wurden alle erwähnt. Keiner der Entwickler verwendete die reine Webplattform in der Produktion. Die Auswahl eines Frameworks zu Beginn eines Projekts ist eine Herausforderung, bei der Entwickler häufig nicht technische Anforderungen berücksichtigen. Dazu gehört beispielsweise, ob es einfach sein wird, einen Entwickler für die Arbeit mit diesem Framework einzustellen. Wir können die Probleme von Entwicklern nicht beheben, wenn Frameworks und CMS nicht in der Lösung enthalten sind.
Die meisten Entwickler betrachten die Webplattform als die Grundlage, auf der sie entwickeln. Dazu gehört nicht nur die klassische Definition der Webplattform, sondern auch die CMSs, Frameworks, Tools und Polyfills. In vielen Fällen liegt hier die größte Schwierigkeit. Das hat unsere Interpretation dieser Frage verändert. Wir wissen jetzt, dass wir unsere Umfrage aktualisieren müssen, um sie in verschiedene, weniger mehrdeutige Teile zu unterteilen.
Ein weiterer Bereich, in dem es zu Unklarheiten kommen kann, ist die Definition von Webstandards. Auf die Frage nach Beispielen für die Einhaltung von Standards wiesen viele Entwickler stattdessen auf Schwierigkeiten bei der Einhaltung von Best Practices hin. Auch hier müssen wir in der Umfrage für Klarheit sorgen.
Entwickler suchen nach Best Practices für die Implementierung bestimmter Anwendungsfälle und Muster. Blogbeiträge und StackOverflow werden als Quellen für Best Practices genannt. Entwickler fragen sich jedoch oft, ob die Informationen, die sie lesen, tatsächlich Best Practices sind und ob sie mit den neuesten Funktionen und APIs auf dem neuesten Stand sind. Sie möchten eine offiziellere Quelle, um diese zu lesen.
Es ist weniger problematisch, mit Funktionen und APIs Schritt zu halten, die neue Anwendungsfälle ermöglichen. Entwickler haben mehr Probleme mit Funktionen, APIs und Änderungen an der Plattform, die zu einer Änderung der Best Practices führen.
Die meisten Entwickler sind sich einig, dass die Kompatibilität eine der größten Herausforderungen ist. Durch Initiativen wie Compat 2021 und Interop 2022 hat sich die Situation verbessert, aber Entwickler sehen das Problem noch nicht als gelöst an.
Die meisten Entwickler verwenden Polyfills auf die eine oder andere Weise. In vielen Fällen ist die Verwendung für Entwickler jedoch transparent, da das Polyfill automatisch von einem Tool wie Babel oder einem Framework hinzugefügt werden kann. Für diejenigen, die ihre Polyfills selbst verwalten, kann es schwierig sein, herauszufinden, ob ein Polyfill „gut“ ist. Entwickler haben erwähnt, dass sie die Anzahl der Installationen auf NPM und den Ersteller des Polyfills als Signale verwenden. Einige Entwickler haben erwähnt, dass sie Polyfills entfernt haben, die durch die Einstellung der Unterstützung für IE 11 überflüssig geworden sind.
Frameworks führen zu Fragmentierungsproblemen. Wir haben gehört, dass Entwickler in einer älteren Version eines Frameworks „feststeckten“ und daher nur eingeschränkte Funktionen nutzen konnten. Die Migration zu einer neueren Version desselben Frameworks war jedoch kostspielig und schwer zu rechtfertigen.
Fazit
Die moderne Webentwicklung umfasst viele Komponenten, darunter Standards, Browser, Bibliotheken, Polyfills, CMSs, Frameworks, Best Practices und Tools. Diese Vielfalt ist einer der großen Vorteile des Internets. Derzeit liegt es jedoch an jedem Entwickler, die einzelnen Komponenten zu verstehen und herauszufinden, wie sie miteinander kompatibel sind.
Ich frage mich, ob es eine Möglichkeit gibt, Entwicklern mehr Klarheit darüber zu verschaffen, wie alles zusammenhängt, und mehr Abstimmung zwischen den einzelnen Teilen zu erreichen, ohne die Vielfalt zu beeinträchtigen. Es ist ein großes, komplexes Problem, das sich nicht auf einmal lösen lässt. Aber wo soll man anfangen?
Wenn Sie Ihre Ansichten und Meinungen teilen möchten. Ich würde mich auch gern mit dir unterhalten. Ich werde eine Möglichkeit für Buchungsgespräche einrichten, aber in der Zwischenzeit sind meine Direktnachrichten auf Twitter geöffnet. Melden Sie sich bei uns, damit wir einen Termin für ein Gespräch vereinbaren können.