CS302 Information Sheet
Lectures 15 & 18, Fall 2003
The Basics
Instructor: Lisa Torrey Class times: (15) TR 11-12:15, (18) TR 1-2:15
Office: 1306 Computer Sciences Classroom: (15) 379 Noland, (18) 1263 CSS
Office phone:
262-6601 Office Hours:
Email: ltorrey@cs.wisc.edu Lab Hours:
Lecture homepage: http://www.cs.wisc.edu/~ltorrey/cs302/main.html
Overall CS302 website: http://www.cs.wisc.edu/~cs302/cs302.html
Description
CS302 is
an introductory programming class. It will teach you to design, write, and use
computer programs. Specifically, it will teach an approach called
object-oriented programming, using an object-oriented language called Java. The
emphasis will be not only on how to write programs that work, but also on how to
design them using a good programming style. This course is intended to prepare
students for later Computer Science courses.
The
prerequisites are problem solving skills, like those used in logic, advanced
algebra, and statistics. No programming knowledge is required, and only basic
computer skills are assumed (i.e., how to use a web browser, how to send and
receive email, and a familiarity with the Windows operating system). CS302 is
open to freshmen.
This will be a very challenging course. It will require students to develop
strong problem solving skills and to take considerable time outside of class.
Texts
·
Required text: An
Introduction to Object-Oriented Programming with Java, by C. Thomas Wu.
·
Required online tool: Codelab, at http://www.turingscraft.com, which costs about $30. You will get
instructions on how to purchase and register for CodeLab later.
Coursework
·
Short readings will be assigned from your Java book to show
you another approach to the concepts.
·
Short online CodeLab exercises will correspond with each
chapter as we go through the book.
·
Large programming assignments will incorporate all of the
concepts and skills that you learn. These will require a substantial time commitment
outside of class.
·
Three exams spaced throughout the semester will rigorously
test your individual understanding of the material.
Exam Schedule
This is not negotiable. Makeups are only given for verifiable
emergencies. If you have a conflict,
either resolve it or contact your instructor immediately. These are the times:
·
Midterm 1: Tuesday
2/24, 5 – 7pm
·
Midterm 2: Thursday
4/8, 5 - 7pm
·
Final exam:
Wednesday 5/12, 5:05–7:05pm
Grading
CodeLab /Class participation……………………. 10%
Programming Assignments……………………… 15%
Exams……………………………………………. 75%
Policies
·
Coursework
Extensions: On a
programming assignment (but not on a CodeLab), you may receive an extension if
you ask for one at least 3 days before the due date and you have a good reason, such as
prolonged illness. Unless there is a
verifiable emergency, you will receive no credit for any assignment turned in
late.
·
Attendance: Missing lectures is a good way to
miss deadlines and do very poorly on exams.
If you have to miss a class, make sure you get all the information from
someone.
·
Collaboration: On a programming assignment (but not on a
CodeLab), you may collaborate with one other student if you get written permission from the
instructor first. With this permission,
two students may share code with each other and work on code together. Without it you can discuss general
programming rules, concepts covered in class, and the meanings of error
messages with other students and TAs, but you may not look at or copy anyone’s
code or let anyone look at or copy yours. Be
forewarned: the lessons and assignments are
intended to give you the practice necessary to understand the course material.
We grade you primarily on your individual performance on the exams, and you
will only do well on those if you have done the work yourself and understand it
thoroughly. Go to one of the course websites and find the Collaboration Policy
Page to find out more, or to get the collaboration permission form.
Computer Labs
There are
four labs full of Windows 2000 computers in the Computer Science building,
which you may use to work on your assignments.
They are open from 7am to 1am every day. The labs are:
·
Rooms 1351, 1355, and 1370 on the first floor
·
Room B240 in the basement
There
will be lab consultants in these labs during the most popular hours to help you
with technical and programming problems.
Feel free to ask them questions, but please don’t try to monopolize
their time, and definitely don’t expect them to do your work for you. If you believe that you need more help than
a lab consultant can reasonably provide, contact the instructor either by email
or by going to office hours.