September 07, 2007

I initially wrote most of this three months ago, but didn't finish and saved the draft. Hassles with Visual Studio today have caused me to dredge it up.

I know I blogged about this before but I am moved to repeat:

  • It is so slow, and it's constantly flashing, flickering, and locking up for no reason. "Microsoft Visual Studio - Not Responding" is a common title in my task bar. I mean honestly guys, I know Firefox is no great shakes when it comes to responsiveness, but Visual Studio is without shadow of a doubt the most hang-happy application I've ever used.
  • I spend so much time fighting the UI. To be fair, it's a better UI than Visual C++ 6.0, but it's still not right. Documents disappear from the tab strip, there's no way to easily see all open documents at once, the little docking panels get in the way most of the time and the autohide is annoying.
  • It's hangtastic. I know I already mentioned this but really this is my biggest complaint probably. Hangs when loading projects. Hangs when shutting down (I usually end it by killing it). Hangs when building. The linker is mysteriously shit. Sometimes it'll take ten minutes to link some inconsequential change when I press F5. Hangs when opening menus. Hangs when opening just about any dialog, especially the project settings dialog, but really pretty much every dialog except "Go to line #".
  • IntelliSense works only about 40%20% of the time. It's incredibly useful when it does, but since it works so poorly the times when it doesn't are enfuriating. Lesson: Don't give users goodness and then take it away. They will hate you for it.
  • The document explorer is astoundingly crappy. In many respects it's preferable to just using Google, since it loads the contents faster than msdn.microsoft.com loads over the web, and you can easily get context for a given API by using the Sync Toc button. I've given up launching it from Visual Studio itself, since if I do that it takes years to launch and hangs the IDE while it does. Even so, it's even flickerier than Visual Studio itself (has anyone at Microsoft other than the Office team heard of double buffering before? No? It's simple. CMemoryDC mem_dc(dc); /* do rendering */ I mean sweet justice. Welcome to 1999. Or was the plan to wait for Vista and let the OS provide it for you?) The UI also has all the wrong commands and filters. There's no way I can see _only_ win32 SDK docs + ATL + STL as far as I can tell. It seems obvious that as a developer my project would use a subset of the APIs Windows provides, and as such I should be able to select that subset, rather than rely on some arbitrary one picked by MSDN folk.

Does the Windows team actually use Visual Studio to develop Windows? Ha!

I'm not even going to touch the issue of vcproj mayhem.

I'm sure there is lots of interest computer science involved in each revision of Visual Studio, but as a user I can't really tell. The UI was briefly good, got worse now with the stupid tab overflow that constantly shuffles your workspace (guys, the Firefox 2 tab overflow system was based on your initial work in Visual Studio.NET, why change it to something worse?!). Now every release seems to be slower and have worse UI. One exception: the installer that doesn't require a restart. Yay! Someone listens ;-)

« August 2007 | Main | October 2007 »