Hey, Hi und Hallo.

361° BLOGGT RICHTIG AB.

CMS vs. Eigenentwicklung – Die Qual der Wahl

CMS vs. Eigenentwicklung – Die Qual der Wahl

10.01.2014 / geschrieben von Richard
in Entwicklung, Meinung

10.01.2014 / geschrieben von Richard / in Entwicklung, Meinung

Wie es nun mal so ist, wird im Internet, so wie im normalen Leben immer wieder gerne diskutiert. Oftmals über Nonsense. Aber manchmal finden sich kleine Fragestellungen, die die gefühlten Grundfesten der (nicht so realen) Welt ins Wanken bringen.

So auch am 25. Oktober 2012: In einem kleinen Forum, in dem sich ab und an Leute treffen, um zu diskutieren oder zu trollen, wurde die Frage nach einer mehrsprachigen Website auf Basis von WordPress gestellt. Drei Tage und 10 Posts in diesem Thread später wurde das Thema (zum Schutze des Threads) in einen anderen Thread ausgelagert.

Im Folgenden möchte ich ein paar Thesen aus diesem Thread aufgreifen und versuchen, ein nutzbares Fazit ziehen. Dabei gilt zu beachten, dass ich hierbei auch meine eigene Meinung kundtun werde und keine wissenschaftliche Abhandlung liefern möchte.

 

These 1: „Ein Profi würde erst gar kein WordPress einsetzen.“
Natürlich ist „WordPress“ durch ein „hier-irgendein-CMS-Name-einsetzen“ ersetzbar. Es gibt immer mehrere Faktoren, die hierbei entscheidend sind:

  • Für wen wird hier etwas programmiert? Ist es ein internes Projekt oder ein Kundenprojekt?
  • Was wird hier programmiert? Wie groß ist der Aufwand des Projekts? Wäre es möglich durch simple Modifikationen des Wahl-CMS die Website zu erstellen, muss für das Projekt in den Core des CMS eingegriffen werden oder ist der Aufwand so groß, dass hier mit einer Eigenentwicklung um sich geworfen werden sollte?
  • Wie viel Zeit ist eingeplant? Gibt es eine recht knappe Deadline, oder ist das Projekt eines von solchen, bei denen die Zeit keine entscheidende Rolle spielt?
  • wie hoch ist das Budget? Rechtfertigt das Budget eine Eigenentwicklung, reicht es für ein CMS oder ist nur Geld vorhanden, dass man sich auf einer statischen Ebene bewegt?

 

These 2: „Bei einer Eigenentwicklung weiß ich, was ich gemacht habe und kann meine eigenen Standards anlegen. Bei einer fertigen Lösung muss ich mich darauf verlassen, das die macher schon wissen, was sie tun … „
In der Regel wissen die Entwickler, was sie da tun. Bei mir selber bin ich mir da jedoch nicht immer ganz sicher. Vielleicht habe ich eigene Standards, aber wer sagt, dass ich in einem halben Jahr meine Standardd nicht ändere? Genau, keiner.
Wer auf eine fertige Lösung vertraut, sollte sich natürlich im Vorfeld darüber informieren, wie diese aufgebaut ist und ob es Fallstricke gibt, in denen man sich verheddern könnte.

 

These 3: „Man bedient sich da halt den eigenen Komponenten, Frameworks und Libraries oder sucht sie sich im Netz zusammen. Das am Ende dennoch eine eigene produzierte Leistung dasteht, gegenüber einem CMS, wo lediglich das Template angepasst wurde und ein paar Einstellungen vorgenommen wurden, dürfte wohl auch klar sein.“
These Drei sprengt witzigerweise These Zwei. Wer Frameworks und Libraries nutzt verlässt sich auch da wieder auf die Standards anderer und darauf, das die „Macher“ wissen was sie hier getan haben.

 

These 4: „Große CMS sind halt auch beliebte Angriffsziele, das kann man mit einer eigenen Entwicklung sicher umgehen.“
Es mag stimmen, dass große CM-Systeme beliebter bei Hackern sind. Durch eine große Community werden Fehler jedoch auch schneller gefunden. Ebenso werden in der reinen Theorie in weniger Zeit weniger Fehler gemacht, da bei den meisten Systemen eine „two-man rule“ gefahren wird. Heißt: Entscheidungen oder Änderungen am Code werden nicht von einer Person gemacht, als fertig markiert und kommen direkt ins Live-System. Es gibt mindestens zwei Leute, die an einem solchen Prozess mitarbeiten. Einer, der die Änderungen vornimmt und ein anderer, der die Änderungen überprüft. (Kurz: „Vier-Augen-Prinzip„).

Wer etwas Eigenes schreibt und meint er wäre komplett sicher, der irrt. Hacker haben ein gewisses Durchhaltevermögen und beißen sich in ihrer Beute gerne fest. Meist lassen sie erst los, wenn sie erfolgreich waren.


 

Fazit: Es gibt kein wahres Fazit. Letztlich entscheidet jeder für sich selbst, ob er seine Entwicklung auf einem CMS, einem Framework oder auf kompletter Eigenentwicklung basierend aufbaut. Am Ende zählt, ob alle Beteiligten zufrieden sind.

Ich für meinen Teil werde bei der Wahl zwischen diesen drei Methoden immer erst mein persönliches Steckenpferd WordPress konsultieren. Sollte ich auf Dinge stoßen, die so nicht lösbar sind, wird natürlich auf eine individuelle Entwicklung zurückgegriffen. Aber auch dabei würde ich auf Frameworks wie Laraval, Codeigniter oder CakePHP zurückgreifen. Und erst, wenn alle Stricke reißen würden, würde ich alles komplett selbst schreiben oder den Auftrag auslagern. 😉

Über den, der's geschrieben hat:

Macht Code. Träumt von Code. Würde, wenn möglich, sogar Code essen. Behauptet WordPress sei ein gutes CMS und das Internet habe keine Zukunft. Als Mediengestalter a.D. codet er sich fröhlich durch die Weltgeschichte. Wenn er nicht gerade versucht zu gestalten oder mit Code spielt, kocht er gerne (auch mal für die Kollegen). Mag übrigens Züge.

2 Kommentare

  1. Ein wirklich toller Artikel. Zur Zeit suche ich Gründe, Vor- und Nachteile, ob ich weiterhin mit einer Eigenentwicklung unterwegs sein möchte oder nicht. Beides habe ich bereits ausprobiert und tendiere, seit ich mich von WordPress veranschiedet habe, bei jedem Projekt um eine Eigenentwicklung.
    Dabei schreibe ich jedes Script für jede Seite neu – nur ein paar Librarys, die mir wirklich gut gelungen sind, nutze ich weiter.

    Der größte Vorteil in der Eigenentwicklung ist natürlich die Struktur: Selbst nach langer Zeit, weiß man wo man bei Erweiterungen eingreifen muss. Man kennt es halt – ähnlich wie den Lebenspartner.

    Aber auch die Zielgruppe muss man beachten. Schreibe ich WordPress-Tipps, sollte man selbst auch WordPress einsetzen. Oder welches System auch immer.
    Hat man einen Ratgeber über Programmierung und Co., so wie in meinem Fall, „prahlt“ man hingegen besser mit einer Eigenprogrammierung. Das schafft natürlich Vertrauen, Ansehen und man erhält schneller Aufträge für Sonderanpassungen möglicher Kunden.

    Danke für diesen guten Artikel! Weitermachen!

    lg, Marcus