I am in the midst of a three-times-normal-speed theory of computing class for graduate students who need to know this material for the qualifying exam, so I have not had lots of time to contemplate metaphysical things (or write a blog post). On the other hand, Michelle Hutton’s post of 6 June, 2011 resonates with me as I try to get the students to think (and write) in precise mathematical ways.
I am reminded of the time many years ago when I had breakfast at a restaurant in Tallahassee on a lecture trip. As I looked at the sentence with the options of toast, biscuits, hash browns, grits, etc., I noticed that whoever had written the menu had clearly not studied disjunctive and conjunctive normal forms of Boolean expressions. Although I suspect very few people misunderstood what was intended as the possible set of options (breakfast, after all, not being rocket science), what was written would not have been parsed as intended by the Gnu Breakfast Compiler.
We have had similar issues in the theory class. It is one thing to ask: For every integer n, describe a finite automaton F that will multiply by n. It is quite another thing to ask: Describe a finite automaton F that will multiply by n for every n. But our students learn this kind of precision; it doesn’t (seem to) come as a natural part of the rest of their experience and education.
My wife used to teach technical writing. She always argued that the purpose of technical writing was to be clear, not to be great literature. And as I try to impress on students: the problems in software, as in nearly all technical projects, lie at the interface between two human beings. Inside one (technically competent) person’s head, there usually isn’t much confusion about what ought to be done and what is being done. It’s the communication from that person to the next one down the line that causes the problems.
Being clear in one’s writing and speaking is very important.
Duncan Buell
CSTA Board of Directors
Duncan, I can’t agree more. I teach computer at the Junior High level and am plagued by my own lack of clarity. I find that clarity is difficult to achieve (especially using technical language) because most teaching (at least mine) is stated as absolutes which perpetually need to annotated with parenthetical statements (I think you know what I mean). I can’t imagine what it’s like at a graduate level. Hats off (to you of course).