Visual Studio 2010 nine months on: how good has it proved?

Visual Studio 2010 was released on April 12th 2010. Nine months on, how good has it proved to be?

image

I researched deeply into Visual Studio 2010 at the time, and was impressed overall. It was a huge release, partly because the IDE was rebuilt using Windows Presentation Foundation, and partly because of a large number of new features including the F# language. Performance was always going to be an issue with the move to a .NET-based IDE, but on my machines I found it satisfactory.

Others have been less pleased with the performance. The comments to Jason Zander’s announcement of the Service Pack 1 beta last month make interesting reading. Here is the negative:

I am a professional .NET developer and I am really upset with VS 2010. It crashes more often than VS 2008. It is slow as hell. It even crashes when debugging. VS 2010 is built with WPF which is causing all these problems.

and here is the positive:

I don’t know what y’all complaining about – VS2010 is blazingly fast… at least on my machine.

I am not sure whether the performance issues are more dependent on the the type of work you are doing, or the size of the projects, or some other factor. One issue may be graphics performance, since this will make a big difference to WPF whereas not so much with Visual Studio 2008 and earlier.

Thinking back to this time last year, I also recall how Visual Studio 2010 seems so focused on .NET, including Silverlight. Later on we got the announcement of Visual Studio LightSwitch, a RAD database application tool which builds Silverlight clients. It now seems obvious, especially following the PDC (Professional Developers) conference in November, that the vision of the developer team at Microsoft did not align with the vision of the Windows team; and that the Windows team seemed to win that argument internally. It is odd, because Silverlight has the potential to solve problems for the company. It is a technology that extends from the desktop to Windows Phone 7, which is well-suited to app store deployment thanks to the way apps are isolated, and which potentially can run on multiple platforms. Now with Silverlight 5, promised for release this year, Microsoft is adding more Windows-specific features and allowing more fragmentation between versions. Silverlight on Windows Phone 7 is based on version 3, the Mac version has more limited capabilities than the Windows version, and so on.

Microsoft said at PDC that “HTML 5” is its broad-reach platform. That suggests that what Visual Studio needs is HTML 5 designers and JavaScript libraries that integrate with Microsoft’s server technologies and which make it easier to develop HTML application for multiple form factors including small devices.

It is a confusing story, and I would love to know if the subject came up in CEO Steve Ballmer’s discussions with Bob Muglia, VP of Server and Tools, recently. The outcome of those discussions is that Muglia will be leaving Microsoft in the summer.

We will have to wait for Visual Studio 2012, maybe, to discover any change in its direction. In the meantime, SP1 adds a new help viewer, in response to many complaints, as well as a few new features for testing and debugging. There is also a list of bug-fixes, some of which look significant:

and so on. Let me add that while the list looks bad, it is no more than you would expect for a tool of this complexity and in my own testing Visual Studio 2010 has worked well.

I agree though with some of the commenters who note that Microsoft is slow to react when bugs are reported. It will be more than a year after the initial release when SP1 is finished, though you can use the beta for production code if you dare.

I would be interested in hearing from users of Visual Studio 2010. How are you finding it, or did you try it and go back to Visual Studio 2008? I realise that adoption of a new IDE for production work tends to be slow, because developers are reluctant to switch mid-project.

12 thoughts on “Visual Studio 2010 nine months on: how good has it proved?”

  1. Huh! I am still using VS2005 for developing hand held device on compact framework and very happy with it.

  2. I mainly develop unmanaged C++ server side stuff…

    I switched to VS2010 for day to day use shortly after it came out. It performs reasonably well on my main development machine though it’s amazing how much faster VS2008 and VS2005 are when I switch back to those for work for various clients. I don’t tend to use it in VMs or on laptops, though I expect that will change over time.

    I find it annoying that if you fire up multiple VS2010 sessions at once (i.e. click on solution and whilst that’s taking an age to load, click on another solution (the test harnesses perhaps)) then VS2010 can sometimes forget about your choice of window layout and it goes back to defaults…

    It crashes more often than VS2008, VS2005 or VC6.

    I’ve found myself drifting back to VS2008 as it starts faster and I have to maintain projects for multiple compilers anyway, BUT when I am in VS2008 I DO miss various things from VS2010…

    I think some people in Microsoft said that they wanted VS2010 to be ‘the new 6’, I think, for me at least, what VS2010 has done is make me realise that VS2008 is now the new 6. It’s fast and almost compliant enough and runs on all of the hardware that I have.

    Roll on VS2012…

  3. I have been using VS 2010 at work. I mainly focus on client side and use WPF a lot. And I have R# and I have to say VS 2010 works great for me. I first installed the productivity tools and then I removed them (they were annoying, the add reference dialog sucked as it messed up our references). I have almost 3 to 4 instances of VS 2010 running all the time and it works great. The solution loading is pretty fast though reloading individual projects is quite slow sometimes (when I get latest from TFS without closing the solution). Closing of VS instances can be slow but I can live with it. I dont use WPF designer by the way, i think its way too slow even today. overall I like it and am surprised when I hear about crashing-all-the-time (touch wood!)

  4. I use both VS2008 and VS2010 at the company I work for, but feel they are not worth those thousands dollars they charge in licenses for such a product, crashing more often than usual and with uncompleted features (DGML Designer and Architecture Explorer, by example. Compare them to nitriq and NDepend and you’ll know what I am talking about).

  5. @Len

    It writes all user prefs to disk on exit, so there is a race condition between instances. Not ideal but the solution is to close the instance in which you modified user preferences (eg tool window layout) last.

    HTH

  6. Tim,

    I’ve found that VS 2010 is best IDE I ever used, but you need to have powerful computer. 4Gb of RAM is absolute minimum for real project.

    The main pain point for me is that Silverlight design-time support is still very poor – I had to use Expression Blend or just edit XAML directly even to do very simple changes.

  7. Jim,

    I’ve tried that and it’s not quite that simple. It seems that there’s a race on start up and, I expect, the instance that reverts to defaults fails to access whatever data store is storing my layout preferences because the first instance has opened it in a non shareable manner…

    The preferences only seem to be saved if you change them, so simply quitting the instance that didn’t get reset last doesn’t always seem to work.

    Whatever, the start up race condition and subsequent default is the main problem. Why doesn’t it open the preferences in a read only, shareable, manner??

    I sometimes wonder if anyone in MS actually uses these tools in anger. It cant be THAT unusual to want to open up a couple of different solution ‘at the same time’, though I realise that the window for the race condition will get smaller on faster hardware… I only have a dual quad core (E5320 @ 1.86 GHz) with 8Gb ram, perhaps that’s my problem? 😉

  8. We used VS2008 for primarily .NET development, and as a programming tool it served us well. As of 2010, however, I’ve kicked .NET out of here for a list of reasons, and all our software has shifted to native c++. This is where VS2008 (and especially VS2005) was lacking: native c++ support (and even managed c++ support). Both programs gave me the sense that Microsoft really didn’t want you doing any type of development besides C# or VB, and C++ seemed scaled back in IDE and debugging features.

    We upgraded to VS2010 this year because that seemed to have changed, and native c++ support is certainly improved. VS2010 seems to take slightly longer to start-up, slightly longer to compile, and I would have hoped for more options in the text editor in regards to code formatting, but overall it is a better IDE for native c++ development, the help system is more useful for c++, and I haven’t been frustrated or missed VS2008 at all.

    I don’t see much reason for .NET developers to move from VS2008, and when we’ve service pre-existing .NET programs, we’ve stayed with VS2008, but a native coder will probably find reason to upgrade.

  9. I’m starting to hate Visual Studio 2010 but I want to love it. Functionally it’s superb but I spend a lot of time in the HTML designer and it crashes far too often. I can’t use it for more than about 30 minutes without at least one complete crash and restart of VS. Other people who use VS in the same way as me have the same problems. I get it on two machines – both Win7, one 64-bit with 12 GB RAM, one 32-bit laptop with 4GB RAM.

    It’s lost me so much work that it’s driving me around the twist.

  10. I didn’t notice any performance problems with VS2010, but one thing I definately miss is the ability to target Windows Mobile devices. Can’t do native development on WP7 so I’m probably out of luck.

    I used VS6 for years before I finally went to VS2005, I don’t see anything being “the new 6” yet; we’ll see when VS2012 comes out.

  11. I’ve been using Visual Studio 2008 Express (C++/SP1) for over two years in a relatively-large project. It was very very fast to my satisfaction and I had no complaints about it.

    Recently I’ve tried Visual Studio 2010 Express (C++/SP1). It is a very slow beast. GUI is very very slow to respond, the IDE keeps parsing and re-parsing each and every cpp/header file (even the Win32 ones referenced by project that I don’t even touch). This slows down builds by a factor of 3 or 4 which is not acceptable.

    After doing some experiments and tweaks with the hopes of going back to about the same performance that I was getting with Visual Studio 2008 Express (C++/SP1) on the same machine before, and without the budget to do hardware upgrades, I’ve had to do this with my Visual Studio 2010 Express (C++/SP1):

    1) Disable software graphic rendering (which was turned on by default) to use hardware graphic rendering instead. Much better overall responsiveness afterwards.
    2) Install the suggested Windows Automation 3.0 API (not sure this has anything to do with my code but it did improve overall responsiveness again).
    3) I’ve disabled the Code Browsing Info DB. This was the most incredible speed boost (especially during builds). But of course this comes to the price of completely losing all IntelliSense support.

  12. I Used VS2010 for 5 months and tested the Beta VS2011 its so slow! that I had to go back to VS2008 But Microsoft will NEVER hear what all of us say “DONT BUY VS2010 or 2011 IT SLOW!” pass it on then mabybe Microsoft may here us!!!!

Comments are closed.