On computing happiness

Alex Payne wrote some rules for computing happiness. I take issue with some of these rules, particularly:

There are a few pieces of software I use daily, which contradict some of these rules. They are: Emacs, Firefox, and QuickSilver. Each has one thing it does extremely well. Emacs is the best tool for editing text. Firefox is the best tool for browsing the web. QuickSilver is a little harder to nail down, but I’d describe it as the best tool for managing and taking simple actions on lists.

All this software is also extremely hackable. Indeed, the very reason why they are such incredible tools comes down to this extensibility. If there’s not a function in Emacs to automatically delete only the odd paragraphs in pages 52 – 67 (inclusive) of that Great American Novel you’ve been working on, you can write one, almost trivially. If you love browsing I Can Has Cheezburger but don’t like the layout, your fix is a Greasemonkey script away. If you really want to be able to easily slap your friends about with a large trout – via SMS or email or IM or whatever – you can do it with a QuickSilver plugin.

These apps also do many things poorly. I wouldn’t want to use Firefox as a FTP or IRC client. I wouldn’t want to use QuickSilver as a subversion client. And is Emacs really the best way to play Tetris?

But these apps have such great core strengths that they can – and should – be applied elsewhere. They’re great tools! Using great tools makes people happy. When you get used to your awesome tool and you have to do stuff without it, you’re unhappy.

“Do not use your text editor for tasks other than editing text?” I mean, come on! Look around you! It’s all text. HTML, CSS, XML, JavaScript, SVG, HTTP, TeX, XSLT, SQL – all text! I’m writing this blog in Emacs right now! Of course Emacs isn’t the best web browser there is. But it is the best text editor. So when I want to write, I mean really write, and not get pissed at the horrible WordPress editor, or the lobotimized OS X readline bindings, what do I do? I use Emacs. This app that violates four of the fourteen rules Alex lays out makes me infinitely happier than using anything else.

Firefox isn’t made specifically for any OS, yet it’s still the best tool there is for browsing and developing on the web. I should toss all that out the window because it doesn’t look the same as a native app? It does a ton of things poorly, but that same hackability has given us Firebug, easily the most comprehensive tool for developing front-end web sites there is. It’s given us Adblock Plus, without which I think I would prefer Emacs to browse the web, just to get away from the ads.

I’d suggest that if you want computing happiness, you use the tools that make you the most happy instead of following the advice of random guys on the internet (myself excluded).

Unless that’s Windows. Man, that’s just sick.

2008/09/13
Previously On Atomized:

Discussion

I was excited that Vienna showed me you wrote a post and it didn’t appear to be related to Emacs. Sadly, I was incorrect.

kris
2008/09/14

Emacs and Firefox have been the most frequently presented counterexamples to my list. As someone currently experimenting with Emacs on and off, I understand why – it’s a powerful, flexible tool. I actually found this site when searching around for Emacs tips. I was happy to see you’d come across my list and disagreed with it :)

Imagine if Emacs had all its power and flexibility, but actually looked and worked right on a Mac desktop. Wouldn’t that be better? Wouldn’t that make you happier? Ditto Firefox. What if it had all that hackability, but it actually obeyed all the rules of its host operating system so you didn’t have to remember a second set of behaviors when using it?

It’s just a thought experiment :)

Alex Payne
2008/09/15

People who write these sort of “lists of rules” generally seem to do them mostly to justify choices they have made — and the reasons for those choices may well be quite different than the principles they’re publicly advocating. It’s no wonder that what they come up with tends to fall apart under any sort of scrutiny…

snogglethorpe
2008/09/16

@Alex, In what way does Emacs not “look and work right” on a Mac? I use Aquamacs (http://aquamacs.org/), and it looks and works very much like a Mac app. There’s a menubar, toolbar, it has the standard OS X open/print/font dialogs, has Aqua scrollbars, uses the OS X help system (including search), and so on. In fact, I’d say it adheres to the OS X Way to a fault – I have mine tweaked to be more Emacsy and less OS Xy; this is largely a relic of my Emacs use predating my OS X use and me being more comfortable with that. It doesn’t use an OS X preference pane – that’s honestly the only thing that jumps out at me after poking around at it for a few minutes.

I also don’t see much disconnect between Firefox and native apps. Can you point to something more concrete? Looks like I can’t move the window by grabbing the toolbar or statusbar.

I just don’t see huge differences in either of these apps. The few issues definitely don’t outweigh the large increase in utility they provide over competing appe.

It seems like you’re advocating against cross-platform software purely on the basis that it never works right. I disagree with the premise, and I think that the decision (utility vs. UI) needs consideration, rather than dismissing cross-platform software out of hand.

And if you’re looking for Emacs tips, you found the right blog. ;)

Ian
2008/09/17

Participate