Winter 2011 — Informatics DepartmentBren School of ICSUC Irvine

ICS 10 Course Reference
How Computers Work

Instructor: David G. Kay, 5056 Donald Bren Hall ( TA: Nadine Amsel ( Course-related e-mail is best sent to

Quick links: Assignments Blown to Bits book Email archive References

Course goals and learning outcomes: These days, everybody has to make decisions about computer systems and information technology. What computer or cellphone should you (or your company) buy? Whom should you hire to design your web site or to set up a network for your business? What precautions should you take before doing online banking from your cellphone or posting pictures on Facebook? How do you decide which way to vote on ballot propositions that relate to the internet?

Because technology changes rapidly, the best answers to these questions won't be the same next year as they are today. Your best strategy for making good decisions over the longer term is to know not just the current details but the underlying concepts of computing; they'll have a longer "shelf life." This course looks "under the hood" at modern computing systems, not because most students will become computer professionals and have careers working under the hood, but because gaining some concrete knowledge about how computers work is the best way to learn those underlying, long-shelf-life concepts.

Prerequisite courses and concepts: This course was designed for majors outside of the School of Information and Computer Sciences; it has no academic prerequisites. We do expect you to have these basic computing skills: Searching and browsing the Web, reading and sending Email, downloading files, viewing and printing PDF (Adobe Acrobat) documents, and creating or saving documents for Email and other purposes in plain ASCII text form (not HTML or Word attachments). If you need to brush up on any of these, let us know and we'll help.

Meeting place and times: Lecture meets Tuesdays and Thursdays from 9:30 to 10:50 a.m. in Donald Bren Hall 1300.

Office hours: You are welcome to drop by my office at any time. If I'm there and not immersed in something else, I'll be glad to chat about the course or other topics. I will definitely be in or near my office during these scheduled hours, when course-related matters will have first priority: Tuesdays from 11:00 to 11:30. Of course emergencies may come up, but I will try to give advance notice of any change. I'll also be happy to make arrangements for other times during the week; "making an appointment" is no big deal (but if you make one, don't skip it without getting in touch). The quickest and most effective way to reach me is by electronic mail.

Questions and announcements: You can usually get a response to your course-related questions within a few hours (perhaps a bit longer on the weekends) by sending electronic mail to the address We will never intentionally ignore a message, so if you don't receive a response, write again; sometimes overactive spam filters snag a legitimate message. Using course-specific subject lines and your UCInet Email address will help your messages get noticed.

We will also send course announcements by Email to the official course mailing list, so you should check your Email regularly. Note that this mailing list goes to the Email address that the registrar has for you (your UCInet ID). If you prefer to read your Email on another account, you should set your UCInet account to forward your Email to your preferred account (see how in the Advice section below). Don't let this slide; if you miss official announcements, your grade could suffer.

This course has a home page at; there's an archive of official course Email at

Readings and course materials: There is no single textbook that covers all the course material. We will assign readings from a variety of sources, nearly all of them available on line. One source of readings will be Blown to Bits: Your Life, Liberty, and Happiness after the Digital Explosion, by Hal Abelson, Ken Ledeen, and Harry Lewis; the full text is available for free on line at

Course structure:
Assignments (35% of the course grade), some with pencil and paper and some on the computer in the lab. Typically assignments will be due at noon on Fridays, with the next one available on Friday afternoons at, where it will be up to you to find and read them.
Class participation (10%)
One midterm, given in class on Thursday, February 10 (20%)
One final exam, on Thursday, March 17, from 8:00 to 10:00 a.m. (35%)

Your TA has primary responsibility for grading your work; go to her first for any questions about grading or scoring. If that does not resolve your question, then see the instructor. The TA and instructor will be happy to correct any errors that do occur, but we must ask that you bring us your grading uestions with a week after the item is returned; the course moves quickly and we imply can't deal with assignments long past.

We determine final grades neither on a formal curve (with equal numbers of As and Fs, Bs and Ds, and so on) nor on a straight, fixed scale. Scores on the scale shown below will get the grades indicated, but in the past the actual cutoffs have often been lower; this means that you should not assume your grade will be as low as the scale indicates. If you're concerned, check with your TA or the instructor. The basic scale is: grades in the A range (A-, A, and in exceptional cases, A+), 90% and above; grades in the B range, 80%–90%; grades in the C range, 70%–80%. We urge everyone to focus not on letter grades but on learning what's necessary to earn high scores; the grades will follow from that.

We're required to say that in unusual circumstances, these criteria could change, but we do not expect that to happen.

Special needs: Any student who feels he or she may need an accommodation due to a disability should contact the UCI Disability Services Center at (949) 824-7494 as soon as possible to explore the possible range of accommodations. We encourage all students having difficulty, whether or not due to a disability, to consult privately with the instructor at any time.

What you must do right now to get started in ICS 10:
— If you do not have a UCInet ID, get one. See
— If you prefer to read your electronic mail on an account other than your UCInet account (which is a good idea, since if your UCInet account's mailbox fills up, you stop receiving mail), redirect your mail at
— Complete the ICS 10 Questionnaire at (by the end of the first week).
— Go to, log in with your UCInet ID, choose "Course Listing" and Winter 2011, click "Go" next to ICS 10, and then click "List me for this course." You'll submit most of your work electronically; this step is necessary to set that up.
— If you aren't yet officially enrolled in the course, check the course Email archive regularly (see above) so you can keep up with official announcements (which may include announcements about enrollment).

Good advice and helpful hints:

Check your electronic mail regularly; this is an official channel for course announcements. When sending course-related mail, start the subject line with "ICS 10" or "How Computers Work".

Attendance in class is essential; concepts and issues will come up in class that aren't easily available from other sources, and those concepts will find their way into the assignments and exams. Also, class participation in various forms will count towards the course grade.

Read each assignment with care, more than once. Reading technical specifications requires different skills than reading on-technical material; acquiring those skills is one goal of this class. Expect to refer back to the assignment often, and check it first when you have questions about what's required or how to proceed.

Don't expect to complete every assignment in one sitting, especially not the night before it's due. If you start early,you'll have plenty of time to ask questions.

Always keep your own copy of each assignment, both electronically and on paper; if an assignment should get lost in the shuffle (or if the Checkmate machine should crash), we'll expect you to be able to supply a replacement easily.

If you find yourself having trouble or getting behind, speak with the instructor. But never take the shortcut of copying someone else's work and turning it in; the consequences can be far worse than just a low score on one assignment. The School of ICS takes academic honesty very seriously; for a more complete discussion, see the ICS academic honesty policy:

Approximate course outline:

Week Date Topic
1. 4 January
Introduction to the course, computers, and information
6 January
Introduction to Scratch and BYOB
11 January
Overview of the internet

13 January
Internet operation and implications
18 January
The processor (CPU): fundamental machine operations

20 January
The processor (continued)
25 January
Software and programming

27 January
Evolution of programming languages and tools
1 February
Algorithms and efficiency
3 February
Representing information digitally
8 February
Redundancy and compression
10 February
15 February
Secondary storage and peripheral devices
17 February
Operating systems, networks, security
22 February
Human-computer interaction
24 February
Information visualization
1 March
Legal and social issues
3 March
Future trends and developments
8 March
Epilogue and review
10 March
— No class meeting —
Final Exam, Thursday 17 March, 8:00 to 10:00 a.m.