Work in progress

January 26, 2005

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.

Das Interface der Bartelme Design Administration

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.

Schneller Zugriff über die Sidebar

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.

Größere Screens als ZIP herunterladen

21 comments

Hi, ich denke, das war kein Problem für uns (jedenfalls nicht für mich). Ich kenne dein Verlangen nach etwas eigenem zu gut, als dass ich etwas kritisieren möchte. Ich erstelle mir auch meine Systeme am liebsten selbst, was ich nicht haben kann, ist mich in ein fremdes System einzuarbeiten und es zu ändern/erweitern, wobei es dank seiner Popularität auch noch verstärkt durch die Standard-Programme/Scripts von Hackern und Spamern angegriffen werden kann. Da baut man sich doch lieber etwas eigenes, wo man sich auch genauestens auskennt. Grüße, Julian

Julian

Ein eigenes CMS kommt in den meisten Fällen wahrscheinlich nicht an die Funktionalität von kommerziell vertriebenen Systemen heran — die angebotete Funktionalität entsrpicht jedoch dann genau den Anforderungen und kann nach Belieben angepasst und erweitert werden. Und wie gesagt: auch der Spaß- und Lernfaktor sind zumindest für mich persönlich ein weiterer Anreiz.

Wolfgang

Der Meinung bin ich auch, auch auf meiner Seite verwende ich mein eigens Adminsystem, leider ist es monetan zwar noch nicht so so hübsch und ideenreich, aber wie gesagt es tut genau das was ich brauche :) und das soll es ja auch … würd mich freuen wenn du ein bisschen größere Screenshots zu verfügung stellen würdest ( man kann find ich kaum etwas erkennen, oder ist dies absicht ? ). mfg Georg

flomax

Hey, was ich aber an dem ganzen nicht verstehe, ist, warum Du in ASP codest, wo doch die meisten Screenshots eindeutig Mac-lastig sind. Hast Du eine Möglichkeit gefunden ASP auf dem Mac zu coden _und_ zu testen, oder nutzt Du dafür speziell einen PC? Obwohl, wenn ich es recht überlege, Du malst ja auch Icons für die DOSe… Also wohl für ASP die DOse und für den Rest den Mac oder wie? Der neugierige Andy

Andy

Ich kann gern größere Screen zur Verfügung stellen. Und wieso ASP? Nun ja, wie ich bereits erwähnt habe, besteht das Grundgerüst schon seit ein paar Jahren — und damals habe ich fast ausschließlich mit meinem PC gearbeitet. So habe also mit ASP begonnen und bin seither nicht mehr davon los gekommen ;) Derzeit nehme ich Änderungen gleich direkt am Server vor — somit erspare ich mir das Installieren eines lokalen Servers und kann direkt vom Mac aus arbeiten…

Wolfgang

Hallo Wolfgang. Ich bin über eines deiner Tutorials auf deine Seite gestoßen und war von der Gestaltung und der Programmierung sofort angetan — sehr schön! Das CMS sieht ja schon ganz nett aus! Auch ich finde, dass gerade kommerzielle oder umfangreichere Systeme oft durch eine undurchsichtige Erstellung von Templates abschrecken und man so viel zu wenig Einfluss auf die Gestaltung hat. Dein System könnte natürlich auch anderen gefallen — hast Du schon an eine „Kommerzialisierung“ gedacht? Erinnnert allerdings stark an TypeWorks…

Thomas Loschen

Im Prinzip habe ich nicht vor, das CMS kommerziell zu vertreiben — aber mal sehen, wie sich die Sache entwickelt…

Wolfgang

Ist dir wirklich sehr gut gelungen ;) Jetzt wo man auch etwas erkennt auf den screenshots, musste ich das loswerden … mfg Georg

flomax

Danke — das Interface wird sich sowohl im „Look“, als auch im „Feel“ eventuell noch ein wenig ändern — doch zuvor möchte ich erstmal alle Inhalte über das neue CMS verwalten können. Danach kann ich mich den diversen Rafinessen widmen…

Wolfgang

Wow, ja, ein sehr gelungenes Adminsystem! Nicht jeder macht sic hdie Mühe, und stylt seine Administrationsumgebung so durch…

Julian

Danke — wie gesagt, es bereitet mir einfach Freude das System zu coden und zu stylen — sonst wäre ich wahrscheinlich schon länger auf ein bereits bestehendes CMS umgestiegen…

Wolfgang

Was Wolfgang da erwähnt hat — das das programmieren der Seite wohl mehr spaß macht, als sich ein CMS runterzuladen, und dann nur die Inhalte aufzustellen, stimmt wohl. Ersten ist meiner Meinung nach die Anpassung nicht unmöglich — aber gerade bei größeren CMS mitunter sehr zeitaufwändig. Da ist es doch besser, ein eigenes, aber den Ansprüchen entsprechendes zu programmieren. Bei steigenden Ansprüchen (des Lesers UND des Autors) kann immer noch upgedatet werden. und wirklich — nicht jeder betreibt so einen Aufwand für einen Admin-Bereich…

Philipp Daun

Stimmt — der Umstieg bleibt ja auch weiterhin eine Option — vor allem wenn es um die Mehrbenutzerfähigkeit oder Mehrsprachigkeit des Interfaces bzw. die Einbindung von bestimmten Workflows (z.B. Freigabe eines Artikels) geht. Ich bin jedoch ernsthaft am Überlegen, ob ich nicht zumindest die ersten zwei Punkte einbauen sollte… einfach so aus Interesse. Wie administriert ihr eigentlich eure Seiten? Publizieren bei euch auch mehrere Personen, oder managt ihr alles alleine?

Wolfgang

sry für das mehrfachposting im Forum aber da kommt eine fehler meldung in der Line 46 da dachte ich es wird nix eingefügt =) kannst du ja sicher in der sql wieder löschen die mehrfachthreads

Cabcom

Ich hab versucht, den Fehler zu reproduzieren — konnte aber leider nicht fündig werden. Eventuell liegts an einem besonderen Zeichen, welches Probleme verursacht… Ist sonst noch jemanden etwas aufgefallen? Danke für jeden Hinweis…

Wolfgang

Mit der Entwicklung eines eigenen Admin-Systems umgeht man natürlich einige Probleme, die bei vorgefertigten CMS auftreten können. Als Beispiel wäre da mal die Umsetzung von Webstandards mit Typo3 genannt. Da sind die Zeiten des Tabellen-Layouts noch stark anhängig. Und wenn man dann auch noch validen Code haben will baut man schon wieder am Kern des CMS rum. Trotzdem hinkt der Vergleich zwischen einem eigenem „Seitenverwaltungssystem“ und einem richtigen CMS natürlich stark. Vor allem wenn man mal gängige CMS-Vergleichskriterien zugrunde legt.

Rene Kühn

Dass zwischen einer Seitenverwaltung und einem vollwertigen CMS Welten liegen ist klar — es fehlen einfach einige Features, welche auf einer Liste eines vollwertigen CMS nicht fehlen dürfen: Versionskontrolle, Workflow-Integration, Linkmanagement, Rechteverwaltung auf Basis von ACL bzw. Rollen, Templates und diverse weitere collaborative Features. Diese wird man aber auch bei Movabletype usw. nicht finden — da muss man schon etwas tiefer in die Tasche greifen…

Wolfgang

Deine Seiten gefallen mir sehr gut. Ich schau immer wieder mal drauf. Auch deine Tutorials sind interessant und hilfreich. Designtechnisch bist du eh spitze.

Tom

Danke für die Screenshots! Sehr schön aufgeräumt und ergonomisch. Im nächsten Safari werden auch WYSIWYG-Textareas möglich sein, da die Eigenschaft „contentEditable“ unterstützt wird. Da freue ich mich schon drauf. Ich bin auch gerade mein eigenes Blog-/CMS-System am schreiben. Bei mir dient es hauptsächlich zum PHP, MySQL und Smarty lernen.

Arne

Noch eine kleine Anmerkung: Leider werden hier die Zeilenumbrüche nicht dargestellt. Wie es in ASP funzt kann ich nicht sagen. In PHP wäre das ganz einfach mit der Funktion „nl2br“ zu realisieren.

Arne

Die Zeilenumbrüche nehme ich bewusst raus, um ein einheitliches Schriftbild zu gewährleisten. Im Forum bzw. im Messageboard, wo Einträge in der Regel länger sind, werden sie natürlich interpretiert. Und ja, ich freu mich auch schon, wenn Safari „contentEditable“ endlich unterstützt… -----

Wolfgang

Commenting is not available in this channel entry.