I Heart Joel on Software

Wednesday, December 2nd, 2009

Let me make one thing perfectly clear before you embark on this journey with me: I very much love reading anything Joel Spolsky writes. I am a Joel on Software fan-boy. I am also aware that, due to his ubiquitously strong opinions, he is frequently cited/criticized on other tech blogs, and that doing so is derivative and shallow, even though that’s what I’m about to do here.

I acknowledge this, but it’s ok, because I Heart Joel on Software.

I have read most of Joel’s books, including the self-titled “Joel on Software”, the sequel “More Joel on Software”, the dubiously too-small-to-be-a-book “Smart and Gets Things Done”, and the edited-by-Joel “Best Software Writing I”.

After reading so much of his work, it’s very clear that if there’s one thing Joel cares about, based on reoccurring topic, it’s what separates the programmer wheat from the code-monkey chaff: that is, how do you identify a Good Programmer?

Indeed, “Smart and Gets Things Done” and its analogous sections in “JoS”, and “More JoS” is billed as a hiring guide for managers looking to hire the best possible programmer.

Herein lies the paradox though: the real audience of all of Joel’s books is his core readership, which are programmers, and since the thrust of “Smart and Gets Things Done” is that 99% of programmers are terrible at what they do and not worthy of jobs, Joel then, must have a latent disdain for his own readership.

Joel’s ideal programmer has graduated from an Ivy League Engineering School, and can construct a Full-Adder from memory without using XOR gates. Further, Joel asserts that these mythical engineers are never on the market since they get hooked up with extremely rewarding and fulfilling internships right out of school and never want for anything else. The 10 or 12 engineers that fit into this category won’t buy his books since they apparently know all these things a priori, which means that it’s all of us slack-jawed programmers that must be enabling Joel’s book royalties.

So it seems that Joel is stuck in a love/hate relationship with his audience. I assume he loves to sell books, yet he must be aware that the type of programmer he takes so much time to insult and the programmer reading the insults are in fact one in the same.

Why would we, the sub-par programmers of Joel’s universe continue to enable this? It’s possible that we are indeed so Neanderthalic that we simply don’t have the higher functioning thought processes to get the joke. Do we think he’s talking about someone else?

“Ha ha, it’s so true, Joel!  Those boneheads have to submit their resumes to dice.com to get work. What morons! Ooh, what’s this? Another email from a recruiter? Yes, I am interested in a Hot Java Contract in New Jersey! A ‘must fill ASAP’?  I’m sending my resume now!”

Or perhaps we are well aware that we are both the target and the audience. In this case it becomes more like an abusive relationship. Even though he hurts us, we know he doesn’t really mean it. We keep coming back for more, hoping to read that post someday that will heal all the hurt and make it all better.

We yearn for the post from him that admits that, indeed there is no correlation between what school you went to and what type of engineer you are. In fact, how fast you can regurgitate a quick sort algorithm on a white board has nothing to do with how you’ll fare in a team, and further, that raw algorithm analysis is both an unnecessarily reductionist and irrelevant way to assess someone’s skill.

We’d like to sit on our high horses and look down at the unwashed masses with disdain and stroke our egos by saying that what we do is High Art as opposed to all those Java Lightweights that would break down and cry if they ever saw a dangling pointer, but the fact is that it requires no more (and no less) innovation or brain cells to write bug tracking software (for example) as it does to develop budget reporting software. Any project is a fount of potential technical challenges, no more or less important than any other project’s, and solved by programmers of all mental shapes and sizes.

We, Joel’s Readership, would like to think we’re better than most of the programmers out there and may feel the need to distance ourselves from all the inept imbeciles since the field has such a low barrier to entry, as compared to say, being a doctor. But of course, we’re writing software, not saving people’s lives, and if we are talking about the category of software that does keep people alive, whether by moving the laser to the correct place over the cornea, or adjusting the yaw of an aircraft so it can safely land, then it was probably written by a contractor, that class of engineer which stands diametrically opposed to the “never on the market” rule and probably didn’t go to Yale.

In fact, I imagine that, as the aircraft descends into that last critical few hundred feet above the ground, the pilot is subconsciously hoping that the engineer who wrote that motion control code was more concerned with preventing gimbal lock than with being able to sort that array of numbers in “log n” time.

We, Joel’s readership, would love to see his acceptance of us in this form, but alas, we are unlikely to see such a concession from him.  At least not while we, the JoS fan-boys, keep buying his books.

Tags:

19 Responses to “I Heart Joel on Software”

  1. Matt Campbell wrote:
    December 2nd, 2009 at 4:03 pm |

    Sten, if you like Joel and his abusive style, you should try Jeff Atwood, the Non-Joel half of Stackoverflow.com. You can find him at codinghorror.com. The difference is that Jeff is a programer, so his is more of a self-hate bend.

    - Fellow JoS Fanboy, Matt

  2. tripleminus wrote:
    December 2nd, 2009 at 7:58 pm |

    Phenomenal post. I’ve been reading Joel for a while and agree wholeheartedly. His stuff is extremely entertaining but often condescending and being shouted from a high-horse the height of Everest.

  3. Joel On Crack wrote:
    December 2nd, 2009 at 8:24 pm |

    Joel and his dear fellows are a bunch of stupids. His vision is narrowed to his very own universe. At that point he doesn’t understand that he’s leaving his own reality/illusion which is different from real life.

    On his forum when he talks nonsense or gets embarrassed while trying to make a point, the whole topic disappears…

    Joel isn’t stupid though and he’s successful but I would never want to work for him unless the salary is “really outstanding”.

  4. Steven wrote:
    December 2nd, 2009 at 10:51 pm |

    I’ve learnt to ignore Joel and his huge head.

  5. eabarquez wrote:
    December 3rd, 2009 at 12:14 am |

    Amen, my friend.

  6. I Heart Sten wrote:
    December 3rd, 2009 at 1:51 am |

    Over the years, I have found that this is what people do to attempt to increase the value of their own brand or ilk. It’s a form of insecurity and self-assurance. The rest of us neanderthals are relegated to proving ourselves in the workplace and perpetual self-improvement. It is rather sad, but it has it’s humorous moments:

    - Have you ever had a colleague berate another co-worker behind their backs for not going to a top school, assuming that _you_ did because you’re more talented than they are?

    - Have you seen two alumni have a stand-off…”when I was there it was a real school, but they let anyone in these days…”.

    - Do you have a co-worker who graduated 25 years ago but insists on wearing school booster club shirts, sipping from mascot adorned coffee mugs and plastering pennants all over their cubicle across from yours? Does their car match their school colors or does it just have a custom plate? Do they find a way to drop the name of their school within the first 5 minutes of meeting anyone new? “Yes, nice weather we’re having…back at ole X, we’d go tabogganing on a day like this”.

    At the end of the day, they write the same PHP script as me or my 12-year-old neighbor, but they choose slightly more obscure (or terse) variable names…

    These tendencies have contributed to a form of neanderthal-backlash, prominent during the hiring process, which in turn perpetuates the clustering behavior alluded to in the original post.

  7. Milfred Harrows wrote:
    December 3rd, 2009 at 9:57 am |

    I cannot believe that in response to this excellent entry someone advocated Jeff Atwood’s blog, dumping some vomit in the delicious soup stock.

    Atwood is, in almost every respect, he who Joel criticizes. I tried to stomach Atwood for few years, if only to be ready when fawning coworkers `quoted’ him, but his unbounded idiocy and laziness were too much.

  8. Ray Tucson wrote:
    December 3rd, 2009 at 10:19 am |

    Business 101. Steel mills are not in the business of making steel. Joel is not in the business of making software or writing books. They are in the business of making money. Joel is marketing, and now (for Joel’s benefit), you are too.

  9. Robert wrote:
    December 3rd, 2009 at 10:33 am |

    True, true, true, but that doesn’t change the fact that everyone that reads his stuff usually ends up improving because of it.

    Joel Spolsky is kind of like that father figure that we feel is never quite proud enough of us. But, I would argue we need that kind of motivation at times to improve our craft.

    Of course, don’t listen to me because, I too, heart Joel Spolsky.

  10. Jason Bartholme wrote:
    December 3rd, 2009 at 10:52 am |

    It must come with popularity and financial security to have the ability to deuce on your readership. I have tired to read JoS regularly, but he came across as douchey, because I didn’t feel like I was a worthy programmer/developer. Also, I have a two-year degree with 8 years experience and have no intention of getting my bachelors.

    However, my applications work and they generate revenue. I feel I am a good programmer, and I try not to be code diva(divo?). There is always a better/different way to code something. In my opinion, the willingness to seek out new methods to do a task makes someone a good programmer.

    If I had to hire someone, I’d want someone how was perpetually looking for innovation and renovation in coding opposed to someone with a fancy degree and knowledge of a few obscure languages.

  11. diz wrote:
    December 3rd, 2009 at 1:34 pm |

    Thanks! I have thought about this for so long, now.

    Most of his blogs are sales pitches for his company, anyway. I’m not even sure why you would be a fanboy of that (?).

  12. Maintenance Man wrote:
    December 3rd, 2009 at 2:04 pm |

    I read Joel because he is entertaining. Yes he might be writing down on a developer like myself. That does not mean I take any offense. Just make sure you don’t drink the kool aid. You will be fine, and maybe even get a chuckle out of it.

  13. Paul W. Homer wrote:
    December 3rd, 2009 at 2:34 pm |

    Like so many other people out there, Joel is just playing to our egos.

    Programmers want to believe that the mess that they hack into existence is so much better than all of those other messes that have been hacked into existence. They don’t want to learn, or read about improving their works. They don’t want to think deeply on the results. They just want easy platitudes that are easy to follow, and make them feel good about their indifference.

    Most of Joel’s readers don’t even realize that Joel won’t even hire them. And even if they did, they’d quickly choose to forget that ugly bit of knowledge. They’re happiest when they are delusional.

    Paul.

  14. ncloud wrote:
    December 3rd, 2009 at 3:50 pm |

    I never think Joel talks down to me when I read his material (or Jeff Atwood for that matter). I *know* where my deficiencies are, and I am glad for people who challenge me to do better.

  15. Adde wrote:
    December 3rd, 2009 at 4:54 pm |

    Calling Jeff Atwood a programmer is more insulting than all of Joel’s writings combined. Anyone who seriously quotes the [expletive deleted -- this is a family blog after all, ed.] should be taken out and shot immediately to stop the stupidity from spreading.

  16. Tony Morris wrote:
    December 3rd, 2009 at 4:58 pm |

    “…he is frequently cited/criticized on other tech blogs, and that doing so is derivative and shallow, even though that’s what I’m about to do here.”

    What you seem to have missed is that there are others who criticise Joel’s rants. Criticising Joel himself would not be very constructive. Joel is almost always wrong, a very amateur way and he is very noisy. A mostly wrong, noisy person will attract critics.

  17. LSM wrote:
    December 9th, 2009 at 6:18 am |

    Is Joel the Bill O’Reilly of the developer world?

  18. Ian S. wrote:
    December 10th, 2009 at 2:35 pm |

    What has JoS ever done? Well let’s see. He wrote a blog, he wrote some books, and his business creates mediocre bug tracking software. Anything else of note?

    His mental high horse is way out of wack with reality considering he’s not even an industry giant, he’s just watching from afar.

    JoS thinks pointers are hard and exceptions shouldn’t be used. Enough said. He’s a mediocre programmer with an ivy league degree on the wall, nothing more.

  19. [Link] Sten s Blog Blog Archive I Heart Joel on Software « jkwiens.com wrote:
    February 13th, 2010 at 2:31 am |

    [...] Sten’s Blog » Blog Archive » I Heart Joel on Software (blogs.citytechinc.com)Using py2exe with SciPy (The Endeavour)Dear Python (Hacker News)Statisticians take themselves too seriously (The Endeavour)Windows 3.1 Online – With Minesweeper! (Hacker News)Soft maximum (The Endeavour)Dimensional Analysis (xkcd.com)What boyfriends and girlfriends search for on Google (Predictably Irrational) [...]

Leave a Reply