I have been pretty excited about the technology behind Microsoft's Code Contracts for a while. However, as a user that typically is not situations where the Premium or Ultimate SKUs are affordable. With Visual Studio 2010, static code analysis was not included at the Professional level. For me, it is the static code analysis, not the run-time analysis that is where the value truly lies. As a long-time Microsoft developer I was pretty bummed about that. I sent an e-mail off to ScottGu about that and he gave a nice response and passed along my feedback. This is typical of the amazing support Microsoft has given the developer community over the years. I have been an Apple hardware user since the late 80s and have been very happy with Mac OS and iOS as a user. However, I don't think any of the major players, be the IBM, Oracle, Apple, treats developers as well as Microsoft does. If Windows 8 succeeds as a Tablet OS, which it should based on technical merit, the great Microsoft developer community will be part of that. Having said that, it is great to see Code Contracts coming to the masses with VS 2012 Pro. It is still a separate download for the analysis tools, although the actual Code Contract libraries are themselves baked into the .NET Framework.
As a footnote, I am not a fan of the strategy of the One OS To Rule Them All approach. I am not thrilled with my Windows 8 laptop setup. The UI between PC and tablet should be similar but fundamentally different. Unless my laptop has a touch screen, I want a keyboard/mouse centric UI with a conventional start menu. As a developer, I want to go further, and do as much as I can with a keyboard, without even having to reach to the mouse. Working in an office, I certainly can't use speech recognition either. It is important for Microsoft to allow business units that focus on different devices to innovate on their own. Long live skunkworks! After ScottGu's nice response, maybe I should pass these thoughts along to Steven Sinofsky as well ... Oh too late, nice knowing you Steven.