Next: Texts Up: Subject Matter Previous: Kinds of Knowledge

Language and design recipes

Programming a computer requires that, to some extent, you learn the computer's language. Computers ``understand'' a lot of different languages, and the choice of language affects how you approach programming. I've taught beginning programming in a number of different languages -- Pascal, C++, Java -- but to my mind most of them require spending far too much class time on level-1 and level-2 knowledge, with not enough time left for levels 3 and 4. So for the past three years we've been starting students in the simple, easy to use Scheme language, and switching to more complicated languages like Java or C++ for the next semester after students have a firm understanding of the concepts.

We'll pay a lot of attention to design patterns, which are step-by-step ``recipes'' for getting from a vague English-language description of a problem to a working computer program. Every year, some students skip the recipes when they're in a hurry, and invariably find themselves wasting more time as a result. To prevent this, you will be graded on, among other things, how well and thoroughly you use the recipes.


Next: Texts Up: Subject Matter Previous: Kinds of Knowledge
2002-01-24