Saturday's West Michigan Day of .NET was another great event. I really enjoyed the facility at Davenport University. There were many places to sit and chat with people. Not that I did much other than go from one room to the next. But I'm getting ahead of myself. The weekend started with Dan Hounshell, Justin Kohnen and I heading up on Friday and picking up Mike Eaton along the way. We stayed at the Crowne Plaza where many people traveling from out of town stayed. After dinner with many of the speakers and organizers, I got a good night's sleep, unlike some of those traveling with me.
One reason I needed to get to sleep early was that I was speaking during the first session of the day. I gave my presentation on Pragmatic Software Architecture and the Role of the Architect. The room was very quiet, but I had a few questions and lots of head nodding, which is always a good sign that attendees are with you. And the room was almost full, which was great. After having done my latest WPF for Developers presentation sans bullet points, it was a little different to go back to a presentation with tons of bullet points, but I'm not sure I'm going to recreate it at this point.
After my presentation, I attended An Introduction to Boo and DSL from Jay Wren. As he said in his presentation, it seems like everyday we hear from someone else that we should be using DSLs, but nobody ever shows us how. He first talked a little about DSLs in general and a little about Boo. The meat of his presentation was showing how to create a simple DSL leveraging Boo. He used Rhino.DSL, which is available in source as part of the Rhino Tools project. I enjoyed the presentation and see a clear path to implementing a DSL if the need arises.
For the last session of the morning, I attended Mike Eaton's session LightReader - The Anatomy of a Silverlight Application. LightReader is a Silverlight 2 RSS reader that Mike started and put out on CodePlex, and his presentation described his development experience to date, including the current architecture and challenges he faced. Some of the interesting tidbits were that there is apparently no easy way to render HTML in Silverlight. And the TextBlock control does not allow you to copy text.
After a few slices of pizza for lunch, I saw Dan Hibbitts speak on Windows Mobile Tool-Chain Improvements for 2008. Since I don't do mobile development, I just got a flavor for what is available for mobile development in 2008, and a lot of the specifics went right over my head.
I next attended A Trip Around the Block with Rhino.Mocks from Steve Harman. He first talked about mock objects in general and discussed the various flavors of mocks, stubs, fakes, etc. Most of his presentation was showing how mocks (Rhino.Mocks in particular) are used to support testing in various open source projects. There was also a lot of interaction from attendees and discussion of various mocking frameworks and experience using mocking. He showed an interesting Specification base class he uses for testing that encapsulates some of the mechanics required to use Rhino.Mocks and helps support BDD.
In the last session of the day, I saw James Bender talk about Reliable Messaging in WCF. It was a great way to end the day. I've been working with WCF quite a bit recently, but I haven't really paid much attention to reliable messaging, because I haven't needed it. So his presentation was good summary of why I might want to use reliable messaging, and how to go about it if I need to. He had a slide deck with lots of illustrations and great animations to help show messages going from clients to services. I also picked up a couple WCF tips.
To round off the day, I won a copy of Pro WPF with VB 2008: Windows Presentation Foundation with .NET 3.5 (Pro), which was great since I enjoyed the previous version of the book and have been doing a WPF presentation where I talk about the book. So now I can actually say something about it other than I haven't seen it.
If it sounds like a great day, it was. If you get a chance, I recommend that you attend a Day of .NET or Code Camp near you. Or even if you have to drive a bit. The Cleveland Day of .NET is coming up this Saturday May 17. I'll be speaking on WPF for Developers and there will be a lot of great presentations. I hope to see you there.