CIT 591 Previous Announcements
Fall 2008, David Matuszek

Somewhat relevant link: Book recommendation.

Irrelevant but important link: The Annenberg Political Fact Check is a project of the Annenberg Public Policy Center of the University of Pennsylvania.

Irrelevant but interesting link: Does Ideology Trump Facts?

Date Announcements
December 3, 2008 Evaluation form for 11 Snake Game (Due Monday, December 8)
November 26, 2008

Not getting key events? Here's the solution.

As you use a GUI, different components get the "focus." The element with the focus is the one that gets the key events. For example, if you have several buttons, hitting the Tab key will move focus from one button to another; then hitting Enter will "click" that button.

If the key listener for your Snake game isn't getting keystroke events, that probably means some other component (maybe your Play button) is getting those events. You have to tell your component, the one that you want to listen for key events, to requestFocus(). You may have to do this in more than one place, if there is a way for your component to lose the focus to some other component.

November 23, 2008 Here is another way to do the Bouncing Ball.
November 21, 2008 In case you would like a fully working example of an animation program to use as a model for your own code, but in a more convenient form than in my Animation PowerPoint presentation, I have converted the Bouncing Ball from an applet to an application, and posted the code on a web page.
November 21, 2008

The next two evaluation forms are ready, due by next Wednesday.

November 20, 2008 I have posted some additional notes about the Drake equation assignment.
November 19, 2008 Because a number of people scored badly on one assignment or another (usually the Playfair Cipher), I am providing a makeup assignment. This is not a required assignment; if you do it, your grade on it will replace the lowest grade you got on one of the assignments 1 through 9. It cannot be used to replace your grade on Drake's Equation or on the final assignment.

This assignment is to be done individually, that is, without a partner.
November 14, 2008 I've re-posted the Drakes Equation assignment with the clarifications mentioned in lab. This includes a brief added section on handling exceptions.
November 13, 2008 Yet more Notes regarding the text translator assignment. All are intended as clarifications (mostly in response to questions I've received); none are intended as new requirements.
November 12, 2008

The next two evaluation forms are ready, due by next Wednesday.

November 7, 2008 I've posted some Notes regarding the text translator assignment.
November 6, 2008 I have replaced the file with a more "forgiving" one.
November 2, 2008 I've posted some Notes regarding the balanced ternary calculator assignment.
October 27, 2008

Here is the next evaluation form, due by this Friday:

Here are the older ones, due this Wednesday:

October 24, 2008 Two corrections to the Balanced Ternary Assignment -- fortunately, both minor. Because the intent is to override existing methods, the signatures for equals and compareTo should be:
     public boolean equals(Object o)
     public int compareTo(Object o)
Inside each method, you can just do a cast:
     BalancedTernary number = (BalancedTernary) o;

Incidentally, it is a good idea to put @Override in front of each of these methods.
October 24, 2008

First MCIT talk of the year!

Rebecca Mercuri will talk on How Computers Will Steal the 2008 Election!
Tuesday, October 28, 7 p.m.
Wu & Chen Auditorium, Levine Hall

If you care about voting (whether in this country or some other), this is a talk you should attend!

October 22, 2008 To simplify JUnit testing (both mine and yours), please include an additional constructor in the WordCounter class.

The previously defined constructor took no parameters:

public WordCounter() {
    // Call loadFile to read in a list of stop words
    // Call loadFile to read in the text containing words to be counted
    // Either save these lists somewhere OR call a method to count things

The new constructor takes these two parameters, in this order:

public WordCounter(ArrayList<String> stopWords, ArrayList<String> text) {
    // Either save these lists somewhere OR call a method to count things

This second constructor allows you to test everything without having to read in files. This is a big help, because your JUnit tests can be self-contained; you don't need to keep the JUnit tests in perfect agreement with the test files.

October 22, 2008

Assignment Partner Evaluation Forms. I will be requiring you to evaluate your partner for each assignment, starting with the previous three assignments. Whatever you put in these forms will be completely confidential; no one but me will know what is in them.

I will use this data to aid me in assigning partners. In addition, if you have very high or very low partnership scores, this may affect your final grade.

Turn these three evaluations in by Wednesday, October 29. Each completed evaluation you turn in by that date will count as 10 points toward your total programming score. Evaluations turned in late will be worth 5 points each.

October 22, 2008

Pizza and hoagie party!

Wednesday, October 22 , 6 p.m.
Levine 307

Who is invited: All current and former MCIT students and faculty, and students taking MCIT classes. OK to bring a guest.

October 21, 2008 If you did badly on the Name That Number! assignment because your program failed many of the JUnit tests, you have an opportunity to make up most of the points lost for that reason, by doing a Number Namer Makeup Assignment.
October 20, 2008 Word rank for the CountWords assignment: Words with equal rank may be in either order. For example, in "To be, or not to be...", the counts are: (to, 2; be, 2; or, 1; not, 1), and any of the following are equally acceptable:
  1. to
  2. be
  3. or
  4. not
  1. to
  2. be
  3. not
  4. or
  1. be
  2. to
  3. or
  4. not
  1. be
  2. to
  3. not
  4. or
October 14, 2008

Please keep your calendars free for:

  • Wednesday, October 22, 6 p.m.
    Monday, October 20 (couldn't get a room for Monday) -- Probable pizza/hoagie party

    We will have the usual Monday 4:30 help session in DRL 3C6.

  • Tuesday, October 28 -- First MCIT lecture -- Computers and electronic voting machines
October 14, 2008 I've posted my solutions for some of the assignments. See the Example examples below.
October 14, 2008 Today's midterm review session at 4:30 will be in Moore 216.
October 9, 2008 I have posted some clarifications to the PlayfairCipher assignment. There is nothing new in this page that isn't already detailed in the starter code, except possibly a short list of constructors and methods that you do not have to JUnit test.
October 7, 2008 My apologies to anyone who came to today's "help session" that didn't happen. I was stuck at home dealing with some movers, and forgot to post that I wouldn't be on campus today.
September 30, 2008 When you make the window larger, nothing gets drawn in the extra area. I have found a fix for this and posted it at the bottom of the additional information page.
September 29, 2008 Note that we now have permanent rooms (listed below) for the help sessions. Mondays, DRL 3C6; Tuesdays, Moore 212.
September 27, 2008

Pizza and hoagie party!

Tuesday, September 30, 6 p.m.
Levine 315

Who is invited: All current and former MCIT students and faculty, and students taking MCIT classes. OK to bring a guest.

September 27, 2008 I have posted some additional information about the RandomActivity assignment.
September 23, 2008 Some office hours have changed.
September 23, 2008 We may have Moore 212, have David Rittenhouse Labs 12:00-1:30, available for novice help sessions Tuesdays. (This is dependent on the information in the system being up to date.) I'll be there today, and if the room is free and people show up, we'll have another help session.
September 22, 2008 Error in example! I said that
Today is September 19, 2008.
should be translated to
Today is September nineteen, two thousand eight.

However, since each of these numbers ends with punctuation, neither one will be recognized by hasNextInt() or nextInt(). That means you don't translate them. You only need to translate numbers bounded by whitespace, as in:
Today is September 19 2008
September 18, 2008

Things to check in your LunarLander program:

  • Can you play more than one game?
  • Can you play more than two games?
  • When you ask the user whether s/he wants to play again,
    • Do you accept (and do the correct thing with) any input that begins with 'y', 'Y', 'n', or 'N'?
    • If the user types something else, do you keep asking until you get one of the above?
  • Do you let the user burn more fuel than you actually have?
  • If the user asks to burn more fuel than you have, do you burn all and only the amount that remains?
  • When you land safely, is the altitude reported as zero?

All these things are in the assignment. Please re-read the assignment carefully before you turn in your program.

August 26, 2008 The Registrar's Page incorrectly states that we have a "recitation" in Towne 309 on Fridays, 3:00-4:30. The time is right, but it's a lab, and it's in Moore 207.