JSConf EU 2017
as the organisers put it
This was probably one of the best weekends of my life, meeting great people, listening to talented developers share their experiences with us and getting inspired by a lot of them
who it's for
frontend developers, web performance engineers, library and tool maintainers, JavaScript engine authors, accessibility engineers, web multimedia developers, open source project maintainers
topics
code splitting and babel preset-env; HTTP/2 server push; service worker repeat-load pattern; immutable.js and bitmapped tries; web audio visualisation with WebMIDI; video compositing with WebGL shaders; password hashing with Argon2; shared memory and parallel programming; WebAssembly introduction for JS; source maps internals; date and time API design; accessibility testing with pa11y-ci
| title | author | length |
|---|---|---|
| The Browser Hackers Guide To Instantly Loading Everything | Addy Osmani | 28m |
Browser internals matter: average mobile page in 2017 takes ~16s to interactive, sends ~420–450KB JS, and desktop-focused frameworks blow mobile startup… | ||
| What's new in Netscape Navigator 2.0 | Marcin Szczepanski | 25m |
Implements TodoMVC in Netscape 2.0 and later ports to Netscape 4, using frame-set state + document.write and then layer-based pseudo-components, because script… | ||
| Immutable data structures for functional JS | Anjana Vakil | 27m |
Explains that persistent immutable collections use Bitmapped Vector Trie and path copying so updates copy a root-to-leaf path not the whole array converting… | ||
| NESpectre: The Massively Multi-Haunted NES | Zachary Johnson, Andrew Reitano | 30m |
A real 8‑bit NES is gutted for a dual-port RAM mod with a serial jack so a Node + Socket.IO backend and a MScript‑compiled FCEUX emulator can read and write… | ||
| YES, your site too can (and should) be accessible. Lessons learned from building FT.com | Laura Carvajal | 26m |
FT.com adds automated pa11y checks into CircleCI using pa11y‑ci, raises a high threshold, then tightens it until branches fail on new accessibility errors… | ||
| Maintaining an OSS Project (Babel) | Henry Zhu | 16m |
A concrete run-through names exact wins and pain points: Guy Fieri ASCII merged into the repo and t-shirt art, the left_pad handle origin story, an npm name… | ||
| How To Be A Web A/V Artist | Ruth John | 25m |
Uses the Web Audio API analyzer node to get frequency bins then remaps them to musical octaves (not linear bins) so visuals reflect real notes, pushes numbers… | ||
| Pavlov’s Dog & Foucault’s Panopticon: Hacking My Anxiety With Open-Source Technology | Jessica Tran | 23m |
Claims that slow resonance breathing around 6 cycles per minute raises heart‑rate variability and produces lasting reductions in anxiety, backed by measured… | ||
| Building High-Quality JavaScript Tools | Christoph Nakazawa | 27m |
Jest gets rebuilt incrementally: a new filesystem analyzer and smarter caches plus parallel worker scheduling speed tests at Facebook from thousands to tens of… | ||
| knock-knock-who-there-file-compression-TALK-FINAL-4.tar.trz.bz2.gz | Irina Shestak | 24m |
Node demos show how to compress HTTP responses with zlib and a small server using zlib + pump demo, produce measurable differences — curl + wc yields gzip vs… | ||
| Dynamic video in the browser | Matthew Shotton | 21m |
An open source VideoContext library lets the browser edit and composite live media using HTML media elements, WebGL fragment shaders for per‑pixel work (green… | ||
| Keeping passwords safe in 2017 | Emil Bay | 27m |
Shows concrete password-hashing choices and measurements: naive MD5 hashes let a common password be cracked in 1.3 seconds on an old laptop, fast hashes enable… | ||
| You don't need AMP for that | Chen Shay | 24m |
Concrete wins and tools: AMP enforces a 50 kilobyte CSS limit, inlines styles, uses closure compiler and Brotli, pre-renders only the first viewport, sandboxes… | ||
| Weakest Link | Meno Abels | 19m |
Argues the real weakest link is private keys and demonstrates it by measured TLS connection times from multiple continents to infer where keys live, finding… | ||
| Sequential Art, Comics & SVGs | Zahra Jabini | 20m |
A JavaScript library converts Illustrator art into stacked SVG layers, uses CSS translateZ plus a compensating scale for SVG depth correction, and explodes… | ||
| Sociolinguistics and the Javascript community, a love story | Harriet Lawrence | 20m |
Argues that sociolinguistics explains a decade of visible change in how people learn and join JavaScript communities, backing that claim with concrete… | ||
| Emoji, Web Components, and Art | Monica Dinculescu | 22m |
Builds a concrete widget called emojillate element that pixelates an uploaded image, samples each grid cell’s average RGB, picks a closest emoji, and emits a… | ||
| Barriers to Entry in the JavaScript Community | Khalid | |
-- no description -- | ||
| Can You Read Me? Creative JavaScript to Make Computer Science Fun | Mariko Kosaka, Suz Hinton | 32m |
Two machines exchange secret binary blobs and each side builds its own JavaScript decoder: one runs in the browser using FileReader.readAsArrayBuffer… | ||
| How to Break an API: How Community Values Influence Practices | Christian Kästner | 26m |
Interviews and a survey of 18 ecosystems show that values drive practices and tradeoffs: Eclipse enforces synchronized yearly releases and strict backward… | ||
| A Brief History of Modularity | Ashley Williams | 29m |
The talk stakes that modularity wins when it isolates design decisions likely to change, not when it follows the vague “separation of concerns” mantra; cites… | ||
| How Does Javascript Math? | Meara Charnetzki | |
-- no description -- | ||
| Making the Jump: How Desktop-Era Frameworks Can Thrive on Mobile | Tom Dale | 31m |
Argues that moving complexity into build tools lets desktop-era frameworks work on mobile by delivering device‑optimized bundles and smaller runtimes, citing… | ||
| Keep the Internet Weird | Rachel White | 24m |
A personal-sites origin story claims early-2000s HTML/CSS/JS learning happens through GeoCities and AngelFire page-building, Web Rings and Gray Matter blogs… | ||
| How It's Made, opening jsconf.eu | Jan Monschke, Kahlil Lechelt, Boris Lechelt, Martin Schuhfuss | 40m |
An opening performance is reconstructed as working software: a browser-based music and video instrument that reads MIDI, runs as an Electron app with MIDI… | ||
| Applying NASA coding standards to JavaScript | Denis Radin | 25m |
Claims that applying JPL/NASA coding rules to web code yields production‑grade reliability, with a real HTML/JavaScript flight instrument actually built and… | ||
| From Advocacy to Innovation: How JS Developers will shape the future of Internet Security, Privacy, and Trust | Amelia Abreu | 23m |
Claims that JavaScript teams bring measurable advantages: ethnographic interviews and cognitive work analysis plus a Python DES study reveal JS devs are more… | ||
| JavaScript engines how do they even? | Franziska Hinkelmann | 25m |
Explains how JIT compilers collect types at runtime, recompile hot functions and bail out on mismatch, showing real x86 assembly that compares hidden object… | ||
| The Past, Present, and Future of JavaScript Date and Time APIs | Matt Johnson | 22m |
Shows why the built‑in Date is broken with concrete demos: an HTML5 date input parses to the wrong day because date-only treated as UTC, adding one month… | ||
| Parsing JavaScript - better lazy than eager? | Marja Hölttä | 25m |
V8 uses an eager parser for top-level code and a fast pre-parser ~2x faster for lazy functions, trading full AST/scope work for speed; mobile parsing averages… | ||
| Source maps through the looking glass | Ben Vinegar | 24m |
Deep dive into the actual source map format and workflows, with concrete examples: shows Babel output with sourceMappingURL, explains the VLQ encoded mappings… | ||
| The Ethics of the Internet of Things | Emily Gorcenski | 25m |
Concrete failures and stakes: unsecured devices fuelling the Mirai botnet DDoS, an expired TLS cert flooding a home, a Microsoft band reading raw chicken at… | ||
| Let's go big | Alexander Reardon | 25m |
Claim: JavaScript numbers hit Number.MAX_SAFE_INTEGER (2^53−1) so the talk builds several concrete systems to go beyond that: decimal strings up to to the… | ||
| A Cartoon Intro to WebAssembly | Lin Clark | 30m |
Explains why WebAssembly is actually faster: compact binary downloads, decoding is faster than JS parsing, and much compilation work moves ahead-of-time via… | ||
| My gender is emoji pizza unicorn: shipping expanded gender options | Tilde Ann Thurium | 22m |
At Pinterest an engineer replaces a binary enum with an optional string on user struct to accept custom gender values and emoji, adds preferred-pronoun… | ||
| Down the Rabbit Hole: Javascript in Wonderland | Claudia Hernández | 24m |
Claims and demos hit specifics: NaN is a Number and IEEE‑754 gives ~16,777,214 NaN encodings so NaN !== NaN; Array.sort defaults to lexicographic order unless… | ||
| Sharing is Caring - Patterns for JavaScript Library Design | Maggie Pint | 26m |
Describes concrete API decisions: compares static invocation (Request, LoDash) with factory/chaining (Q, jQuery, Moment), shows how an overloaded Moment… | ||
| Preact: Into the void 0 | Jason Miller | 28m |
Preact is a tiny 3kb React alternative and the talk shows a working path from JSX through an H factory to a one‑line Virtual DOM renderer that creates elements… | ||
| Invisible Code: Building JavaScript Libraries For Non-Technical People | John Fawcett | 26m |
Argues for concrete fixes: builds an AMP viewer with Preact and TypeScript deployed on thousands of sites, often under 15 kilobytes, using iframes for style… | ||
| Real world connectivity: Beyond the bubble | Ben Schwarz | 29m |
Global connectivity stats land hard: 43% of humans online, 57% offline and India added ~100 million new users in 2016. Real-world speeds and costs matter —… | ||
| Two Problems: Regular Expressions for Revolutionaries | Sarah Saltrick Meyer | 22m |
Regular expressions predate computers and are mathematically equivalent to finite-state machines, so they have no stack and therefore can't parse HTML… | ||
| Go Offline First to Save The World | Maureen McElaney | 21m |
Examples of working Offline First show concrete claims, tools, and outcomes: a rugged Brick microserver delivers curricula offline to refugee classrooms… | ||
| Aesthetics of code. | Jan Krutisch | 30m |
Compares concrete code examples across languages: a Martin Kleppe six-character JS trick, problematic automatic semicolon insertion cases that silently change… | ||
| Calendar / Kalender / Tawqīm (aka, the fun of locali[zs]ation) | Paul Verbeek-Mast | 23m |
A Booking.com calendar localized to 42 languages and many locales is implemented with Moment.js, a legacy Perl backend and a jQuery UI date picker. The talk… | ||
| Shared Memory & Parallel Programming with JavaScript | Nidin Vinayakan | 24m |
Demonstrates real numbers and trade-offs: naive parallel counts over 200 million iterations slow down due to cache and data races, naive Atomics.add serialises… | ||
| Outbreak: index-sw-9a4c43b4b4778e7d1ca619eaaf5ac1db.js | Alexander Pope | 25m |
A deployment typo triggers a cascade that turns ServiceWorkers into persistent zombies, infecting tens of thousands of clients; most recover but a stubborn… | ||
| Bringing Back the 1990s: The Revenge of JavaScript Style Sheets | Steve Kinney | 27m |
Claims that ideas from 1996 JSSS are resurfacing and demonstrates them: live JSSS examples show variables and conditionals, selector-based styling, a random… | ||
| The Legacy of the JavaScript Community | Whitney Williams | 26m |
Argues that legacy is concrete: people and progress define JavaScript’s future, not features. Claims leadership is ephemeral — leadership is an act anyone can… | ||
| nothing matches | ||