Acme/Sam?
What Famous Developers Actually Use: A Statistical Analysis of Uses This
The Uses This website reveals surprising patterns in how influential programmers work. After analyzing over 50 developer interviews—including language creators, Linux kernel maintainers, and open source pioneers—clear preferences emerge that challenge conventional wisdom about developer tools.
The toolkit of legends: What the data reveals
Ubuntu dominates among Linux distributions, with 16 developers choosing it as their primary system. Debian-based distributions collectively account for over 60% of Linux users. Arch Linux attracts 4 developers, all highly technical (including its creator Judd Vinet). Gentoo, openSUSE, and Fedora each claim 2-3 adherents. Notably, several developers run multiple distributions—Greg Kroah-Hartman uses openSUSE Tumbleweed on his workstation, Gentoo on servers, and Arch on his MacBook.
The editor wars have a surprising victor among this elite group. Vim edges out Emacs 22 to 18 in the final count, with 5 developers using both interchangeably. The Plan 9 heritage shows through prominently—acme and sam editors appear in 7 interviews, used exclusively by Bell Labs alumni like Rob Pike, Russ Cox, Brian Kernighan, and Gerard Holzmann. Modern editors like Visual Studio Code and Sublime Text claim 6 users, primarily among younger developers and those focused on web technologies.
C and C++ remain the languages of systems mastery, with 28 developers working primarily in these languages. Python appears as the favorite high-level language for 12 developers, while Go shows remarkable adoption with 7 advocates including its creators. The language creators themselves offer fascinating diversity: Rob Pike uses Go with acme, Bjarne Stroustrup works in C++ on Linux, Bram Moolenaar naturally uses Vim for everything, and Joe Armstrong codes Erlang in Emacs on Ubuntu.
Language creators and their surprising choices
The most famous developers interviewed reveal unexpected patterns. Rob Pike, Go's co-creator, explicitly rejects the vim-vs-emacs debate, stating "the answer to 'emacs or vi' is 'neither.'" He uses acme, his own minimalist editor, and runs a mixture of Macs and Linux. Brian Kernighan, co-author of The C Programming Language, primarily uses sam and vi while teaching at Princeton. He runs Macs as terminals connecting to Linux servers, remarking that he "wouldn't know nature if it jumped out and bit me" as a dedicated urbanite who lives in code.
Bjarne Stroustrup keeps his setup deliberately vanilla, using standard compilers and avoiding platform dependencies. Richard Stallman practices what he preaches—running gNewSense on a Lemote Yeelong specifically chosen because it's 100% free software down to the BIOS. Bram Moolenaar, Vim's creator, runs Ubuntu after abandoning FreeBSD when updates became too painful. The irony isn't lost: the creator of history's most customizable editor prizes reliability over tinkering.
Eric S. Raymond runs Ubuntu 11.10 with XFCE, loathing Unity and Gnome 3 as "glossy, confining crap" while considering a move to Arch. He spends most of his time in Emacs, Firefox, and terminal windows. Joe Armstrong, Erlang's co-creator, codes on Ubuntu at work using Emacs, working primarily in Erlang, bash, and JavaScript.
Linux kernel developers: The professionals
Kernel maintainers show remarkably consistent preferences shaped by decades of systems work. Greg Kroah-Hartman, who maintains the stable kernel releases, runs openSUSE Tumbleweed on his workstation and lives primarily in vim and mutt. Jonathan Corbet, executive editor of LWN.net and kernel contributor, runs Fedora Rawhide and is fluent in both emacs and vi—"I can use either one without thinking about it," he notes.
Robert Love, who worked on the Android kernel at Google, uses Goobuntu (Google's Ubuntu variant) with vim for C and C++ development. Joey Hess, the prolific Debian developer who created git-annex, has run Debian unstable since 1996 and codes primarily in Haskell using vim. Paul Davis, creator of Ardour and JACK audio, works on Debian Buster using GNU Emacs after 30+ years of loyalty, programming mostly in C++ with bits of assembler and Lua.
The pattern here is striking: long-term tool commitment. These developers found what works and stuck with it for decades, valuing stability and muscle memory over new features.
Distribution creators on their own creations
The developers who built Linux distributions naturally use their own work. Daniel Robbins runs Funtoo (his Gentoo successor) with vim for Python and shell scripting. Judd Vinet uses Arch Linux with vim, which he describes as having "entrenched muscle memory since leaving the womb." His polyglot toolkit includes bash, Python, Node.js, Lua, Go, C, and PHP.
Stefano Zacchiroli, three-time Debian Project Leader, runs Debian testing on desktops and laptops, stable on servers, and Raspbian on Raspberry Pis—all managed through GNU Emacs. The distribution maintainers demonstrate dogfooding at its finest, using their creations daily and fixing problems as they encounter them.
Security researchers and systems programmers
Security-focused developers show distinct patterns. Jane Manchun Wong, known for discovering unreleased features in major apps, would prefer Arch Linux but uses macOS due to hardware constraints. She codes in TypeScript and Python using Visual Studio Code and Neovim. Daniel Cid, founder of the OSSEC intrusion detection project, works on Xubuntu using vim and codes primarily in C.
Jessie Frazelle, Docker maintainer and Go contributor, runs Debian Sid on her Dell XPS 13 using neovim. Drew DeVault, who maintains sway, wlroots, and sr.ht, uses Arch Linux on his workstation and Alpine on laptops, coding in C and Go with vim. These developers prioritize minimal attack surface and rapid updates, choosing distributions that give them control.
The web and beyond
Web developers show more diversity in their choices. Håkon Wium Lie, CSS creator and Opera CTO, runs Linux Mint and has used emacs since 1988. Mike Krieger, Instagram co-founder, uses MacVim on macOS for Python and Objective-C. Brad Fitzpatrick, creator of LiveJournal and memcached, runs Ubuntu and Debian while coding in Go and Perl with emacs.
Even outside pure web development, newer developers embrace modern tools. Bob Nystrom, working on the Dart language at Google, uses macOS with Sublime Text for prose and IntelliJ for code. Carol Nichols, Rust book co-author, works on macOS with TextMate, refusing to give it up despite trying alternatives.
Unix heritage: The Plan 9 connection
A fascinating subpattern emerges among Bell Labs veterans. Rob Pike, Russ Cox, Brian Kernighan, and Gerard Holzmann all use editors from the Plan 9 tradition—primarily acme and sam. Rob Pike describes acme as an "editor-shell-IDE-oddball" with a unique worldview, rejecting traditional vi and emacs paradigms. Russ Cox runs acme full-screen as his entire work environment, serving simultaneously as editor, terminal, and window system.
Gerard Holzmann, who developed the Spin verification tool at JPL, considers sam his favorite editor from "the Bell Labs Center 1127 gang." These Plan 9 tools emphasize mouse-driven text manipulation, distributed architecture, and integration between editing and system control. They remain niche but show enduring loyalty from their users.
Patterns and insights that matter
Several clear patterns emerge from the data. First, simplicity and longevity trump novelty. Most developers found their core tools 10-20 years ago and never switched. Greg Kroah-Hartman has used vim throughout his kernel career. Håkon Wium Lie has emacs archives dating to 1988. Paul Davis has used GNU Emacs for over 30 years.
Second, operating system choice correlates with technical domain. Kernel developers overwhelmingly prefer Linux (100% in this sample). Language designers show more diversity—some use macOS, others Linux, depending on their target platforms. Web developers split between macOS for its Unix foundation and Linux for production similarity.
Third, editor choice shows generational divides more than technical ones. Developers who learned programming before 1995 overwhelmingly use vim or emacs. Those starting after 2000 more commonly adopt modern editors like VS Code or Sublime Text. The Plan 9 editors represent a distinct third tradition, maintained by a small but influential group.
Fourth, polyglot programming is universal among elite developers. Every developer interviewed works competently in 3-7 languages. C and C++ dominate for systems work, Python for scripting and data work, and JavaScript for web development. Go shows remarkable adoption speed, becoming a primary language for several developers within 5 years of its release.