General Information


Matt Bishop
Office: 2209 Watershed Sciences
Phone: (530) 752-8060
Office Hours: MWF 11:00am–12:00pm, or by appointment, or by chance

Teaching Assistants

NameEmailOffice Hours
Ajiinkkya Bhaalerao asbhaalerao@ucdavis.eduM 3:00pm–4:00pm, Tu 6:15pm–7:15pm, W 3:30pm–4:30pm
Gabriel Castillo gcastillo@ucdavis.eduTu 12:00m–2:00pm (in 53 Kemper Hall), Th 12:00pm–2:00pm (in 2203 Watershed Sciences)
Pallavi Kudigrama pkudigrama@ucdavis.eduW 11:00am–1:00pm, Th 2:00pm–4:00pm
Brian Perry ucdcompsci@gmail.comTu 3:30pm–5:00pm, W 9:00am–10:00am, Th 3:30pm–5:00pm
Apoorva Rangaraju arangaraju@ucdavis.eduTu 4:00pm–6:00pm, F 2:00pm–4:00pm
Jonathan Vronsky jvronsky@ucdavis.eduTu 10:00am–12:00pm, F 12:00pm–2:00pm
Zhige Xin zxin@ucdavis.eduF 2:00pm–6:00pm
All office hours will be held in 53 Kemper Hall, except as noted above.


MWF 10:00am–10:50am in Rock Hall

Discussion Sections

A-01 W3:10pm–4:00pm 230 Wellman Gabriel Castillo
A-02 Tu2:10pm–3:00pm 119 Wellman Ajiinkkya Bhaalerao
A-03 F4:10pm–5:00pm 119 Wellman Apoorva Rangaraju
A-04 M2:10pm–3:00pm 204 Art Jonathan Vronsky
A-05 F8:00am–8:50am 119 Wellman Pallavi Kudigrama
A-06 W8:00am–8:50am 119 Wellman Brian Perry
A-07 Tu9:00am–9:50am 147 Olson Zhige Xin

Course Outline

Introduction to computers and computer programming, algorithm design, and debugging. Elements of good programming style. Programming in the C language. Use of basic UNIX tools.

Course Goals

Some goals we hope you achieve:


You should take Math 16A or 21A (taking them concurrently is fine). Also, you should be able to write a program in a high-level language to solve a problem; see the handout Prerequisite Problem for an example.


We will be using an on-line version of the book J. Hanly and E. Koffman, Problem Solving and Program Design In C, Eighth Edition, Pearson Education Inc., Boston MA (2016). See the handout Digital Resources for more details.


All registered students have been given an account on the computer science instructional machines in the basement (the Computer Science Instructional Facility, CSIF). Use your campus login and password to log in.

Class Web Site

The class web site is on SmartSite. To access it, go to and log in using your campus login and password. Then go to ECS 30 in your schedule. Announcements, assignments, handouts, and grades will be posted there, and you must submit assignments there. The alternate web site, has everything except grades, and you cannot submit work there.


All homework is due at 11:55pm on the date stated on the homework, unless otherwise specified. The handout All About Homework discusses homework.

Extra Credit

Extra credit is tallied separately from regular scores. It counts in your favor if you end up on a borderline between two grades at the end of the course. But, not doing extra credit will never be counted against you, because grades are assigned on the basis of regular scores. You should do extra credit if you find it interesting and think that it might teach you something. Remember, though, it is not wise to skimp on the regular assignment in order to do extra credit!


Midterm: Wednesday, October 28 in class
Final:Wednesday, December 9 at 8:00am–10:00am
These will be closed book and closed notes exams. No early or late exam will be given; if you miss an exam for medical reasons (you must document this; no other excuses are acceptable), you may be allowed or required to take a make-up exam, or the other parts of the course will be counted proportionally more (the choice is the instructor’s). In particular, forgetting the time or place of an exam is not an excuse for missing it!


Homework is work 50% of your grade; the midterm and final exams are each worth 25%.

Academic Integrity

The UC Davis Code of Academic Conduct, available at, applies to this class. In particular, for this course: A good analogy between appropriate discussion and inappropriate collaboration is the following: you and a fellow student work for competing software companies developing different products to meet a given specification. You and your competitor might choose to discuss product specifications and general techniques employed in your products, but you certainly would not discuss or exchange proprietary information revealing details of your products. Ask the instructor for clarification beforehand if the above rules are not clear.
You can also obtain a PDF version of this. Version of September 24, 2015 at 11:31PM