1986 - Self and Mocha
in 1986 David Ungar and Randall B. Smith developed Self at Xerox PARC
in 1995 Brendan Eich was hired to develops Mocha for Netscape. He was inspired by Java, Scheme and Self
1991-1996 - Web 1.0
1991: Web 1.0
1995: Microsoft releases MSIE 1.0 with VBScript
1996: Microsoft releases MSIE 3.0 with JScript.NET
1997-1999 - ECMAScript
1997: Release of ES1
1998: Release of ES2
1999: Release of ES3
2000-2008 - Abandoned ES4
2000: Start of ES4 (never released)
2000: Adobe releases Flash 5 with ActionScript (=ES4 draft)
2004: Web 2.0
2004: Release of E4X extension (ECMAScript for XML)
2005: AJAX and XMLHttpRequest emerge
2006: Release of jQuery
2007: Microsoft releases SilverLight
2008: Microsoft kills 8 years of ES4
2008-2009 - ES3.1 and ES5
2008: Start development of ES3.1 (later named ES5)
2009: Release of ES3.1/ES5
2009 - NodeJs
Google announces Golang
Mozilla releases ServerJS (later renamed to CommonJS)
2010 - NPM, Express and AngularJs
Release of NPM
Release of Express
Release of AngularJs
2011 - EmberJs
Release of NPM v1
Release of EmberJs
2012 - Typescript and Golang
Microsoft releases Typescript v0.8
Google releases Golang
2013 - React
Release of Browserify
Release of ReactJs
2014 - VueJs, Babel and Webpack
Release of VueJs
Release of Babel
Release of Webpack
Release of Google Traceur compiler v0.0.10
NPM grows to over 50.000 modules
- 2015: Release of ES6/ES2015, with all draft ES4 features except types (15 years after ES4 draft)
2015 - RollupJs
Release of RollupJs v0.3.1
Release of NodeJs v4 (v1/v2/v3 do not exist)
2016 - Yarn
Microsoft releases Typescript v2
Release of Yarn with workspaces
Release of Node v6
2017 - Parcel
Release of Parcel
2018 - Deno announced
Release of Node v8
Release of RollupJs v1.0
Release of Node v10/v11 (experimental ESM)
Microsoft releases Typescript v3
Ryan Dahl announces Deno
2019 - Experimental ESM in NodeJs
Release of Node v12/v13 (experimental ESM)
Release of Lerna v1.0 for handling monorepo's
2020 - Deno v1
Release of Node v14/v15 (stable ESM in v15)
Microsoft releases Typescript v4
2021 - NPM v7 with workspaces
NPM v7 with workspaces
NPM7 and @npmcli/arborist
@npmcli/arborist is a powerful library that handles the new npm 7 workspaces. This blog is about a simple make tool that uses the library.
Comparing React app, Nextjs and Gatsby
A new React project starts with a React toolchain. Main tools in the chains are SSR, React server components and GraphQL.
Versioning strategy for npm modules
It is important to be able to bump the version of a npm package without side effects.
React component themes and CSS variables
Creating React components with flexible themes by using CSS variables.
Content modeling with variants
The efficiency of a variant field in a content model.
Documenting a software project is challenging. Here's a few simple guidelines that help a team writing clear documentation.
The Agile Scrum framework is flexible enough to be used in many different ways. Here's one way of working.
Contentful, Netlify and Gatsby four years later
What did we learn from using Contentful for four years?
Typescript interface for React UI components
How to define an interface for React UI components that prevents breaking changes.
What happened to Wheelroom?
Founded in 2018. Started to fly in 2020 and abandoned in 2021. What happened?
Naming React components
What's in a name? A clear naming strategy helps developers communicate. Most devs rather spend time writing component code than wasting time on a good component name.