Build Day 1: Surface, WP8, TFS, Windows Design Guidelines
Day 1 of Microsoft Build was in some way disappointing and at the same time exhilarating. To be honest, I was expecting to be updated on the new stuff Microsoft plans for the near future. The fact that the session list was not disclosed until a day ahead also helped reinforce that expectation. But instead, we got lots and lots of sessions on building apps for Windows 8 and Windows Phone 8. Maybe my expectations on Build are clouded with my experiences attending the Professional Developers Conference in 2008 and 2009. Maybe another problem is that Build is paid by the Windows Division whereas the PDC was mostly organized by the Development Division (and we all know how Steven and Somas get along together). On the other hand, Build 2012 did deliver on the hardware side by giving each and every attendee a Surface RT as well as Nokia's flagship, the Lumia 920. That's not something anybody dared dreaming off. And yes, we all know we're going to be Microsoft's marketing tool for the next months, but it's still incredibly cool.
Anyway, I started the day listening to Buck Hodges, product manager of the TFS suite, talking about how they employ Scrum within their department. I was happy to hear that they approach product development similarly to how my current client is doing it. Their cadence is to plan 3 week sprints concluded with a one week verification before they release to production. They rely heavily on automated testing, but at the same time balance 6 developers with 5 testers. Granted, their teams are a bit on the big side (5 + 6 + 1 or 2 product managers), it clearly shows how much they value quality. Buck also shared how they deal with branches. In general they try to avoid feature branches (which resonates well with Martin Fowler's opinions on that), and most changes are directly committed to the main branch. The only exception to this is when commits are too disruptive. As an example of this, Buck mentioned the data access changes required to complete the transition from the relatively expensive SQL Azure to Azure Table Storage.
The other session that was worth my time was dealing with web standards. It was a good reminder of how standards compliance works, what browsers are being used currently, and how libraries like Modernizr can help you with that. The highlight of the session was the reference to browserstack.com, a website dedicated to testing your website against a myriad of browsers. I also attended some sessions on the user interface and interaction design of Windows 8, but most of what was told is already common knowledge. Only people who have been living in a cage for the last year (one deep enough to not receive any Wi-Fi signals), may have heard something new. Let's hope the sessions planned for day 2 are a bit better.