Die Apfellogodichte auf dem Microsoft-Areal in Mountain View war vergangenes Wochenende überdurchschnittlich hoch. Grund dafür war die „wohl grösste JavaScript Konferenz der Welt„. An der Bay Area jQuery Konferenz 2010 war alles versammelt was Rang und Namen in der JavaScript – und insbesondere in der jQuery-Welt hat. John Resig, der Schöpfer und geistige Vater von jQuery, eröffnete die Konferenz mit ihren fast 500 Teilnehmern und danach folgen etwa dreissig Sessions – Schlag auf Schlag – randvoll mit Informationen. Johns Ansprache wurde per Livestream in den zweiten Raum übertragen – nicht alle Personen passen in den mit allen technischen Finessen ausgestatteten Raum Eins des Microsoft Conference Centers.
Verteilt in den zwei Räumen finden jeweils parallel 45-minütige Sessions statt. „High Performance jQuery“, durch Steve Souders, Nicholas C. Zakas und einem herausragend Robert Duffy und in drei Sessions vertreten – eines der thematischen Schwerpunkte der Konferenz.
«0.1 second is about the limit for having the user feel that the system is reacting instantaneously»
Nicholas, kein ausgesprochener jQuery-Experte, dafür aber bewaffnet mit jahrelanger Erfahrung als JavaScript Entwickler – und als Principal Frontend Engineer der Yahoo!-Homepage eine Koryphäe auf dem Gebiet – vermittelte auf äusserst eingängige Art und Weise, warum die Ausführung von JavaScript den Browser-UI Thread blockieren, und dadurch eine Webseite träge erscheinen lassen kann – und präsentierte gleich auch Lösungen, um dies zu verhindern. Des Weiteren erläuterte er auch die Problematik, welche durch die besonders CPU-lastige Neuberechnung – ein so genannter Reflow – der Seite durch JavaScript-Manipulationen entsteht und wie man solche Reflows vermeiden oder zumindest reduzieren kann.
Use the right tools for the right job
Weniger Neues – dafür aber zum Brüllen komisch – vermittelte der Brite Robert Duffy anschaulich, wie man mit wenigen Tricks die Performance von jQuery-Applikationen um ein Viellfaches verbessern kann. Durch ein witziges Beispiel seines britischen Rennwagens auf einer jQuery-gesponsorten Rennbahn vermittelte er die Prinzipien von Selektor-Caching und wie man durch richtigen Einsatz der verfügbaren Mittel – zum Beispiel durch die Verwendung von CSS-Klassen statt der show(); und hide(); Funktionen – die Performancegewinne erzielen kann. Quintessenz:
«Performance is no Rocket Science but has a massive Impact if you pay attention to the small things.»
Und die Aussage des Tages:
«Use Tables…»
Werbung ist (oft) nicht nur langweilig, sie beeinträchtigt (meist) auch die Performance der Webseite
Das war eine der Grundaussagen von Steve Souders, welcher in seinem schon oft gehaltenen Vortrag einige neue und sehr praktische Tools vorgestellt hatte. Darunter ein wohl oft übersehenes Tab „Tools“ in YSlow welches einige praktische Werkzeuge enthält – All JS Beautified, wenn man mal wieder das komprimierte Apple-JavaScipt entschlüsseln will – und eine Webseite, mit der man die Performance einer Seite in IE7 und IE8 in ausführlich testen kann. Besonders spannend daran ist die Möglichkeit, den Aufbau der Seite über Zeit in Screenshots und als Video aufzuzeichnen. Ein praktisches Tool um dem Kunden eine Performance-Verbesserung schmackhaft zu machen.
How To Manage Large Applications with jQuery
Alex Sexton präsentierte – in seinem ihm eigenen Humor – gleich drei Methoden um grosse jQuery Applikationen handbar zu machen:
- Nativ / Pseudo-Classical
- Classical
- Prototype Inheritance (fits into the language the best)
zusammen mit seiner Präsentation bestimmt ein (vertiefter) Blick wert.
«OO Code in JavaScript is Crippled Evented Code»
Ebenfallst eine Perle unter den Vorträgen war { Evented von Yehuda Katz. Mit seiner polarisierenden Aussage
«Don’t use OO to organize your code – There are better concepts.»
regte er viele Diskussionen an und lieferte gleich einige schlagkräftige Argumente um seine Aussage zu untermauern. Leider sind seine Slides und Beispiel noch nicht online… Nebenbei erwähnte Yehuda noch haml, sass and compas – drei Dinge die wohl ebenfalls erwähnt und beachtet werden dürfen.
«Design is not just what it looks like and feels like. Design is how it works.» Steve Jobs
Neben vielen sehr technischen Vorträgen gab es auch (vereinzelte) Ausnahmen. Die einzige Folie mit Code in der Präsentation des redegewandten Steve Smith:
jQuery.fx.speeds._default = ( jQuery.browser.ie && jQuery.browser.version < parseInt(8,10) ) ? 0 : 200;
Steve erläuterte warum Entwickler Interaction-Design ernstnehmen sollten – und lieferte ein paar Tipps, wie man ein UI entwickeln kann, welches dem Benutzer Zuversicht schenkt, statt Misstrauen bei der Bedienung zu wecken. Zusammengefasst:
- Design the User Experience first
- Interactions are meant to
impress the user
impress the client
engage and enhance - Speed is important – distractions are bad
- It’s our job to build user confidence
- Don’t solve problems with code – Solve the problem, then write the code
jQuery als Browser-Standard?
Zum Schluss hielt John Resig eine Rede zur Lage der Nation von jQuery in der er über geplante Features wie Script Loading und einigen offiziellen Plugins (Template- und Data Binding Plugin) Stellung nahm. Das jQuery Team und insbesondere John ist ausserdem in Gesprächen mit unterschiedlichen Browser-Herstellern um Teile von jQuery zu einem Browser-Standard zu machen:
«I’ve been talking width Mozilla, IE, Crockford, and the W3C to come up with a good result that everyone is happy with and that is shipped with Browsers»
Auf seinem triumphalen Siegeszug durch das Internet hat jQuery mittlerweile auf zwei von drei Webseiten Einzug gehalten und eine Kehrtwende ist nicht in Sicht. Diese Konferenz – mit Entwicklern aus aller Welt und aus Firmen wie google, Yahoo! und Microsoft – hat dies eindrücklich gezeigt. Die nächste jQuery Konferenz in London steht bereits vor der Türe und ich für meinen Teil kann eine Teilnahme nur empfehlen. Das geballte Know-How und die informativen und sogleich humorvollen Präsentationen sowie viele Gespräche – sowohl vor als auch nach den Sessions – das gemütliche After-Party-Bier bei angeregter Unterhaltung, die Chance neben Jay Freeman – a.k.a. Saurik, dem Entwickler des inoffiziellen iPhone-App-Stores – zu sitzen machen diese Konferenz zu einem must see.
Zum Nachschlagen
Alle Die meisten Slideshows kann man unter Speakerrate betracht. Es lohnt sich.