It seems that this course's curriculum centers on the hardware/algorithmic/mathematical level more than the semantics and ontology of modern object programming. The latter is much more philosophically interesting to me, and to me it's that side of things that gets closer to the pertinent philosophical questions that are raised by the dominance of computers in our society.<p>Also, no reference at all to the massive amount on The Philosophy of Technology written in the last hundred years? No Heidegger, Ellul, McLuhan?<p>It seems to me that abstract, domain-level programming concerns like object hierarchies are more essential than algorithms or binary math to the intersection between Computer Science and Philosophy. Once you get past the parallels between, say Philosophical Logic and Digital Logic (the first six weeks of both classes cover many of the same rules -- DeMorgan, etc.), I think the most pressing concerns are best addressed within the realm of the Humanities, Liberal Arts, and a broad Philosophical discourse.<p>The curriculum I'd like to see might have topics like:<p>* Christopher Alexander, Aristotle and the Gang of Four: Are Design Patterns Nominalist or Formalist/Realist in nature? (You could go for a while on this one. I'd love to see the GOF's appropriation of Alexander critiqued, and maybe brought into contact with the concerns raised in Heidegger's essay <i>The Question Concerning Technology</i>).<p>* Building, Dwelling, Coding<p>* The Question Concerning Technology Revisited: Are we now Standing Reserves of Information?<p>* Russell, Pierce, Saussure and the semantics of type systems<p>* Bergson and Agile -- the relationship between intuition and iterative process<p>Or something like that. You get the idea (or not...)