Kleinere und größere Updates sowie ein sanfter Relaunch im Vordergrund, doch im Hintergrund ist einiges mehr passiert.
Die Zeit ist knapp, und somit verlieren sich die letzten Einträge irgendwann im vorigen Jahr. Doch tatsächlich hat sich auf und vor allem unter dieser Site einiges getan – hier eine kurze Zusammenfassung.
Zunächst wurde der gesamte bestehende Code aufgeräumt. Die wichtigste Änderung ist die Strukturierung in Applikationen und Sites. Diese Trennung war in den Anfangstagen von Django zunächst nicht gegeben – zu Beginn wurde ein Projekt definiert, in dem die Applikationen sowie die site-spezifischen Dateien Platz fanden, z.B. Templates und Konfigurationsdateien. Beim Betrieb mehrerer, verschiedener Web-Sites, welche sich die Applikationen teilen sollten, war dies letztlich suboptimal. Daher existieren nun die Applikationen in einem eigenenSubversion-Repository. Dies kann somit von mehreren Sites, die sich auf demselben Server befinden, genutzt werden.
Weiterhin wurde die Codebasis der aktuellen Django-Entwicklungsversion angepasst. Da diese bislang ausdrücklich als nicht-stabil gekennzeichnet war, mußte während der Entwicklung die eine oder andere Anpassung stattfinden. Die Formulare wurden dabei bereits frühzeitig mit Hilfe von newforms erstellt. Andere Anpassungen waren eher marginaler Natur, kleinere Änderungen in den Models aufgrund geänderter Optionen, etwa max_length statt maxlength. Letztlich nicht der Rede wert. 😉 Und die Kommentare wehren sich nun endlich ein wenig gegen SPAM.
Da Apache zusammen mit mod_python immer wieder Probleme verursachte und sich bislang dafür keine Lösung fand, wird nun FastCGI und lighttpd genutzt. Dies lief nahezu auf Anhieb, die Installation ist einfach, die Konfiguration flexibel, und nach meinem subjektiven Eindruck läuft es sogar schneller als die vormals verwendete Kombination.
Das Design ist ein wenig überarbeitet worden, jedoch den bisherigen Grundsätzen treu geblieben. Zwar existierte bereits eine weitere Version, die größere Änderungen mit sich gebracht hätte, aber letztlich fiel die Entscheidung zugunsten der aktuellen Variante.
Als JavaScript-Framework wird nun durchgängig jQuery benutzt, dies betrifft auch die Image Cropping Funktionen des Profilbildes. Das Beispiel von jQuery UI konnte hier fast unverändert übernommen werden. Mit Firefox, Opera und Safari funktioniert es bestens, nur im Internet Explorer ist das Bild nach dem Upload noch etwas verschoben. Ergo die üblichen Probleme, dazu werde ich noch den HTML-Experten meines Vertrauens konsultieren müssen.
Natürlich gibt es auch weiterhin Baustellen und Bugs, aber ansonsten wäre es ja auch langweilig. 🙂 Fortsetzung folgt…