A presentation at Nordic.js in in Stockholm, Sweden by Phil Hawksworth
2nd October 2025 Nordic.js The time traveller’s guide to web technologies Phil Hawksworth he/him
17th September 2025
Any song
18th September 2025
18th September 2025
2nd October 2025 Nordic.js The time traveller’s guide to web technologies Phil Hawksworth he/him
10 Years s j . c i d Nor
10 Days JavaScr ipt
30 Years JavaScr ipt
30 Minutes Me
Reflect Consider Confess Many great talks Learn Party NOT TO SCALE Apply Heat death of the universe
b u H t i G Link Tw i t e dI n y k S Bl ue te r @ Phil Hawksworth.dev he/him Head of Developer Relations, Deno We b
In the beginning…
May 1995 Brendan Eich creates the first version of JavaScript https://cybercultural.com/p/1995-the-birth-of-javascript/
Evolve & e v o r p Im
December 1995 Netscape and Sun Microsystems announce JavaScript https://www.tech-insider.org/java/research/1995/1204.html
March 1996 Microsoft introduces JScript in Internet Explorer https://cybercultural.com/p/1996-microsoft-activates-the-internet-with-activex-jscript/
March 1996 Netscape Navigator 2.0 is released with JavaScript 1.0
if (document.layers) { // Do all the Netscape things } else { // Do all the Internet Explorer things }
June 1997 Netscape submits JavaScript to ECMA International
Technical Committees TC39 TC26 ECMAScript Acoustics
Technical Committees having completed their tasks TC14 ✓ Paper sizes TC34 ✓ Office devices
March 1999 Microsoft releases Internet Explorer 5
April 2001 The first JSON message is sent https://twobithistory.org/2017/09/21/the-rise-and-rise-of-json.html
June 2002 JSLint is introduced Ecosystem Enrichment https://web.archive.org/web/20180226015758/https://codekitapp.com/help/jslint/
September 2002 Mozilla releases Phoenix 0.1 to compete with Internet Explorer
January 2003 Apple introduces Safari and WebKit
April 2004 A beta version of Gmail is released
February 2005 Jesse James Garrett coins “AJAX” https://designftw.mit.edu/lectures/apis/ajax_adaptive_path.pdf
A confession https://unsplash.com/photos/a-man-holds-his-head-while-sitting-on-a-sofa-BuNWp1bL0nc
I adore JavaScript but I like to use as little of it as possible. And ideally, no less. Phil Hawksworth, today (hoping we can still be friends)
WEBCONSOLE
Library and utility functions. document.getElementById(“some-id”);
Library and utility functions. function getById(id) { return document.getElementById(id) || null; }
Library and utility functions. function $(id) { return document.getElementById(id) || null; }
March 2006 John Resig pushes the first commits to jQuery https://github.com/jquery/jquery/commit/8a4a1edf047f2c272f663866eb7b5fcd644d65b3
jquery.com
Writing JavaScript should be fun — jQuery.com, 2006
An interactivity explosion
Flash vs HTML5
January 2007 The first Apple iPhone released Reach & Habitats
The way we interact with the UI all seems so obvious now
OMFG DEVICES @philhawksworth
Flash vs HTML5
! e ar We c WHY
Suddenly stakeholders gave a shit
Awareness and empathy
Play
PLEASE DON’T TAKE MY FLASH AWAY FROM ME! – My buddy, Steve
May 2008 Douglas Crockford publishes “JavaScript: The Good Parts”
May 2008 Google releases the Chrome browser https://googleblog.blogspot.com/2008/12/google-chrome-beta.html
January 2009 CommonJS is created (originally named ServerJS
March 2009 Ryan Dahl begins work on Node.js Reach & Habitats
https://www.youtube.com/watch?v=jo_B4LTHi3I&list=PPSV
April 2009 Oracle acquires Sun Microsystems https://www.oracle.com/corporate/pressrelease/oracle-buys-sun-042009.html
™ JavaScript
June 2009 The first commit on Express.js is created
August 2009 Jeff Atwood coins Atwood’s Law
Any application which can be written in javaScript, will eventually be written in JavaScript Atwood’s Law
January 2010 npm 1.0 is released Ecosystem Enrichment
October 2010 AngularJS and Backbone.js are released m e t s y s o Ec t n e m Enrich
June 2011 Node.js is ported to Windows Reach & Habitats
October 2012 Microsoft makes TypeScript 0.8 available for the public m e t s y s o c E t n e m Enrich
May 2013 Facebook releases React Ecosystem t n e m h c i Enr
July 2013 Gulp is released Ecosystem Enrichment
Hipster tax
Over Engineered
Over Under Engineered
February 2014 Vue.js is released m e t s y s o Ec t n e m h c i r n E
October 2014 Meteor reaches 1.0 Ecosystem Enrichment
November 2014 Facebook launches Flow Ecosystem Enrichment
November 2014 Amazon announces AWS Lambda Reach & Habitats https://press.aboutamazon.com/2014/11/amazon-web-services-announces-aws-lambda
Serverless
Just write code
Just write code
July 2015 ECMAScript 6 is released ES2015 Evolve & e v o r p Im
March 2016 Azer Koculu removes Leftpad from npm
April 2016 Microsoft releases VSCode 1.0
I’m a user ’til I die.
I’m a user ’til I die.
I’m a user ’til I die.
I’m a user ’til I die.
I’m a user ’til I die.
I’m a user ’til I die.
I’m a user ’til I die.
I’m a for the time being.
September 2016 Angular Angular2 released
October 2016 Next.js 1.0 released
e ov m s g n i Some th Quickly e ov m s g n i Some th Slowly
March 2017 The initial commit for the Temporal proposal is created
Because…
Working with time and dates in JavaScript can be a massive pain in the arse Brendan Eich ( citation needed )
March 2017 The initial commit for the Temporal proposal is created
April 2017 Prettier 1.0 released
September 2017 Facebook launches Yarn
September 2017 Cloudflare launches Cloudflare Workers s t a it b a H & h c a e R
June 2018 Ryan Dahl teases a new project in a talk about his regrets about Node
“node”.split(“”).sort().join(“”);
May 2020 JavaScript makes it into space with SpaceX Dragon Reach & Habitats
May 2020 Deno 1.0 released
September 2024 The legal battle against Oracle to #FreeJavaScript begins
javascript.tm
October 2024 Deno 2.0 released and I join Deno
So?
Heat death of the universe We’re not done
e v l o v E & e v o r p Im t a h t o d e W s t a it b a H & h c a e R Ecosystem Enrichment
! e ar We c WHY
™ We own JavaScript
We drive it forward
We use it to do incredible things
We can use it responsibly
We can use it whimsically
deno.com/blog/history-of-javascript A Brief History of JavaScript javascript.tm Open letter to Oracle bsky.app/profile/philhawksworth.dev Phil Hawksworth on Bluesky
Thanks. philhawksworth.dev findthat.at / time
With JavaScript celebrating its 30th birthday this year, now feels like a good time to look back at where we came from, and look forward to where we might be heading.
In this nostalgic talk, Phil will reflect on some of the moments of our past as JavaScript and web technologies evolved, share thoughts on some of our collective hits and misses, and present some hopes and insights on what the future could hold.