Wie write’n’go geboren wurde oder gute Gründe gegen ein Open-Source-CMS

Wie write’n’go geboren wurde oder gute Gründe gegen ein Open-Source-CMS

Open-Source-CMS sind super Lösungen für viele Fälle. Aber eben nicht für alle. Es gibt nicht für jeden Anwendungsfall die entsprechende Open-Source-Lösung. Genauso wenig gibt es für jeden Fall die entsprechende Closed-Source-Lösung. Daher sehen wir immer wieder, dass auch das 7 millionste CMS erstellt wird, oder dass Unternehmen heutzutage immer noch ihre eigene Lösung basteln. So wie wir. Hier ein paar Hintergründe zu meiner Denkweise.

Was muss ein einfaches CMS wirklich können? Aus den Erfahrungen der letzten Jahre, in denen wir viele statische Seiten ohne CMS und viele dynamische Seiten mit CMS programmiert haben, hat sich immer wieder eines gezeigt. Die am Markt befindlichen Systeme sind oft absoluter Overkill.

Viele von ihnen sind zwar kostenlos, ihr Einsatz aber kaum umsonst. Denn wenn es mit den Anpassungen an die eigenen Bedürfnisse erstmal losgeht, wird’s teuer. Das ist übrigens nichts Ungewöhnliches. Anpassungen an die eigenen Bedürfnisse verursachen immer zusätzliche Kosten. Meiner Erfahrung nach sind Anpassungen an Fremdsystemen, gerade wenn es sehr große Systeme sind (wie schätzungsweise 99 % aller auf dem Markt befindlichen), grundsätzlich teurer als Anpassungen an eigens entwickelten Systemen. Schließlich kostet es viel Zeit (und damit Geld) diese Systeme zu verstehen. Ein Programmierer, egal wie brillant er oder sie ist, muss sich anfangs 1-2 Wochen in ein System einarbeiten, bevor es mit der eigentlichen Arbeit losgehen kann. Das verursacht immer zusätzliche Kosten, die ein Unternehmen letztendlich auf seine Klienten abwälzen muss. Bis dahin ist das auch nichts Besonderes. Schauen wir uns mal anhand eines Beispiels an, wie man sowas abschätzen kann.

Ein Open-Source-Praxisbeispiel

Nehmen wir mal das kostenlose Drupal (das Gleiche gilt aber auch für beliebige andere moderne CMS). Anschaffungskosten 0 EUR. Super. Einarbeitung in das System circa 20 Stunden. Nach 20 Stunden haben wir einen groben Überblick darüber, was mit dem System möglich ist und vor allem wie. Allerdings sollten wir realistischer weise noch ein paar Tage Lernaufwand einrechnen. In dieser Zeit werden wir nicht wirklich bei 100 % Geschwindigkeit arbeiten können. Rechnen wir mal mit einem Stundensatz von 30 EUR. Das ist eher ein gutes Angestelltengehalt. Als Unternehmer liegt Ihr Satz mindestens bei der zwei- bis dreifachen Summe. Trotzdem möchte ich hier richtig tief ansetzen, um so knapp wie möglich zu kalkulieren. Bei 20 Stunden für die Einarbeitung in das System sind wir schon mal bei 600 EUR. Das ist noch zu verkraften. Ich habe mich schon mehrmals in Drupal eingearbeitet und immer wieder stelle ich fest, dass es am Anfang sehr einfach ist. Aber später, sobald eigene Anforderungen ins Spiel kommen, kann der Spaß schnell aufhören.

Eine wahre Geschichte—Leider

Beispielsweise die Formulare. Sie wollen sie an die eigenen Bedürfnisse anpassen. Das Kontaktformular soll nach der Faxnummer fragen. Dabei soll das Feld optional sein. Jetzt müssen Sie erst herausfinden, wie das mit den Feldern funktioniert. Stunden vergehen …

Oder die deutsche Übersetzung. Wer schon mal ein englischsprachiges CMS (vor allem aber nicht nur Open-Source) installiert hat, wird das Problem kennen. Die kostenlos dazu gelieferte Übersetzung ist zwar gut, aber lange nicht gut genug. Da wurden zum Beispiel Sätze mit „Du“ formuliert, aber Sie wollen auf der eigenen Website Ihre Sätze mit „Sie“ formulieren. Sie machen sich also daran die betreffenden Sätze umzuformulieren. Und zwar alle 4000! Tage vergehen …

Oder die Plugins. Plugins sind Module, die ein CMS um zusätzliche Funktionalität erweitern. Wie oft habe ich es schon erlebt, dass gerade das Plugin, was ich dringend benötige, nicht richtig funktioniert. Oh, kein Problem, ich bin ja Programmierer. Wenn ich nur lang genug den Sourcecode studiere, dann werde ich schon in der Lage dazu sein das Plugin an meine Bedürfnisse anzupassen. Wochen vergehen …

Ehe ich mich versehe, bin ich mit der Anpassung des Systems schon wieder zwei Wochen beschäftigt. Gut. Eigene Anforderungen endlich fertig. Jetzt noch schnell auf der Website von Drupal vorbeischauen. Huch, da kommt schon das nächste Update raus. Wichtiges Sicherheitsupdate. Änderungen eingespielt, jetzt funktionieren die Anpassungen an meinen Plugins nicht mehr. Das Ganze geht schon wieder von vorne los. Monate vergehen …

Alles in allem bin ich jetzt schon 100 Stunden dran mit meinen „Änderungen“. Nach unserer Rechnung sind das wieder 3000 EUR, die dazu kommen. Da das immer so weiter geht, frage ich mich langsam, ob ich nicht doch besser jemanden dafür beauftragt hätte ein eigenes CMS zu entwickeln. Besser noch das CMS ist bereits da und muss nur noch an die Bedürfnisse angepasst werden. Wo ist jetzt der Unterschied? Na, ich gehe mal davon aus, dass die Anpassung bei weiten nicht so lange dauert. Denn die Entwicklerin kennt ihr eigens CMS so gut, da sind diese Anpassungen im Handumdrehen erledigt. Sie hat jede einzelne Zeile Code alleine geschrieben (OK, das ist vielleicht etwas unrealistisch, vor allem, wenn man als Entwickler einen WYSIWYG-Editor in das CMS integrieren will).

Wie steht’s mit Ihnen? Wäre Ihre Zeit nicht besser damit verbracht mehr Produkte zu verkaufen oder etwas Marketing für ihre Dienstleistungen zu betreiben, anstatt sich mit so was rumzuärgern? Meine auf jeden Fall.

Ich habe irgendwann schließlich alles hingeschmissen und gesagt: „Jetzt programmiere ich mir einfach ein eigenes Content Managementsystem.“ Der Grund: Ein spezieller Klient hatte Anforderungen, die sich nur schwer über eine statische Seite erfüllen ließen. Circa 100 Stunden später war mein eigenes System fertig. Zumindest eine erste funktionstüchtige Version. Keine Frage, in Zukunft werden noch viele 100 oder gar 1000 Stunden weitere Entwicklungszeit in das System einfließen. Aber eine erste brauchbare Version ohne Schnickschnack konnte ich in diesem Zeitrahmen bereits fertig stellen. Mit anderen Worten: In der Zeit, in der ich ein Fremdsystem runtergeladen, installiert, angepasst und erweitert habe, hätte ich auch von vornherein ein eigenes System entwickeln können. Der größte Vorteil? Jetzt habe ich mein eigenes System, wo nur das drin ist, was ich wirklich brauche.

Gute Gründe für das eigene System.

Wo genau liegen die großen Vorteile? In 100 Stunden kann schließlich niemand den Funktionsumfang einer Softwarelösung wie Drupal oder einer beliebigen anderen über Jahre ausgebauten OS-Lösung nachbauen.

  • Ich kenne das System in- und auswendig. Das ermöglicht mir schnellere Anpassungen vorzunehmen. Schneller bedeutet billiger. Und billiger ist besser, oder?
  • Mein System ist auch nicht mit 98 % an Funktionen überhäuft, die 98 % unserer Klienten niemals brauchen. Spart bares Geld. Man denke nur an Trainingskosten.
  • Ich kann das System wirklich einfach halten. Einfach ist gut. Wir alle wollen einfach. Wer komplexere Anforderungen hat, der muss sich nach was Anderem umschauen. Kein Problem. Schließlich gibt es „das perfekte System“ sowieso nicht. Und wenn es unbedingt mal mehr sein muss, ja dann ist eine Software wie Drupal vielleicht genau das Richtige. Da habe ich kein Problem mit. Es ist Platz für alle da.

Schließlich stellt sich heraus: Das, was ich wirklich brauche, ist genau das, was auch unsere Klienten brauchen. Ein einfaches System, mit dem ich an beliebiger Stelle auf meiner Website Seiten einfügen kann. Ich kann meine Navigation selbst beeinflussen. Ich kann Neuigkeiten auf meiner Seite veröffentlichen (neudeutsch: Bloggen) und das Ganze ist auch noch suchmaschinenoptimiert. Außerdem möchte ich noch einen Editor haben, der sich genauso bedienen lässt, wie eine moderne Textverarbeitung (Microsoft Word, WordPerfect, OpenOffice). Bitte keinen komplizierten HTML-Code mehr!

Kurz: Ich brauche Seiten, ich brauche News, ich brauche suchmaschinenoptimiert, und die Eingabe der Seiten soll einfach sein, fertig. Der ganze Rest ist erstmal nicht so wichtig.

Und so entstand write’n’go.