What a great read:

The fact that your kid can’t tie their shoelaces because they have velcro and have never owned a shoe with a lace is probably a good thing. You don’t know how to hunt your own food or start a fire, and it just doesn’t matter. The same goes for programming.

4 Comments

New comments are no longer accepted, so if you want to get in touch, send me an email.

“They simply think “Computer, fetch me the contents of that web page!” And most of the time it all just works. When it doesn’t, you can call in a gray-haired repair person or, more likely, just throw the busted tool away and buy another (or just get it free, in the case of Open Source software).”

I think this is overly optimistic; the Law of Leaky Abstractions has been prominent in my development experience. (Velcro shoes don’t suddenly need to be tied when used for soccer in February.) He makes a fair point, though, that experience unfortunately biases programmers toward premature optimization.

I must have read that piece by Joel before, but I reread it again just now and it felt like the first time, which is good because every so often someone will wave their hands and mumble “leaky abstractions” and it’s nice to know better what they think they mean.

I think what he is calling the Law of Leaky Abstractions is a glass half-empty way of describing the less pleasant aspects of epistemology.

Are your abstractions leaking, or is deeper knowledge inviting? I’m content to leave Joel to the former boat. I prefer the latter.

Heh, that is a more pleasant way to look at it. Does requiring Javascript stop all of your comment spam, by the way?

It stops all the automated spam. I still get the occasional manually entered spam, as well as just random driveby comments, but those are easily deleted and not nearly as soul-crushing.