Gary Bernhardt's "The Birth and Death of JavaScript": A Talk That Outlasted Its Conference Slot

Gary Bernhardt delivered "The Birth and Death of JavaScript" at Strange Loop in 2013, and again at PyCon 2014 — a talk that has since circulated well beyond either conference's audience and continues to surface in developer communities more than a decade later.
The talk, archived on Bernhardt's Destroy All Software site, takes the form of a fictional keynote delivered from some indeterminate future point, narrating JavaScript's rise, its colonisation of environments far outside the browser, and an eventual displacement by WebAssembly — a technology that, at the time of the Strange Loop presentation, was not yet a formal specification. Bernhardt frames the whole arc as a kind of tragicomedy, delivered straight-faced in the style of a conference talk.
What made it stick is partly the accuracy of its extrapolation. JavaScript server-side was already a conversation in 2013 — Node.js had been gaining traction for a few years — but the talk pushed further, sketching a trajectory in which the language would propagate into operating systems and hardware contexts that nobody was seriously proposing at the time. The WebAssembly thread in particular landed differently once the W3C published the first WebAssembly specification in 2019 and browsers shipped support. Bernhardt had not predicted WebAssembly by name, but the structural argument — that a portable, low-level bytecode format would eventually route around JavaScript rather than extend it — proved directionally correct.
The dual-venue delivery is worth noting on its own terms. Strange Loop, held in St. Louis, drew a polyglot systems-and-languages crowd; PyCon drew Python practitioners. That Bernhardt gave the same talk to both suggests he and his hosts read it as something broader than a JavaScript-community internal debate — a point about how ecosystems rise, peak, and get superseded that applied regardless of what language you wrote day to day.
Bernhardt is probably best known outside conference circuits for the Destroy All Software screencasts, a subscription series aimed at working developers and covering topics from Unix fundamentals to compiler internals. The JavaScript talk fits that broader project: it is less interested in JavaScript per se than in the structural forces that govern language and runtime adoption.
Looking at where the talk sits now, the interesting thing is how the WebAssembly story has unfolded. WASM has made genuine inroads — it is the compilation target for Figma's rendering engine, it underpins a growing slice of Cloudflare Workers deployments, and the WASI (WebAssembly System Interface) effort is attempting exactly the kind of OS-level portability Bernhardt's fictional future described. JavaScript has not died, obviously. The V8 engine is embedded in more runtime environments than ever, and the TypeScript layer sitting on top has made the language more tractable at scale. But the coexistence Bernhardt sketched — JavaScript everywhere, and then something beneath it that is more portable and more constrained — is closer to the current reality than it might have seemed in 2013.
That a speculative conference talk from over a decade ago keeps getting rediscovered says something about the format itself. The conference talk as a unit of technical communication has a odd relationship with time: it is ephemeral by design, tied to a physical room and a specific audience, but the ones that frame a structural argument well age better than most written documentation. Bernhardt's piece works because it is not really a prediction — it is an argument about incentive structures, dressed as a timeline. Predictions age; arguments persist.
The current canonical home for the talk is Bernhardt's own site, where it sits alongside the rest of the Destroy All Software catalogue. For anyone who has not watched it: it runs roughly half an hour, the joke lands harder if you let it run without skipping ahead, and the Q&A section at the end — itself fictional — is where Bernhardt makes the structural argument most explicit.


