|
|
| |
Course Administration and Syllabus
Instructor: Martin Dickey
- Web site
- http://www.cs.washington.edu/education/courses/143/02au
-
E-mail: dickey@cs.washington.edu
Office: Sieg 423b Office
hours TBA; see
Weekly
Schedule
- Place and Time
- Lecture: MWF 11:30-12:30, Guggenheim 224
- Quiz sections:
TuTh, various times and locations. Check the UW
Time Schedule.
-
-
- Staff Information
- Course Goals
- CSE143 is a continuation of CSE142. Topics covered will include
classes and interfaces; inheritance; software design principles; exceptions;
stream I/O; user interfaces; recursion; elementary data structures and
associated algorithms (lists, queues, stacks, trees); and an introduction
to performance analysis and implementation tradeoffs. The Java
programming language will be used to gain concrete experience with these
ideas. Successful completion of the course will give you the tools
needed to construct substantial computer programs and the concepts needed
to better understand computers and software. The course also provides
a foundation for further study in computer science and engineering.
- Prerequisites
- CSE142. To be fully prepared, you should have taken the Java
version of the course at the UW, or have equivalent background.
Look last year's
CSE142 web pages if you are not sure whether your previous course
included the appropriate topics. The new Java version of
CSE142 introduces basic programming concepts in the context of Java
classes and objects, topics that were not included in the C version
of the course, and it also includes use of reference-based data structures. If
you have done some object-oriented programming in another language (C++,
for example), you should be able to make the transition to Java, and
to this course.
- Course Format
- The class meets five days a week: three lectures on MWF, and two quiz
sections on TTh. On your own time, you have homework to do, mostly
computer programs to design and debug. Students almost universally
report that CSE143 is time-consuming compared to100-level courses in
other disciplines. But many students also report the course to
be interesting and rewarding!
- Topics Covered and Schedule
- A day-by-day schedule will be online.
This shows topics covered, related reading, pointers to lecture slides,
and identifies dates of major events. The exact mix of topics
and schedule is subject to change. You can expect the schedule
to be updated fairly frequently, so please revisit it often.
- Textbook and Other Required Reading
- Textbook: Jaime Niņo and Frederick Hosch, An Introduction to Programming
and Object-Oriented Design using Java, Wiley, 2002. This book
begins with the very fundamentals of Java. We will cover the first
several chapters quite rapidly. If you did not have CSE142 at
the UW, this will be your (very brief) opportunity to catch up with
some elementary material and terminology. CSE143
is not a course built around this particular textbook. Don't be
surprised to find details that differ between the lecture presentations
and the textbook explanations and examples. There will also be
differences in the order of topics. Please don't let it throw
you! To supplement the textbook, there may be handouts or pointers
to readings on advanced topics, especially near the end of the quarter.
- Other required reading:
every message sent to the announcement mailing list; every word of every
assignment; all the lecture slides, including those that are not presented
in class; and anything else that we might designate as required reading
(which might include sample solutions and handouts). There may
also be material presented in lecture which does not exist on the slides
or any printed form. You should try to keep
up with all of these materials and be prepared to be quizzed on them, just
as you would with the textbook readings.
-
- Other Materials
- You may wish to buy some disks to make backups of your work.
Probably we will not require you to turn in any disks. Backup is
something you should take seriously, though.
In most any bookstore you can find an almost frightening number of books
about Java. You may find that one or more of these appeals to
your learning style and background.
- Tests and Quizzes
- There will be two 45-minute midterm exams and a comprehensive final
exam, timed at 100 minutes. Unless otherwise announced, exams
will be held in the same lecture hall as regular classes.
Tests and quizzes may include a mixture of multiple-choice, short-answer,
and programming questions.
All tests are cumulative, but emphasize the more recently covered material.
The final exam will be held at the time set by the University:
Tuesday, December 17, 2:30 p.m. .
You must take the exams when they are offered; please do not make
plans which would prevent you from doing so. You must take and pass
the final exam in order to pass the course.
-
- There will also be lots of short quizzes, at unpredictable times. These
miniquizzes will be of three types: Reading quizzes, which cover assigned
reading that has not yet been covered in class (!); knowledge quizzes,
which test important skills or concepts just recently introduced; and
feedback quizzes, where the main goal is for us to assess how well we
are getting the material across. All quizzes will be graded on
a simple system, and all quizzes will count equally, regardless of length
or difficulty. No makeup quizzes will be given regardless of reason
for missing, but if you miss one (only), we will drop it from the average
when computing your grade. If you miss no quizzes, we will drop
the lowest score (percentage-wise).
- Participation and Service
- A small percentage of the course grade comes from participation and
service. The best way to earn these points is to look for opportunities
to do things which help me or the TAs or the class as a whole.
I'll throw out examples and suggestions as we go along, but you can
look for opportunities, too.
- Attendance
- Attendance is expected at all class meetings. There may be some opportunities
for credit that you will miss when you don't attend. If you miss a lecture,
talk to a friend who was present, and be sure to check the Web site
for class messages and updated information. Instructors and TAs will
not furnish make-up materials to individuals who miss class, but of
course you are welcome to visit office hours with questions about the
material.
- Even though a great deal of class material is available via the Web,
this is not a distance learning course, Students who don't attend
class cannot expect to succeed as readily as those who do. If
you miss class, you may miss information, examples, handouts, advice,
announcements, and other things that are not guaranteed to be anywhere
on the Web.
- Homework
- Computer programming is best learned hands-on. Several sizable programming
projects will be assigned throughout the quarter, as well as a number
of smaller exercises, which may include problems to solve, questions
to answer, short writing assignments, diagrams or charts to draw, etc.
You should expect to have something due every week, occasionally even
more than one per week, and sometimes on or close to an exam date. Assignments must be done by each student
individually, unless explicitly directed otherwise. Pick up graded written
homework and exams from your TA in quiz section.
Unclaimed homework is discarded at the end of the quarter.
-
- Turning in Assignments
- Each assignment will carry instructions about when and how it is to
be turned in. Some assignments may be collected in class or by
e-mail. However, for most programming homework, you will turn
in the assignment electronically via the Web. There will be a special
page with a form to fill out, and a "receipt" page is sent
back to your computer to verify that we received the assignment.
Work that is not turned in according to instructions will not be graded.
Most often, the deadline for electronic submission of assignments will
be Wednesday or Thursday evening. Non-electronic materials assignments will generally
be due at the beginning of lecture or quiz section.
However, there will be exceptions to these general rules.
- Late Policy
- Except in truly exceptional circumstances, late homework will not
be accepted. Expect to spend a lot of time on the
programming homework. Estimating how long a project will take is
difficult, even for software professionals, so start early!
- Grading Scheme (tentative)
-
- Homework and Projects: 28%. Longer or more difficult assignments
will be weighed more heavily.
- Midterm #1: 14%
- Midterm #2: 16%
- Final Exam: 24%
- Miniquizzes: 12% (all weighted equally)
- Participation: 6%
Homework and tests assess very different things. It's quite
possible to do very well in one category and not-so-well in another.
If that happens to you and you don't see why, please come and talk to
me. Along the same lines, sometimes the lectures, homeworks, and
quiz sections will seem coordinated, and other times they may seem to
come from different planets!If you find an error in the grading, you must bring it to your TA's
attention within one week of when the item was returned.
- Your grade in the course
- Yes... the rumor is true. The class is graded on a curve, with
the mean set at about 3.1. Midway through the course, students often ask me to estimate what grade they are likely to get.
This is very difficult.
One thing you can look at is how your scores compare with the class mean.
This information will be available on-line after our grades database
is set up. Of course, you are always welcome to come and talk
to me about grades or any other concern.
- Tools for Communication
- The course web site is the primary source of information about CSE143. In addition, everyone should read the class message board
(also referred to as the bulletin board or newsgroup). This is a forum
for discussions about course content and activities. Please do
not post your code on it! We will send email to your UWNetID if we need to broadcast a message to everyone in the
class. E-mail messages are also archived and can be viewed on
the web.
You can reach the entire teaching staff at once by sending electronic
mail to cse143-staff@cs.washington.edu
. This is often the fastest way to get an answer from some
staff member. You are encouraged to use the message board for
most discussions and questions.
- Labs and Computing Facilities
- The Introductory Programming Laboratory (IPL) for CSE142 and CSE143
is in room 334 of Mary Gates Hall. The IPL is our home base, and
we provide consulting support there at scheduled times throughout the
week. Software to support the course is also installed in the
other UWired public labs. See the lab information
web page for more information on the UW programming labs, their
hours, etc. All the software is freely available over the web,
for you to install on your own computer; see the computing
at home pages for help. The same instructions apply to both
CSE142 and CSE143 in most cases. If you have software left over
from CSE142 -- it's all been updated. Please get the new
versions and reinstall.
- Course Administrator
- The course administrator is Pim Lustig, Sieg 112E (inside Sieg 114);
616-3225, cse143-admin@cs.washington.edu.
See Pim for administrative matters related to the course such as scheduling
conflicts, routine corrections to entries in our grade database, etc. See
the staff page for his office hours.
- Appropriate Use of UW Computers
- Here are some excerpts from the campus policies;
take them seriously: "You must use all UW [computing] resources
in strict accordance with local, state, and federal laws. These laws
cover such areas as illegal access to computer systems, networks, and
files; copyright violations; and harassment issues... Software and information
resources provided through the university for use by faculty, staff,
and students may be used on computing equipment only as specified in
the various software licenses. Unauthorized use of software, images,
or files is regarded as a serious matter and any such use is without
the consent of the University of Washington...If abuse of computer software,
images, or files occurs, those responsible for such abuse will be held
legally accountable."
- Academic Misconduct
- All work turned in is expected to be your own, unless we
specifically ask you to work in teams. Unacknowledged
copying or using parts of someone else's program, even if it has been
modified by you, is plagiarism and is not acceptable! If
you have a tutor or helper from outside the course, that person may
not write any part of any program for you. The University has very clear
guidelines for academic misconduct and the staff of CSE143 will be
vigorous in enforcing them. We make use of very effective automated
tools for detecting similarities between homework solutions. Please
read carefully the CSE policies on these matters.
Violations of these rules will be referred to the appropriate University
authorities for disciplinary action. Not fun for anybody.
|
 |
Department of Computer Science & Engineering
University of Washington
[comments to cse143-webmaster]
|
|