Ann Arbor Day of .Net Recap

This is a week late….it seems like lately the only NOT late has been things I had to do for work.  Apparently my 22 month old is more on the ball than I am as he already has Mother’s Day cards in the mail for his Grandmothers (I think he had help). 

Last weekend my wife, son and I drove up to Ann Arbor after work on Friday.  I was dropped off in the morning at the Day of .Net and the rest of the family went to the Hands on Science Museum (which sounded really cool).  I spent the day “geeking” and they had a good time as well.  I think that turned out to be a win-win.  Other than the incredibly grumpy 22-month old it was a good trip.

The event had four tracks with five sessions each.  They also had two vendor session periods which I thought was really a good idea.  Here’s what I went to:

Session One: Architecting for the User Experience: Josh Holmes.  Josh is an Architect Evangelist with Microsoft and has been starting up the ArcReady events in the Heartland region.  The talk was pretty good and hit on some good points.  He also shared a SilverLight demo that was pretty eye opening and talked a good deal about the announcements made the previous week at MIX 07.

Session Two: Hardcore Reflection: Dustin Campbell.  Dustin spoke at the Cincinnati/Dayton area Code Camp this last March and I didn’t get a chance to see him.  He had some really great reviews from people at the code camp so I had to hit this session.  It wasn’t a disappointment. He showed how Reflection got a bad rap in the 1.x framework and the improvements in the 2.0 framework.  He also showed how to code anonymous methods (generating IL code on the fly), which was really cool. 

Vendor Session 1: I skipped this vendor session.

Session Three: SQL Server Compact Edition: Nino Benvenuti.  I’ve known Nino for going on seven years now.  We worked together at GA Sullivan (which later was sucked into Avanade) and he is a Director for the user group.  Nino gave a great talk on what I think is a very undervalued technology.  This lightweight in-process database option is an excellent option for small, single user desktop applications.  The fact that you can leverage it across mobile devices and the desktop is also a plus.  If I was writing shrink-wrapped desktop applications this is what I would be looking to store my data in.  It was a very good overview.

Session Four: Multi-threading in Windows Forms Application: Patrick Steele.  This was a good presentation on the basics of threading in winforms.  He gave a good example of why processing on the UI thread can lead to some unresponsive applications.  He also showed how just using tricks like “DoEvents” may not help you out all that much.  I was hoping that they had come up with some better thread synchronization options in 2.0 that I wasn’t aware of, but that doesn’t seem to be the case.

Vendor Session 2: DevExpress- Refactor!  At the code camp Dustin had showed me CodeRush and Refactor! a bit and I wanted to catch more on it.  Mark Miller (of Monday’s notoriety - adultish material warning in that podcast) gave the demo.  Between Dustin and Mark I was won over and I’ve downloaded the trial versions to see if it works for me or not.

Session Five: Building and Deploying Smart Client Applications.  Keith Elder.  Since I’m working on a smart client application for work I decided to check this session out.  I was specifically interested in the Click Once deployment.  Unfortunately there was a technical issue when Keith accidentally kicked the power plug out of the floor and the projector died.  Keith was definitely an entertaining presenter, and I gleaned what I needed about Click Once despite the projector issues.

I saw several of the guys from Code Camp (such as Darrell Hawley, Jason Follas, Dustin Campbell, Brian Sherwin, Joe Wirtley and Nino.  I also caught up with Justin Kohnen, Brian Prince, James Bender, and Dan Hounshell. (wow, that’s a lot of links)

All in all it was a good day.  I’ll probably look into making the trip again next year.  Darrell, Jason and the rest of the folks did a great job with it.

[Edit-5/12: Corrected “Jim” Holmes to Josh Holmes…..sorry about that guys.]