Work in progress
Ich möchte die Gelegenheit wahrnehmen und erklären, weshalb es in den letzten Tagen und Wochen auf Bartelme Design immer wieder zu kurzzeitigen Fehlern bzw. Fehlerverhalten gekommen ist: Ich bin gerade dabei „unter der Haube“ einige Optimierungen vorzunehmen.
Altlast
Als Bartelme Design vor etwa fünf Jahren das Licht der Welt erblickte, bestand die Seite aus rein statischen HTML-Seiten, welche größtenteils mit Dreamweaver erstellt worden waren. So ist es nicht verwunderlich, dass sich dieser Ansatz bereits nach kurzer Zeit als sehr ungünstig herausstellte, da die Aktualisierung und Wartung mit enormem Aufwand verbunden war. Aus diesem Grund setzte ich bereits nach kurzer Zeit auf die Verwendung von ASP und einer MySQL-Anbindung.
Die Verwaltung erfolgte über ein eigens für diese Zwecke geschriebenes Content Management System. Das Managen beschränkte sich dabei jedoch lediglich auf das reine Hinzufügen und Löschen von Inhalten — eine genauere Klassifizierung von Inhalten über Keywords oder Kategorien fehlte. Ebensowenig unterstützte das Journal das Hinzufügen von Kommentaren — ein nicht zu unterschätzendes Kommunikationsinstrument.
Schrittweise Adaptierung
Und so modifizierte ich immer wieder die Funktionalität; erweiterte das Journal um die Kommentare, stellte einen RSS-Feed oder die Sidenotes zur Verfügung, ohne jedoch dabei das Interface der Administration mitzuziehen. Aus diesem Grund sah ich mich vor allem in letzter Zeit immer wieder dazu gezwungen, die Administration über reine Datenbank-Administrations-Tools, wie etwa CocoaMySQL abzuwickeln.
Neues Interface
Vor etwa zwei Wochen konnte ich mich dann endlich dazu überwinden, ein komplett neues Administrations-Tool für Bartelme Design zu entwerfen und umzusetzen. Wie aus dem folgendem Screenshot unschwer zu erkennen, hab mich dabei ein klein wenig vom Spotlight-Interface inspirieren lassen.

Wie auf dem Screen erkenntlich gibt es bei der grundsätzlichen Auteilung keine großen Überraschungen: Im oberen Bereich (1) befindet sich die Hauptnavigation, um die einzelnen Unterbereiche der Seite anzusteuern. Der Content der jeweiligen Section wird in der Display Area darunter (3) angezeigt. Um mir das Auffinden von einzelnen Beiträgen zu erleichtern, habe ich mir oberhalb eine zusätzliche Filter-Funktion, ähnlich wie bei Apple Mail oder Thunderbird, eingebaut (2). Der Sidebar auf der linken Seite (4) beinhaltet Funktionen, wie etwa das Erstellen eines neuen Beitrags.

Das Besondere an der Sidebar ist, dass zusätzlich zu den Funktionen auch noch die letzten 15 erstellten Einträge (1) sichtbar und natürlich auch ansteuerbar sind. So muss ich nicht jedes Mal zum Listing zurückkehren, um einen anderen Artikel bearbeiten zu können. Auch die fixe Positionierung des Footers (3) mit den „OK“ und „Cancel“ Buttons mittels des CSS-Properties position: fixed minimiert oft unerwünschte Aktionen, wie etwa vertikales Scrolling.
Wieso der Aufwand?
Der eine oder andere unter euch wird sich nun mit Recht fragen, wieso ich nicht auf bestehende CMS, wie etwa MovableType, Textpattern, Typo3 oder TypeWorks zurückgreife, welche mitunter mehr Funktionalität zur Verfügung stellen. Nun ja, ich könnte jetzt das Argument vorbringen, dass ich somit das CMS ganz und gar auf meine Bedüfnisse zuschneiden kann — was natürlich auch stimmt — der Hauptgrund ist jedoch, dass ich einfach gerne selbst Sachen ausprobiere und implementiere.
Dabei habe ich jedoch nicht nur Änderungen am User Interface vorgenommen; auch gröbere Eingriffe in die Struktur der Datenbank waren notwendig. Und da ich daher natürlich auch die Files der Hauptseite an die neue Struktur anpassen muss, waren kurze Aussetzer nicht zu vermeiden. Ich hoffe, dass die Seite trotzdem einigermaßen benutzbar war und auch keine von euch generierten Inhalte dabei verloren gegangen sind. Auf jeden Fall sind nun die kritischen Bereiche einmal umgestellt — trotzdem werden in den nächsten Wochen einige Seitenaufbaufehler nicht vermeidbar sein. Ich hoffe auf euer Verständnis und natürlich auch auf euer Feedback, falls ihr auf Inhalte stoßen solltet, welche nicht korrekt dargestellt werden. Danke.
Update
Aufrgrund einiger Nachfragen habe ich ein paar größere Screens erstellt und in ein ZIP-Paket gesteckt, welches ihr zur genaueren Betrachtung herunterladen könnt.

