The purpose of the CS160 course is to introduce students to fundamental concepts in computer science. Concepts from mathematics (the "theory" component), programming and architecture will be interleaved to show how software and hardware complement each other. Theory will provide the basis for understanding the software and hardware design. The course will adopt a problem solving focus with an integrated view of the computer. For programming, the course covers the basic Java syntax and language features, compilation, interpretation, execution, primitive data types, class and object usage, parameter passing, flow of control constructs and arrays. For theory, the course will cover sets, functions, logic, simple proof and invariants. Architecture concepts will include simple computer models, data representations and memory models.

See syllabus for instructor and teaching assistant information.

Aug 8 (Addy) Today's study session powerpoint slides are posted under the resources tab! Good luck on finals and have a good rest of your summer!

July 31 (Addy) My office hours will be from 10 - 1 tomorrow

July 28 (Addy) Final study guide posted on the Resources page

July 27 (Chris) Resources tab has lecture from yesterday and today.

July 6 (Addy) Review slides from today's lecture are posted under the Resources page at the bottom of the page.

July 1 (Addy) There is a study guide with answers for next week's exam posted underneath the Resources tab.

June 20 (Gareth) Second week updated on progress page. Checkin working for P2.

June 14 (Gareth) Lecture will be held in CSB130 starting tomorrow!

June 12 (Gareth) This website is up and running! Welcome to Summer 2016!

May 17 (Gareth) This website is under construction.