Visual Studio vNext

At TechEd this year, there’s only a few sessions and expo booths aimed squarely at devs rather than sysadmins and DBAs, but one of the things I picked up on was what’s going into Visual Studio vNext.

There’s no shiny new UI features (that they’ve announced so far…) but they are doing a whole lot of work improving the performance and memory usage of VS – parallel builds (already supported in core MSBuild, just not used in VS up to now), and spinning off a separate process to do each build. This really cuts down the memory usage of VS, as it doesn’t have to load all the user’s assemblies into the VS process space. In the demo they gave, VS2010 used 224MB of memory after a solution rebuild, and vNext used 43MB on the same project rebuild. Separating the builds into a different process also means that VS remains fully responsive when doing a build.

They’ve also re-written the Add References screen, so it now loads instantaneously, rather than the >5 minutes it currently takes. Rather understandably, this got a big cheer in the session!

It’s not just limited to performance though; there’s a new Solution Explorer that integrates much of the file structure (classes, methods, fields…) previously available in separate analysis windows. They’ve also hidden most of the main UI toolbar buttons that are visible in 2010 to make it far less cluttered; added Find dialogs to various bits of the UI to try and consolidate the 3 or 4 separate ways to search for things in 2010; and improved multi-monitor support to allow fully independent windows.

As a side effect of not adding any big new features, they don’t have to revbump the project file format. This means that 2010 projects don’t have to go through an upgrade wizard, and you can freely switch between 2010 and vNext on the same project. This feature may only be a result of what work they decided to do in vNext, but it still got a big cheer when it was announced!

Basically, there’s no big shiny new features, but lots of little changes to make devs’ lives easier and fix a few of the issues that people have been complaining about in previous versions.

The VS team are still doing active development on performance issues, so they’ve made available an extension called PerfWatson that detects when VS is taking too long to do something, and sends anonymous data back to Microsoft with information on what was hogging the CPU at the time. I do recommend you install this; any performance issues you have will be much more likely to be fixed with the stack trace information PerfWatson provides to the development team.