Rain this morning. I hope this clears up before the concert at Fenway tonight. I'm jazzed about seeing Train perform.
Yesterday afternoon was increadably productive. I attended a session on Developing Custom Process Templates, Work Item Types and Policies by Kevin Kelly. This session was similar to the presentation by Dennis Minium at Tech Ed 05, but Kevin had some new content when he got the the demos.
Next, I attended a BOF called "Enhance Your Business and Professional Life By Getting The Most Out of the Local Developer Community". This session totally exceeded my expectations. The facilitators did an excellent job of correcting my thinking about my user group. The take-away quote was "running a user group has nothing to do with coding." The moderators had plenty of tips about how to get people involved in the group, how to vary the agenda, and how to focus on the community building aspects first with technology placing a far second.
My final session of the day was the best so far, and that is saying a lot. I have found my guru for deploying Team Foundation Server and his name is Sam Guckenheimer. Sam refers to himself as a coach, but I will be following his sage nuggets of wisdom like a devotee to his master.
Sam gave me a copy of his book, and I read the first 20 pages last night. This is the guide I intend to use for our road ahead. The key piece of wisdom he gave me at the end of his session on "Using Metrics to Manage and Troubleshoot Your Projects" was this: "The heart of CMMi is process improvement." Sam totally understood the dissonance between developers trying to implement functionality in an iterative manner, and auditors focused on building to spec.
One of the biggest additions to my understanding of TFS at this conference has been the clarifying the difference between the map and the territory. The spec is a map. The MS Project file is a map. These are maps of where we want to go, but the model needs to reflect reality. With all the rich access to metrics provided by TFS, we can get a clear picture of the territory and adjust our maps to reflect reality.
++Alan
[Update] The rain has cleared off, so the concert should be lots of fun.
My first session today was with Rocky Lhotka. Rocky was actually very kind to datasets, and didn't harp on the lack of encapsulation. He showed the advantages of isolating code in partial classes in .NET 2.0. Of course, this being a Rocky Lhotka session, the ultimate solution was shown to be CSLA.NET. I asked Rocky if his objects implemented the correct behavior when the user presses the escape key, and he responded that they do. When he pressed the escape key, the expected behavior didn't happen. I'm glad to know that these situations still happen to someone of Rocky's stature and experience.
I ate lunch with members of the MOM team, and asked them many questions about connecting MOM and TFS. They pointed me to AVIcode. I found the AVIcode booth, and talked with them. I'll be exploring the resources on their website more upon my return.
I have been haunting the PowerShell booth trying to catch up with /\/\o\/\/. I went to talk to members of the Visual Studio team about the possiblity of a PowerShell add-in for VS. They've never heard of PowerShell! They gave me some good tips on how to follow up through the forums and the feedback site.
While I was talking to a member of the VS team, I asked him about the future of Windows Forms, and he introduced me to CrossBow. This is exactly the kind of solution I like to see Microsoft producing. My existing code is not made obsolute by a new presentation technology. Windows Forms lives!
Probably my last session for today was "Visual Studio 2005 Team System and Microsoft Solution Framework: Implementing an Agile or CMMI Process" with Randy Miller. This was one of my "must attend" sessions. My challenges in deploying TFS at this point all revolve around how to make use of the MSF guidance and templates. Randy gave us the model behind MSF, and offered to email chapters of his MSF book as he writes them. This was an important session for me.
Upon returning to the Technical Learning Center, I made another stab at talking to someone on the Visual Studio team about PowerShell. I spoke to Kit George, a Program Manager on the CLR Team, and he had never heard of PowerShell! He gave me his card, and told me he would follow up on this if I eamil him.
The capstone of the day (so far) was some quality time with Sam Guckenheimer. I sat down with Sam and reviewed a workflow diagram I made after gathering requirements from my QA department. Sam had some excellent feedback, and thought through the problem fully. I made notes to share with my team upon my return. Sam rocks!
I would be remiss if I did not mention the embarassing situation I went through trying to demo problems I was having with notifications to a member of the VSTS team. He let me use his laptop to remote into my work desktop and demonstrate the problem. The real problem turned out to be that the problem no longer exists! I apparantly had not tried the subscription feature since Beta 3. When it didn't work, I filed it as an issue in need of further investigation. The Microsoftie (I didn't get his name) was very gracious, and I was very red faced. In the end, I'm just happy it works.