A Company-wide Emacs Configuration

Daniel Gopar over at Emacs.el has another of his Emacs chats up. This time he talks to Charles Lowell from Frontside Software. What’s interesting about Frontside is that they have a company-wide, shared Emacs configuration. All the developers use the same configuration, which the company maintains.

My first reaction was one of horror. All developers have preferences—this compiler or that PDF reader—but mostly they’re just that: preferences. If your company doesn’t use your favorite C compiler, you grumble a bit but get on with things. Not so with editors. Every first class developer that I know cares passionately about their editor and wouldn’t dream of using something else. With Emacs, you pretty much build your own editor so you get the same reaction if you have to use a different configuration. Most of us know how painful it can be to use someone else’s Emacs. That’s because their configuration is different from yours. I would, therefore, be very leery of coming into a shop that had a company standard editor.

Still, Lowell makes a reasonable case for their practice and it’s not quite as draconian as I’m making it seem. Nevertheless, having to unlearn my Emacs muscle memory would be extraordinarily painful for me. I’ve seen cogent cases made for insisting on everyone using the same versions of packages and editor—especially in shops doing research and running experiments—but it’s much harder, I think, to make the case for having standardized key sequences. Of course, everyone’s mileage varies and the folks at Frontside seem to like the system so it appears to be working for them.

One interesting aspect of Frontside’s practice is that they package their configuration as an Emacs package. That means that the developers update their configuration the way they would any package and it brings in the changes and updates their other packages automatically. If you’re going to insist on a standard configuration, that’s a very nice way of doing it. It’ quick and easy and no one has an excuse for not staying up to date.

Take a look at the video and see what you think. The running time is 43 minutes, 45 seconds so plan accordingly.

This entry was posted in General and tagged . Bookmark the permalink.
  • Phil

    I've not watched the video, but it sounds like a case for site-lisp and default.el libraries. I can't get on board with anything prohibiting per-user configurations, though.

    • jcs

      Me nether. Like I say, it gave me a feeling of horror. To be fair, it did appear that individual users could have local additions. Still, who wants someone else specifying your key sequences?