[Previous] Anti-Popperians | Home | [Next] Popper on Burke

Steve Yegge on Epistemology


OK, I admit it, he's actually talking about software design patterns (and one in particular that is highly general). But it is basically epistemology. It's about how to organize knowledge. He even opens with a quote about epistemology that doesn't mention software:
This idea that there is generality in the specific is of far-reaching importance.
"” Douglas Hofstadter, Gödel, Escher, Bach
It may be unclear that this quote is about epistemology because it omits the word "knowledge". But we can put it back in. It's saying that parochial knowledge can have general importance. Specifics can help us in creating general purpose knowledge.

I don't think many philosophers know about organization of knowledge. For example, they may not realize that "the same knowledge" (i.e. a particular idea) can be organized in different ways, and that it matters which way (a lot). They know you can say the same thing in different ways, and that some are shorter or clearer, but I don't think they know that it's a really big important issue, rather than just a minor one (they think of it something like just a matter of using grammar properly and following various simple rules for editing English prose, not a deep subject).

But programmers do know this. They know, for example, that two programs can have the same complex functionality and one can be a maintenance nightmare and the other wonderful. And one can have general purpose functions, organized into library modules, that can be easily and usefully re-used in other projects, and the other can have nothing like that. One can have dozens of global variables used all over the places in complex ways, and the other can mostly use local scope. One can have goto statements, and the other not. One can have the code organized into separate files, in a nice tree of labelled folders, and the other could have it all in one single giant file. And, of course, two programs to do the same thing can be written in different languages.

What programmers don't know is that their knowledge has philosophical relevance. And indeed that it is better quality than most philosophy. There are only a handful of recent philosophers who were any good, but there are lots of people who understand software design. And the software design field is making active progress. Anyway, Steve Yegge is one of those people who knows something about organizing knowledge, so go read his lengthy essay.

Elliot Temple on October 20, 2008


What do you think?

(This is a free speech zone!)