ICS 33 Summer 2013
Course News

Check back here every day or so. I will generally post important coursewide announcements here. They will be listed in reverse-chronological order (i.e., newest items first).

Date Added News Item
M 9/2 The final course grades are now available.
Th 8/22 An estimate of the remaining lecture Schedule is now available.
W 8/21 A set of sanity-checking unit tests for your LinkedList and Queue classes has been added to Project #4.
Tu 8/20 One new code example is now available, along with a Schedule update.
M 8/12 Project #4 is now available. Note that there will not be a fifth project — I'd rather have you be able to spend longer on this project and wrap it up early enough to have time to study for the final in mid-Week 10 — so this change has been noted in the Course Reference.
W 8/7 A set of "sanity-check" tests has been included in Project #3. You can use these tests to verify that your lotterysets module has everything it's supposed to have (i.e., functions and methods have names that are spelled correctly, etc.). See the new section of the Project #3 write-up titled Sanity-checking your 'lotteryset' module for more details and a link to the test module.
W 8/7 A new code example is now available, along with a Schedule update.
Tu 7/30 Project #3 is now available.
Tu 7/23 A small but important update was made to the inheritance code example. I had inadvertantly swapped the terms superclass and subclass when defining them; that's been fixed.
Th 7/18 The code example from the inheritance lectures is now available.
W 7/17 A minor bug was found in the example Bumpkin interpreter. The IF statement had been implemented to expect the == operator to be used to check for equality, but Bumpkin uses = (a single equals sign) instead. That's now been fixed.
M 7/15 A detailed code example showing a step-by-step test-driven development process and the use of the unittest module in the Python standard library is now available.
Th 7/11 An example Bumpkin interpreter that runs in your browser is now available, so you can experiment with the language and become comfortable with it as you proceed with Project #2.
W 7/10 Project #2 is now available.
Su 7/7 The due date for Project #1 has been postponed until Wednesday, July 10 at 11:59pm, opening up Tuesday's lab section for those of you who want to ask more questions before completing your work.
W 7/3 The code example we completed in yesterday's lecture is now available.
Tu 7/2 I've added a new error message to the PURCHASE and PAYMENT commands in Project #1. Based on the documentation, both of these commands are expected to fail when given a nonpositive (i.e., zero or negative) amount, but I had no error message to express that scenario. So I added a NONPOSITIVE_AMOUNT error message to both commands.
Tu 7/2 My office hours have been scheduled for Tuesdays and Thursdays from 7:30-9:15pm in PSCB 120 (the same room where our lecture meets).
Th 6/27 Project #1 is now available, along with a Schedule update.
Tu 6/25 I've made a minor adjustment to the Schedule. It seems I had the calendar dates wrong starting at about Week 5, which led me to quote the wrong dates for the Midterm and Final Exams in lecture this afternoon. This has been adjusted to match my original intent.
M 6/24

Welcome! Please note a couple of things as we get started this quarter:

  • The first lecture will meet on Tuesday, June 25. Lab sections will begin meeting on Thursday, June 27. For more information about meeting times of lab sections, see the Course Reference. For information about lecture material and readings, see the Schedule.
  • I encourage you to spend some time reading through the material on the course web site. It will be updated periodically throughout the quarter, and there will always be an announcement here describing each update. For now, notice the set of links at the top of this (and every) page, leading you to the Course Reference, the Schedule, and the Project Guide, as well as a set of Code Examples — mostly emanating from the lectures — that will be posted throughout the quarter.
  • For those of you planning on using your own machines for at least some of your work — and who didn't take ICS 32 with me previously — it might be worth spending some time working through Assignment #0, which provides instructions on getting the necessary software installed and configured. (Read the Project Guide page first, for some context on the necessary software and some background on what we're going to be doing.)