Things Have History
Visual Studio Code: how a failing browser editor became the one everyone uses

code-editors

Visual Studio Code: how a failing browser editor became the one everyone uses

Listen · 3:48

Erich Gamma arrived at Microsoft’s Zürich office in 2011 carrying credentials that created a small logical puzzle. He was one of the “Gang of Four” — co-author of Design Patterns: Elements of Reusable Object-Oriented Software, the 1994 book that shaped how a generation of engineers thought about building complex software. Before joining Microsoft, he’d led development of Eclipse, the open-source Java IDE that IBM built partly as a competitive weapon against Microsoft’s own Visual Studio. Now he was writing a code editor for Microsoft, in a small lab far from Redmond. His new browser-based project was called Monaco, and it had roughly 3,000 monthly active users (The Register).

By any corporate standard, Monaco was failing.

The issue wasn’t the editor component itself — the Monaco engine was fast and well-built, capable enough that it would eventually power Azure’s web-based consoles and the Visual Studio Online toolchain. The problem was the premise. Developers in 2012 weren’t interested in writing serious code inside a browser tab. They’d use a web editor to patch a configuration file; they weren’t going to build a product in one. Gamma’s team had something technically sound going nowhere.

The pivot came in 2014. GitHub’s Atom project had produced Electron — a framework that wrapped Google’s Chromium engine in a desktop shell, letting web technologies run as a native-feeling application. Gamma’s team adopted it, code-named the new project “Ticino” after the Swiss canton where they worked, and spent the year rebuilding Monaco’s core into something that felt like a real desktop application. Three architectural bets defined the result: no external UI frameworks — everything hand-rolled for performance; extensions isolated in separate processes, so a failing plugin couldn’t crash the editor (Gamma drew directly on his Eclipse experience here); and TypeScript as the implementation language, giving the codebase enough structure to survive rapid iteration (The Register).

On April 29, 2015, Microsoft announced Visual Studio Code at Build. It was free. It ran on Windows, macOS, and Linux. That year’s Stack Overflow developer survey ranked it 13th among development tools, used by 7 percent of 47,000 respondents (Wikipedia). Within three years it had climbed to first, at 35 percent. By 2025, 75.9 percent of survey respondents used it — more than twice the rate of any competitor.

On November 18, 2015, the underlying engine — “Code – OSS” — was open-sourced on GitHub under the MIT License. That turned the editor into a foundation. The Language Server Protocol followed in 2016, standardizing how editors communicate with language intelligence so the same backend could serve VS Code, Vim, or any other tool. AI coding assistants arrived a few years later. They needed somewhere to live, and they moved in as extensions, running in separate processes, walled off from the editor in exactly the way Gamma had designed.

Gamma’s Eclipse was built to challenge Microsoft’s developer tools. His VS Code made the next set of challengers build inside it instead.

Sources

Spot a mistake?

Wrong date, broken citation, a fact that doesn't hold? Tell us. It lands in an inbox a human reads and the post can be pulled or corrected.