Instructor
|
Matt Bishop, 3059 Engineering Unit II; phone: 752-8060;
email: bishop@cs.ucdavis.edu; web page: http://seclab.cs.ucdavis.edu/~bishop
Office hours: M 1:00PM-2:00PM, F 11:00AM-12:00PM, by appointment or by chance
|
Teaching Assistants
|
Lakshmi Rao,
to be arranged
email: lprao@ecs.ucdavis.edu
Office hours:
Tu 10:45AM-12:45PM, Th 10:45AM-12:45PM
Ke Zhang,
to be arranged
email: zhangk1@cs.ucdavis.edu
Office hours:
Tu 7-11PM
|
Lectures
|
MWF 9:00AM-9:50AM in 212 Veihmeyer
|
Discussion Section
|
Section A01: F 5:10-6:00PM in 1120 Hart
Section A02: Th 8:00-8:50AM in 116 Veihmeyer
Section A03: F 4:10-5:00PM in 1120 Hart
|
Course
Outline
|
Learn about programming using the C programming language; learn basics of debugging; learn how to use a UNIX- or UNIX-like system
|
Course Goals
|
Some goals we hope you achieve:
-
learn how to program in C;
-
learn how to use the UNIX system;
-
learn how to use the basic tools available on UNIX systems;
-
learn how to debug programs using a dynamic debugger;
-
learn how to solve programming problems; and
-
learn a little about software engineering
|
Prerequisites
|
The prerequisites for this course are Math 16A or 21A. You can be taking these this quarter. You should have prior experience with at least one other programming language. If you have never programmed before, you will be at a
big
disadvantage. In that case, we strongly recommend you take ECS 10 first.
|
Text
|
-
R. Johnsonbaugh and M. Kalin,
C for Scientists and Engineers,
Prentice-Hall, Inc., Upper Saddle River, NJ (19970.
-
G. Glass,
UNIX® for Programmers and Users, Prentice-Hall, Inc., Englewood Cliffs, NJ (1993).
|
Computers
|
All registered students have been given an account on the computer science instructional machines in the basement.
Change your password as soon as you can; if it is not changed within a week, your account will be disabled and you will have to see a system programmer to have it reset.
|
Class Web Site
|
The class web site is on
myucdavis. To access it, go to http://my.ucdavis.edu and log in using your
campus-wide login and password. Then go to ECS 30-A in your schedule. Handouts
and other documents will be posted there. In the event you cannot get to that site,
an alternate site will be at http://nob.cs.ucdavis.edu/~cs30a. Please use that
only as a backup, though.
|
Class
Newsgroup
|
Information about this class, homework assignments, and so forth, will be posted to the newsgroup
ucd.class.ecs30a
Read this newsgroups daily!
You are responsible for everything posted to these newsgroups.
We'll use it to put out important information. Please do not post to this newsgroup. If you want to post things about the class, please use the appropriate discussion newsgroup (add ".d
" to the ones above). Discussing something in that newsgroup is perfectly fair.
|
Homework
|
Homework is due at noon on the date stated on the homework. See the handout
All About Homework
for more information.
|
Extra Credit
|
Extra credit in this course will be tallied separately from regular scores. If you end up on a borderline between two grades at the end of the course, extra credit will count in your favor. However, failure to do 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!
|
Grading
|
50% | Homework |
| 20% | Midterm exam |
5% | Lab exam |
| 20% | Final exam |
|
Exams
|
Midterm
-- Monday, May 6, 2002 in class
Final examination
-- Monday, June 10, 2002, at 4:00PM-6:00PM
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!
|
Academic Integrity
|
Please see the
Spring 2002 Class Schedule and Room Directory
for a general discussion of this. In particular, for this course:
-
All work submitted for credit must be your own. You may discuss your assignments with classmates, with instructors, or with teaching assistants or readers in the course to get ideas or a critique of your ideas, but the ideas and words you submit must be your own. Unless
explicitly
stated otherwise
in the assignment
, collaboration is considered cheating and will be dealt with accordingly.
-
For written homework, you must write up your own solutions and may neither read nor copy another student's solutions.
-
For programs, you must create and type in your own code and document it yourself.
Note that you are free to seek help while debugging a program once it is written.
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 or a teaching assistant for clarification
beforehand
if the above rules are not clear.
|