General Course Policies ( please read these carefully!! )
- Material covered:
The course consists of all material covered in lectures,
labs, homework, assignments and assigned reading.
These components are to be considered separate and individually essential
building blocks of your introduction to the art and science of
computer programming - and are all examinable.
- Collaboration policy:
In general, we have found that one of the best predictors of
success in these courses is participation in a study group of some
kind. We encourage you to work together and learn from each other
in as many ways as possible, and we will provide any assistance we
can to make this happen. However, we also have to assess each
student individually, so there are very explicit boundaries
to collaboration:
- Midterm & final exams, quizzes, lab practicals -- Obviously
no collaboration.
- In-lecture activities -- Generally collaborative.
- Homeworks -- Collaboration is strongly ENCOURAGED, although
of course, you must still submit your own solutions.
Note that questions
on exams and quizzes are frequently taken directly from homeworks,
so it is well worth your while to fully master them.
- Lab exercises -- Collaboration is strongly ENCOURAGED, and in fact
you will be working in pairs in the lab.
If you complete an exercise, feel free to help others -- teaching
enhances your own learning.
- Home programming assignments -- Collaboration is strongly
ENCOURAGED: again, you will be working
in teams, but the programs you submit must still
represent YOUR OWN original work.
Teams should work on the algorithm together, help solve problems,
and help debug/test each others code, so we expect some similarities
between submissions from members of a team.
However, directly copying code from a team-member, or copying
code from ANY outside source
(any book, current or past students, past solutions, web sites,
etc.) is STRICTLY FORBIDDEN: we test every submission for
copying, and when we find it we treat it as flagrant academic
dishonesty (see below).
- Academic dishonesty:
We use a powerful tool that automatically compares all programs
(this quarter and from past quarters too ), neglecting differences in
variable names, spacing, etc., and detects copied code. If you are
smart enough to outwit the tool, you are smart enough to write
the program yourself. We regularly catch several cases of copying
in the course EVERY QUARTER, with severe penalties given.
Other forms of cheating, such as lying to an instructor in order
to be allowed to make up a test, or copying on a quiz, etc., are
all treated with the same severity. PLEASE, don't risk it!!
We hate failing students!!
Cheating may be reported anonymously at
https://www.cs.ucr.edu/cheating
- Regrade policy:
Regrade requests must be submitted in writing and within one
week of the posting of the relevant grades. Likewise,
grade-database errors should be pointed out within one week of
posting.
- Communicating with the instructors and TAs:
When emailing your instructors or TAs, please remember that
many students have the same name, and your instructor may be
teaching other courses too. So please give:
your full name, the course you are taking, and your student
ID number.
You should use your CS.UCR email account
( remember that UCR sends many official notices now only
by email ). Please try to be polite and professional, and use
reasonable grammar and formatting.
- Assignment submissions:
All homeworks & assignments are to be turned in
electronically.
Each file should begin with our
report template header. Source
code should comply with the course's
coding standards.
Also, you must include a section
explaining the design, structure, etc of your program and
how it works. Comments in source code are important, but they are
not a replacement for an explanatory section. Please
remember that successfully writing a computer program that
compiles and runs correctly is not something anyone can do in
just a few minutes, even when it looks easy. Debugging typically
takes three times longer than figuring out how to write
your program. So don't leave your programming assignments to
the last minute!
- Quizzes and in-class activities
You will need the "personalized" multiple choice answer sheet
available here.
You should print multiple copies of your personal answer sheet,
and bring them with you to every class.
- Lab attendance:
Attendance is required for the full 3-hour lab. If you finish
early, help others ( teaching increases your own learning ), read
ahead, work on your at-home program assignments, etc.
- Lab enrollment:
To reduce disruptions and provide for the best educational
environment, all persons in lab during scheduled lab time
should be formally registered in that section. In general, no
swapping sections and no unregistered people in the lab are
allowed, even if there are extra computers.
- Switching/adding/dropping lab and lecture sections:
All add, drop, and section changes of all lower division
Computer Science courses, after the period when students can do so
electronically is over, are done through the College of
Engineering's Student Affairs office. Neither the
instructors nor the CS department itself can sign any add/drop
forms, nor can they arrange for section changes. Please go to
Student Affairs, Bourns Hall A159, for any such changes.
- Time Requirements:
This is a four-unit CS course. As such, you should expect to
spend 3 hours/week in lecture, 3 hours/week in lab,
and 6 to 10 hours/week doing individual study ( readings,
homework, programming, lab preparation, etc ) -- and we're NOT exaggerating
here!
Please don't underestimate the time you will need to spend
on this course. These are real time amounts spent by successful
past students. Computer Science and Engineering are challenging
disciplines requiring extensive time to master -- it's worth
it in the end ( great jobs, great pay, respect, etc. ), but those
things don't come for free.
- Final Exams:
Final exams are scheduled by the University, not by the
instructor, and are correlated to the course sections. This means
you take the final exam scheduled for the section you are
enrolled in.
- Final grades:
Per university policy, changes to your final grade can be made
only in the event of a clerical error. Asking your
instructor how far you were from a cutoff and what extra work
you can do to improve the grade is not appropriate.