Why Software Engineers Should Care About the Price of Bananas

It appears that my job security as a software engineer depends on the price of bananas.

Since my yearly performance review at my company is just around the corner, I made some quick calculations to see how much I’m needed. An IBM research conducted a few years ago, claims that the average software engineer writes about 10 lines of functional code each day. Assuming an average line consists of about 40 characters, my addition to the company’s source code is around 400 characters a day.

I made some pretty weird (and noisy) simulations at home (I swear to God I made monkey voices while typing), and my best estimation is that an average chimpanzee hitting a keyboard at random can generate around 300 characters a minute - that’s 18,000 characters an hour. Monkeys sleep for 10 hours a day, and I think apes writing software should be allowed for at least one hour lunch break and one hour of Seinfeld; so that leaves us with 12 hours of actual chimp work, and a total of 216,000 characters a day for one monkey – already 540 times more productive than me. Since most of the chimp’s code will probably fail the unit/integration tests or won’t even compile, we’re going to need a lot of monkeys to cover all the possibilities. Since the number of characters allowed in C++/Java/C# is around 93 (I’m not going to let my monkeys write Visual Basic – even apes deserve some compassion), that gives us 93^400 possibilities needed to be tested daily and a total of (93^400)/(540) = ~4.6*10^784 chimps required. Assuming monkeys work 7 days a week and humans only 4 (holidays, vacations, sick days, etc…) we are left with ~2.6*10^784 apes needed to be added to our company’s R&D. Disregarding some minor issues (like the number of chimps is much bigger than the number of atoms in the universe), let’s see if my company should in fact fire me and hire apes to do my job. A chimpanzee can consume up to 50 bananas a day, that’s 1,500 bananas a month. The current price of 26.04 cents per banana gives us ~$390 per month for one chimp, and a total of $10^787 for all monkeys hired to replace one software engineer. Since an average software engineer (in Israel) earns about $5,000 a month, we can all calm down; it seems like we software engineers are safe for now.

Sefi/Moti/Alon – Please read my conclusion before my performance review.

My conclusion: As long as the price of bananas is still above 1/(1.27*10^784) cents per banana, it’s not financially wise for my company to fire me and replace me with chimpanzees.

p.s. When the Americans will reach Mars, what would they build first - a space station or a Starbucks?


Anonymous said...

banana farmers of the world - unite and take over!

Anonymous said...

300 years from now, some historian will look back at your post and laugh. After more than 200*10^345 chimps will handle his internet connection lost(directly to his brain), he'll be amazed by the fact that you're managed to predict the future so well.

To be honest, I've seen some lines of code and a few programmers in my short life and I'm not sure that your math here is correct. I've seen code that I'll hapily trade(any day) for a nice, yellow, sweet banana and programmers that, well, I would not even consider to compare to chimps(the chimps are pretty smart you know).
All in all, I'll have another relaxed day at the office (no worries about my paycheck mom).

Moti Karmona said...

Didn't you know that Job-
Security is maybe the most common urban legend...

Take a look:
Primate Programming Inc

What are the costs?

Costs for software maintenance and report writing start at 69 cents per hour. Software testing requires less skill and this service starts at 45 cents per hour.

Which is a little more then you currently earn ;-)

Uri Kalish said...

No good, these apes code in Visual Basic...