First Look: Visual Studio 11 Beta Leaner, Meaner for Metro

Microsoft's Visual Studio is more than just an IDE. It's the official developer tool for Microsoft's platform, and new releases tie in with major changes in Windows. Visual Studio 11, now in beta, includes support for the Windows Runtime (WinRT), the engine that powers the new Metro-style, tablet-friendly user interface in Windows 8. As the tool for building Metro apps, Visual Studio 11 plays a critical role in the success or failure of the new Windows.

The scope of the product goes far beyond Metro, of course. Visual Studio comes out of the box with support for several languages, including Visual Basic, Visual C#, Visual F#, C/C++, and JavaScript. Project types include desktop and Metro-style Windows, various types of ASP.Net Web applications, Microsoft Office add-ins, SharePoint 2010 applications, Silverlight, and more.

Windows Azure, Microsoft's cloud platform, will also be supported but does not work in the beta. Microsoft's challenge is in managing all the dependencies, including the Azure emulator, and integration with the local Internet Information Services Web server, as well as Azure itself. Lack of support in the beta is disappointing, though no doubt all will come together in the final release. Azure is not an easy platform to try out, which partly explains its slow adoption; this is another small misstep.

Visual Studio has been gradually reworked in its last few versions so that it's easier to extend and modernize its user interface. Visual Studio 2010 was the first to use Windows Presentation Foundation (WPF) for the editor and most of the user interface, a move that was largely successful; it even improved WPF itself as the team addressed bugs and performance issues. Microsoft has added package management to Visual Studio, with the open source NuGet project.

Welcome to Visual Studio 11, with its new Metro and monochrome design.Now with version 11, Microsoft has given Visual Studio a Metro makeover in keeping with the new style of Windows, though the IDE remains of course a desktop application. The designers have also picked a largely monochrome color scheme, apparently to showcase the color in the apps themselves, a move that has not gone down well with developers. The top two complaints in the official feedback forum are to bring back color toolbars and to abandon all-caps for the toolbox titles. Though they're merely cosmetic, the complaints are valid and Microsoft has marked the issue as "under review." Performance of the beta IDE is good and that matters more.

Visual Studio 11: Metro Substance

Behind its gray face Visual Studio 11 packs in a ton of new features. Metro development is the most obvious, and considering that the platform is new in Windows 8, the developer tools are impressive. The user interface for Metro-style apps is designed either in XAML, for .Net or native code, or with HTML and CSS. XAML is the declarative layout language also used by WPF and Silverlight, and Visual Studio includes a two-way editor so that you can switch seamlessly between code editing and the visual designer. There is no visual designer for Metro HTML apps, but there is strong IntelliSense (pop-up code hints) for JavaScript and CSS. Microsoft offers a companion design tool, called Expression Blend, that has a visual designer for both XAML and HTML; it can also open and save Visual Studio projects.

Developers can debug Metro-style apps in several ways. You can run the app on your local machine, which works well if you have two or more displays, or on a remote machine or within a Metro simulator, which you will likely prefer if you have only one display. The simulator is intriguing in that it is actually a remote desktop session into your own machine. As a result, you can run any Metro app within a window on your desktop.

Once your Metro app is complete, you can use the new Store menu to create a developer account, capture screenshots, and create and upload an app package to Windows Store. Integrating all this into the IDE should make publishing apps easy and smooth for developers, though there is still an approval process to go through.

The big change in Team Foundation Server in this version is that Microsoft can host it for you on Windows Azure, with a new Team Foundation Service now in preview. This will be welcome news to shops that like the application lifecycle management system's rich features, but find it too complex to configure and maintain. Note, however, that some features of the on-premise version, such as SharePoint integration, are not included. Microsoft has recently announced a build service alongside the existing repository for source code, bug tracking, and work items. Pricing is not yet announced.

Unit testing is improved in this edition of Visual Studio. Visual Studio 11 adds support for third-party test frameworks, includes new test frameworks for Metro-style apps and for native C++ code, and provides a new Unit Test Explorer tool for running tests and analyzing the results.

Visual Studio 11: Odds and Ends

Visual Studio 11 provides numerous project types for Metro-style apps, the new tablet-friendly runtime in Windows 8.Visual Studio 11 also includes a new toolkit and project type called LightSwitch, an earlier version of which was available as a separate product. Presented as a "tool for building business applications quickly," LightSwitch is an odd, ambitious, and ultimately perplexing product that uses a model-driven approach to building local or multi-tier database applications, generating most of the code for you. Unfortunately, it produces only Silverlight applications and lacks mobile support. It also fails in its goal of easing application builds for nonspecialists. It's a shame -- the concept behind LightSwitch is brilliant, but unless Microsoft can rework it into something more immediately useful, it's unlikely to have a long life.

Small details can make a big difference to developers, and Visual Studio 11 has many little changes designed to improve productivity. Quick Launch is a search field that helps you find features. Type "package," for example, and all the menus and options for package management appear.

Another strong feature is called the preview tab. This addresses a common issue for developers, where the IDE opens window after window as you perform actions such as stepping through code or checking variable and function definitions. The result is that the IDE becomes cluttered. The preview tab opens code windows temporarily, avoiding clutter.

When Visual Studio 2010 was released, developers complained about its unsatisfactory online help. Visual Studio 11 has the best online help Microsoft has delivered in years. It's easy to switch between online and local help, the index works, and performance is good.

Expression Blend is a companion tool aimed at designers that includes a visual layout tool for HTML-based Metro apps.This is a huge product and impossible to cover fully in a short review. For example, there are also many changes in the languages and frameworks targeted by Visual Studio 11. What is impressive is that despite the huge scope of the IDE, this new version feels tidier, faster, and less bloated than its predecessor. These positive impressions are somewhat spoiled by Microsoft's monochrome obsession in the new UI. But even if the gray face-lift tends to make everything look the same, the work done to streamline the tools has been worthwhile.