Seattle Game Dev JS: Ein Rückblick und ein Schritt nach vorn.
Diesen Januar feierte unsere HTML5 Game Dev Group ihren ersten Geburtstag. (Die werden so schnell groß!) Und mit diesem Meilenstein im Hinterkopf möchten wir all unseren Mitgliedern, Sponsoren und allen, die dazu beigetragen haben, dass unsere Treffen so fantastische, wissensgefüllte Häppchen wurden, ein herzliches Dankeschön aussprechen!
Dieses Jahr sieht noch besser aus als das letzte. Wir haben es mit einem Stromausfall begonnen, gefolgt von einer erstaunlichen Erholung und einer Präsentation (trotz Stromausfalls!) über HTML5-Optimierungen vom Double Down Mobile-Team. Es wird nie langweilig!
Letztes Jahr ist unsere Gruppe von 0 auf 380 Mitglieder gewachsen, ein riesiger Erfolg! Die Game Dev JS Crew ist eine vielfältige Community voller Entwickler, Künstler, Gamer, Programmmanager, Netzwerkadministratoren und JS-Enthusiasten aller Art. Unser jüngstes Entwicklermitglied ist erst 13 Jahre alt! Indem wir die Inhalte stets frisch, die Sprecher lebendig und die Mitglieder engagiert gehalten haben, konnten wir eine robuste Community aufbauen – ohne euch hätten wir das nicht geschafft!
Wenn Sie an JS interessiert sind, ist ein Meetup eine großartige Chance, Spaß zu haben, etwas Neues zu lernen, Wissen zu teilen und einige sehr interessante Charaktere kennenzulernen.
Wichtige Erkenntnisse
- Seattle Game Dev JS wuchs im ersten Jahr von null auf 380 Mitglieder, basierend auf einer Mischung aus Vorträgen, Lightning-Demos und Happy Hours.
- Das Line-up der Gruppe für 2012 spannte den gesamten HTML5-Stack auf: Rendering, Canvas-Tricks, Audio, native Wrapper, Windows 8 und node.js Server-Architektur.
- Eine Community wie diese funktioniert, weil sie bewusst interdisziplinär bleibt – Entwickler, Künstler, PMs und Netzwerkadministratoren alle in einem Raum.
- Der beste Weg, einen Mehrwert aus einem Meetup zu ziehen, besteht darin, vorbeizukommen, Fragen zu stellen und schließlich selbst etwas zu präsentieren.
- Die Planung für 2013 ist offen: Wir freuen uns auf Ihre Themenideen, Vorschläge für Veranstaltungsorte und Speaker-Pitches.
Warum eine JavaScript Game Dev Group wichtig ist
Als wir diese Gruppe gründeten, war „HTML5-Spieleentwicklung“ noch ein Begriff, bei dem viele Leute skeptisch die Stirn runzelten. Das <canvas>-Element war noch neu, die Browserleistung war inkonsistent, und die Idee, dass man ein echtes Spiel – keine Tech-Demo – in JavaScript veröffentlichen könnte, wurde eher als Neuheit denn als Plattform betrachtet.
Ein Jahr später hat sich diese Diskussion komplett gewandelt. Der Grund, warum ein lokales Meetup in einem solchen Bereich wichtig ist, liegt darin, dass die Dokumentation hinter der Realität zurückbleibt.
Verwandte: — Vorgefertigte Grafiken, Tools und Vorlagen, die direkt in Ihr Unity-Projekt eingefügt werden.
Blogbeiträge beschreiben, was vor sechs Monaten funktioniert hat. Konferenzvorträge sind so poliert, dass sie abstrakt werden. Was einen Entwickler tatsächlich voranbringt, ist, neben jemandem zu sitzen, der genau Ihr Problem letzte Woche gelöst hat – ein Canvas, das auf einem bestimmten Gerät ruckelt, ein Audioelement, das sich auf Mobilgeräten nicht entsperren lässt, eine Build-Pipeline, die an einem großen Asset-Bundle erstickt.
Das ist die Lücke, die Game Dev JS füllt. Es ist keine Vortragsreihe. Es ist ein Raum voller Leute, die alle mitten in einem Problem stecken und ihre Notizen vergleichen.
Was wir 2012 behandelt haben
Hier ist einiges von dem, was wir im Laufe des Jahres behandelt haben:
Wenn Sie einkaufen: — Browserbasierte HTML5-Engine ohne Code, die ins Web, auf Mobilgeräte und auf dem Desktop exportiert.
- Javascript Game Development: an Overview – Grant Goodale, Massively Fun
- Retained Mode Graphics Libraries – Kevin Moore, Pixel Lab
- Stupid Canvas Tricks – Dean Hudson, Massively Fun
- HTML5 port of Zepto Labs’ Cut the Rope – Joel Fillmore, Pixel Lab
- Challenges of building a native UIWebView application around an HTML5 webapp – Jeff Close, Adam Hardtke, Sean Stringer und Nate Vaughn, DDI
- Native wrapper technology: CocoonJS – Iker Jamardo, Ludei
- HTML5 game development for Windows 8 – Giorgio Sardo, Microsoft
- Game engine design around node.js and express.js – Dean Hudson und Mason Browne, Massively Fun
- Co+Pilot: a tool built using Javascript and a JQuery like syntax to allow users to make native apps – Myron Millin und David Whitlark
- Effective HTML5 Game Audio – Chris Khoo, Wappworks Studios
All diese Themen sowie zahlreiche Lightning-Talks und Demos von Gruppenmitgliedern wurden im Laufe des Jahres präsentiert. Und natürlich kommen wir auch gelegentlich zur Happy Hour zusammen!
Ein ganz besonderer Dank geht an Double Down Interactive, Big Fish Games, GameHouse und The Makers Space für das Hosting!
Die Themen hinter den Vorträgen
Wenn man auf diese Liste zurückblickt, ziehen sich ein paar klare rote Fäden durch sie – und es lohnt sich, diese zu benennen, weil sie fast genau den Entscheidungen entsprechen, die jeder HTML5-Entwickler treffen muss.
Rendering und die Frage des Retained-Mode. Kevin Moores Vortrag über Retained-Mode-Grafikbibliotheken und Dean Hudsons „Stupid Canvas Tricks“ stehen auf entgegengesetzten Seiten einer echten architektonischen Gabelung. Immediate-Mode-Canvas-Zeichnung gibt Ihnen die volle Kontrolle und minimalen Overhead, aber Sie verwalten jedes Neuzeichnen selbst. Retained-Mode-Bibliotheken (die Linie, die durch Frameworks wie CreateJS, PixiJS und später Phaser führt) bieten Ihnen ein Scene Graph, Hit-Testing und Tweening direkt aus der Box – auf Kosten einer Abstraktionsschicht zwischen Ihnen und der GPU. Keines von beidem ist „richtig“. Die richtige Antwort hängt davon ab, ob Ihr Spiel aus einer Handvoll Sprites oder einer komplexen, zustandsbehafteten Welt besteht.
Das Wrapper-Problem. Drei separate Vorträge – die DDI UIWebView-Session, Iker Jamardos CocoonJS-Präsentation und Co+Pilot – drehten sich alle um dieselbe Frage: Wie bringt man eine Web-App in einen App Store? Im Jahr 2012 waren die Optionen in etwa:
| Ansatz | Was es Ihnen bietet | Der Kompromiss |
|---|---|---|
| Einfache Web-App | Keine Reibung, sofortige Updates | Keine Store-Präsenz, begrenzte Geräte-APIs |
| Nativer WebView-Wrapper | Store-Vertrieb, einige native Hooks | Leistungsobergrenze, UI-Diskrepanz zum nativen Chrome |
| Beschleunigter Wrapper (z. B. CocoonJS) | GPU-beschleunigter Canvas, nahezu native Geschwindigkeit | Anbieterbindung, plattformspezifische Eigenheiten |
Diese Tabelle ist auch heute noch eine nützliche Möglichkeit, über die Entscheidung nachzudenken, auch wenn sich die spezifischen Tools weiterentwickelt haben.
Audio. Chris Khoos Vortrag über effektives HTML5-Spielaudio war und ist eines der am meisten unterschätzten Themen auf diesem Gebiet. Audio ist der Punkt, an dem Webspiele am häufigsten scheitern: Autoplay-Richtlinien, Unterschiede bei der Codec-Unterstützung und die Latenz zwischen einer Benutzergeste und dem tatsächlichen Auslösen eines Tons. Wenn Sie heute ein Spiel entwickeln, planen Sie ausreichend Zeit für Audio ein – es ist kein Problem, das man einfach mit einer Datei löst („drop in a file“).
Serverseitiges JavaScript. Der Vortrag von Dean Hudson und Mason Browne über Game-Engine-Design rund um node.js und express.js war ein frühes Signal dafür, dass Server und Client eine gemeinsame Sprache nutzen könnten. Das ist wichtiger, als es klingt: gemeinsamer Code für die Validierung des Spielstatus, gemeinsame Datenformate und ein einheitliches mentales Modell über den gesamten Stack hinweg.
So holen Sie das Beste aus einem Meetup heraus
Wenn Sie neu in dieser Art von Gruppe sind – oder bisher nur im Hintergrund mitgelesen haben und noch nicht aktiv geworden sind – finden Sie hier die praktischen Ratschläge, die wir jedem geben würden.
- Kommen Sie mit einem spezifischen Problem. „Mein Spiel ist langsam“ erntet Mitgefühl. „Mein Canvas verliert Frames, wenn ich mehr als ein paar hundert Sprites zeichne“ bringt Ihnen eine Antwort.
- Sprechen Sie mit der Person neben Ihnen, nicht nur mit dem Sprecher. Der Vortrag ist der Vorwand; das Gespräch im Flur ist der eigentliche Wert.
- Halten Sie einen Lightning Talk. Fünf Minuten über etwas, das Sie gelernt haben, sind der schnellste Weg, um in der Gruppe bekannt zu werden. Sie müssen kein Experte sein – Sie müssen nur eine Sache gelöst haben.
- Nachfassen. Tauschen Sie Kontaktinformationen aus und senden Sie tatsächlich den versprochenen Link oder den Code-Snippet.
- Bringen Sie Ihre Nicht-Entwickler-Perspektive ein. Unsere Künstler, PMs und Netzwerkadministratoren stellen die Fragen, die Entwickler vergessen, und diese Fragen sind oft die nützlichsten im Raum.
Aufbau einer dauerhaften Gemeinschaft
Das Wachstum von null auf 380 Mitglieder in einem Jahr klingt wie eine Eitelkeitskennzahl, aber die Zahl, die tatsächlich zählt, ist die Bindung (Retention) – wie viele dieser Leute zurückgekommen sind. Ein paar Dinge, die wir darüber gelernt haben, wie man eine technische Community am Leben erhält:
- Rotieren Sie die Inhalte. Wenn jedes Meeting ein Canvas-Tutorial für Anfänger ist, kommen Ihre erfahrenen Mitglieder nicht mehr. Wenn jedes Meeting aus tiefgreifender GPU-Optimierung besteht, verlieren Sie die Neulinge. Mischen Sie Übersichten, Deep Dives und Demos.
- Halten Sie die Hürde für Vorträge niedrig. Lightning Talks und Mitgliederdemos senken den Einsatz und machen Leute sichtbar, die sich niemals freiwillig für einen vollen Slot melden würden.
- Verpflegen Sie die Leute, im wahrsten Sinne des Wortes. Happy Hours und gemeinsame Mahlzeiten tun mehr für den Zusammenhalt der Gemeinschaft als jede noch so detaillierte Agendaplanung.
- Bedanken Sie sich öffentlich bei Ihren Gastgebern. Double Down Interactive, Big Fish Games, GameHouse und The Makers Space haben uns Räume zur Verfügung gestellt, und Räume sind die unscheinbare Voraussetzung für alles andere.
- Machen Sie es für jedes Alter und jeden Hintergrund einladend. Unser jüngstes Mitglied ist 13. Das ist keine Kuriosität – es ist eine Erinnerung daran, dass dieses Feld eine ungewöhnlich niedrige Eintrittsbarriere hat, und die Gruppe sollte dies widerspiegeln.
Ausblick auf 2013
Klingt großartig, oder? Worüber möchten Sie uns im Jahr 2013 sprechen sehen? Wo möchten Sie sich treffen?
Einige Richtungen, auf die wir neugierig sind und zu denen wir uns über Ihren Input freuen würden:
- Mobile Performance und Profiling – wie man mithilfe von Browser-Dev-Tools und Gerätetests tatsächlich misst, wo die Frames verloren gehen.
- Multiplayer und Networking – WebSockets, Latenzkompensation und die chaotischen Realitäten der Echtzeitsynchronisierung.
- Tooling und Workflow – Build-Systeme, Asset-Pipelines und wie kleine Teams ohne einen dedizierten Tools-Engineer auskommen.
- Physik und Kollision – wann man eine Bibliothek nutzt und wann man seine eigene schreibt.
- Barrierefreiheit und Eingabe – Tastatur-, Touch- und Bewegungssteuerungsplattformen und wie man mehr als eine unterstützt, ohne die Arbeit zu verdoppeln.
Antworten Sie unten mit Ihren Ideen oder twittern Sie @massivelyfun unter Verwendung des Hashtags #GameDevJS. Bis bald!
Häufig gestellte Fragen
Was ist Seattle Game Dev JS?
Es ist eine Meetup-Gruppe im Raum Seattle für Leute, die sich für die Entwicklung von JavaScript- und HTML5-Spielen interessieren. Sie bringt Entwickler, Künstler, Designer, Programmmanager, Netzwerkadministratoren und allgemeine JS-Enthusiasten für Vorträge, Lightning-Demos und soziale Events zusammen.
Muss ich ein erfahrener Entwickler sein, um teilnehmen zu können?
Nein. Die Gruppe mischt bewusst Übersichtsvorträge mit tiefgreifenden technischen Deep Dives, und die Mitglieder reichen von einem 13-jährigen Hobbyisten bis hin zu professionellen Ingenieuren in etablierten Studios. Wenn Sie neugierig auf die JS-Spielentwicklung sind, gehören Sie in den Raum.
Wie kann ich einen Vortrag vorschlagen oder ein Thema anregen?
Antworten Sie in den Kommentaren zu diesem Beitrag oder twittern Sie @massivelyfun unter Verwendung des Hashtags #GameDevJS. Wir suchen aktiv nach Themenideen, Vorschlägen für Veranstaltungsorte und Speaker-Pitches für 2013.
Welche Themen behandelt die Gruppe?
Historisch gesehen: Rendering- und Canvas-Techniken, Grafikbibliotheken, native Wrapper und App-Store-Vertrieb, HTML5-Audio, Windows 8-Entwicklung und node.js/express.js-Serverarchitektur. Wir sind daran interessiert, uns in den Bereichen mobiles Profiling, Multiplayer-Networking, Tooling, Physik und Barrierefreiheit zu erweitern.
Wer veranstaltet die Treffen?
Wir wurden von Double Down Interactive, Big Fish Games, GameHouse und The Makers Space beherbergt und sind ihnen allen dankbar. Wenn Ihr Unternehmen über Räumlichkeiten verfügt und die lokale Entwickler-Community unterstützen möchte, würden wir uns freuen, von Ihnen zu hören.
Geht es in dieser Gruppe nur um Spiele?
Der Schwerpunkt liegt auf Spielen, aber die Fähigkeiten überschneiden sich stark mit der allgemeinen Web- und App-Entwicklung – Canvas-Rendering, Audio-Handhabung, native Wrapper und die Node.js-Architektur sind alle weit über Spiele hinaus anwendbar. Viele unserer Mitglieder arbeiten an Projekten, die keine Spiele sind.
Teilen Sie dies: Twitter Facebook Google Pinterest Reddit
Weiterführende Literatur
- HTML5 — Wikipedia
- Canvas-Element — Wikipedia
- Node.js — Wikipedia
- Meetup (service) — Wikipedia
Frequently asked questions
What is Seattle Game Dev JS?
It's a Seattle-area meetup group for people interested in JavaScript and HTML5 game development. It brings together developers, artists, designers, program managers, network admins, and general JS enthusiasts for talks, lightning demos, and social events.
Do I need to be an experienced developer to attend?
No. The group deliberately mixes overview talks with deep technical dives, and members range from a 13-year-old hobbyist to professional engineers at established studios. If you're curious about JS game development, you belong in the room.
How can I propose a talk or suggest a topic?
Reply in the comments on this post, or tweet @massivelyfun using the GameDevJS hashtag. We're actively looking for topic ideas, venue suggestions, and speaker pitches for 2013.
What kinds of topics does the group cover?
Historically: rendering and canvas techniques, graphics libraries, native wrappers and app-store distribution, HTML5 audio, Windows 8 development, and node.js/express.js server architecture. We're interested in expanding into mobile profiling, multiplayer networking, tooling, physics, and accessibility.
Who hosts the meetings?
We've been hosted by Double Down Interactive, Big Fish Games, GameHouse, and The Makers Space, and we're grateful to all of them. If your company has space and wants to support the local dev community, we'd love to hear from you.
Is this group only about games?
The focus is games, but the skills overlap heavily with general web and app development — canvas rendering, audio handling, native wrappers, and node.js architecture all apply well beyond games. Plenty of our members work on non-game projects. Share this: Twitter Facebook Google Pinterest Reddit <!-- citations:start --> Further reading - [HTML5](https://en.wikipedia.org/wiki/HTML5) — Wikipedia - [Canvas element](https://en.wikipedia.org/wiki/Canvas_element) — Wikipedia - [Node.js](https://en.wikipedia.org/wiki/Node.js) — Wikipedia - [Meetup (service)](https://en.wikipedia.org/wiki/Meetup_(serv
Lernen Sie Spieleentwicklung nach Ihrem eigenen Zeitplan
On-Demand-Kurse zu Unity, Unreal, C++, C# und Shader-Programmierung