Home > software engineering > Steve Yegge and (Guitar) Gearheads

Steve Yegge and (Guitar) Gearheads

November 30th, 2008 Leave a comment Go to comments

A recent StackOverflow podcast featured Steve Yegge. It’s great stuff. A perfect mix of technical wisdom and insider gossip. In one portion of the discussion, Steve and Joel are discussing script kiddies and Steve starts to make a analogy to young guitarists. Unfortunately, he’s either interrupted or diverted. So, I’m going to try to make his point for him which I’m sure he’ll appreciate.

So, in the guitar world, young players (and many older ones) tend to fixate on gear to the detriment of musical fundamentals.  They always know about the latest pedals, picks, strings, amps, and, of course, guitars. They buy this stuff and fiddle around with it, all the while ignoring the fact that they have terrible technique, terrible ears, or just bad taste.

I know this because not only have I seen it, I’ve done it myself. I spent a lot of time in high school messing with distortion pedals, buying books of tablature, switching picks and strings, and believing that I’d be better if I had a better guitar.  (In guitar circles this is commonly known as Gear Acquisition Syndrome, or GAS). What I really needed was to sit down with a guitar, a metronome, and blank staff paper for transcription. Way it goes. I eventually learned my lesson, but it’s much harder to learn in your twenties than your teens.

The analogy to programming is the tendency of programmers to flit from one bleeding edge technology (c++, java, agile, rails, dependency injection, ajax, …) to the next looking for a silver bullet rather than honing their basic programming skills. I’m all for applying libraries to make life easier, but frequently it just boils down to basic design skills which you can’t get from the getting started page of some new widget.

I do this in my programming life too … maybe that last system turned into spaghetti because I didn’t use JAX-B … or maybe such and such book will suddenly make writing concurrency a snap. It usually doesn’t work out that way. Only when I actually sit down and do a really honest post-mortem, focusing on design, algorithm selection, usability, testing do I actually end up a little further ahead on the next project.

So what’s my current guitar rig? I have a guitar (Gibson ES-137) plugged straight into an amp (Roland Cube 30). No pick and heavy flat-wound strings. That’s been my basic, happy configuration for several years now. No fuss, no muss. The best part is that I now know what a truly terrible guitaris I am … d’oh.

Categories: software engineering Tags:
  1. No comments yet.
  1. No trackbacks yet.