This is somewhere to dump what I learn about programming as I go along. Currently I'm a developer working for Bromium in Cambridge. There'll be lots of Python and lots of Linux.
03 November 2006
Windows Vista - User Interface Solutions
I remember reading online when Apple first released their new remote with the new Intel iMacs/MacBooks/MacMinis that people said it would be no good because it didn't have enough buttons, and after all their Windows Media Centre remotes had 46 buttons, so it must be better. But when people start using these user interfaces (after all that is what they are) I somehow doubt the 46 button monster is the winner.
So you are going to write something for Windows Vista? I suppose you can jump in with both feet and see what you end up with, you might get lucky. Or I suppose planning could be the best way forward. When developing for any platform you need to follow the human computer interface (HCI) guidelines that give you the general rules.
In my previous guidelines post I provided links to various guides that are available. In most cases it varies from company to company as to the UI design guidelines and if you are really unlucky it comes down to you.
The problem with Windows Vista is a lack of consistency when trying to come up with design guidelines for your own project. For such a new platform you have to look at the existing applications in order to decide what is best practice.
With Windows XP you can see the problems already. Look at the differences between Windows Media Player, Office 2003, Visual Studio .NET, and now IE7. They all follow different looks, different usage paradigms, and are simply inconsistent. For IE7 they have done away with default menu usage which is completely different to what is expected for a Windows application. Even the way toolbars and buttons look and feel is not quite the same. I suppose that this can be seen as paving the way for the Vista UI transition, but we are using XP not Vista. It almost suggests there is no transition path satisfactory for both platforms.
One of the eye openers when you first start using Windows Vista is a complete lack of coherency and consistency. I know people would prefer to let their imagination run away unfettered, but guidelines are there to bring the worst applications up to the minimum standard, not drag the best ones down.
The lack of consistency is shown at its best in this blog post by Dave Vronay. In the past we have had the simple yet powerful design paradigms of menus, toolbars, and recently the more extended multifunction type toolbar (like with the search bar). Looking at the various programs available built-in to Vista they all seem to be pulling in different directions with their usage. Sure, not every program will be shoehorned into a limited and strict user interface.
Lets have a look at three of the main applications that people will see in Windows Vista.
Internet Explorer 7
This will be the one most people see. There seems to be odd behaviour where a new toolbar row can be inserted with just one item on it which seems to appear when there is only one tab (apparently a PDF bar I don't remember installing). Whereas the tabs row seems to have loads of options and information crammed onto it. The help is accessed via a chevron on the right hand side. Menus still drop down when you select an item which has a triangle next to it. I am finding the only thing that has really changed is the position of the menus, and they still exist but they do not have text - they use icons, and they have randomly grouped stuff together in an overcrowded tab row.
Windows Media Player 11
This has always been the odd application out for years, looking completely different to standard window apps, with random sporadic dynamic changes to display a proper window frame or something equally as useless. It has no toolbar as such, although it could probably be described as at the bottom of the screen... The menu tabs across the top switch you into different views for different operations and the proper menus are hidden away on the right click if you do not choose the standard window frame. I think it really is a case of one application trying to perform too many tasks.
Office 2007
Now enter the ribbon as a menu and toolbar replacement. This could be really good or really bad, I can't make a judgement to decide what is more productive, it might turn out to be good. But again it is another different way of controlling your application. If these were the way forward, surely the default Microsoft developed applications would also be going down the same route?
In summary, you can (or maybe not) have menu bars and/or toolbars, use tabs to switch functionality, do away with menu bars, mix up toolbars with tab bars, have icons instead of text for menu bars, or allow menu bars to pop up randomly, or use a ribbon which is kind of like a menu bar and a toolbar except more dynamic. Confused? You should be! And that is only three applications!
So the developers making the applications have to make a decision, what is the best course forward for their program taking into consideration the bountiful supply of ideas from Microsoft? I can guarantee not one of them will come up with the exact same answer. I've always followed the K.I.S.S. (Keep It Simple, Stupid) philosophy, and I am not entirely sure how to apply it to this situation.
Over my next series of posts I will be digging my way through the UI guidelines of Vista and trying to navigate and at least get clear in my head the way forward.