06 August 2008

Flail, part 1: Why on earth would someone do that?

I read my mail using a program I wrote: flail. Its name is an indication of how the entire subject of email makes me feel. Even though I'm sure there are many non-hacker-types who share my pain when it comes to email, most of them would probably wonder: why on earth would you waste your time writing your own mail program?

Well, let's see. Perfectionism run rampant? A pathological need to control everything? Unhinged lunacy?

Actually, none of that (okay, maybe all of that). I'm sure that many popular mail programs started life out as someones private hack. However, writing your own mailer in a fit of pique and then sitting on it for 6 years before bothering to release it because you just can't stand to release something that isn't perfect is perhaps not entirely healthy.

I'm not interested in putting on some kind of public psychoanalysis theater here, but I'm sure there are other hackers out there like me, so my arguably silly attitude towards releasing my busted ass code might at least amuse them. The rub is: I have high standards and frequently do not meet them. If only I had gotten a fortune cookie in a restaurant that told me that 20 years ago I might have avoided a lot of grief, but nooo... "Your fate is in your hands" I get. "Fortune (cookie) favors the bold" a few times. "You have mu-shu sauce on your pants" on more than a couple occasions.

Bastard fortune cookies.

Anyway, not meeting one's own standards with great regularity might be nature's way of telling one to take it down a notch. Stop sweating all of the details all of the time. The documentation doesn't have to be perfect. It can be a little rough around the edges. Just relax.

As reasonable as all that sounds, I can almost hear a part of me that counters such stuff with things like: you can't unsay things once you say them... information wants to be free, and your losing code will haunt you forever... worse is better is a capitalist fairy tale... black is white ... backspace is delete ...

That voice always says "black is white... backspace is delete."

In the end, the idea that a hacker should have control over what happens in their computer is almost an unspoken assumption, bordering on a moral imperative. I've had email since before the Internet was called the Internet. If I can't get a mailer to sit up and do exactly what I want then - damn it - I should write one that does.

It's almost like I felt for the longest time as though there was no excuse for me to complain about software. I have the power to change it, so I've got no right to complain. Of course, exercising this hypothetical power requires sitting up to all hours of the night, rearranging glowing glyphs in an Emacs buffer and cursing under my breath.

No, wait, that's fun, isn't it?

Hacking, in the end, is really about discovery. What might I learn by writing my own MUA in Perl? Wouldn't it be cool to be able to map snippets of code across my mailbox?

The wouldn't it be cool effect secretly turns out to be a lot of the motivation for doing things like writing flail, as embarrassing and trivial as it is. It almost never turns out to be as cool as I think it will be. It almost always turns out to be way harder than I thought it would be. I inevitably end up hating the fact that I've put myself in a position where I have nobody else to blame or depend on but myself for whatever critical thing in which I find myself deeply, tragically embroiled.

Let's summarize: a desire to control everything, based on illusions of superiority and power, compels me to set off on a bogus voyage of discovery supposedly motivated by the coolness it will endow me with, only to find that I am led straight back to the quotidian, detail-mired hell of my own little digital life, where I must do nothing more or less than rely on myself. That's right, the book is full of mirrors, man!

No comments:

Post a Comment