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

The educational tools in CS 101 are fantastic. I was astonished at what I was capable of just from taking this course. You get a certain feeling of power from commanding buggles about the screen. This class was like playing a bunch of puzzles and logic games, except the computer does all the boring stuff.
-- Bradley Hiebert-Treuer '07

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