text: Massenware gegen Sonderanfertigung - entwickler.kiosk
  von Frank Tiersch
  Viele Entwickler stellen sich im Laufe der Programmierung eines Projekts die Frage: Soll ich auf Code zurückgreifen, den andere bereits entwickelt haben oder doch selbst etwas entwickeln? Wichtig ist, die Vor- und Nachteile einer fertigen Library bzw. einer Eigenentwicklung sorgsam abzuwägen.
  Entwickler messen ihre Arbeit nicht an den gleichen Standards wie andere Berufsgruppen. Den Output einfach in der Anzahl geschriebener Codezeilen darzustellen ist nicht nur zu wenig, sondern sogar kontraproduktiv. Mehr Code wirkt sich oft negativ auf Performance und Speicherverbrauch aus. Und wenn es um die spätere Weiterentwicklung oder Wartung geht, führen tausende Zeilen aussageschwachen Spaghetticodes nicht zu glücklichen Programmierern.
  Auch bei der Motivation ticken Entwickler oft anders. Probleme, die andere zur Verzweiflung treiben, sind faszinierend und machen die Arbeit erst interessant. Immer wieder dieselben Funktionalitäten zu programmieren ist furchtbar eintönig und bewegt die Freude am Job langsam aber stetig Richtung Nullpunkt. Das ist sicherlich eine der möglichen Erklärungen für die Verwendung von fertigen Libraries – vorgefertigten Codebibliotheken, die jemand anderes entwickelt und für die Allgemeinheit zur Verfügung gestellt hat.
  Wie bei allem im Leben handelt es sich aber bei diesen ebenfalls um ein zweischneidiges Schwert und man sollte sich Gedanken machen, in welche Richtung man geht. Welche Punkte sprechen für Libraries und wann sollte man das gewünschte Feature lieber selbst entwickeln? Und worauf sollte bei der Suche nach der passenden Library geachtet werden?
  Was spricht für Libraries?
  Der größte und offensichtlichste Pluspunkt ist das Entwicklungstempo. Im Berufsumfeld ist Zeit meistens Geld: Das Rad ständig neu zu erfinden kostet viel Zeit. Hat sich bereits jemand Gedanken zum gleichen Thema gemacht und eine Lösung zur Verfügung gestellt, ist das oft der bessere Weg.
  Gerade für professionelle Produkte ist die Entwicklungszeit ein wichtiger Faktor. Normalerweise spült nicht der Code selbst Einnahmen in die Kasse, sondern das Produkt, das dahintersteht. Solange eben dieses Produkt fehlerfrei funktioniert, ist für den Kunden eine elegante Programmierung reine Nebensache. Zumindest, solange alles funktioniert und bis die nächsten Features entwickelt werden müssen. Denn genau dann fällt einem undurchdachter Code gerne auf die Füße. Selbstgeschriebenen Code muss man auch selbst am Laufen halten. In der immer komplexeren Welt der Webentwicklung werden die Abhängigkeiten immer zahlreicher. Der Entwickler muss sich also selbst darum kümmern, dass der Code kompatibel zu neuen PHP-Versionen oder auch zu anderen, häufig verwendeten Libraries ist. Benutzt er ein aktiv weiterentwickeltes Package, kümmern sich die Entwickler des Packages darum. Auch eventuelle Fehler muss der Nutzer nicht selbst beheben, sondern kann diese einfach den zuständigen Entwicklern melden.
  Ähnliches lässt sich auch über den Support sagen: Bei verbreiteten Packages ist der Nutzer meistens nicht der erste mit einem Problem und bekommt schnell Hilfe – entweder von den Entwicklern selbst oder von anderen Benutzern mit ähnlichen Fragen.
  Auch Verstärkung für das eigene Team findet sich natürlich mit einer verbreiteten Library einfacher als mit einer Eigenentwicklung. Die Einarbeitungsphase verkürzt sich enorm, ein neuer Kollege kann deutlich schneller produktive Arbeit leisten und weiß auch vorher schon u...