Sonntag, 6. April 2008

Ein Grund mehr für valides Markup

Die 1&1 Bestellfrontends basieren fast ausschließlich auf dem im Haus entwickelten Java-Framework Pustefix. Aus (Front-)Frontend-Sicht bedeutet dies, daß alle Seiten eines Projekts (und das sind mitunter hunderte) mit XSLT in unterschiedlichen Transformationsstufen zu einem HTML-Output transformiert werden. Dieser Ansatz bietet eine ganze Reihe großartiger Möglichkeiten. Innerhalb des Markup lassen sich z.B. eigene Elemente verwenden, welche dann mit Hilfe von XSLT Stylesheets zu HTML-Code transfromiert werden. Das wird im Wesentlichen dazu benutzt, um XML-basiert logische Entscheidungen treffen zu können, wie dieses generierte Markup auszusehen hat.

Was hat das jetzt mit validem Code zu tun? Ich habe in der letzten Woche eine größere Aufräumaktion gemacht, in der ich ca. 7000 Zeilen veralteten XSLT-Code aufgespürt und gelöscht habe. Das Problem, das man im Frontend dabei hat, ist folgendes: Wären bei dem gelöschten XSLT Templates dabei gewesen, die noch benötigt worden wären, wäre das nicht aufgefallen. Das liegt in der Arbeitsweise des XSLT-Prozessors begründet. Man hätte dann die erwähnten eigenen Elemente im Output wiedergefunden. In etwa so:

<p>
Geben sie Ihr Geburtsdatum ein: <getBirthDate/>
</p>

Dabei hätte das Element getBirthDate eigentlich zu vernünftigem HTML (z.B. einem <input>-Tag) transformiert werden müssen.

Aufspüren lassen sich solche Fehler eigentlich ganz einfach: Ist das generierte Dokument nicht valide (und so etwas würde sich automatisch feststellen lassen) trat ein Fehler auf. Das funktioniert aber nur - und jetzt kommt's - wenn man davon ausgehen kann, daß das Dokument vorher definitiv valide war. Sonst mischen sich invalide HTML-Konstrukte mit invaliden eigenen Elementen - blöd, denn dann ist automatisiert leider überhaupt nichts mehr feststellbar, denn was vorher schon invalide war, läßt sich auf dieses Kriterium leider nicht überprüfen.

1&1 MediaCenter ist online

Seit einigen Wochen ist das neue 1&1 MediaCenter online. Erwähnen möchte ich das deshalb, weil es der erste 1&1 Shop ist, der komplett mit den neuesten Frontend-Ansätzen arbeitet. Das YUI Loader Utility wurde durch das Jasmin-Sevlet abgelöst (ich habe hier bereits über beide Ansätze geschrieben). IE-spezifische Styles werden über Conditional Comments eingebunden. Zusätzlich dazu basiert der gesamte Bestellprozeß (im wesentlichen dessen Formulare) auf neuen, valides Markup produzierenden XSLT-Stylesheets, auf die ich bei Gelegenheit näher eingehen werde.

YUI Carousel jetzt auch bei Hosting

Nachdem bereits das Maxdome-Popup mit der YUI Carousel Component umgesetzt wurde, ist diese Feature jetzt auch in den verschiedenen Hosting-Shops, unter anderem hier, in etwas anderer Anwendung zu finden.



Wie die Headline bereits verrät, wird mit dem Carousel ein Überblick über die Feature-Highlights von 1&1 Hosting gegeben.

Visits are up. Way up.

Ohne konkrete Zahlen zu nennen, möchte ich hier kurz den Erfolg unseres Projekts http://handy-kundigung.com dokumentieren. Gestartet im Februar 2007, sind die Besucherzahlen seit dem ständig gestiegen. Mit dem neuen Google Analytics-Feature, welches es erlaubt, die Unterteilung auch nach Wochen (oder Monaten) vorzunehmen, habe ich folgenden Graphen erstellt.

Google Analytics Graph

Weiterhin zeigt das neue Benchmark-Feature, daß das Projekt auch im Vergleich zu Webseiten ähnlicher Größe super dasteht. Bei allen dort verglichenen Parametern ist ein deutlicher Vorsprung zu erkennen.

Blog abonnieren

RSS 2.0 Feed

Suche

Kalender

Zurück April '08 Vorwärts
Mo Di Mi Do Fr Sa So
  1 2 3 4 5
7 8 10 11 12 13
14 15 17 19 20
21 22 23 24 25 26 27
28 29 30        

Verwaltung des Blogs

Blogroll

Projects/Web

vCard

  • Nico Steiner
  • www.nicosteiner.de
  • Karlsruhe/Germany
  • Senior Frontend-Developer at 1&1