Heaven, Hell, Purgatory and Asphodel

According to some religions, or denominations of them anyway, there’s a big fiery pit called Hell into which all the damned souls go.

According to some religions, or denominations, damned souls include everyone who’s not part of that religion or denomination.

This has some parallels with the Agile movement. Heaven is a place in which it’s fun to work, in which everyone collaborates to produce effective code that makes the customer happy, where there are parties and laughter and everyone is full of energy and enthusiasm. No one is afraid to speak their mind, everyone is humble enough to accept correction or constructive criticism and has the confidence to debate the merits of others’ ideas. Since everyone owns everything there’s no blame, no possessiveness, no hiding knowledge away to protect your job. It’s a great place to work. You get up in the morning looking forward to the day ahead, and commute into work knowing that everyone else around you feels exactly the same way.

It’s an ideal, but then so’s Heaven. There’s a lot you can do to improve your work environment. Enthusiasm and positive thought go a long way – but if you’re not part of the Agile movement then it’s probably pretty hellish where you work. It won’t be fair. It won’t be your fault. (Unlike eternal damnation, there may be something you can do about it.)

The Ancient Greeks had a place called Elysium, which was full of picturesque landscapes, roaming bands of heroes and plenty of fresh fruit. They also had a place called Tartarus, which is where our word “torture” comes from. You can guess what that was like. They also had a place in between, called Asphodel, where… well… not a lot happened, really. It was just a bit boring. Everyone wandered round as a shadow, wondering where the fun had gone.

Some denominations of Christianity also have a place between Heaven and Hell called Purgatory. It’s a place which is fairly hellish, but you get to leave after a while, once you’ve paid for your sins.

Me? I’m being moved onto the Diagnostics team for a fixed period before hopefully being moved into the Heaven of a more Agile project. On the Diagnostics team I will have the responsibility of tracking down all the customer complaints about bugs. They’ll tell me, “I clicked this button. I can’t remember what I was doing, or what the message said, but it was definitely an error.” It will then be up to me to work out from the logs what exactly it was that happened, and replicate the bug before passing my analysis onto my old team for fixing.

There are two ways that this could go. On the one hand, my old development team might have managed to produce beautiful code of such outstanding perfection that there are no bugs. In that case, my old team are in Elysium, and the diagnostics team are in Asphodel. There will be nothing to do. On the other hand, my old team’s code may be full of bugs and we’ll spend all our time desperately trying to track them down, paying for our sins. In that case, the development team are in Hell and the diagnostics team are in Purgatory. I think the reality is something in between, since the dev team isn’t as Agile as it could be but better than most projects I’ve been on in the past.

Oddly, I’m looking forward to both new experiences, having already spent some years in Hell. I think as long as I have a notebook and a pencil, I won’t be bored even in Asphodel. There’s too much going on in my head which I want to write down. If it turns out to be Purgatory, then I can have some fun firefighting.

Either way… roll on Heaven. I see the light.

This entry was posted in Uncategorized. Bookmark the permalink.

2 Responses to Heaven, Hell, Purgatory and Asphodel

  1. sirenian says:

    Sweet, thanks. I love analogies. 🙂

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s