The pragmatic programmer, if i remember correctly, recommends learning one new language a year, to keep the mind limber. Well, it’s been more than a year since Ruby, so it’s time to check out new horizons.
So what will it be ? Erlang, for the famed message-passing facilities ? Scala, Java’s shiny new semi-functional sibling ? Perl 6’s new features ? What about some golden oldies, like Lisp or Smalltalk ?
In fact, in my more thoughtful moments, i start to wonder about more than the next language.
I love the geeky stuff, the thinking out of architecture, the designing and actually making programs that work. I’m good at it – which is part of the appeal: being good at something gives you a kind of handle on life, the universe and everything.
On the other hand, will it always be this way ?
Obsolescence: at some point the benefits i get from experience, wisdom and knowledge might lose out against the loss of speed and loss of absorption of new concepts. Do i want to be a veteran grizzled developer being overtaken by young raptor-like minds ?
Then there’s the fact that much of this job is just nit-picking. You sift through layers of code to find the stupid little bleeding bug that causes your issue. Some days i just want to be concerned with the big picture. What’s the vision ? Where are we going with this ? How can we make something that will benefit the largest number of people possible ?
A lot of developers go manager eventually. This is not a road that tempts me, particularly – at least not as manager of large structures. I’d still like to keep in touch with the electrons, somehow.
Then there’s other options – usability, information architecture, prediction of future trends, writing books about this or that technology … there’s lots of ways this could go. Still just pondering though. Right now i’m still quite happy to surf the code.