Projekte

Hostsharing-Projekt: Überarbeitung der Website

Ziel

Erstellung einer neuen Website mit moderner wirkendem Design, besserer Dokumentation und verbesserter Wartbarkeit.

Nebenziele

  • Die Sonderkonfiguration im hsh00 Paket entfällt, wenn hs.web (die alte Engine) nicht mehr nötig ist.
  • Dokumentation kann als ganz eigenständiger Block in der Website nach und nach aus externen Quellen gespeist werden, die auch in anderen Formaten ausgegeben werden kann, z.B. Portable Document Format (pdf), Windows Help File (hlp), als Broschüre, usw.

Bisherige Ergebnisse, Einzelziele, Aufgaben

  • Wir bauen eine komplett neue Website auf.
  • Im ersten Schritt werden nur statische Seiten umgesetzt.
  • Die Dokumentation wird deutlich "nach oben" geholt und
    • Vieles wird in die Dokumentation eingearbeitet, das jetzt anderswo verstreut ist,
    • Im Gegensatz zur alten Strategie wird Dokumentation für Anwendung, Nutzung, Mitmachen, innerer Aufbau, interne, externe Beschreibungen usw. ganz unter einem Dach zusammengefasst.
    • neu strukturiert:
      • Starke Gliederung
      • Kurze Würze
      • viele kleine Themenseiten
      • nur ein Thema pro Seite
    • Dokumentation soll klar nach Anwendung gegliedert sein, erstes Ordnungskriterium ist "Wer fragt?"; nicht mehr "Welcher technische Gegenstand?"
  • Für alle URLs, die sich gegenüber der alten Site ändern, müssen 301-Redirects auf die jeweiligen neuen URLs angelegt werden.
  • Das bisherige Download Area
    • wird ins Menu integriert
    • läuft nicht mehr als Applikation
    • hat niedrige Priorität bei der Umsetzung
  • Seiten mit dynamischen Einblendungen (Uhrzeit, Anzahl Mitglieder, Traffic-Zahlen) werden erst in einem zweiten Schritt realisiert
  • Volldynamische Seiten (z.B. Bestellformular) und Applikationen werden erst in einem dritten Schritt entwickelt und vorhandene Applikationen laufen vorerst in der alten Weise weiter, sie werden erst später portiert.
  • Wir arbeiten mit einer zentralen /index.php, die bei jedem Seitenabruf aufgerufen wird, die das zur aufgerufenen URL passende Menü und Quelldokument heraussucht, das Quelldokument entsprechend ins Zieldokument umwandelt und an den Browser sendet. Später optional: Caching. Also:
  • Die neue Website wird mit einer neu zu schreibenden Engine ausgegeben
    • die Menues ausgeben kann,
    • die in Applikationen verzweigen kann (denen sie als Unterprogramm/Koroutine zur Verfügung steht)
    • die statische Seiten (mit Menues) und einigen Standard-Gestaltungen (Seitenrahmen, Layouts) ausgeben kann.
    • Zur Umwandlung ins Zieldokument verwenden wir innerhalb der Engine ein XSLT-Template (derzeit zurückgestellt, da die aktuelle Engine genausogut ohne auskommen kann)
    • URLs und Dateinamen bleiben potentiell voneinander verschieden und
    • Pro Web-Seite gibt es nur noch eine Datei, in der:
      • der anzuzeigende Inhalt (Text, html) und
      • Meta-Information zum Inhalt, wie Autor, Keywords, Beschreibung, Verlinkung, Layout, Anzeigebedingungen und aehnliche
      zusammengefasst gespeichert sind.
      Wir nennen sie vereinfachend Inhaltsdatei.
      • Inhaltsdateien sind XML-Dateien, die als Elemente die Elemente die Meta-Informationen und ein <body> ... </body> Element enthalten
      • Im Body-Element einer Inhaltsdatei sind viele Elemente enthalten, die in einer xhtml-Datei im Body-Element zulässig sind, aber nicht alle. Dazu gibt es eine Dokumentation für Autoren.
      • Eine Inhaltsdatei kann bei Bedarf relativ einfach aus eigenen Quellen in andern Formaten generiert werden, z.B. Dokumentationsseiten aus dem DocBook Format
    • Wir arbeiten mit einer zentralen Datei zur Menüdefnition, die als CSV-Datei verwaltet wird und die folgenden Informationen enthält:
      • URL (variabler Teil ab dem host name)
      • Menü-Ebene (Verschachtelt)
      • Dateiname der dazugehörigen Inhaltsdatei bzw. Applikation
      • Text des anzuzeigenden Menü-Punkts
      • Html-Title-Attribut des Links des anzuzeigendes Menü-Punkts
      • andere notwendige Informationen
      Letzteres können z.B. Informationen darüber sein, ob es sich um eine Applikation oder um ein normales Dokument handelt etc., Purodha hat das nochmal genauer beschreiben.
    • Die Reihenfolge der Menüpunkte in der Anzeige ergibt sich aus der Reihenfolge, in der sie in der Menüdatei definiert sind.
    • Laufzeitoptimierungen in der Engine erfolgen nachrangig
    • Die Engine ist gut dokumentiert
  • Die Quelldateien der Web Site werden in einem cvs-Repository verwaltet und dort strukturiert (aber nicht zwingend mit der gleichen Struktur wie auf der Website) gespeichert. (Siehe aber diese Festlegung)

Aktueller Stand, erledigte Aufgaben

Hier sind nur große Schritte gelistet:

  • Die erste Version der Engine ist fertig.
  • Die Grundfassung der Menue-Datei ist fertig
  • Die Struktur des Beschreibungsteils einer Inhaltsdatei ist fertig
  • Die Struktur des Inhaltsteils (Body-Element) einer Inhaltsdatei ist weitgehend festgelegt
  • Eine relativ aktuelle Liste der URLs der alten Website ist online
  • Alle Seiten der alten Website sind automatisiert ins neue Formant konvertiert worden und online
  • Ein cvs für die neue Website ist eingerichtet, mit folgenden Repositories:
    www
    Document Root des Web Servers, per URL erreichbare Dateien
    hws
    Inhaltsdateien
    ????
    Konvertierte Dateien der alten Website in ihrer bisherigen Verzeichnisstruktur (verschwinden so wie sie abgearbeitet werden)
  • Eine Basis-Fassung der neuen Website ist online und kann mit Inhaltsdateien aufgefüllt werden

In Arbeit

  • Dokumentation der Engine (Purodha, niedrige Priorität)
  • Verbesserungen an der Engine (Purodha, später)
  • Beispielseiten der neuen Website online bringen (Purodha)
  • Anwender-Doku: Wie binge ich eine alte Seite auf die neue Website? (Purodha, asap)
  • Letztes Festlegen der xhtml-Tags und des erlaubten / erforderlichen Markup im Body-Element der Inhaltsdateien (Alle gemeinsam, nebenbei)
Ergänzungen folgen in den nächsten Stunden.

Offene Punkte

Offene Punkte und Details werden teilweise auch im Bugtracking-System von Hostsharing verwaltet, im Bereich Website. Links auf wichtige e-Mails in den Archiven und Diskussionsergebnisse werden den einzelnen Aufgaben als Ergänzungen und Notizen hinzugefügt.

Hier ein Überblick:

  • Engine
    • Dokumentation ganz fertigstellen
    • Einige Verbesserungen, siehe ToDo-System
    • Caching der Menue-Definitionsdatei zufügen
    • Caching statischer Seiten zufügen
    • Handling von Seiten mit dynamischen Einblendungen klären
    • Caching dynamischer Seiten ermöglichen
    • Einbinden von Applikationen klären
    • Einbinden von Applikationen programmieren
  • Menue-Datei
  • Dokumentation
    • Anwender-Dokumentation schreiben
    • How-To und Dokumentation für Autoren schreiben
  • Inhalte
    • Verzeichnisbaum und Dateinamen für die Inhalts-Dateien festlegen (siehe auch oben unter Menue-Datei)
    • Konvertierte Texte der alten Website durchkorrigieren
    • Aufteilen der konvertierten Texte, vor allem der Dokumentation, auf die neuen Dateien
    • Die endgültige Festlegung der erlaubten html Tags in den Inhalten ist noch nicht getroffen
    • Dazu muss auch noch eine Autorendokumentation geschrieben werden, die die Bereiche:
      • Dateiformat
      • erlaubtes html, erlaubter/vorgeschriebener Markup
      • Festgelegte Styles
      umfaßt
  • Technischer Rahmen
    • Liste der alten URLs mit ihren Weiterleitungen auf die URLs der neuen Website erstellen
    • Aufteilen der Dateien der alten Website auf z.T. viele Neue
    • Festlegung der Namen und der groben Semantik (Bedeutung) der style classes
  • Gestaltung
    • Weiteres Festlegen der wesentlichen Layouts der neuen Website
    • Feintuning der Layouts der neuen Website
    • Erstellen bzw. Fertigstellen des/der Style Sheets der neuen Website
    • Verbindungen zu andern Gestaltungsaufgaben / zur CI / zu DokBook knüpfen

Wichtige Diskussionsbeiträge

Materialien

Dokumentation

noch keine

Anforderungen

  • Logo und Farbe müssen unseren Drucksachen entsprechen.
  • An der Bearbeitung der Website müssen sich mehrere Mitglieder beteiligen können.
  • Das Ändern von Inhalten muß offline möglich sein.
  • Gestaltung ausschließlich über Stylesheets.
  • Es soll ein Rechtesystem für die Veröffentlichung von Inhalten geben.
  • Für alle URLs, die sich bei der Umstellung auf die neue Site ändern, müssen Redirects eingerichtet werden.
  • Die URLs sollten so gewählt sein, daß sie sich möglichst nicht ändern (Cool URIs don't change).
  • Die Site muß vollständig standardkonform sein.
  • Im ersten Schritt werden nur statische Seiten umgesetzt.
  • Das bisherige Download Area wird ins Menu integriert und läuft nicht mehr als Applikation

Notizen und Hinweise

  • Wir brauchen eine Grafik, mit der man auf Hostsharing verlinken kann.
  • Wir haben gerade (Ende März / Anfang April 2003) eine erneute Diskussion und Abstimmung zum Logo laufen, das wird Auswirkungen auf die Gestaltung der neuen Website haben.

Änderungen

Für Änderungen und Ergänzungen an dieser Seite bitte e-Mail an: bli00 at hostsharing dot net. oder an die website@ mailingliste.


Geändert am: 22.11.2004, 22:34 Uhr
Nach oben
Druckversion