views:

224

answers:

3

The quote goes something like this:

There's no problem in Computer Science that can't be solved by adding another layer of abstraction to it

(Copied in this wording from http://blogs.oracle.com/fcmartin/2009/01/pardon_my_dust.html)

There are a number of variations but I have been unable to find an originator. Since I quite like the quote with its tongue in cheek and quite a bit of truth, I would be interesting to hear if anybody knows where this may come from.

+2  A: 

The better known quote is:

There's no problem in Computer Science that can't be solved by adding another level of indirection to it

Not sure where it came from, but I have a vague memory that Andrew Koenig had something to do with it.

Edit: And it seems to be so - see this review of his and his wife's excellent book Acclerated C++ in Dr Dobbs.

anon
Their book is really excellent, I couldn't agree more!
Francesco
That doesn't say that he originated it, just that he likes to say it. It is pretty unlikely that he originated it (for reasons I get into in my answer).
T.E.D.
A: 

I have seen it attributed to Andrew Koenig.

Francesco
I first heard a form of the quote in '85. Keonig was around then, but not particularly famous, so I doubt it was him.
T.E.D.
+4  A: 

This website attributes it to David Wheeler, who worked on EDSAC among his other early accomplishments. His Wikipedia bio also suggests he might have originated it. This is probably your best bet.

The form they give is:

Any problem in computer science can be solved with another layer of indirection. But that usually will create another problem

I first heard it when I was a CS freshman in '85 while our instructor was introducing pointers in our CS101 course. I got the impression it was a canard even then.

If anyone is looking to attribute it to someone, it had better be someone at least moderately famous back in '85. That probably rules out Koenig.

T.E.D.
You have a point. Now it's easy, just email your instructor and ask him...:-)
Francesco