CIT 591 Previous Announcements
Fall 2010, David Matuszek

Date Announcements
December 9, 2010

At last! A solution to getting the frog! I have posted a revised version of with these (and only these) changes:

  • Completely rewritten (and considerably more complicated) loadImage method. You should be able to just copy and paste this method into your program.
  • Two additional statements to import and java.awt.MediaTracker, which are needed by the loadImage method.

This improved method should allow you to load the frog images (1) on any platform, and (2) even if you put your program and the frog images into a jar file. It probably won't work if you are writing a JApplet instead of an application, though.

You should use the new, "improved" method even if the program works for you, because that will improve the chances that it will also work for me.

Oh, by the way--only load the images once. It takes milliseconds to load an image, so you don't want to do it every time the display changes!

December 8, 2010 Frogger was due Thursday, December 9. I don't want to interfere with the pizza party, and I'm not going to grade anything until Monday anyway, so it's now due Sunday midnight. (You may, of course, still turn it in by Thursday midnight if you like--I've even remembered to set up Blackboard to let you do so!)
December 8, 2010

And one evaluation form I missed:

December 7, 2010

Final Partner Evaluations:

Please fill these required forms out before Monday, December 13.
If you have not completed earlier evaluation forms, go to the Previous announcements page.

December 7, 2010

Pizza party!

Thursday, December 9, 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. An informal RSVP to would be appreciated.

November 30, 2010

Special MCIT lecture!

Frank O'Brien, author of The Apollo Guidance Computer, will be speaking in
Towne 337
6-8pm Thursday evening
December 2, 2010

Please come and join us for a fascinating look at the hardware and software that got us to the moon!. Everyone is welcome!

Also: The current CIT 591 assignment will be due Friday midnight.

November 30, 2010 One thing Eclipse doesn't know how to do (correctly) is to generate a test suite for JUnit 4 tests. See my JUnit slides for an example of how to write this test class.
November 30, 2010

Clarifications and corrections to Text Translator assignment:

Please name your classes as follows, with this capitalization: Identity, WrapLines, Detab, SingleSpace, HtmlToWiki, WikiToHtml, ZapGremlins. This is so we know how to call your classes from our JUnit tests. (Note: To rename a class in Eclipse, select the name of the class, then choose Refactor → Rename... and enter the new name. Eclipse will do exactly the right thing, everywhere it's needed!)

WrapLines: Lines should not end in spaces or tabs. If there are spaces or tabs ending in column 72, they should be discarded. If there are spaces or tabs starting in column 73, they should be discarded.

WrapLines: When a line is wrapped, the new line should begin with exactly the same whitespace (if any) as the previous line. If a long line begins with (for example) two tabs and a space, then the part that is wrapped should begin with two tabs and a space. If I told you something else when you asked me, I was mistaken--my apologies.

SingleSpace: I gave a bad example in the assignment. Pairs of newlines should be replaced with a single newline; single newlines should be left alone. So text\n\n\n\n\ntext should become text\n\n\ntext.

November 18, 2010 I won't be in my office today.
November 11, 2010 Thanksgiving is November 25. Unless someone insists, I will not hold class on November 24.
November 9, 2010 I will not have office hours today.
November 9, 2010

Many of you have been concerned about a poor grade on the midterm exam. As stated in class, if you do "better" on the final exam than on the midterm exam, I will count the midterm "less heavily." Here's what I mean by that.

  • "Doing better": Some exams are harder than others. The average score on the final exam might be 65, or it might be 85. For that reason, I always convert raw exam scores into Z scores, which tell me how well you did compared to the class average. If you got a poor grade on the midterm, "doing better" means getting closer to the class average.
  • "Less heavily": Ordinarily I count the midterm as 20% and the final as 30%. If you do better on the final exam, I will count the midterm as 10% and the final as 40%.
    • To the better students: This will not hurt your final grade. For one thing, this applies to everyone. For another, I don't have some fixed number of As and Bs to hand out; your final grade isn't based on how well you do compared to your classmates, but on how well you do compared to all the other students I have ever taught.
November 2, 2010 There are a couple of minor corrections in the 08-Battleship assignment, and one major one: You can use the getShipArray method wherever you need it.
November 1, 2010 Partner evaluation form for 07 Saddle Points.
Reminder: Filling out these forms is a course requirement; it is not optional.
November 1, 2010 I will not have office hours this Thursday, November 4.
October 27, 2010 To accomodate TCOM students who are having other midterm exams this week, the Saddle Points assignment is due before Midnight, October 31. For everybody. We will have a new assignment this Friday, as usual.
October 27, 2010 Partner evaluation form for 03 Three Musketeers
Partner evaluation form for 04 Squarelotrons
Partner evaluation form for 05 War (Card Game)
Partner evaluation form for 06 Hammurabi
October 26, 2010 Correction: In the Saddle Points assignment, only main should be static. Furthermore, it should be public static void main(String[] args).
October 20, 2010

If you are majoring in MCIT:

I am your advisor. This semester, and every semester, you will have a "hold" placed on your registration. You cannot register until you are advised by me. This is totally routine. Don't panic.

If you are full-time, taking CIT 591, CIT 592, and CIT 593 this semester, and you wish to take CIT 594, CIT 595, and CIT 596 next semester, you can just send me an email, and I will have the hold cleared.

If you are part-time, taking just CIT 591 this semester, and you wish to take just CIT 594 next semester, you can just send me an email, and I will have the hold cleared.

If you are doing, or planning to do, something unusual, you should probably talk to me about it. Of course, you are welcome to come and talk to me in any case, but if you're just taking the standard sequence of courses, you don't really need to.

If you are not majoring in MCIT, I am not your advisor, and you don't need to clear anything with me. If you want to take CIT 594 next semester, and it's okay with your advisor, it's okay with me.

October 16, 2010 Modification: Removed the unnecessary bushelsUsedAsSeed parameter from the harvest method.
October 14, 2010 Now posted:,
September 29, 2010 Now posted:,,,, and
September 28, 2010

Cracking the Coding Interview:
Advice for CS undergraduate and master's students on interviewing for software engineer positions

Gayle Laakmann
Thursday, September 30, 2010, 4:30pm, Heilmeier Hall Auditorium

I highly recommend Ms. Laakmann's talk for anyone interested in getting a job in the CS/IT field. If this doesn't describe you, you probably should skip this talk.

September 27, 2010 Instructions for uploading assignments to this year's Blackboard are at
September 16, 2010 I haven't written the next assignment yet, but I've decided it will use balanced ternary. Please look at this link before lab tomorrow.
September 15, 2010 As far as I know, all students registered by yesterday now have access to Blackboard. The course is listed there as CIS 591, not CIT 591, but everything seems to be working.
September 14, 2010 Some preliminary office hours have been posted (see below). Please be aware that times and locations may change; I will try to post any changes in advance.
September 14, 2010 I thought this was clear from the assignment, but some people are confused. The human should choose odd or even once, at the beginning of the game, not once per bet.
September 14, 2010 Blackboard is still screwed up. For everybody. It was supposed to be fixed by this morning, but it wasn't. Watch this space, and I'll tell you when it's supposed to be okay. After that, you can tell me if you can't get on.
September 13, 2010

Changes to the assignment:

  • You will win or lose the total amount bet.
    • Example: You each have 100, and you are the even player: You bet 10, the computer bets 2. You win 12. Now you have 112, the computer has 88.
    • Example: You each have 100, and you are the even player: You bet 1, the computer bets 2. You lose 3. Now you have 97, the computer has 103.
  • You are not allowed to bet more than (the amount you have plus  minus the maximum bet). In other words, you can't lose more than you have.
    • Example: You have 16 left. The maximum bet is 10. You may not bet more than 6 because, if you bet 7 and the opponent bets 10, and you lose, you can't pay the 17 you owe.
  • The game ends when either player has less than the maximum bet + 2.
    • Example: You have 12 left. The maximum bet is 10. You still have a choice: you can bet 1 or 2 (or zero, to quit). You can play.
    • Example: The maximum bet is 10. The computer has 11. The only possible thing for the computer to bet is 1. Since the computer has no choice, the game ends here.


  • In the assignment it says to ask the human whether to be odd or even. Please read in one of the words odd or even; don't make the human type in a number.
September 13, 2010 Please pardon me for not answering everyone individually. All students should have access to Blackboard by tomorrow.
September 11, 2010

Non-MCIT students: The good news is that now we have a lab. The bad news is, now that we have a lab, it's required.

Everybody who missed lab, here's what we did:

  • Got everyone started using Python and IDLE, and working through these warm-up exercises. (These are not to be turned in.) You should install Python on your own computer and try these.
  • Got people started on the Odds and Evens assignment that is due next Thursday.
September 10, 2010

Lab for MCIT students: Fridays at 3:00 in Moore 207.

Lab for non-MCIT students: Fridays at 4:30 in Moore 207.
     I have tried to contact everyone for whom I have a valid email address; please help spread the word.

September 1, 2010

Get my attention. When you send me email about this course, please:

  • For CIS554, put 591 as some part of the Subject:line. (I will see your mail anyway, but it may take a little longer.)
  • For general email about the MCIT program, put MCIT as part of the Subject:line.
  • Send plain text only (not HTML or RTF)
  • Do not include any attachments. Especially, do not include assignments!
  • Make sure your computer is virus-free.