Theresa O’Connor

Emacs: the 100-year editor

Bill Clementson linked to an exceptional rant on programming languages from former Amazon (and current Google) employee Steve Yegge, which is of particular interest for Emacs users. Apparently, Amazon's customer service system was for many years Emacs-based! You should immediately go and read the whole thing. Here are some of the juicy bits:

When Amazon got its start, we had brilliant engineers… They wrote the Obidos webserver. Obidos made Amazon successful… Obidos was a key cornerstone of Amazon's initial success…

They all used Emacs, of course. Hell, Eric Benson was one of the authors of XEmacs. All of the greatest engineers in the world use Emacs. The world-changer types… I'm talking about the greatest software developers of our profession, the ones who changed the face of the industry. The James Goslings, the Larry Walls, the Paul Grahams, the Jamie Zawinskis, the Eric Bensons. Real engineers use Emacs. You have to be way smart to use it well, and it makes you incredibly powerful if you can master it. Go look over Paul Nordstrom's shoulder while he works sometime, if you don't believe me. It's a real eye-opener for someone who's used Visual Blub .NET-like IDEs their whole career.

Emacs is the 100-year editor…

Shel wrote Mailman in Lisp. Emacs-Lisp… Mailman was the Customer Service customer-email processing application for … four, five years? A long time, anyway. It was written in Emacs. Everyone loved it.

People still love it. To this very day, I still have to listen to long stories from our non-technical folks about how much they miss Mailman. I'm not shitting you. Last Christmas I was at an Amazon party, some party I have no idea how I got invited to, filled with business people, all of them much prettier and more charming than me and the folks I work with here in the Furnace, the Boiler Room of Amazon. Four young women found out I was in Customer Service, cornered me, and talked for fifteen minutes about how much they missed Mailman and Emacs, and how Arizona (the JSP replacement we'd spent years developing) still just wasn't doing it for them.

It was truly surreal. I think they may have spiked the eggnog.

Shel's a genius. Emacs is a genius. Even non-technical people love Emacs. I'm typing in Emacs right now. I'd never voluntarily type anywhere else. It's more than just a productivity boost from having great typing shortcuts and text-editing features found nowhere else on the planet. I type 130 to 140 WPM, error-free, in Emacs, when I'm doing free-form text. I've timed it, with a typing-test Emacs application I wrote. But it's more than that.

Emacs has the Quality Without a Name.

Seriously. Go read the whole thing.

Update: You should also check out his post Effective Emacs: 10 Specific Ways to Improve Your Productivity With Emacs. Here are the main points:

  1. Swap Caps-Lock and Control
  2. Invoke M-x without the Alt key
  3. Prefer backward-kill-word over Backspace
  4. Use incremental search for Navigation
  5. Use Temp BuffersMaster the buffer and window commands
  6. Lose the UI
  7. Learn the most important help functions
  8. Master Emacs's regular expressions
  9. Master the fine-grained text manipulation commands