A couple weeks back, K treated to me a night out to see The National. The National has been together since 1999, and over that time they have gradually increased their commercial and critical success. By most measures, they are getting better at their craft. In the music industry, this isn't how it typically works.
While watching the show, a couple thoughts kept running through my mind: one, I hope the dude behind me doesn't torch the place while trying to toke up with a butane lighter; two, the document-everything-on-your-smart-phone phenomena is causing us to lose the pleasure of living in the moment; three, these guys are all really competent musicians in their own right.
The concept of the rockstar programmer has been around as long as I've been in the business. The term conjures up images of the likes of Jamie Zawinski staying up all night performing heroics by the warm glow of the emacs editor -- hitting compile minutes before the latest version of Netscape is dropped on a server for millions of people to download. But in today's world of increasingly complex and interactive applications, heroics aren't enough to see a project to success. Successful projects require brilliant developers and designers working together in teams. In other words, even rockstars have bands.
Even though The National are bona fide rockstars, other than some antics by lead singer, Matt Berninger, none of the other members of the band stood out. I was caught by drummer, Bryan Devendorf, not by his technical virtuoso, but because the percussion became part of the arrangement and structure of the music. The years of working together had given The National a level of professionalism which most rock bands never develop, because for most, their careers are over before they even start. But The National's professionalism, their ability to work as a team, has enabled them to thrive in a ruthless business.
Years ago Joel Spolsky wrote a highly referenced article Hitting the High Notes, where he argues that hiring top talent allows managers to call on their staff to perform exceptional tasks (hitting the high notes) when demanded by a project. As time has passed, my view of this has evolved. I don't think it is so much about hitting the high notes as it is playing perfectly within your range. Bryce Dessner, who studied classical guitar at Yale, might be a musical wizard, but when he's playing the rhythm line in Bloodbuzz Ohio, his job isn't show of his chops -- his job is to carry the song -- and make to make look easy (because it is for him).
The modern software team isn't about individuals hitting the high notes. It is about consistency. Standing out as a team, by not standing out as in individual. Making the routine, seem routine, because it is. Today's software rockstar is an anti-hero who continually strives to perform his or her job competently.