On leap day this year, Microsoft released the first beta of Visual Studio 11. The company made free time-delimited installations available to all comers. Like many Dr. Dobb's readers, I was eager to see with my own eyes what the Borg had wrought. I downloaded a copy of the Ultimate Edition and set about installing and using it.
From the first installation dialog box, it is clear that the UI has changed dramatically. The installer favors the new boxy look of the Metro UI associated with Windows 8. In the event you've been involved with more pressing problems than reading about Microsoft and Apple's new UIs, you should be aware that we are on the verge of a major shift in UI design. It moves away from the paradigm that's been in use during the last 10 years. That's the one that has resulted in Windows 7 and Mac UIs looking remarkably alike today.
They will still look a lot a like going forward, but the UI — in both cases — will migrate to a style that is more visually friendly on portable devices. The buttons will be bigger and use bold colors, the dialog boxes will be considerably simpler, and menus will be deprecated. If you've ever tried to use a drop-down menu or a dialog with more than two or three options on a laptop or tablet, you have some sense of the difficulty imposed by the form factor that is driving these changes. So, what Microsoft and Apple are trying to do is to facilitate that small-form-factor UI and then back-port it to desktops and laptops.
The result is software whose appearance is undeniably new and somewhat unfamiliar. Many of the conventions of this new paradigm are still not well understood, even though it's beginning to appear everywhere. The area in which the new look and feel is most clumsy, alas, is one of significant use to developers: icons. Not only have icons lost all color but they've been redesigned to be smaller and to my eye essentially meaningless. Take these two icons from Google Apps, which was one of the first platforms to adopt this new UI style:
These icons are shown full size. One tells enables you change the color of the text, the other of the background. You might be tempted to choose the left icon to change the color of text, but then you might notice on the right icon that its letter is in white on a dark background and that the color bar below it is white. So maybe that's what you click to make the text some other color. Here is how these icons look on Microsoft Word today, using the contemporary UI:
With these icons, there is no doubt about what they do. The highlighter in the left icon makes it clear it's changing the background. One glance and you know what it is.
With this in mind, let's look at the UI of the VS 11 beta that just came out. The first thing you notice is that it's monochrome. Except inside the coding area, the colors are black and gray, with occasional touches of dark blue (so actually duo-chrome). For example:
How this approach is consistent with the bright boxes of color in Metro is anyone's guess. The new UI design is winning very few plaudits, to say it mildly. On the MS boards, the response is overwhelmingly negative. And the response to this ugliness is made worse by the inability to skin VS back to something normal.
While I really don't like drab gray areas in my IDE, my larger objection is to the new icons that should enable me to quickly find needed features without thinking twice. Look at the icons at the top of the menu above. The fourth from the left is a stack of pages or files. Four icons to the right is another similar stack. Want to guess what the right-most icon is? The best you can do is guess.
But apart from its inability to communicate meaningful information (in part because of the absence of color), the monochrome aspect means I can't locate an icon quickly on the basis of color memory, as is possible in VS2010.
Here my eye knows that the save command is the purple icon to the right of the opening yellow folder. This no longer works in VS11. Instead, my eye must read the icons to find the one I'm looking for. So using this UI is a step backwards: harder to navigate, less efficient, and visually unpleasant.
VS11 has a few other disconcerting aspects, the biggest one being that it tips in at almost 10GB of disk space. If this is in fact the IDE that Redmond hopes to bring to the masses (a specific goal of the redesign), a package so ponderously big needs serious reconsideration. Even presuming more RAM capacity in tablets and other portable devices than presently available, such space consumption will be a major disincentive.
The VS11 product is not wholly awful. I found it very responsive and, while I didn't run benchmarks, the feel at the keyboard was that it tore through compiles and builds faster than previous releases. In addition, it contains the new C++11 library that Herb Sutter promised, as well as some of the new technologies needed for Windows 8. We will review the entire set of new features in considerable depth when VS 11 is released
This version of VS 11 is only a beta. Microsoft could fix the UI issues, especially in the context of overwhelmingly unfavorable reviews of the monochrome design. However, previous betas have often looked almost identical to the final, released version. If that were to be the case with this edition, I confess I'd begin seriously looking for other IDEs and using the back-end tools from the command line or build files. Our recent article on how to use Eclipse instead of VS might augur the beginning of a new series exploring the theme of productive coding outside of Visual Studio.
Time will tell.