04 November 2007

more on Dijkstra

A few days ago I posted a link to Edsger Dijkstra's "On the cruelty of really teaching computer science"; an anonymous commentator has pointed to the published version, which includes a series of rebuttals to Dijkstra's claim that computer science was under-mathematized. Probably the most important point made is that although it may be theoretically possible to formally prove that one's programs work:
1. mistakes are possible in proofs, just as they are in programming, and
2. engineering has historically used both the formal methods of mathematics and more pragmatic methods.

As for my claim that anthropomorphization of mathematical objects is bad, I stand by that, but that's really more a linguistic pet peeve than anything else, and I may just be saying that because I dont like the people I associate with the use of the word "guy" for mathematical objects for other reasons. That being said, evolutionarily we are used to reasoning about people, and we should take advantage of that in problem solving.

1 comment:

Anonymous said...

I've been using the term "guys" as a gender-neutral term for some time (particularly when referring to a mixed group, but even when referring to a group of all females), sort of like the way "actor" is now used to refer to both genders. This might just be my own mangling of the English language, but I'm pretty sure I've heard it used this way by others, too. In any event, the feminine counterpart "gals" sounds too archaic (and carries sexist overtones) to use in most settings.

In general I agree that anthropomorphizing scientific abstractions is a bad idea, but in the case of algorithm design, OOP and related approaches really lend themselves in a natural way to this kind of language use.