Tuesday, May 1, 2007

I can be nice when you play with me

I really like the way you all decided to work during the lab time today. I can't help but think that many of you wouldn't be so far behind if you had been that aggressive a month ago. However, I am so pleased by today that I'm giving a small gift. Instead of everything being do by Thursday's class, I'll give you until Friday at midnight!

Good luck and keep asking questions!

Thursday, April 19, 2007

What a State of Affairs!

Again, you all played nicely with state machines today. They are a significantly different strategy for designing a system and take some getting used to. Thanks for sticking with the details and not getting too frustrated.

I really wish the book's example was more consistent because state machines can be a very disciplined way to specify the behavior of many kinds of systems. As with all techniques, when we build the machine inconsistently, the resulting code also has inconsistencies. If you're going to use them, just be consistent about what is an input, what is an action, and whether you're building a Mealy or a Moore machine.

I was also pleased with how quickly you saw two important concepts: the tight coupling in the book's solution and how our solution exactly matches the strategy pattern. You all are getting VERY good at this. I see some significant improvement in your ability to evaluate designs and make good generalizations and that makes me very happy!

Thursday, April 12, 2007

Today was fun!

I really enjoyed working with all of you running through the GA today. Maybe we should have done all of that the first day that we talked about the project. Or maybe it was good that you thought about it a bit first (I'm an optimist - I believe you have all been thinking about the stuff that you're supposed to be working on! ).

Any way, thanks for playing with me. I hope that it cleared up some of the details for you.

Wednesday, March 21, 2007

I'm all better now

I'm quite relieved since we eliminated the deadlines. I was laying awake at night trying to figure out how to make you get started. Now that I've decided that's really your responsibility (which it probably was all along :) ), I'm feeling much better.

I have almost completed the changes to breakout and I think you'll find that to be an interesting project. As I said in class, don't bring all of the tests into your project at once - that'll overwhelm you pretty quickly. I'll try to come up with a recommendation on what order to start them in to help with that.

As always, if you have questions or are having difficulty with something (like figuring out how to start the paper), ASK ME FOR HELP! That way we'll all sleep better.

Monday, March 12, 2007

Spring Break?

I have to admit that I'm sitting at home during Spring Break worried about the work you all have to do. No one has given me a draft of a factory pattern paper to review, so I can only assume that you all are working on them during your break. Also, we have a lab that is supposed to be done the first week we get back.

I'm not sure if there is something I should do about this or any way I can help, but I am concerned. Should I delay one of the deadlines? I could do that, but I think we need to continue to make progress, too. Would that just let you pile things up to a later date or would it help you do a better job?

I could use some suggestions!

Tuesday, February 27, 2007

Command Pattern

First, the test. I was pleased with how you did. While the averages on my tests are usually lower, I think I asked the questions that mattered and you all just did well. That's a good thing! I was only kidding about making things trickier!

Second, the class. Things seemed Ok to me today. I think the command pattern is pretty straight forward and the example in the book is better than most because it seems more realistic. Most of you seemed to be with me; we'll see if that's true when you work on the lab.

Third, the paper. I would like to see your drafts before break, but I do have email over break and will give at least some feedback whenever you give it to me. I just don't promise to be as available over break as I usually am! I still think you've never written a paper like this, so expecting to do it well without any feedback is naive. I'd really prefer to help you than to have to grade incomplete papers.

Wednesday, February 21, 2007

Singleton

Boy, the Singleton lecture was fun! You all did a great job with the dining philosophers game. It's interesting to me how many different variations of solutions students come up with for that problem. For this class, the details of that problem are irrelevant; my goal in playing the game was for you to see the devious scheduler and I think we achieved that goal very well.

When we went into the various options for Singleton implementations, more of you were participating than ever before and, more than any class I've ever had, you seemed able to spot the places where the devious scheduler could rear it's ugly head. In previous classes, the double checked locking examples have always confused everyone and making them see why you need two conditionals was a terrific challenge. This time, you were right with me!

At this point, I'd say at least three quarters of you are actively participating in class and are really thinking about what we're doing and where we're going. That's a HUGE improvement from where we started the year and I'm really impressed with you. With those skills, we'll have some fascinating discussions as we get into the more complex patterns.

Obviously, I think Singleton went well. However, if you have questions, please ask them. We aren't going to do a Singleton lab (we have an exam and it'd be pretty trivial), but I think you'll see one in our big project.

If you have questions about the exam, I'll be on line most of tonight and I'll be in my office early (7ish) tomorrow morning!