The Release and the Architecture
Visual Studio Code arrived at the Microsoft Build conference in April 2015 as a preview, reaching version 1.0 in April 2016. The editor ran on Windows, macOS and Linux from the start — a departure for a company whose flagship IDE had been Windows-only for two decades. Underneath sat Electron, the framework that wrapped a Chromium rendering engine and a Node.js runtime into a native-looking desktop application, and Monaco, the browser-based code editor that Microsoft had already shipped inside its Azure web tooling. The source was placed under the MIT licence and published to GitHub, where it immediately became one of the most-starred repositories on the platform.
The architectural decision that mattered most came the following year. In 2016 Microsoft published the Language Server Protocol, a JSON-RPC specification that separated language intelligence — completions, diagnostics, go-to-definition — from the editor displaying it. Before LSP, every IDE team had to build its own parsers and type-checkers for every language it wanted to support; the protocol made that intelligence shareable across editors. Red Hat wrote a Java language server; the Python team at Microsoft wrote another; any language community could write one and have it work in VS Code, Vim or any other host. Erich Gamma, who had led the Eclipse project at IBM before joining Microsoft, guided the VS Code team — a lineage that connected the new editor directly to the open plugin architectures Eclipse had pioneered a decade earlier.

The Extension Model and the Marketplace
From launch, VS Code was built around an extension marketplace: a curated repository from which developers could install language support, debuggers, themes and editor features with a single click inside the application. Where Eclipse had required plugin developers to navigate a complex OSGi component system, the VS Code model used a comparatively simple manifest-and-entry-point convention, and distribution was handled centrally through Microsoft's own registry. Within two years of the 1.0 release the marketplace held thousands of extensions; within four it held tens of thousands. The extension model turned the editor into a platform, and the marketplace became the mechanism by which that platform grew without requiring Microsoft to ship every language or framework itself.
The open-source decision amplified this. Because the source was public and the licence was permissive, contributors could file issues, propose fixes and track the roadmap on GitHub. Microsoft published monthly release notes detailing every change, a cadence that kept users engaged and gave extension authors a predictable target. The editor updated itself automatically, which meant the installed base was almost always on the current version — a property that made it easier to deprecate old extension APIs without long compatibility tails.

The Adoption Curve
The Stack Overflow Developer Survey for 2019 recorded Visual Studio Code as the most-used development environment across all respondents, with roughly 50 percent of the nearly 90,000 developers surveyed naming it as their primary editor. That was four years after the preview. No comparable tool had moved from zero to dominant in that timeframe. The causes were compounded: the editor was fast enough for files where Electron-based tools had previously been sluggish, the LSP meant that even minority languages quickly gained intelligent editing, the marketplace removed the barrier to customisation, and the price — nothing — removed the only remaining argument for anything else.
What Microsoft had understood, and what the adoption numbers confirmed, was that an editor is won not by the feature list it ships with but by the ecosystem it makes possible. The Language Server Protocol turned every language community into an involuntary contributor, and the marketplace turned every contributor into an advertisement. The tool that resulted was, structurally, less an editor than an agreement — a neutral host that languages and toolchains moved into, one by one, until the host was everywhere.
