Fireship
May 29, 2026
TL;DR
Jeremy Ashkenus single-handedly revolutionized JavaScript through underscore.js, CoffeeScript, and Backbone.js, transforming it from a universally despised language into a viable platform for serious application development.
“The JavaScript in 2009 was very different than it is today. There were no classes, so inheritance was done through a pattern where you'd manually attach properties to a hidden object called prototype.”
“For the first time, you could build a serious clientside app without it collapsing under its own weight.”
“It's easy to forget how bad JavaScript used to be, and even easier to forget the people who fixed it. But the modern web was built on top of ideas that Jeremy Ashkenus pioneered, even if no one remembers him.”
1. JavaScript in 2009: A Language in Crisis
The speaker sets the context for why JavaScript desperately needed improvement in 2009, highlighting its lack of standard library, inconsistent browser support, prototype-based inheritance confusion, and ugly syntax requiring the word 'function' repeatedly.
2. Underscore.js: Filling the Standard Library Gap
Jeremy Ashkenus released underscore.js to provide 60+ utility helper functions for arrays and objects, solving the problem of browsers like Internet Explorer lacking standard array methods like map, reduce, and forEach.
3. CoffeeScript: Creating a Better Syntax
Instead of just augmenting JavaScript, Jeremy created CoffeeScript, a new language that compiled to JavaScript and fixed syntax problems like verbose function declarations, prototype-based inheritance, and variable scoping issues. It became the default in Rails 3.1 and was adopted by major companies like GitHub and Dropbox.
4. Backbone.js: Enabling Serious Client-Side Applications
Jeremy released Backbone.js in 2010 as a lightweight MVC framework for the front end, introducing models, collections, views, and event systems that allowed developers to build large client-side applications without code collapse. It powered early versions of Trello, Airbnb, and Pinterest.
5. Legacy and Obsolescence: Ideas Live On
While underscore.js, CoffeeScript, and Backbone.js are now obsolete, their core ideas were absorbed into modern JavaScript and frameworks like React and Angular, proving Jeremy's innovations fundamentally reshaped web development despite being forgotten.