Sorry to my clients -- at least those who pay without multiple reminders. You know who you are. This article, like most, mostly rehashes previous articles.
But I'm a 30 year old code burn-out. I wrote a book and it hit shelves just as 2004 came to a close. I billed it as being "just in time for the new year". It's now 2006 and my last year was a wash. So, counter the spirit of Hamming's essay on how to manage your research, I need some alabis. Or, in the words of the denizens of EFNET #perlhelp, "where ya been?".
I fixed the motorcycle and got it running. I did a whole bunch of yard work. I did some biking and rock climbing. I'll talk later about what I didn't do this year.
Rather than accepting (too) small amounts of money for small projects, I started accepting (too) small but larger amounts of money for larger projects. I got in over my head repeatedly -- just like I did with the book. With the book it was to be expected, and was self-inflicted, and it was a humble gift to everyone.
Code I write for money is hard to write.
Looking back, very few of the things I've written have survived.
I did a modular, extensible cart for an inkjet company that did promo tracking, individually tracked coupons, complex promo and discount logic run from an admin, and a pile of other features -- for under two grand. Thrown away, all of it, it was, just a couple years after it was written, for something... completely different. Changed his mind, he did. All in all, people who want me to write code don't really want it written. It's a psssing thing, something they run with because it's cheap... and they're enamored of their abilities to prattle off features.
But everyone deals with that -- consultant or employee. Employees don't see their work go to market. They're given urgent deadlines, important sounding projects, and before it's done, the specifications have been changed countless times, the person behind it all has moved positions, other people don't know what to do with it all, the whole business position has shifted or the market has changed, and when it is shoved forward, the whole thing is just far less glorious than everyone envisioned so they sweep it under the rug.
I keep telling myself I can't do my own projects until money is situated, but money is never situated.
The more I try to make the domestic situation work, the less of what I really want out of life -- no, make that, the less I want to do for my fellow hackers -- I get to do.
I savor the moments when it's good that much more, and I redouble my resolve that much more when it's bad.
And no one is happy. Not my clients, not me -- no one.
I want to work on what I think is important because I'm far better at picking out worthwhile things than my clients (except one or two of them, at least) are, and because I have a burning hunch right now that money might actually follow from doing what I love, though of course that money is not any sort of dot-com millions.
I didn't create any new modules or release any significant updates to my modules. I'm still running Knoppix on my laptop, something I set up hastily to get up and running last year. I copied the compressed loop-back filesystem over, extracted the boot floppy, and tweaked things to run from HD instead of CD. This is Knoppix 3.6, mind you. I didn't do any cool hacks. I just chased rainbows. All year.
-scott