I've been hacking on a side project recently (no link intended). Side projects keep me happy and stave off burn-out. One of the goals of this particular project is to be reproducible on the server-side. That means you could rip all the guts out, reimplement the HTTP handlers in Go with websockets (or some other crazy shit), and it'd work great (with the same JS). It's open source to facilitate this.
I'm building it because I want to be a user. That's a pretty fun reason; it's for me to use, not to run; it's not a business. Many things programmers build are for other people, not themselves. I was lucky to work on App Engine, which is a rare confluence of producer and consumer. This project scratches an itch in a similar way.
The other thing I like about this project is it makes me feel underprepared. It's making me flex muscles I don't usually exercise. It's forcing me to go out of my comfort zone. I'm thinking about UI and doing sketches, drawing flows. It's beyond my grasp in a lot of ways and I feel out of control; it's the unknown and I can't even estimate. For example, I was so happy the other day because something I thought would take me weeks to figure out came together in a couple hours. It's like programming for the first time again.
And I hope it lasts. I look forward to being old-man, get-off-my-lawn, grey-beard programmer man, hacking it out at 80 years old. I hear Ken Thompson is still like this. It makes me wonder how the fourth generation of programmers will be. Will it be like writing, where post-modernism stuff comes in that I can't even understand? Will programming make us live longer (using our brains?) or make us die young? Nobody knows.
29 August 2012