Thursday, November 30, 2006

How many software engineers does it take to change a light bulb ?

None. "We'll document it in the manual."

None. It's a hardware problem.

One, but if he changes it, the whole building will probably fall down.

Two. One always leaves in the middle of the project.

Four. One to design the change, one to implement it, one to document it, and one to maintain it afterwards.

Four, plus one senior analyst to manage the project, one technical writer to correct the spelling and grammar of the one who documented it, one light bulb librarian, a sales force of at least five to drum up enough users who want to turn the light on, 274 users to burn out the new bulb, at which point we go to tender for another light bulb change...

Five. Two to write the specification program, one to screw it in, and two to explain why the project was late.

Wait! Maybe the bulb isn't broken. Let's try it again.

It's hard to say. Each time we separate the bulb into its modules to do unit testing, it stops working.

The change is 90% complete.

We looked at the light fixture and decided there's no point trying to maintain it. We're going to rewrite it from scratch. Could you wait two months?

Only one, but she's not available. She's the only programmer we have who can get the software ready to ship to customers, and that's higher priority, you know.