General Information


Matt Bishop
Phone: (530) 752-8060
Office: 2209 Watershed Sciences
Office Hours: MWF 2:00pm–3:00pm

When you send me email, please begin the subject field with “ECS 36A” so I see that the letter has to do with the class. I receive lots of email and, while I look at it all, I sometimes miss things, or skim the subject lines to see which letters are very important. Putting “ECS 36A” in the subject field will tell me it is important.

Teaching Assistants


MWF 4:10pm–5:00pm in 2205 Haring

Discussion Sections

A01Tu 9:00am–9:50am1204 HaringShubhankar Gupta
A02W 5:10pm–6:00pm223 OlsonMatt Lyons
A03Th 1:10pm–2:00pm223 OlsonGe Shi
A04F 1:10pm–2:00pm176 ChemistryKaren Lu

Catalogue Course Outline

Computers and computer programming for students with some prior experience, algorithm design, and debugging. Good programming style. Use of basic UNIX tools.

Course Goals

Some goals we hope you achieve:


Prior experience with basic programming concepts (variable, loops, conditional statements) required, and must satisfy computer science placement exam; or C− or better in ECS 32A.


Important note about the C textbook This course has an optional digital version of the textbook available. To access the e-book, click on the Bookshelf menu option in Canvas to access your Student IA Portal. Then follow the instructions in your portal to access the e-book.

You will have trial access until the 14th day of instruction and can choose to opt in or not during that period to retain full access. Students who opt in by the deadline will have the access charge billed to their student account. If you do not opt in, your access will expire after the deadline and you will not be billed. If you forget to opt in before your access expires, you can contact the Inclusive Access team to be opted in and have the access turned back on.

If you cannot locate the Canvas Bookshelf button or email with your portal link, you can have it re-sent at Please contact with questions about this purchasing option.

Class Web Site

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

PTA Numbers

The department policy on issuing PTAs is available at If you need a PTA, please read that page, and follow the instructions there.


Midterm: Monday, October 28, in class
Final: Wednesday, December 11 at 1:00pm–3:00pm
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!

Important Dates

First day of instruction: September 25, 2019
10-day drop deadline: October 8, 2019
Last day to add: October 10, 2019
Midterm exam: October 28, 2019
Last day to opt for P/NP grading: October 29, 2019
Last day of instruction: December 6, 2019
Final exam: December 11, 2019 from 1:00pm to 3:00pm


In this course, grades are assigned based on your overall score, which is out of 100 points. The letter grades, and the scores they are assigned to, are:

B+87–89.99C+ 77–79.99D+65–69.99

Curve. The score of each assignment and exam will be curved. Enough points will be added to the highest score to set it to 100%, and the same number of points will be added to the other scores. The final scores will not be curved.

Extra Credit. Extra credit is tallied separately and does not figure into the scores for assignments. At the end of the term, I will multiply the percent of the extra credit by 5 and add it into the overall score. So, for example, if you get 80% of the extra credit points, at the end of the quarter, your final score will be your overall score plus 4 (= 80% × 5).

Computation. The lowest score of the assignments that you have turned in (not including exams) will be dropped.

Weighting. The weights of the assignments and exams are:

Homework assignments40%
Midterm exam25%
Final exam35%

Academic Integrity

The UC Davis Code of Academic Conduct, available at, applies to this class. For this course, all submitted work must be your own. You may discuss your assignments with classmates or the instructor to get ideas or a critique of your ideas, but the ideas, words, and programs you submit must be your own. Unless explicitly stated otherwise, collaboration is considered cheating. Also, remember to cite, and give the source for, anything you copy or paraphrase, as is standard academic protocol. Plagiarism, even (especially) copying code from a book or the web without crediting it, is cheating.

The single exception to the rule against collaboration is debugging. Once you have written your program, if you need help debugging it, you are free to ask a classmate for help providing that classmate has also written the program. (This should avoid any unintentional copying.) Sometimes having someone else look over a program that is not quite working right will lead you to the best way to fix it, and you both will gain valuable experience in looking at programs and figuring out what is going on. But you must not collaborate on writing the program.

Any cheating will be reported to the Office of Student Support and Judicial Affairs.

UC Davis sigil
Matt Bishop
Office: 2209 Watershed Sciences
Phone: +1 (530) 752-8060
ECS 36A, Programming and Problem Solving
Version of October 11, 2019 at 12:42 Noon
You can also obtain a PDF version of this.

Valid HTML 4.01 Transitional Built with BBEdit Built on a Macintosh