Things Have History
Sublime Text, or the text editor that left Google to reinvent itself

code-editors

Sublime Text, or the text editor that left Google to reinvent itself

Listen · 4:25

On November 30, 2007, Jon Skinner published a blog post explaining that he had left his job at Google to build a better text editor. The post ran to three short paragraphs. He had, he wrote, “a fairly strong vision of exactly how they can be better” — and then invited readers to tell him what they wanted. It was, for a company-founding manifesto, remarkably understated. He shipped the first version of Sublime Text seven weeks later, on January 18, 2008.

Skinner was a software engineer at Google’s Sydney office — the kind of programmer who notices when his tools are slower than his thinking. The editors available in 2007 were either fast and minimal (vi descendants, largely) or feature-rich and sluggish. Eclipse could do almost anything; it could also take ninety seconds to start. TextMate was elegant but Mac-only and, by 2007, growing stale. Skinner’s conviction was that you could have speed and features together if you made ruthless choices about which features actually mattered.

The first version ran only on Windows and was, by any later standard, modest. What grew it was a single practical decision: early support for TextMate’s syntax files. TextMate had already assembled a large library of language definitions and color themes; Sublime Text piggybacked on that library instantly, arriving with support for dozens of languages it had not technically built itself. By 2011, it was gathering converts from the TextMate community who had been waiting years for a Mac update that never came.

What version 2, released on June 26, 2012, added was a cluster of features you did not know you needed until you had them. The Command Palette — Ctrl+Shift+P — collapsed the entire menu hierarchy into a searchable list driven entirely from the keyboard. “Goto Anything” let you jump to any file, symbol, or line in a few keystrokes. The minimap rendered a tiny scrollable outline of the whole file in the gutter — so useful that it has never been removed from any major editor since. Most disruptively: multiple cursors. Click in six places at once, and every cursor edits simultaneously. The feature was not obviously useful until the moment you needed it, and then it seemed impossible to work without.

The Python-based plugin architecture was quieter but arguably as consequential. Any programmer who knew Python could extend the editor, and the community did, building Package Control — an unofficial package manager that Skinner eventually blessed. Sublime Text had no serious competitor among professional programmers for much of the early 2010s.

Then Sublime Text 3 entered beta. In January 2013. It did not exit beta until September 13, 2017 — four and a half years during which the editor was, in practice, what most professionals used daily. Skinner posted update notes sporadically. Users paid their licenses and kept using it. The four-and-a-half-year beta became a running joke in developer circles, then a kind of badge: the software was stable enough that even its creator seemed uncertain when to call it finished.

By then, GitHub’s Atom (2014) and Microsoft’s Visual Studio Code (2015) had both arrived, drawing directly on Sublime Text’s design language. VS Code shipped with multiple cursors, a Command Palette, and Goto Anything — same features, slightly different keystrokes. Both were free. Within a few years, VS Code had displaced Sublime Text as the editor most developers opened first.

What Skinner built in Woollahra, Sydney was not replaced; it was inherited. The features he invented are now so standard that a programmer encountering them for the first time in VS Code has no idea where they came from. That is usually what it looks like when something wins.

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.