© svetabelaya/Shutterstock.com
Sulu CMS mit dem Blick auf eine gute Developer Experience

Auf den Schultern von Riesen bauen


Als wir 2013 mit der Arbeit an Sulu anfingen, war der CMS-Markt überfüllt. Wir hätten auf ein eigenes CMS verzichten können, zugunsten eines der anderen auf dem Markt. Aber uns fehlte ein System mit hervorragender Developer Experience (DX).

Was ist Developer Experience? Und warum ist es wichtig? Es wird oft versucht, zu viele Probleme zu lösen, was zu aufgeblähten Systemen führt. Und viele versuchen, Probleme auf ihre eigene Weise zu lösen. Das Ergebnis: steile Lernkurven und hart erarbeitete Kenntnisse, die man nicht wiederverwenden kann. All dies sind Zutaten für eine miese Developer Experience (Entwicklererfahrung, DX) und viel Frustration. Devs (uns selbst!) an erste Stelle zu setzen, war schon immer eine unserer Hauptmotivationen. Wir wollten sich wiederholende, übermäßig komplizierte oder überflüssige Aufgaben vermeiden, um stattdessen möglichst viel wichtige und interessante Arbeit leisten zu können. Zum Glück gewinnt DX allmählich an Aufmerksamkeit, und es gibt Konferenzen, die sich diesem Thema widmen.

Laut den Forschern Fabian Fagerholm und Jürgen Münch [1] besteht die Developer Experience aus Erfahrungen mit allen Arten von Artefakten und Aktivitäten, denen ein Entwickler im Rahmen seiner Beteiligung an der Softwareentwicklung begegnen kann. Ihnen zufolge kann DX in folgende Bereiche unterteilt werden:

  • Entwicklungsinfrastruktur

  • Gefühle der Entwickler bezüglich ihrer Arbeit (z. B. Respekt, Bindung, Zugehörigkeit)

  • den Wert des Entwicklungsbeitrags

CMS wie Sulu gehören zum Toolset eines Entwicklers, was bedeutet, dass sie in erster Linie für die erste Kategorie, die Entwicklungsinfrastruktur, relevant sind. Wir glauben, dass unser Ansatz auch Entwicklern hilft, sich ernst genommen und in ihrer Arbeit wertgeschätzt zu fühlen. So ist das Deployment viel schwieriger, wenn Konfiguration in der Datenbank gespeichert wird. Die Tatsache, dass wir strikte Trennung von Inhalt und Konfiguration umgesetzt haben, zeigt, dass uns ihre Bedürfnisse wichtig sind. Und, wie wir weiter unten diskutieren werden, hilft die Bereitstellung einer übersichtlichen Editoroberfläche, die für Entwickler einfach aufzubauen ist, allen – auch weniger technisch versierten Kollegen – dabei, die Früchte der Entwicklungsarbeit zu schätzen. Unserer Ansicht nach zeichnet sich eine gute Developer Experience durch weniger verschwendete Entwicklungszeit aus, was die vorhandenen Ressourcen maximiert. Schließlich ist das Onboarding von Entwicklern auf ein System, das auf einem gängigen ...

Neugierig geworden?

Angebote für Teams

Für Firmen haben wir individuelle Teamlizenzen. Wir erstellen Ihnen gerne ein passendes Angebot.

Das Library-Modell:
IP-Zugang

Das Company-Modell:
Domain-Zugang