The idea of this course is to teach you how computers really work, from the chip level up to the user application. My main goal is that when we finish, you will understand what is actually happening when a computer system is running a set of application programs, and so will be able to make good design choices in the future as a developer, project manager, or system customer.