Programmming Projects


[Homepage] | [Lab Info] | [FAQ's] | [Supplements] | [Programmming Projects] | [Exams]

Pair Programming

All students are expected to work with a partner on the programming projects for this class. You should also work with a partner on the in-lab exercises for CMPS12L. To learn a about pair programming please read All I Really Need to Know about Pair Programming I Learned In Kindergarten.

In the opening comment section of your program be sure and include a "pair programming log" following this template:

/*
  This program was completed using pair programming by me
  (PUT YOUR NAME HERE) and my partner (PUT YOUR PARTNER'S NAME HERE).
  I acknowledge that each partner in a programming pair should "drive"
  roughly 50% of the time the pair is working together, and at most 25%
  of an individual's effort for an assignment should be spent working
  alone. Any work done by a solitary programmer must be reviewed by the
  partner. The object is to work together, learning from each other, not
  to divide the work into two pieces with each partner working on a
  different piece.
  I spent ______ HOURS working alone.
  I spent ______ HOURS working with my partner on this assignment.
  I estimate that of the time spent with my partner, I "drove" _____
  PERCENT of the time. 

  Put any comment or explanation about variations from the 
  expected pair programming practice here. E.g. if you didn't complete
  the assignment with your partner, this is the place to explain why
  not. 
*/

/**
 * Assignment #1.
 * This program generates anagrams...
 * 
 * Authors: Charlie McDowell (mcdowell@ucsc.edu) 
 *          and Jane Programmer (jprogrammer@ucsc.edu)
 */

Failure to include a proper log will result in a 5 point penalty for that submission and you will lose another 5 points if it doesn't also describe what the program does and include both partner's names (see the grading breakdown below).

You should also read the pair progamming guidelines and policy for the class. This explains what is considered to be acceptable pair programming and what to do if you have problems with your partner.

Programming Assignments

Grading of Individual Projects

You must follow the programming style guidelines listed here.

Late policy: 1 minute to 1 week late is minus 10 points. After 1 week it will not be accepted.

Be advised that WebCT can sometimes get rather slow near a deadline, when many students are trying to submit. If you have a working program and are just "touching up the style" or doing some final testing, go ahead and submit it. You can always resubmit up to the deadline without any penalty, but if it gets too busy and you fail to submit in the last 5 minutes before a deadline, then you missed the deadline (like getting stuck in traffic - plan ahead and leave enough time).

Grading Breakdown

Programs will be graded both on corrrectness and style (see the class style guidelines). Every program starts out with 100 points. Points are deducted as follows. Correctness/Functionality (maximum deduction 50 points): See individual project descriptions for correctness point details.

Style (maximum deduction 50 points total, 10 points for any one category): Note that some of the following refer to language constructs you will be learning about during this course. If a style requirement mentions a language construct that you don't know about (e.g. "break") feel free to ignore it until it comes up in class. You will be responsible for following all that refer to topics covered prior to the due date of a particular assignment. If you aren't sure if an item will apply to a particular assignment, it will never hurt to ask. In general the items are listed in the order you can expect to have them apply.


[Homepage] | [Lab Info] | [TA's & Tutors] | [FAQ's] | [Supplements] | [Programmming Projects] | [Exams]

This page maintained by Charlie McDowell Email regarding this site.