Language · 1995–now · Platform Wars
JavaScript
The only language that runs in every browser. Accidental monopoly turned deliberate platform.
JavaScript stuck because browsers chose it and npm turned it into the largest package graph on Earth. Alternatives compile to it instead of fighting it. Hating JS is a hobby; shipping web is a job.

Context
Frameworks fought for the runtime
Front-end frameworks consolidated power; TypeScript became table stakes; Next and friends absorbed routing, data, and deploy gravity. Serverless and Jamstack rebranded old ideas with better CDNs, then cooled when auth and personalization refused to stay static. Blockchain-for-CRUD and big-bang rewrites collected dumb budgets. The winners were boring platforms with ecosystems — React gravity, Rust where systems care, Vite for greenfield bundling. The losers were narratives that skipped product-market fit or treated every App Router rewrite as destiny.
Compare with
Related
Language · 2012–now
TypeScript
JS with a typechecker that conquered the ecosystem. The rare fad that became the floor.
Framework · 2013–now
React
Components and unidirectional data. Won the front-end by being good enough and having a gravitational ecosystem.
Platform · 2009–now
Node.js
JS on the server. Unified the stack and created a package ecosystem that is both miracle and hazard.