ben vandgrift · on living the dream

Emacs, Finally?

Another Bar Analogy

An editor is like your favorite local bar. Once you've established yourself there, it feels homey, comfortable. It's familiar. All your friends are there, they welcome you when you walk through the door. You know where the bathrooms are, and that you shouldn't lean against the parts of the wall covered in chalk. You get free drinks. Your favorite pool table is open as often as not.

Wandering into a new bar is a challenge, then. You leave the familiar scenery and wander into this new place, this different layout, different bartenders, and different patrons. There are no drinks 'on the house'. People look at you funny because you look lost. Where are the bathrooms? It's a mystery. The easiest thing in the world is to leave and head back to your local.

In this metaphor, the bar is the editor, the features that you know and love are the patrons, and the 400lb gorilla at the door is the learning curve. I'm changing bars. I've decided to walk down the street from the VI Lounge and see what Club Emacs is all about.

Editor zealotry is something I've never understood. I started working with vi around 20 years back, picking up efficienies here and there. Yes it's a cryptic, confusing thing, but dammit it's my cryptic confusing thing, and I've found it hard to part with, despite having been told for many years how much better emacs is. I wondered why an editor needed a LISP interpreter embedded, or what the appeal of multi-mode editing was. Being a creature of habit, every time I've walked into that bar I've walked back out, retreating to familiar surroundings.

When I began working at Relevance, Inc., however, it was easy to see how much work emacs was doing for its initiates around me. That sounds like efficiency, and efficiency may be the closest thing I have to a religion. I began to toy with it, investigate, see what all the fuss was about.

The other driver here was an increasing exposure to Clojure, and to do any serious work with a LISP, you absolutely should be using emacs. My motivations were in order, then.

The Challenge

Opening up emacs without a 'native guide' is daunting. Opening a file, saving some text, moving around–okay, but where's the syntax highlighting, the robust search and replace, the features?

A couple of weeks ago it hit me: these are all things I know how to do in vi because I've used it for so long. Not remotely intuitive, and often add-ons either downloaded or written myself. How much harder vi must be for someone to open up and fiddle with. Open vi and you can't even start typing without it beeping at you incomprehensively.

In order to give this thing a fair shake, I'd have to give it enough time to impress me–get to know the locals, so to speak. So that's my quest, and with the help of emacs initiates like Aaron Bedra and Bobby Calderwood walking me through the initial rites, I'm making some progress. It's an investment in future efficiency, even if I feel like a blundering idiot now.

(Since starting this post, yes, in emacs, I've managed to lock myself out of the file and delete an entire paragraph by mistake. Also, any time I try and move around I drop j's and k's all over the place.)

So my challenge (at least to myself) is this: don't use any other editor until September 1. WHO WILL SURVIVE?

written: Jul 29 2011