Jason Zander’s just posted images of the new Visual Studio 2010 UI. It looks nice enough, but apart from the new editor, it doesn’t really amount to much more than a new palette for the toolbars and docking window chrome.
The multi-monitor support is a step in the right direction, but just seems to be allowing an editor window to be undocked. Something Studio Tools has been doing for a while.
But, you know, where’s the Ribbon?
If any application was crying out to be Ribbon-ised, it’s Visual Studio. The whole point of the Ribbon was to be an easy way to surface the many features of Office that were getting lost in the multitude of menus and toolbars and dialog boxes.
And guess what? Visual Studio has even more menus and toolbars and dialog boxes than most Office apps. It’s also got way more than Paint or Wordpad.
I think it would work really well. Most of the tool bars are contextual – tools for dialog layout or class diagrams or CSS editors or whatever. These can be taken care of when you switch to a new document (file) with the standard contextual tab blocks (and would fix the current really annoying behaviour of toolbars appearing and disappearing and moving the document window up and down whenever a window gains or loses the focus).
Even the multiple modes of the program could be handled. Editing is fine, building is transient and should (hopefully) be over quickly, so let’s just disable tools that don’t make sense. And debugging would just need it’s own tab. Perhaps put the “start debugging” or “attach” in the Home tab, but then automatically switch to the Debug tab and you’re sorted. All the edit tools would still work, thanks to edit and continue (which I really can’t seem to get working. Don’t know why).
In fact, the only potential problem I can see is how to handle all of the various tool windows – and there are a lot of them in VS. Solution explorer, class view, properties, find, find results 1, find results 2, output, error list, tasks, watch 1, watch 2, locals, autos, call stack, blah blah blah. Managing these is hard. Should each tool window get a toggle button in the Ribbon somewhere? Isn’t there a better way of managing these?
I don’t know. Perhaps it’s coming. Later.
If not, it’d be a killer plugin to write, if anyone could pull off such voodoo.