CS 101 provides a broad overview of the discipline of computer science and introduces fundamental programming concepts. The course has no prerequisites and assumes no prior knowledge of computers or of any programming languages. Topics will include algorithmic thinking and problem solving, structure and organization of modern computers, the Internet and World Wide Web, and programming using the Java language.

If you want to know what computer science is all about, this is the course to start with!


Prerequisites: none
Suggested course(s) to take next: CS 102, CS 201

My only regret is that I didn't take CS 101 sooner. This intro programming course is required for the Math major, and I put it off until my senior year. Now, in my last semester, I am taking 2 CS courses and attending weekly lectures, lamenting that I won't have more time at Middlebury to take courses in Algorithms or Cryptology.
-- Amy Bigelow '05

Computers are often thought of as abstract machines, with users passively using software. Computer Science at Middlebury removes this stigma, opening one's eyes to the underlying fascinating technology behind the computer.
-- Cole Simon '08

I have great fun teaching computer science, in particular how to program. Having to achieve the "perfection" required to write a working program can be a mind-bending intellectual experience!
-- Prof. Scharstein