Feb23

Abstraction Levels

Categories: Productivity

I accidently posted this on the wrong blog, but it applies here too, so I’m just leaving it. Those forced to read it both places, please forgive!

I’m reading an interesting book by Don Knuth, Things a Computer Scientist Rarely Talks About. A lot of it has nothing to do with computer science, though it is very interesting, but I found the following gem:

One of the main characteristics of a computer science mentality is the ability to jump very quickly between levels of abstraction, between a low level and a high level, almost unconciously. Another characteristic is that a computer scientist tends to be able to deal with nonuniform structures — case 1, case 2, case 3 — while a mathematician will tend to want one unifying axiom that governs an entire system. … Experience shows that about one person in 50 has a computer scientist’s way of looking at things.

That’s a fascinating observation that tends to align a lot of the data about the expertise gap. It’s not just expertise, so training won’t really handle it. Education, in the true sense might, and apprenticeship might help, but it might just take genetics. It also fits what I was saying about levels of abstraction.

It makes you really want something like Fortress, so the library writer, who is a computer scientist, can paper over the gaps while the mathematician/physicist can think at his own level.

Leave a Reply