Rehabilitating the professional rock star

I’ve been following the “Rails pr0n star” scandal, probably too closely for my own good, and making my share of grumpy twitter comments. Let me just get the standing and being counted out of the way first:

I found the slides in question entertaining and cleverly put together, but inappropriate for their context. But moreover, I found the reaction of DHH and other prominent members of the Rails community distressing and distasteful. It shows a lack of maturity to be unable to distinguish between sensitivity and censorship. I’ve been involved with Ruby since years before Rails came along, and this is emphatically not the warm, humble, encouraging Ruby community I know and love.

That said, I want to talk about something else. I want to talk about a couple of terms that I feel have been unfairly besmirched as this mess developed.

The first term is “Rock Star“. Nearly every blog post I’ve read about how sucky the Rails community is has put the blame on the “rock star” stereotype. I don’t think this is fair to rock stars.

What programmer has not, at one time or another, committed a righteous act of transcendent coding and been seized with the urge to run down the hall screaming “WHO RULES? THAT’S RIGHT I RULE, BABY! FUCK YEAH!” and then do an air-guitar solo on top of their desk? Come on, you all know what I’m talking about.

In decades past when a Joe Hacker got this feeling it was quickly quashed by the realisation that he was a mere geek, a permanent social pariah, and that such displays of blatant self-confidence were simply not for him. So he’d tamp it down, open another Mt. Dew, and slink back into his cave.

But something happened at the dawn of the 21st century. Geek started to become cool. Hollywood started making blockbusters out of comic books. Programmers started writing programs for the web that made ordinary people happy and got them laid, rather than just irritating the living hell out of them at their day job. That made programmers kind of cool. And the programmer demographic itself started changing. Suddenly it was possible to go to a users group meeting and talk to people who not only dug obscure programming languages and D&D, but also playing the guitar and snowboarding. The fact that you wrote code for fun stopped being something to hide from potential dates, and started being something that might actually help score you a date

Joe Hacker looked out over the rim of his cubicle and realized “hey! I am pretty awesome! And it’s OK to feel good about that!” And then he moved out of his parents’ basement.

Being a programming rock star is about empowerment. It’s about pride. It’s about knowing that you’re not just another cog in a corporate wheel or an academic wanker, but an artisan with the power to change people’s lives with nothing but information. It’s about hearing “this is gonna be a great party – be sure and bring your laptop“. It’s about embracing the electricity of that “eureka” moment and sharing it with other people who understand the feeling.

But rock stars are supposed to be “bad boys”, right? Sure; but chest-beating about being “edgy” does not make you a bad-ass.  If anyone knows about being a bad-boy rock star in the Rubyverse it’s Giles; and he wasn’t impressed.  Neither were Zed or Obie.  To quote Reg Braithwaite:

Porn is *not* edgy. Walking into Oracle’s Head Office and shitting on their conference table is edgy.

Matt’s talk wasn’t rock star behaviour, and the defensiveness and posturing that followed it were even less so.  It was just plain old garden-variety immaturity.

The second term I want to defend is “professional“. DHH doesn’t seem to think much of it:

Professional to me is facade, fake sincerity, political correctness, not offending anyone, and everything else that makes life lifeless

Spend some time with any real-life career rock star – the kind with groupies and a dozen guitars- and I’ll wager you’ll find that whatever else they are, they are a deeply professional musician. Professionalism is orthogonal to “edginess”. I know edgy people. I mean really edgy people. People who play with fire and get suspended from hooks for fun. People who do things in private to other people for both business and pleasure, things which are beyond the scope of this technical blog to describe. These people are nothing if not professional about the things they do. They have careful rules about when and where.  They are profoundly mindful of boundaries, and painstakingly sensitive. They have to be. It’s the same for any practitioner of an extreme sport – beyond the gung-ho, devil-may-care veneer, you will almost always find someone with a finely honed sense of where to draw the line, of what their limitations are, and most importantly, the ability to listen.

There are always exceptions, of course. In any given “fringe” community there’s always a few irresponsible characters. They are the ones who wind up getting ostracised from the group because their cavalier attitude threatens everyone else’s enjoyment and/or safety.

So I don’t think that word “professional” means what he think it means. I think what he really means is “corporate”, which is a whole different animal.

As for me, I still aspire to be both professional and a rock star, both in code and in music. And I don’t think there’s anything wrong with that.

UPDATE: I will moderate any more comments that try to argue the case that people overreacted to the slides. That debate is both irrelevant and over. To quote Martin Fowler:

At this point there’s an important principle. I can’t choose whether someone is offended by my actions. I can choose whether I care. The nub is that whatever the presenter may think, people were offended – both in the talk and those who saw the slides later. It doesn’t matter whether or not you think the slides were pornographic. The question is does the presenter, and the wider community, care that women feel disturbed, uncomfortable, marginalized and a little scared.

This is a post about the meanings of the terms “rock star’ and “professional”. Anyone who wants to debate the meaning of the term “porn” is welcome to take it up with Justice Potter Stewart.


  1. I would agree with this(and probably dhh and matt too) if the slides contain any real porn. do you really call it “porn”? come on…

    I am sorry to say but this overreaction is stupid and childish.

      1. Thanks. Although I don't find the discussion of whether it's porn or not remotely interesting or. relevant. “What is porn?' is one of the most infamously subjective questions ever asked. The fact is that a plurality of people had a problem with it. That is the only relevant data point, as far as anyone responding should be concerned.

    1. I think you've missed the point. I tried to make it clear above that it's not the slides I'm concerned about – it's the reaction to people having a problem with it that bothers me. Immaturity is sticking your hands over your ears and yelling LA LA LA I CAN'T HEAR YOU I'M TOO BUSY BEING AWESOME. Mature people listen.

      Also, sorry, you don't get to define what's an overreaction or not. The fact is that a plurality of people at the conference, and a much larger number of prominent developers after the fact, had a problem with it. At that point calling it an overreaction just identifies you as someone who is more interested in trying to assert your own view of the world than in understanding where others are coming from.

  2. Yeah this has been a topic I kind of want to talk about, but also kind of didn't want to add fuel to the fire… Anyways I have been discussing it with my girlfriend which has been interesting.

    On my system it looks like a lot of your quotes got converted into a funky symbol… Â

  3. I recently came across your blog and have been reading along.I don't know what to say except that I have enjoyed reading. Nice blog. I will keep visiting this blog very often.


  4. I like the idea of a warm, welcoming, humble community.   Unfortunately, for programmers that i see fit the stereotypical definition of a rock stars, i see a lot of immaturity, difficult egos, and social ineptitude.  I come across brilliant (programming) minds that cant write a decent english sentence.  I have crossed paths with at least one alpha-star programmer everywhere i’ve worked, and (most) every one of them i would not recommend to another employer.   How can you interface with customers well if you’re vulgar/brash and egotistical?  How can you work well with disparate teammates if you’re hard to get along with?  How can you choose the simplest, most creative solutions if your ego is addicted to every shiny new technology that comes along?  How many times have you see a rock star over-engineer a solution?  How can you maintain good rhythm on your team if you code for 3 straight days and then collapse from Red Bull fatigue?   I dont like the term rock star.  I prefer the passionate programmer.   A person who truly loves the craft, stays up a late night or two learning OO, rests frequently to recharge, works on improving social skills, leads a balanced life & brings facets of this balance into their programming.     

Leave a Reply

Your email address will not be published. Required fields are marked *