College Course Books

I used a web site to look up the books required for Computer Science courses at Stanford, Berkeley, and Princeton. Some of the titles were as expected. However there were some surprises as well. These are all respected colleges. And you would think that you could gather important information by analyzing their required college texts. I thought I would go over some of the book patterns I read about.

One thing that was apparent was that Java books outpaced all the rest by a factor of three. This is somewhat expected since recent college grads are the Java generation. You would not expect a huge emphasis on the C or even C++ programming language any more. Another no brainer was that Berkeley required a book on the BSD operating system. They are true to their own.

Stanford required a C++ text. Perhaps they are one of the last to continue teaching using this programming language. That is too bad. 10 to 15 years ago C++ was all the rage. Stanford also requires a Standard Template Library book. Being a C++ guy myself, my vote is for Standard. Finally Stanford stood out as the only of the three schools requiring a book on the Scheme programming language.

Berkeley seemed to have the longest list of required course texts. They had one course that required a book on graphics which seemed to stand out. It also required The Mythical Man Month which I would normally not expect to be presented in a college environment. This is a positive surprise. Berkeley was also the only school of the three that required a book on Design Patterns. It is surprising that more colleges do not require this to be taught. I was happy to see that Berkeley also required a book on Python.

Princeton had a couple surprising course textbooks. They required one on Artificial Intelligence. They also required a book on the ML programming language. That seemed a rare thing. There were also a number of required course books related to computer networking such as TCP/IP and UNIX. Those are all good things.

You can learn quite a bit about a college’s computer science program by studying their required course texts. If you want to learn some of the skills that top CS colleges teach, you could spend some time reading the books yourself. This is no substitute for a college degree. But it would make for interesting and useful reading nonetheless.