Nicholas ([info]wzdd) wrote,
@ 2007-08-10 00:00:00
Previous Entry  Add to memories!  Tell a Friend  Next Entry
On computer programming
It's hard to make analogies about being a computer programmer because I honestly believe it is quite different to other professions in which practitioners tend to be held accountable for their actions. With programming, you are in charge of not only the Platonic ideal but also the real-world implementation of any solution. The implementation always sucks, but nonetheless people don't just put up with it but actually seem to think that what you have produced is innovative and life-enhancing.

It's sort of like you're a combination architect / builder, but you're a really terrible one. Someone asks you to build a new bathroom for their house, so you do, but despite all your careful planning the finished product is just shite. For example, the shower wall is made out of soap, because you thought it would be convenient -- now nobody needs to buy soap, because they can just rub up and down against the wall for a bit and then hose themselves off (you installed a hose instead of a shower head for greater flexibility).

After a few days, though, the drawbacks become obvious, because rats start eating the soap. Every morning the owner, Susan (let's say), enters the bathroom, chases away the rats, rubs up against the wall and hoses herself off. You know you should fix the rat problem but it's too expensive to replace the wall, so you just mix rat poison in with the soap. Now Susan's boyfriend is complaining that she smells of zinc phosphide and there's a growing pile of dead rats in the bath. No problem though, because you hired a man to clean them out. Every week, on Thursday, sometime between 7am and 3pm, a big, burly man shows up with a spade, lets himself in, shovels up all the rats, puts boot prints on the carpet for no obvious reason, dumps the rats in the front garden, and leaves.

Of course, nobody can use the bathroom while he's in there, so anyone who wants a shower on Thursdays (and many people do) washes in the kitchen sink instead. You do a deal with a builder and soon your soap wall / kitchen-sink shower houses are everywhere. After a couple of months owner's clubs pop up where residents talk about how great it is to wash yourself in the sink because then you can get all your daily chores done from the one spot.

EDIT: Sorry about the comment screening. It's just because of idiot spammers.



(14 comments) - (Post a new comment)

thanks
(Anonymous)
2007-08-12 12:00 pm UTC (link)
great post.

(Reply to this) (Thread)

Re: thanks
[info]wzdd
2007-08-12 12:59 pm UTC (link)
Thanks, random person!

(Reply to this) (Parent)

Always the kitchen sink
[info]tech_charles
2007-08-12 02:05 pm UTC (link)
Of course the team developing version n+1 decide to dispense with the shower altogether and just supply the kitchen sink, suddenly giving the user an empty room. The team decides to use the extra space to house a system to monitor the usage and performance of said sink...

Theory: "Given enough iterations, every design will involve the kitchen sink"

(Reply to this) (Thread)

Re: Always the kitchen sink
[info]wzdd
2007-08-13 01:43 pm UTC (link)
Hehe. The tendency of technical users towards giant monitoring ... things could be a whole new post, too!

(Reply to this) (Parent)

It doesn't have to be this way
[info]holdenweb.myopenid.com
2007-08-12 03:37 pm UTC (link)
With experience comes wisdom, and the knowledge that it is necessary to use appropriate materials. Thus you do not built the shower wall with soap, because you have heard users of other such systems complain about the rats, or previous systems caused user dissatisfaction.

If nobody is holding you accountable for poor design you should change jobs. Otherwise, how will you ever improve?

Sartorial advice: give up the man bag ...

(Reply to this) (Thread)

Re: It doesn't have to be this way
[info]wzdd
2007-08-13 02:53 am UTC (link)
Hi Steve! (Is this Steve? I have enjoyed your posts on c.l.py.)

If nobody is holding you accountable for poor design you should change jobs. Otherwise, how will you ever improve?

Unfunny clarification time. This entry is satire. It's a comment on the software industry as a whole, not a complaint about my manager. I don't even have a manager. Also (I feel silly saying this, but) I don't follow the "rat poison" development methodology.

Sartorial advice: give up the man bag ...

No! I think the presence of the bag may attract interesting new types of people, and I am keen to meet them. Hopefully these people are not muggers.

(Reply to this) (Parent)

On computer programming
(Anonymous)
2007-08-12 04:02 pm UTC (link)
Worse, everybody now knows that there is a shower method.We've all been told that it's not productive to re-invent something that already exists. Worse yet, The one guy with a garage full of tiles won't be allowed to modify the method because they are not compatible with existing installations..

(Reply to this) (Thread)

Re: On computer programming
[info]wzdd
2007-08-13 01:47 pm UTC (link)
Hmm, I wonder if we can apply OO principles like encapsulation and re-use here. We would end up with one giant shower block for the whole community that would have a million different attachments -- giant spray guns in case anyone decided to wash an elephant, for example.

(Reply to this) (Parent)


[info]certifiedwaif
2007-08-13 11:41 am UTC (link)
Great post, Nicholas.

A pure mathematician's contribution to the malaise would probably be to marvel at the symmetry of the soap bubbles. Today in algebra we proved that the symmetry of an orangutang whose product with itself is itself is isomorphic to {1}.

(Reply to this) (Thread)


[info]wzdd
2007-08-13 01:41 pm UTC (link)
Thanks Mark!

My mind has been opened (or blown, it's difficult to tell). My life would be very different today if, back when I was selecting University courses, I had known that pure mathematics involved apes at such a deep level.

Nice to hear from you, too. :)

(Reply to this) (Parent)

So sad but so true.
(Anonymous)
2007-08-14 03:49 am UTC (link)
It will only be a matter of time before somebody opens up a website called soaphq.com and posts instructions on how to not emulate the shower soap wall, but actually implement it in your kitchen sink. The mini soap wall attempt to fit all kitchen sinks by supplying you with velcro to adhere to the side. Sometimes, when you try to wash parts of your body like your left foot, using the soaphq instructions, your entire soap wall will fall down and you will you see a message on the back of the velcro that says "fixme:imm:ImmGetContext stub".

(Reply to this)

What about shampoo?
[info]mighmos
2007-08-14 06:01 pm UTC (link)
Now, does shampoo come as a 3rd party plugin with a poor interface, or a $200 upgrade?

(Reply to this)


(Anonymous)
2007-09-04 10:25 pm UTC (link)
Nice post!

It's strange how people can be happy with whatever you give them no matter how borked you think it is what you wrote.

(Reply to this)


[info]jaobedoza
2008-05-19 09:51 am UTC (link)
this is a funny story, i loved that analogy

(Reply to this)


(14 comments) - (Post a new comment)

Create an Account
Forgot your login or password?
Login w/ OpenID
English • Español • Deutsch • Русский…