|
I'm going to try to provide an alternative perspective, one which is more optimistic. This is love letter to programming, written in my late 30s. I've been programming since my parents brought home an Apple II. Even though I sometimes get burnt out for a couple of months, sooner or later I find myself hacking some fun little program together, and I'm obsessed once again. When I work for somebody full-time, I search out jobs that throw lots of random, interesting problems my way. When I consult, I like medium-sized projects that teach me something new. In the late 90s, I hacked on Lisp and Dylan compilers. In 2001, I had strong opinions on how generators should work. In 2007, I spent time fooling around with probability monads. Right now, I'm delivering production code in Ember.js, and on the bleeding edge, I'm spending some personal time messing around with Rust. I want my code to be simple, beautiful, expressive, correct and fast. Every few years, somebody invents a library (or sometimes a language!) that allows me inch a little closer to that goal. I suppose that if I ever felt my tools and my code were truly good enough, I might get frustrated with the rate of change. But if anything, I'm impatient. Our tools could be better. When will I get to play with the good stuff? Of course, I do get tired of some things. If I never again see another huge Rails 2.3 app with undeclared dependencies on 30 dodgy abandoned gems, I'll be a happy programmer. And I wish that the various JavaScript frameworks would finally settle down enough that I don't have to budget one month per year just to keep production apps up to date. But then again, I didn't much like that sort of foolishness when I was younger, either. My only real problem is that the day is short, I do have outside interests, and there are so many cool programs left to write. |