Blog by Sumana Harihareswara, Changeset founder

02 Apr 2011, 16:41 p.m.

Joel on Coal Postmortem

Hi, reader. I wrote this in 2011 and it's now more than five years old. So it may be very out of date; the world, and I, have changed a lot since I wrote it! I'm keeping this up for historical archive purposes, but the me of today may 100% disagree with what I said then. I rarely edit posts after publishing them, but if I do, I usually leave a note in italics to mark the edit and the reason. If this post is particularly offensive or breaches someone's privacy, please contact me.

I got the idea for Joel on Coal during a work lunch at Fog Creek in 2007. I assume the idea popped into my head because it rhymed. Care for a lengthy recounting of my process?

manipulated photo placing Joel Spolsky in front of a coal mine

It lay fairly dormant in my head till this January. I started thinking seriously about it because he'd said he was basically retiring from blogging and my friend Julia was doing a lot of research on coal mining for a writing project. The environment sounded ripe. She agreed to write some of the text, and we were on!

Leonard bought the domain for me and set up the server on the Linode virtual box where we keep our sites. I gave Julia links to several classic Joel essays, and she chose to write excellent parodies of the Joel Test and then of Two Stories.

Things I decided not to do:

  1. Use a real content management system. I thought of setting up a CMS, maybe something with Django, maybe WordPress, maybe Jekyll or a Bloxsom variant or something. But then I realized, why do I need a CMS? A couple of flat HTML pages would be fine. Not like I'll need to update this. So I just did flat HTML pages + images. (I'm glad the site didn't depend on a database -- that would have made it harder to scale up when thousands of people started hammering it.)
  2. Mention Joel's partner, Jared. I originally planned on including something silly about how Joel and Jared were adapting to life in Appalachia, but worried it would come off as too personal and possibly insulting.
  3. Made with CityDeadThe obvious "ShittyDesk" joke for the "Made with CityDesk" graphic in the page footer. Again, wrong tone. Instead: "CityDead" to poke fun at the Fog Creek product whose last release was in 2005.

So, in mid-March, I used the Wayback Machine to grab an old Joel on Software page. Some of the newer designs of JoS depended on CSS, which I have been meaning to learn but don't know. So, spring 2004 was my base template.

manipulated photo placing Joel Spolsky in front of a coal mineOn Tuesday, March 29th, I started working on the site, removing Wayback Machine HTML and some of Joel's text, and adding Julia's copy. I was mostly editing in gEdit and using git to keep a log of my changes. Then, Thursday night, I found some suitable photos via Google Image Search and Flickr's CC-licensed image search, used GIMP to manipulate the images (learning along the way about fuzzy select, transparency, and layers), finished adding Julia's copy, and added the "yes, this is a parody" page. Then I wrote the "Fire & Motion" piece that -- within the fiction of the blog -- is Joel's first entry, explaining the backstory. (First draft: ten to fifteen minutes longhand on the subway.) And I removed some cruft (I should really learn how to use regular expressions properly), added a Reddit button, simplified the left-hand navigation bar, changed nearly all the links to point to "index.html" or "parody.html", and so on. I edited the pages and images in a test directory on my laptop, and every once in a while used scp to copy them to the live server. (git came in handy when I tried to add a Digg button and it didn't work. Revert!) All that took a few hours. At this point I started telling a few geeky friends, letting them preview the site, and asking for their help spreading the word the next day.

Once I thought it was ready (around 11:40 the night of March 31st) I started microblogging, emailing, blogging, and generally publicizing the site. I submitted a tip to TechCrunch, which ended up giving me thousands of hits, and I sent a link to Liz, Fog Creek's office manager, which may be how Joel eventually found the site & tweeted about it. A zillion retweets followed and Joel on Coal made it to the front page of Hacker News. I'd encouraged friends to Reddit the site, but in retrospect, HN front-page status + positive acknowledgment from the prank's victim + probably a hundred tweets = success. I ended up getting about twenty thousand hits to the front page. (Leonard increased max_clients in Apache and I reduced the quality of one of the images to handle the traffic better.) People definitely spent more person-hours enjoying the site than Julia, Leonard and I spent making it, so that's totally success.

photo from Fog Creek office manipulated to show coal mine through windowIt dismayed me that several people thought Joel had created the parody. It's hard, with a prank like this, to claim credit successfully; the unity of the joke depends on keeping a straight face on the front page, so I liberally linked throughout the front page to the "yes, this is a parody" page, which credited Julia and me. But most people didn't read that much, or click. Also, as Leonard reminded me, on April Fool's Day most people parody themselves, not others. And Brendan reminded me that it's a compliment to our satire that people thought it got Joel's voice so right. Rather like one's fanfic being mistaken for the original author's work.

I particularly loved the two times when I instant-messaged friends and the following exchange happened:

I'm glad my April Fool's prank is such a success.
What was it?
That was you?! I loved that!

So I figure I've paid my April Fool's dues for the next few years. I hope you enjoyed Joel on Coal; I enjoyed making it. Big thanks to Julia and Leonard for your work!