Home
Teaching
 
CS U213 Fl '07
General
Texts
Syllabus
Assignments
Communication
Labs
Ofc Hrs
Announcements
Advice

General Information

People:

Instructor:
Viera Proulx

Teaching Assistant: Dimitris Vardoulakis

Tutor: Erin McLaughlin

Everyone on the course staff is available for consultations to every student.

Class:

Course lecture times and location:
MoWTh 4:30 pm - 5:40 pmin room 320 BK
You must attend lectures on a regular basis.

Lectures are really just interactive group learning sessions. You must bring paper and a pencil or a pen, so you can work out the questions posed during the lecture. No laptops are allowed to be used during the lectures.

Labs: The lab CS U214 is an integral part of the course. The labs start on Thursday, September 6 and meet in 212 WVH. You must attend all labs. The purpose of labs is to give you some hands-on experience with the actual tools, and to illustrate some of the principles from the lectures with hands-on examples. You must finish all the lab work - at home, if you do not have enough time during the lab hours.

Computing Environment: You will do your assignments initially using ProfessorJ languages within the DrScheme (v. 371) programming environment. Some assignments will require the use of additional Java classes that will be available to you. You may install the DrScheme on your computer at home and work there.

During the second half of the semester we will use Eclipse IDE with full Java language. Optionally, you may choose to use another IDE (e.g. NetBeans) or work directly from the command line.

Assignments: There will be a problem set each week, comprised of two parts. The first part will be a series of practice problems (etudes) that every students must be able to solve. You will work on these problems on your own, and keep the solutions in an electronic portfolio. You may ask to have an informal portfolio review at any time during the semester - to make sure you are doing well. However, there will be a formal review of the portfolio (with assigned grade) twice during the semester - before each exam.

In the second part of the problem set you will apply the concepts and techniques to a new situation. This part will be done with a partner and will be graded on a weekly basis. We will drop the worst homework grade from consideration for the final grade. You may therefore choose to skip one homework set; we'll just assign a zero (0) for this homework.

Due Date: Wednesdays at 10:00 pm, unless otherwise specified.

We will not accept late homework.

Getting Credit for Assignments: There will be a simple quiz each week, given in the lab the day after you have submitted your homework. It will be graded only on a pass/fail basis. The goal of the quiz is to determine that you have worked on the homework set (both the portfolio problems and the problems set that is handed in) and understand the basic concepts in this problem set.

You must pass the quiz to get the credit for the corresponding homework.

If you fail a quiz, you must see the TA as soon as possible to go over the quiz and review the concepts you may not understand.

Pair Programming: You must work on your homework problems in pairs. You will be assigned a homework partner during the first lab. Homework pairs will change several times during the semester.

Pair programming means that you and your partner study the problem sets individually and possibly even sketch out solutions. Then you meet and jointly develop solutions to each problem. One of you--the driver--types, and the other one--the co-pilot--looks over the driver's shoulder. When something isn't clear, it is the co-driver's responsibility to question the approach. You must switch roles during such a problem solving session.

Every partner must be able to solve every homework problem in the end.

Read All I Really Need to Know About Pair Programming I Learned in Kindergarten before the first lab.

Warning: You must be able to solve every homework problem on your own.

Are you sure you have read the warning?

You are free to collaborate at will with others on the problem sets. If you do so, you must acknowledge all collaborators on your cover page. Failure to do so may result in reductions of your homework grade.

Portfolio: You should keep a neat record of all your work in the form of an electronic portfolio. It should be organized as follows:

  1. Cover web page with your name, course name, and links to the directories listed below.
  2. an electronic journal that records your reading, work done on problem sets, and the meetings with your partner
  3. a directory/folder for the etudes with a web page listing the contents
  4. a directory/folder for the graded problem sets with a web page listing the contents
  5. a directory/folder for the lab projects with a web page listing the contents
  6. optionally, a directory/folder in which you keep copies of any other programs you have written while studying for the course.

You are required to finish every lab, even if you did not have the time to finish it during the lab time.

We will review and grade your portfolios twice during the semester. The first review will be during October 3 - 5, the second one during November 19 - 20.

Exams: We will have two three hour exams to assess your progress. The exams will take place on October 10, 6-9pm, and on November 28, 6-9pm. The first exam will take place in the room TBA.

The exams will test material similar to that assigned in weekly homeworks. You will take the exams by yourself. Collaboration is not tolerated. If you make sure that you can do every the homework problem on your own, the exams will be easy. If not, you will probably have a difficult time with the exams.

Grades: You will get a grade for your homework and a grade for your exams. Both must be passing grades; otherwise you cannot pass the course. For the final grade, we will assign a weight of 25% to the homework grade, a weight of 60% to the two exams, and 10% for the portfolio review and class participation. The remaining 5% are up to the instructors' whim.


last updated on Mon Sep 10 12:18:31 EDT 2007generated with PLT Scheme