Informatics 42 • Winter 2012 • David G. Kay • UC Irvine
Homework and Lab Assignments
We will have two kinds of assignments: Homework exercises, which you will do individually, and lab assignments, which you will (usually) do in pairs.
Homework exercises will be available on this web page, usually on Friday each week. These will consist of relatively short problems that will give each of you the opportunity to build your own skills, mostly in Python programming but also in other course topics. You will show your completed work to the TA, ideally during lab on Monday (but note the preliminary checking step described below). The TA will check off that you've completed the assignment, but the main point is that you become comfortable with the topics it covers and ask about anything you're not comfortable with (in class, in lab, by Email to firstname.lastname@example.org). It is completely fine for you to discuss these exercises with your classmates, but it is absolutely forbidden for you to copy down (on paper or electronically) another student's solution and submit it as your own. The whole reason for these exercises is for you to develop your own skill. If you don't, you won't be able to contribute to the lab assignments or succeed on the quizzes or exams.
There's one additional step before you can get your work checked off by the TA: First, you need to get it checked off by a classmate. In general, you should check the homework of your current lab partner, and he or she should check yours. If your answers and your checker's don't agree, you need to figure out why and resolve the discrepancy (by yourselves if possible, or with the TA's help); the resolution may be that both answers are acceptable, of course. This isn't exactly "pair homework," since you won't produce the work jointly, but it will give you both a point of common experience as you start your lab work. If the TA finds that significant errors remain in your work that aren't noted and acknowledged by the checker, the checker's name will be mud (that is, the checker will receive some unspecified kind of black mark, so it pays to take the checking seriously).
Lab assignments will be larger programming projects. We will have about six of them during the quarter. You will do them in pairs, following the usual pair programming instructions. You may not have the same partner twice, but each student may choose one assignment (after the first) to do alone as a "pair programming holiday." Be sure to check out the grading criteria for lab assignments. As always, it's best to choose a partner whose Python experience is at about the same level as your own.
We encourage students to talk with each other and help each other understand how to do the assignments, even beyond your pair-programming partners. Especially for language details, posting questions at piazza.com may be helpful. There are some limits, though. Everyone should re-read the guidelines for collaboration and independent work.