General Information
General Information
Instructor
Matt Bishop
Phone: (530) 752-8060 (not a cell phone)
Email: mabishop@ucdavis.edu
Office: 2209 Watershed Sciences
Office Hours: to be arranged
Web site: http://nob.cs.ucdavis.edu/~bishop
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 very important.
Teaching Assistant
Kaustubh Chakravarthula
Email: kchakravarthula@ucdavis.edu
Office: to be arranged
Office Hours: to be arranged
Lectures
MWF 1:10pm–2:00pm in 26 Wellman Hall
Discussion Section
Section A01: W 8:00am–8:50am in 6 Wellman Hall
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:
- develop expertise in using a high-level programming language (specifically, C);
- be knowledgeable in using basic operating system tools (specifically, Linux- or UNIX-based tools);
- develop good programming style; and
- develop into competent programmers with the ability to solve problems of reasonable size on a computer.
Prerequisite
ECS 32A with a grade of C− or better;
or ECS 32AV with a grade of C− or better;
or ECS 10 with a grade of C− or better;
or must satisfy computer science placement exam;
prior experience with basic programming concepts (variable, loops, conditional statements) required.
Texts
- Programming in C, zyBooks, http://www.zybooks.com
To use this, sign into http://learn.zybooks.com (you may need to create an account), and enter the zyBook code “UCDAVISECS036ABishopSpring2025” (without the quotes). You can then subscribe. It costs $64.00.
Important: I am told that a subscription through the UC Davis Bookstore is $57.60. If you are on equitable access, you have already paid.
- Shell textbook: William E. Schotts, Jr., Linux Command Line: A Complete Introduction, No Starch Press, San Francisco, CA, USA (2024). ISBN: 978-1-59327-389-7.
Available online at https://sourceforge.net/projects/linuxcommand/.
The book does not cost anything to download.
Useful Notes on C and Debugging It
Class Web Site
The class web site is on Canvas.
To access it, go to http://canvas.ucdavis.edu 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,
http://nob.cs.ucdavis.edu/classes/ecs36a-2025-02
has everything except grades, and you cannot submit work there.
PTA (Permission to Add) Numbers
The department policy on issuing PTAs is available at https://cs.ucdavis.edu/policies; click on the bar “Permission to Add (PTA) Policy for Undergraduates”. If you need a PTA, please follow the instructions there.
I am not authorized to give out PTAs for a variety of reasons. You \textbf{must get them
by following the instructions on that web page!}
Exams
Midterm: Wednesday, April 30, 2025, in class
Final: Friday, June 12, 2025 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!
Piazza
This term we will be using Piazza for class discussion.
You are of course welcome to send questions to the instructors.
You should also considering posting your question to Piazza, because classmates can
respond as well as the instructors. The answer will also be
visible to everyone in the class, so it will help them also.
Piazza has a private posting mode, and only the instructors can see anything posted
with that setting turned on. Or, you can send us the question via email.
Sign up at https://piazza.com/ucdavis/spring2025/ecs036a001sq2025.
Important Dates
- First day of instruction: March 31, 2025
- 10-day drop deadline: April 11, 2025
- Last day to add: April 15, 2025
- Last day to opt for P/NP grading: May 23, 2025
- Midterm exam: April 30, 2025
- Last day of instruction: June 5, 2025
- Final exam: June 12, 2025 from 8:00am to 10:00am
Grading
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:
grade | % | grade | % | grade | % | grade | % | grade | % |
| | B+ | 87–89.99 | C+ | 77–79.99 | D+ | 65–69.99 | | |
A | 95–100 | B | 83–86.99 | C | 73–76.99 | D | 60–64.99 | F | 0–54.99 |
A− | 90–94.99 | B− | 80–82.99 | C− | 70–72.99 | D− | 55–59.99 | | |
Curve. The final grade will be curved before considering extra credit.
Individual assignments and exams 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 use the extra credit to determine whether to boost your grade should your score be on the border of 2 grades.
Weighting. The weights of the assignments and exams are:
Homework assignments: 40%
Midterm exam: 25%
Final exam: 35%
Important Note. We reserve the right to change any of the grading scheme, curve, extra credit, and weighting.
Another Important Note. The grade E-NWS (sometimes called NWS or NS), which stands for “No Work Submitted”, is no longer a valid grade. In cases where it would have been assigned in the past, we will give a grade of “F”. So please be sure you drop this class rather than submit no work!
Academic Integrity
The UC Davis Code of Academic Conduct, available at http://sja.ucdavis.edu/files/cac.pdf, 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. It also deprives you of learning, as the goal is not simply to write the program, but is to learn how to analyze a problem and learn C.
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.
Resources for Students
Please see the Frequently Asked Questions — UC Davis Student Resources web page at https://ebeler.faculty.ucdavis.edu/resources/faq-student-resources/.
Students new to the campus often feel overwhelmed, depressed, or to have other mental health issues. This also happens to students who have been here a while! So if you want to talk to someone, or get help, there are resources available. Look at the Aggie Mental Health Resources web page at https://mentalhealth.ucdavis.edu/. In particular, don’t feel embarrassed or that it’s a sign of weakness to get help. It’s actually quite natural and is in fact a sign of strength that you care enough about yourself to do it!