Berechtigte Chancen für Node.js als "nächstes großes Ding"

Veranstaltungsberichte  –  Kommentare

Die Community um das serverseitige JavaScript-Framework Node.js mag noch verhältnismäßig klein sein – doch sie wächst stetig, gewinnt zunehmend an Professionalität und begeistert. Nur so ist zu erklären, dass sich rund 250 Menschen aus ganz Europa auf den Weg nach Brescia zur ersten Node.js Conference Italy machten.

Die von der User-Gruppe Web Developers Brescia (WEBdeBS) organisierte Konferenz fand am 24. September 2011 statt. Und bereits das vorabendliche Treffen deutete darauf hin, dass sie "anders" sein würde, als man es von den meisten anderen Veranstaltungen gewohnt ist, denn es war vollkommen normal, an einem Tisch acht Personen aus acht unterschiedlichen Ländern anzutreffen. Vertreten waren neben Italien unter anderem Spanien, Deutschland, England, Russland und die Niederlande. Ebenso bunt gemischt waren die Vorkenntnisse der Teilnehmer: Während einige intensiv mit JavaScript und Node.js vertraut waren, nutzten andere die Gelegenheit für einen Blick über den Tellerrand.

"It is not supposed to fly – but it does!"

Gabriele Lana eröffnete am nächsten Morgen die eigentliche Konferenz. Seine Keynote war richtungweisend für den weiteren Tag. Im Zentrum seines Vortrags stand der Vergleich zwischen Node.js und einer Hummel: Obwohl jene scheinbar über zu kleine Flügel verfüge und zu schwer zum Fliegen sei, erhebe sie sich dennoch elegant in die Luft. Mit Node.js verhalte es sich ähnlich: Zwar könne sich in der Theorie kaum jemand vorstellen, dass diese ausgerechnet auf JavaScript basierende Technik funktionieren soll – doch die Realität beweise das Gegenteil.

Danach wagte der Autor des Artikels in seiner Session einen Ausblick auf die Zukunft von Node.js. Er warnte die Teilnehmer vor dem unerwarteten Eintreffen des übermäßigen Erfolgs: Was, wenn sich quasi über Nacht Scharen von OOP-Entwicklern auf JavaScript und Node.js stürzen – und sich dann in den Fallstricken von JavaScript verfangen und zu Boden gerissen werden? Sein Vorschlag lautet, diesen Entwicklern die funktionale Programmierung auf Basis der ihnen vertrauten Konzepte zu vermitteln und auf die Art einen nahtlosen Übergang von der objektorientierten in die funktionale Denkweise zu erreichen.

Andy Kent und Ryan Greenhall berichteten im Anschluss in ihrer Session "Scaling node to 50,000,000 requests per day", wie sich Node.js nutzen lässt, um skalierbare, hochperformante und echtzeitfähige Webanwendungen zu entwickeln. Ihre Kernthese lautete, dass Skalierbarkeit ohne größeren Aufwand umsetzbar ist, wenn einige grundlegende Anforderungen erfüllt würden: Besonders hervorgehoben haben sie, dass Webanwendungen für eine gute Skalierbarkeit statuslos und die einzelnen Instanzen voneinander unabhängig sein müssten. Als beeindruckendes Beispiel wurde eine Webanwendung gezeigt, die dank einer Migration auf Node.js nun mit vier statt fünfzehn Servern auskommt – und dabei die doppelte Menge an Anfragen verarbeiten kann.

Als letzte Session vor der Mittagspause zeigte Sergi Mansilla die sich in den Browser integrierende Entwicklungsumgebung Cloud9. Sein Vortrag "Developing Cloud9 in Cloud9" bot eine kompakte, aber unterhaltsame Rundreise durch die Features der IDE, samt einem Ausblick auf die nähere Zukunft. Auf besonderes Interesse stießen die Ankündigung, zukünftig auch Codeanalyse für JavaScript bieten zu wollen, sowie die Fähigkeit, eine Webanwendung aus Cloud9 heraus auf unterschiedliche Plattformen einzuspielen. Sein Fazit – und das vieler Teilnehmer – lautete: "Node.js ist bereit für den Produktiveinsatz."

Daten – asynchron und schnell

Nach der Mittagspause sprach Oleg Podsechin über Wege, die Anzahl der erforderlichen Callbacks in asynchronem Code zu verringern. Die von ihm im Wesentlichen vorgestellte Erweiterung node-fibers versucht, das mit Coroutinen in den Griff zu bekommen – ein durchaus vielversprechender Weg, den auch einige andere Frameworks wie Tame.js einschlagen.

Die beiden darauf folgenden Sessions beschäftigten sich mit der Frage, wie sich Daten effizient zwischen Client und Server beziehungsweise verschiedenen Clients austauschen lassen. Arnout Kazemier stellte hierfür das Framework Socket.IO vor, das zunächst als Abstraktionsschicht für die in HTML5 eingeführten WebSockets dient, darüber hinaus jedoch zahlreiche Fallbacks für ältere Browser bietet. Für den Entwickler ergibt sich damit die komfortable Situation einer einzigen API, die es ihm ermöglicht, sich auf die zu übertragenden Daten zu konzentrieren sowie sich nicht mehr mit den technischen Details und der Verfügbarkeit von WebSockets befassen zu müssen.

Auch Ian Jorgensen griff in seiner Session das Thema auf, jedoch aus einem leicht anderen Blickwinkel: Das Framework PubSub.IO entspricht eher dem klassischen Ansatz eines Bus-Systems, an das sich beliebige Knoten einklinken und dann miteinander kommunizieren können.

Parallel zu den einzelnen Sessions fand am Nachmittag ein Workshop zu Node.js statt, den Keynote-Sprecher Lana leitete. Hierin ging es um einen kompakten, aber vollständigen Überblick, welche Schritte erforderlich sind, um eine Webanwendung in Node.js zu erzeugen sowie sie mit Leben zu füllen und schließlich auf eine ausführende Plattform zu deployen.

Es passiert!

Daneben galt es jedoch, noch einer dritten Komponente Aufmerksamkeit zu zollen: den außergewöhnlich motivierten und interessierten Teilnehmern. Wie eingangs erwähnt reisten sie aus ganz Europa an und nahmen damit einen für eine derartige Konferenz erheblichen Reiseaufwand in Kauf. Das war jedoch symptomatisch für die gesamte Konferenz: Es waren ausnahmslos Menschen vor Ort, die sich für die Sache an sich begeisterten – es gab niemanden, mit dem man ins Gespräch kam, der erwähnt hätte, dass er lediglich gekommen sei, weil ihn sein Unternehmen geschickt habe.

Dieses intrinsische Interesse der Teilnehmer an Node.js war spürbar: Die Konferenz war erfüllt von einer energiegeladenen, konstruktiven und in die Zukunft gerichteten Atmosphäre. Einer der Teilnehmer fasste die Stimmung treffend zusammen, indem er Node.js als "das nächste große Ding seit Java" bezeichnete.

Fazit

Insgesamt boten die sieben Sessions und der Workshop einen interessanten Einblick in den aktuellen Stand der Dinge sowie einen kleinen Ausblick auf die nähere Zukunft des JavaScript-Frameworks. Die generell vermittelte Botschaft war, dass Node.js zwar noch jung, aber inzwischen durchaus geeignet für den produktiven Einsatz sei.

Die Community um Node.js glänzt dabei durch ihr ausgesprochen hohes Engagement und die Energie, sich zu begeistern, einzusetzen und etwas Neues zu erschaffen. Wenn es ihr gelingt, die Begeisterung auch dann am Leben zu erhalten, wenn die Verbreitung noch deutlich gestiegen ist, ist Node.js mit Sicherheit eine große und bedeutende Zukunft beschieden.

Wer nicht an der Node.js Conference Italy teilnehmen konnte, findet sämtliche Sessions als Audioaufzeichnung zum kostenfreien Download. (ane)

Golo Roden
ist freiberuflicher Wissensvermittler und Berater für .NET, Codequalität und agile Methoden.