Microsoft Visual Studio Express 2010 is a dog

I’ve been using various incarnations of Microsoft Visual Studio for years now. MSVC 2003 was a vast improvement over VC6, when Microsoft standardised their C++ compiler compliance, and its debugger has always been second to none. In fact, it has always been a pleasure to work with such a wonderful piece of software. That is, until now.

I recently “upgraded” to Visual Studio Express 2010, having had no issues with 2008, and thinking that the new release must be mature enough now to run smoothly (I am never an early adopter of technologies because it usually takes a service pack or two to iron out the flaws). Unfortunatley since I started coding with VC Express 2010 I’ve had nothing but pain.

It appears that they reimplemented the code base with managed code, and now have additional layers in the system for translating between legacy code and the new stuff. However they’ve done it, they’ve managed to create an unusable dog of a development environment for C++ development.

By far the worst flaw of this version is the software’s responsiveness. It has become so sluggish it is almost totally unusable. The lag is so bad I can type a line of code before a single character appears in the editor and I’m not even a particularly fast typist. Worse still, it makes the entire operating system unresponsive. I’ve never had any responsiveness issues with older versions of Visual Studio except occasional slowness to display intellisense information.

This problem is so bad its pretty much a showstopper. I cannot believe they released it like this. Today the hourglass appeared as I edited a class declaration and I was able to go away and pour a coffee before the system yielded control back to me. That might be acceptable when compiling, but when simply editing text it is totally flawed. I’ve not installed any add-ons or upgrades, and am not working on a particularly large project.

When I use Ctrl-Alt-Delete to check the system processes I find that the CPU usage is not particularly high. But somehow they’ve managed to monopolise system resources in such a way that the software can make my entire laptop freeze to a grinding halt. It’s clearly doing some sort of disk based caching as I can hear my hard drive grinding away for days on end after typing a single keyword into the editor. I can improve performance by turning off intellisense, but then I may as well be using notepad to write code.

They’ve also now made all the windows “dockable”. I am not a fan of dockable windows. What the hell is the point of them? I haven’t been able to find a way to turn this “feature” off, and now that the system is so unresponsive I often find myself clicking in the interface, waiting some time for any feedback to my input, and eventually finding that it has decided to undock the last document I was using from the UI. If it were more difficult to accidentally detach the user interface I mightn’t have such an issue with it.

All I want to be able to do is tab between documents and write code (with intellisense). I don’t want to spend time waiting for the program, or dragging documents around the screen and trying to reattach them to my development environment. After all, at the end of the day, it’s just a clever text editor until I hit the compile button.

What went wrong Microsoft? Who signed this software off as “ready for release”? How can a new version of software be such a downgrade from previous editions? Where can I get back the hours of my life lost waiting for the code I’ve typed to appear in the editor? If this is the future of “managed code” and the Microsoft platform then I might have to go back to using an Apple, or migrate to Linux.

My advice to anyone contemplating upgrading to MSVC 2010 for C++ development, DO NOT DO IT.

You cannot afford to lose the productivity.