InfoWorld preview: Visual Studio 2010 Beta 2 impresses
A wealth of additions, refinements, and bug fixes has Microsoft's IDE pumped up and primed for March release
In beta 2, Visual Studio 2010 is beginning to show the rather attractive shape of things to come. It supports software process with Team Foundation Server (TFS), and provides intelligent targeting of different .Net versions, allowing most shops to stop using old Visual Studio versions. It supports test-driven development, and it adds historical debugging, as well as support for concurrency. Silverlight RIA development, the F# functional programming language, and ASP.Net MVC 2 are all included in the product. The new WPF-based IDE is now fast enough to use, and with a few exceptions, the entire studio is a little quicker than Visual Studio 2008.
I have been working with Visual Studio 2010 Beta 2 on and off since it was released last month, most recently for my first look at the SharePoint 2010 beta. In addition to the many, many attractive new features, Beta 2 corrects the deficiencies I noticed in my first look at Visual Studio 2010 Beta 1, and it corrects many bugs that I hadn't noticed. You can even go live with this version if you wish, which means that you can start using it to develop and deploy production applications. Overall, Visual Studio 2010 Beta 2 demonstrates credible progress toward having a kick-ass IDE for Microsoft's planned March 2010 release date.
[ A banner year ahead for Microsoft's back end? See "First look: Microsoft SharePoint 2010 beta spreads the wealth" and "First look: Exchange 2010 beta shines." ]
As I mentioned early in October, in this beta Microsoft has dropped the ancient Visual SourceSafe in favor of TFS Basic. TFS goes way beyond Visual SourceSafe in many ways, starting with its use of a true database and continuing with its work item tracking and ongoing software metric collection. I had no abiding love for the often unreliable Visual SourceSafe, but I was a little hesitant about installing TFS, due to my experience with installing earlier versions; I was also put off by TFS Basic's confusing installation options. As it turned out, TFS Basic installed fairly smoothly on my Windows 7 for x64 box, and I was able to tie TFS to an existing SQL Server 2008 Express instance without too much trouble.
The only real installation issue I had was that TFS unexpectedly grabbed port 8080; I had to move the server software that had been using port 8080 to a different port. I worried ahead of time that running TFS Basic would slow down my machine, but I haven't noticed much of a change. Using TFS is a little more complicated than using Visual SourceSafe, but it offers much better options for version control -- such as shelving, unshelving, and better merging -- and adds significant support for software processes and software project management.
The lack of Visual SourceSafe support does mean that Visual Studio 2010 can't safely edit my old Classic ASP Web site, which uses SourceSafe for version control. If there's a way to fix that site to use a more modern version control system, I'd like to know what it is. Meanwhile, I can still edit the site in Visual Studio 2008.
I was pleased to see the improved performance of beta 2 compared to beta 1. For many things, Visual Studio 2010 Beta 2 now seems to be even a little faster than Visual Studio 2008 SP1. However, there are still episodes when the beta 2 UI becomes unresponsive for minutes at a time and the dreaded "Visual Studio is busy" notification displays. If there's a reproducible pattern to this, I haven't found it, but I most often see it during one kind of initialization or another. I know that the people currently managing Visual Studio 2010 are very sensitive to performance issues, so I'm confident that these bugs, however intermittent they may be, will be tracked down and fixed by March.
One of the small but useful old features missing in the beta 1 code editor was column select (Alt-drag). It's back in beta 2, but it's often disconcertingly slow to catch up to the mouse, especially if you're selecting a large box of text.