Post new topic    
Liquid Metal King Slime
Send private message
A metaphor for programming 
 PostFri Apr 12, 2013 6:06 pm
Send private message Reply with quote
I was thinking about the kind of programming I do at work, and I thought of a cool metaphor for it, and then I realized it is pretty much the same kind of programming that I do for the OHRRPGCE, so I thought I would share it here.

Suppose my job is building and repairing bicycles. My boss says,

boss wrote:
I want you to convert my personal bicycle into a bicycle-built-for two!


The solution is obvious. Make the bike longer, add a second seat, add a second set of petals, add a longer chain. I reach to take his bike, and say,

me wrote:
Okay, this is going to take a few weeks, maybe more than a month, if I run into problems. You will have to get off the bike and give it to me!


But then he says,

boss wrote:
Oh, No way! I need to keep riding this bike. You can't have it, and I can't possibly let you have it for longer than 5 minutes! I am a crazy person who rides constantly day and night! I don't even sleep!


Here is where a real bike repair man might give up, but the bike-repair-man-as-programmer-metaphor just agrees, and then starts work.

First I build a machine that can cut bikes in half in a single chop.

Then I build some sturdy compact clamps that can quickly fasten back together a chopped-in-half-bike without sacrificing structural strength.

Then I test it on several bikes, to make sure it is safe.

Then design and build a new middle for my boss's bike, and the new chains it will need.

Then I test the process on a few similar bikes, and make sure I can do the conversion in under 5 minutes.

Then I call my boss back, and tell him I am ready to make the conversion. he doesn't have to stop peddling for more than 5 minutes, and is happy. Now one of the managers can hop on and help him pedal. Double productivity!

He has to wait almost a year instead of waiting a few weeks, but he is still happy because the bike is still his original bike, and he didn't have to stop riding it.

Would it have been better to just buy a new bike? Possibly. Is my boss crazy? Possibly. But I don't mind, because I enjoy my job :)

EDIT: Every metaphor has its limits. actually, what makes this non-crazy, is that in reality, it isn't a bike. It is a far more complicated thing, and nobody else in the world makes or sells the exact same thing. Sure, other people sell slightly similar things, but none of them are close enough that a person who knows how to ride the first thing could learn to ride the second thing without re-training themselves from scratch. That complexity makes the boss's fixation on his own personal bike vastly less crazy (but still not [i]completely[i] sane)
Blubber Bloat
Send private message
 
 PostSat Apr 13, 2013 1:11 am
Send private message Reply with quote
What languages do you use, jimmy?
dOn'T MiNd mE! i'M jUsT CoNtAgIoUs!!!
Play Orbs CCG: http://orbsccg.com/r/4r6x V
Metal King Slime
Send private message
Re: A metaphor for programming 
 PostSat Apr 13, 2013 7:43 am
Send private message Reply with quote
Bob the Hamster wrote:
I was thinking about the kind of programming I do at work, ..., and then I realized it is pretty much the same kind of programming that I do for the OHRRPGCE


This is the scariest part!
Display posts from previous: