Assume for a minute that you had a product with 1,000,000 features. Each feature has a unique function and performs a specific unique task. As a UI designer how would you approach this design problem?
A quick look at today's common UI metaphors would show that conventional tools won't work. Menus can't scale to 1000 items let alone a 1,000,000. Tabs don't scale well past 10 items. You can't hide the functionality in advanced buttons and secondary dialogs. Today'’s UI controls are oriented around basic browsing, and even these browsing controls quickly break down. What you need is a UI control that can scale to 1,000,000 items.
Search + Lists
A searchable list is the grand-daddy of scalability. Searchable lists can handle billions of items. The more precise your search the better the results. The reason we've never had searchable UI is that we have yet to really hit a brick wall with browsable UI metaphors. The other reason is that it takes a significant investment in search technology, indexing commands and creating results that are both meaningful and actionable.
When you think about searching for functionality a common place to explore is the help area of the interface. Why is it that 'help' isn't very helpfull? Well for one thing 'Help' search technology isn't very good. The search results are based on simple keywords and the content is limited to the content written by the developer. Thousands of useful articles are available to Google users but not to the actual user in the application searching for help. Help also isn't actionable and it doesn't understand context. If I have some text selected and I search for 'italics' the search results won't allow me to perform the action, instead I have to follow a list of automated steps to complete the action. In addition if I search for more abstract meanings of 'italics' such as 'emphasize text' I'm unlikely to find my command.
One App Size Fits All
In larger applications most users tend to use just a small portion of the entire applications functionality. The problem is that this tiny portion varies greatly from person to person. Applications developers build-in and expose more and more features to ensure that your needs are satisfied. Unfortunately today'’s interface designs force users to pay a mental tax for all the features you don'’t use.
Imagine your favorite application void of cluttered toolbars, menus, floating pallets and dialogs. This approach can be applied to everything from document centric applications like PhotoShop and Excel to content centric applications like Itunes or Outlook. The application has just the bare functionality needed for basic operation, nothing more.
Now imagine having a search engine for your features. Instead of assuming that you need all 1,000,000 features we'’re going to assume you need next to none of them. As you search for features the results of the search will describe each feature, what it'’s used for and what types of tasks can be accomplished. As you scroll through results of functionality you can use the commands right away.
Such applications would allow you to spend less time playing with the features of the application and more time working on the content of your ideas. An application with everything you need and nothing you don'’t.
If you did have a searchable interface the next problem you need to think about is discovery. How would I know to search for functionality if I didn't even know that it was possible? This brings us into another familiar area, scalable browsing. Also know as category navigation. Instead of navigating tabs and menus you can imagine navigating pages of content like in a Yahoo style directory structure:
Look and Feel > Text Appearance and Prsentation
|Apply document styles
Put it together
The two techniques of rich browsing and functional searching will allow user interfaces to scale beyond their current design limitations. The most designs of the new Office are already hitting the wall with Menu's and Toolbars and the recent 'Ribbon' design reflects a better approach to task centric browsing. Even though this is a much better approach it still won't scale as more features are added in each subsequent version of Office. The next page in application design is the ability to search for UI. This will bring us closer to the 1,000,000 feature application that not only has a 1,000,000 features but is also user friendly.