Ob man das mag oder nicht, es gilt mittlerweile: Schneller ist besser.
In Zeiten von “Agile Web Development”, DRY, KISS und AJAX können Prototypen neuer Produkte gar nicht mehr schnell genug fertig werden. Die zügige Erprobung eigener Geschäftsideen und das schnelle Abschätzen von Erfolgspotentialen stellen die Entwickler dieser Webseiten vor neue Herausforderungen.
Dieser Artikel behandelt 5 allgemeine Grundsätze zum Zeitsparen in der Webentwicklung.
1. Benutzt Frameworks
Frameworks abstrahieren regulären Code und damit Strukturen für euch.
Bekannte Beispiele wären CakePHP, symfony, Rails und Django für die serverseitige Entwicklung. Datenbankgestützte Webanwendungen lassen sich mit ihnen in einem Bruchteil der Zeit realisieren. Im Front-End-Bereich wären jQuery, MooTools, Prototype JS und YUI bekannte JavaScript-Frameworks.
Der Code dieser Frameworks wurde bereits von anderen Entwicklern getestet und ihr müsst euch nicht unnötig um triviale Dinge kümmern, wie z.B. das Auslesen von POST-Parametern oder browserunabhängige AJAX-Calls.
2. Benutzt einen Editor, der euch liegt
Viele Entwickler bevorzugen den Einsatz komplexer IDEs wie Aptana, Eclipse oder Intellij IDEA. Ich habe schon Eclipse für ActionScript-Projekte eingesetzt und auch bei Java habe ich schon im Kundenauftrag mit einer guten IDE gearbeitet.
Allerdings geht mir persönlich nichts über einen vernünftigen, erweiterbaren Texteditor wie vim oder TextMate. Prinzipiell sind IDEs nicht besser und nicht schlechter als ein vernünftiger Editor, und gerne ziehen die Verfechter beider Code-Schreib-Arten übereinander her.
Fazit: Benutzt einfach das Schreibwerkzeug mit dem ihr euch am wohlsten fühlt. Oh, und achtet darauf, dass ihr die Tastatur liebt, auf der ihr coden müsst (das macht einen Unterschied, ob man’s glaubt oder nicht).
3. Modularisiert euren Code richtig
Eure Projekte modular zu strukturieren bedeutet natürlich, dass ihr anfangs Zeit und Arbeit investieren müsst, um geeignete Strukturen zu finden, in denen Module Sinn machen. Wenn ihr aber schon mal festgestellt habt, dass ihr dieselben Dinge wieder und wieder implementiert, dann solltet ihr die Struktur eures Codes auch mal überdenken.
So kann man bspw. HTML-Strukturen immer ähnlich halten, um das CSS in Grundzügen für weitere Projekte wiederverwenden zu können oder Authentifizierungsprozesse oder Feedback-Formen verallgemeinern. Also: Etabliert eigene Standards (und schreibt so wiederverwendbaren Code). Denn einmal getestete Module helfen auch, Bugs schneller zu finden.
Übertriebenes Unterteilen in Module führt allerdings zu immer komplexeren, aufgeblasenen Projekten mit langsameren Response-Zeiten. Es geht also auch immer darum, den Mittelweg zwischen zu viel und zu wenig Modularisierung zu finden.
4. Front-End-Debugging im Browser
Es gibt nichts schlimmeres als eine funktionierende Anwendung mit Darstellungs- oder JavaScript-Fehlern in einzelnen Browsern. Doch es gibt Browser-Tools, die das Diagnostizieren und Beseitigen solcher Probleme stark beschleunigen und das Debugging so vereinfachen.
Web Developer und Firebug sind unerlässliche Werkzeuge, insbesondere beim Debuggen von AJAX- und CSS-Problemen. Sie erlauben das Abschalten des Cache, das Deaktivieren von JavaScript und CSS, das Inspizieren des DOM, on-the-fly Änderungen von Styles und HTML und und und…
5. Benutzt freien Code
Es gibt keinen Grund, ständig das Rat neu zu erfinden. Unzählige Open-Source-Entwickler schreiben Tag für Tag unzählige Bibliotheken zur Lösung tausender Probleme.
Selbst, wenn ihr in einer Sprache wie Ruby entwickelt, solltet ihr euch immer fragen: “Bin ich wirklich der erste Mensch, der dieses Problem lösen will?”
Gute Beispiele für solche Open-Source-Lösungen sind Bibliotheken zum Erzeugen von Excel-Dateien oder Date Picker, die per JavaScript einen klickbaren Kalender zur Datumseingabe einblenden.
Zu guter letzt: Implementiert weniger Features
Es geht letztendlich immer um die Frage: “Welche Features sind hier absolut notwendig, damit diese Idee funktioniert?” Beantwortet diese Frage und implementiert genau dieses Set an Features. Anschließend poliert ihr die Usability des Kernprodukts.
Beispiele für solche Produkte sind doodle oder Dropbox, bei denen es fast ausschließlich um den “ease of use” ihrer Kernkompetenz geht.

René