The Graphical Keyboard User Interface

WIMPy and the Terminal

Wimpy

Terminal

The history of user interfaces can be very briefly summarized into two distinct eras: the command line, followed by the graphical user interface. Interactions on the command line are very fast, but the set of possible commands is not discoverable. GUIs are essentially the opposite, on both issues. Interactions with graphical user interfaces are slower, but possible commands are given visual affordances, and icons attempt to convey possible commands through metaphors.

The GUI is largely considered superior to command line interfaces that predated it, but that isn’t entirely true. For instance, while I was in college a majority of students preferred Pine (screenshot) over graphical email clients like Outlook. A group of students in a human computer interaction class I was in did an in-depth analysis of the usability of each application. They found that across a wide variety of metrics, like simplicity, system response time, and (most critically) overall time on task, Pine knocked Outlook’s toolbar-customizing-dialog-poping-drag-and-drop socks off.

Tradeoffs

Instead of trying to conclude which is superior, a GUI or a keyboard-based interface, it is important to note the specific tradeoffs each interface currently makes in terms of the bandwidth of output, and bandwidth of input.

Modern graphical user interfaces are clearly higher bandwidth than text-based command line interfaces in terms of output, but consider the bandwidth of input:

Standard GUIs, with their drop down menus, check buttons, and tree-lists just cannot compare to the range of options that a text interface gives effortlessly. In just five alphanumeric characters, you can choose one out of 100,000,000 possible sequences. And choosing any one sequence is just as fast as any other sequence (typing five characters takes roughly 1 second). I challenge you to come up with a non text-based interface that can do as well. (Command Line for the Common Man: The Command Line Comeback)

Tradeoffs

Graphical user interfaces often provide keyboard shortcuts to serve as accelerators. But these keyboard shortcuts are not interfaces in themselves, but simply serve as hooks into various parts of the GUI. For instance, consider control-D in Firefox, it simply pops up the bookmark creation dialog box, and suddenly the user has to go back to using the mouse (or awkward tabbing) in order to complete their task.

The Best of Both Worlds

Over the last six months, I’ve been thinking a lot about the work of two designers: Nicholas Jitkoff (Blacktree, creators of Quicksilver) and Aza Raskin (Humanized, creators of Enso). Both have designed user interfaces that exist in the riven between command line interfaces and graphical user interfaces. And both of these applications are a joy to use.

Quicksilver

Unfortunately these types of hybrid keyboard/GUI user interfaces have gone largely unexplored by interaction designers. Aside from feed and label navigation in Google Reader, I don’t know of too many other applications that are currently leveraging these types of incredibly streamlined graphical interfaces, designed solely for keyboard input.

How Firefox Could Potentially Leverage Graphical Keyboard User Interfaces

Here are some ideas I’ve had about how several different Firefox features could be designed using a graphical keyboard user interface. Please note that these are all only conceptual mockups, and we currently have no official plans to implement these features for Firefox 3 (although, we may at some point release a prototype extension through Mozilla Labs). If you are an extension developer and are interested in contributing to a project like this, please email me or leave a note in the comments.

All of these mockups show interfaces that are entirely keyboard driven. A keyboard shortcut launches the UI, and the UI is later dismissed by either selecting an item using the arrow keys and hitting enter, or by hitting escape. These interfaces are all modal, and when invoked they occupy large amounts of space on the screen.

For each of these mockups you can click through for a larger version.

Searching the Web (control+k, or alt-alt)

Of all of these mockups, I think keyboard-based Web search would be the most useful. This mockup also features some favicon upscaling code I wrote for another Mozilla Labs project.

I1Kuiwebsearch

In addition to Web search, the “Bookmarks and History” search will likely be more efficient than the current WIMPy ways of accessing bookmarks in Firefox:

The move back to language started with web search engines in general, with Google placing the capstone when its name became the house-hold verb for “typing to find what you want”. In fact, Googling is almost always faster then wading through my bookmark menu (which says there is something wrong with using menus as a mechanism for accessing bookmarks). (Command Line for the Common Man: The Command Line Comeback)

Switching Tabs (control+tab)

I1Kuitabswitching

Navigating Recent History

I1Kuirecenthistory

Tagging Pages

I1Kuitagging

Acting on Microformatted Content

I1Kuimicroformatdetection

Conclusion

-Just because the command line predated the graphical user interface doesn’t mean interfaces based on windows, icons, menus and pointers are always superior to interfaces based around using the keyboard for input.

-Designing interfaces based solely around the mouse and standard GUI widgets, and adding keyboard accelerators as an afterthought, does not always result in creating the most effective and streamlined user interfaces for advanced users.

-Interaction designers should consider designing keyboard-based graphical user interfaces, to simultaneously take advantage of both high bandwidth input, and high bandwidth output.

62 responses

  1. feechka-sa wrote on :

    ratings apartments eagle ridge alabama justice league calendar michael j. edison canon ex speedlites major medical policy for united parcel services employees in florida

  2. feechka-jt wrote on :

    amish acres inn florida today newspaper from sunday feb. 21 from the bayou quintus walt michaels rvs

  3. Matt wrote on :

    Interesting enough there is a major program that made use of a similar function to quicksilver. No where near as polished, but the quick apply function in indesign has become my best friend since I discovered it’s ability to act the same as I use quicksilver for the rest of my computer. Complete access to menu functions from the keyboard without memorizing the shortcuts or creating a custom set. I’m just hoping it gets added to the rest of CS by CS4.

  4. carlo wrote on :

    Just in case you are still interested in keyboard-driven interfaces you could give a look to PodiPodi, a project in interaction design inspired by Enso but adressed to web designers in a way that they can embed PodiPodi as a widget in their website and give their use another layer of interaction and a bunch of new services.

    Bye bye
    carlo

  5. Metrujectiktus wrote on :

    Приветствую всех!
    У меня такой вопрос,кто что интересное подскажет буду признателен.
    Мы с друзьями собираемся поехать в круиз по просторам России и ближнего зарубежья месяца на два на своих машинах,но не как не можем согласовать маршрут,если у кого уже был опыт такого путешествия,может,что посоветуете.Девчонок с собой не берем,думаем,что во все городах России с этим не будет проблем,если у кого будут рекомендации и в вопросе отдыха с девушками тоже буду признателен.

    С уважением Сеньчик

  6. Rowanci wrote on :

    i am gonna show this to my friend, bro

  7. usnutrition wrote on :

    Illinois auto insurance california small group health insurance insurance medigap policy medicare health companies costs low cost home owners insurance quotes.
    Health immediate insurance online quote california health insurance state auto insurance online rate health care insurance for college students group health insurance rates.

  8. Ivan Ičin wrote on :

    I fully agree, I use Launchy to start Windows programs. Though, I would put this thing into something that is new address bar – read my concept idea: http://features20.blogspot.com/2007/07/natural-languange-navigation-finally.html

  9. Mourner wrote on :

    I especially love the proposed searching functionality. This would be just great.

  10. vs wrote on :

    for a long time i have trouble with navigating tabs (usually ~100 tabs opened in my browser) – so idea to implement such thinks not once strikes me. And problem like this we have in development – and in the most IDEs it was solved. In Eclipse or other IDEs you can hit Ctrl-E and walk throw list of tabs with camel-case filtering.

  11. James Napolitano wrote on :

    For me, the ideal UI is something like in Visual Studio, where as you type, the IntelliSense (http://en.wikipedia.org/wiki/IntelliSense) menus automatically appear near your cursor (but not steal focus), offering you autocomplete options as well as lists of available/applicable commands. Maybe we could have something in Firefox’s URL bar where, when you type “tags: games flash”, it would create a popup menu automatically listing all known bookmarks with both those tags. I prefer this to a bunch of keyboard shortcuts because it requires less memorization and the commands are more discoverable (as they are all listed in the menus).

    Also, someone mentioned keywords for bookmarks. A lesser known variation of them is “bookmarklets”, where you enter a whole javascript function as the bookmarked URL. This allows for an extra layer of flexibility.

  12. James wrote on :

    you didn’t mention gmail macros –

    http://blog.persistent.info/2005/12/greasemonkey-christmas.htm

  13. inputexpert wrote on :

    The Best of Both Worlds

    The battle between gui and cli is a problem because of the stand alone keyboard and mouse. When pointing is integrated into the keyboard, the battle between the gui and the cli is a non issue and goes away.

    Quicksilver and Enso are trying to solve a hardware problem with a software solution when the solution is better input hardware design.

    From my research for a PhD in HCI, advanced input technology, and advanced interfaces, I have found the best solution to the gui/cli problem is a hardware solution.

    An advanced keyboard that integrates the function and controls of a movable mouse into the keyboard giving the user total control of the computer screen without the user’s fingers leaving the home row is the best solution.

    The advanced keyboard I have developed and have used daily for the last three years is a usb keyboard where I can point, click, type, and scroll in any order simultaneously and instantly without taking my fingers off the home row.

    I can navigate, transverse, and control up to four 19” screens so far at will. I just point, click, and type.

    With an advanced keyboard or keyboard of the future, advanced interfaces or interfaces of the future can now be designed.

    The interface of the future is an interface that is a personal interface that a user can personalize or customize to their preferences. It is open, os and application neutral, and accommodates gui, cli, and a search box equally. There is no delay or transition time to go from one to the other, you just do it.

    We all work differently with our own personal preferences; the interface should not hinder the user and neither should the input hardware. The interface should be transparent or as Rob Pike of AT&T Bell Laboratories states: “simple, comfortable, and unobtrusive.”

    When the user has choices, they can make their own interface, a personal interface or a myinterface if you will, that suits the way they want to work and not the way they have to work dictated by inflexible default application interfaces. A personal interface is an interface that sits on top of all applications like the microsoft onscreen keyboard.

    With a personal interface you make it and have it your way.

    Conclusion

    The problem between the gui and the cli today is the use of the old stand alone keyboard and mouse configuration.

    If you use an advanced integrated keyboard mouse configuration you can use advanced customizable personal interfaces for increased productivity, performance, and comfort.

    from the ”father of the perfect keyboard”

  14. Phil Wilson wrote on :

    Remember Mark Pilgrim’s Magicline (http://mozdev.org/pipermail/greasemonkey/2005-August/004738.html), a good start perhaps.

  15. Michael Zuschlag wrote on :

    Seems like there’s been some buzz about a move towards verbal/command-like interfaces and accompanied by about equal buzz for more direct-manipulation/gesture interfaces. I don’t think we should move anywhere. Instead we should _expand_ our interaction styles to include developments in both ends of the spectrum. What we really need is some ideas on where and how styles can be combined and integrated.

  16. David wrote on :

    I absoletly agree. I believe this will be the exact finding when everyone realizes having a touch-screen only interface is ridiculous. There’s truth to physical interface devices.

  17. Fred Blasdel wrote on :

    I don’t know why you’re giving credit to Aza Raskin for anything. He’s *selling* a mediocre knockoff of Jitkoff’s work, just for Windows. It’s not even the third best Quicksilver knockoff for Windows!

    You’ve mocked up FIVE completely independent interfaces in Photoshop. I suggest you go back and actually use Quicksilver as something besides an application launcher. Unless you go and install plugins like Constellation, it has a single interface. ONE. Subject > Verb, with an Object where appropriate.

    All you’ve done is make alpha-transparency-laden mockups of bezels. Some of them appear to be intended to utilize find-as-you-type. None of them involve any Subject > Verb, much less Object. A few appear to involve extremely limited Verb > Subject.

    That you’re a Windows dev says volumes about your level of understanding of what *really* makes Quicksilver work [Hint: it’s not translucency. It’s not app-launching. It isn’t even the keyboard! Grab a Mac and try the Constellation plugin.]

    Spend more time actually using the tools you’re trying to emulate, not messing around in Photoshop.

  18. Invisible wrote on :

    Looks pretty cool, will definitely be some interesting features to up the number of Firefox users for sure.

  19. Hip Hop wrote on :

    They all look beautifull

  20. Mateia Andrei wrote on :

    Aza Raskin had been at Google and talked about Enso (very useful application i think).
    I hope Firefox will use some of this great ideas you thought.

    http://video.google.com/videoplay?docid=-6856727143023456694&q=aza+raskin&total=6&start=0&num=10&so=0&type=search&plindex=0

  21. Logan Koester wrote on :

    This is a remarkable idea. I would really love to see this implemented as an extension.

  22. Steve wrote on :

    Have you seen AOL Explorer 1.5? In your notes about switching between tabs and having a graphical history: AOL Explorer has that already…it is pretty cool. You can still download it at http://explorer.aol.com.

  23. Daniel wrote on :

    The place for that should be the location bar. A handy accessing shortcut to it already exists, possible choices could just popup under it, where url suggestions go anyway.

  24. Dan wrote on :

    I like your mockups but firefox already has a cool function built in called “quick search”

    This allows you to make dynamic bookmarks. For instance, in my url address bar, when I type “gg stupid kitties” it does a google search for stupid kitties. If I do “amazon some DVD I always wanted” it will search amazon for whatever DVD I always wanted.

    It works for a lot of websites, I even do french to english and english to french translation “fr and en for the shortcuts”

    http://lifehacker.com/software/geek-to-live/geek-to-live-fifteen-firefox-quick-searches-129658.php heres a guide on how to set it up.

    I really do like the data one. It reminds me of how gmail automatically picks out dates and phone numbers to see if you want to save them or put them on your calander.

  25. Makinde Pecanha wrote on :

    I thought your idea would be very good to work with, and good enough I mean to completely redesign your browsing capabilities… see I don’t have a background in computer engineering but I do know a thing or two about what I like in an interface and it would be awesome to be able to quickly check snapshots of my history at any time, since I use the internet so much I usually don’t remember all the information I’ve tracked. And your tags option also helps… it gives a quick categorization option as well. I love the way it looks too, it could use some work on making a shadow for it, and maybe shine the edges a bit, but otherwise its awesome! I’d just like to get my hands on it… but i’m sure it’ll be in my hands soon, since you got the idea out and into the internets. Someone will do it! Ahh, the wonder of a series of tubes!

  26. hma wrote on :

    Looks and sounds pretty good. However, I would think that web browsing is usually done with one hand on mouse rather than both hands on keyboard. This kind of lowers the benefits of keyboard gui.

    How about having both mouse access and improved keyboard access. For instance, I don’t see why arrow keys up and down could not be used to switch between search engines in the search box.

    [quote from quote]
    In fact, Googling is almost always faster then wading through my bookmark menu (which says there is something wrong with using menus as a mechanism for accessing bookmarks).
    [/quote from quote]

    This is not a fault of menus, but fault in how they are used. Using a few folders in Bookmark toobar gives you a set of menus that can easily house over 100 bookmarks in easy to find and fast to use way. Its even easy to maintain if you make bookmarks by draging and dropping taps to right folders.

  27. Abela wrote on :

    Simply Coooool.

  28. piedoggie wrote on :

    while this is fascinating and looks very pretty, my main question is “how of a f**k is a disabled user going to use this interface?”

    in order for blind users to be able to use an interface, they must be able to determine what’s on the screen so that it can be read to them. Most of these user interface cannot be read with any degree of comprehensibility. Speech recognition users, such as myself, must be able to speak what’s on the screen so that it can activate menus etc. etc. again, I think these user interfaces are unspeakable.

    The only way I can see is making these usable by the handicapped is to create a second layer of text which is invisible to the ordinary user. This puts an additional burden on the developer to do things right which means, it won’t get done because they will probably not have any way of testing since most developers do not have screen readers or speech recognition at their disposal.

    Don’t get me wrong, I see these interfaces as a significant improvement for those with eyes and hands that work. Unfortunately, those of us who are aging much more rapidly either through accident, or illness will become excluded from new applications and of uses the net. Do you really want to do that?

    I suggest getting a copy of NaturallySpeaking, throwing away your mouse and keyboard and live like one of us for a week. In your second week, you can have your mouse and keyboard back but now turn off your monitor. if you make it past the first day in both weeks, I would be very impressed.

  29. Ace_NoOne wrote on :

    That’d be awesome!
    What are the chances of this making its way into Firefox (and Thunderbird, and other apps)?

  30. Patrick wrote on :

    Ah come on please include it or make it an option. I am a Quicksilver and Firefox user and I would love to see the usability of Quicksilver brought to Firefox.

  31. Samuel Saint-Pettersen wrote on :

    This mockup looks great. You can count me in for helping with its implementation as an extension or whatever.

  32. Samuel Saint-Pettersen wrote on :

    This is a great idea. I’m in, should you want anyone to work on implementing this. I mean help with implementing it.

  33. Kristoffer Forsgren wrote on :

    This is one of the best mockups ever. I have always wished for something like this to appear in Firefox. I use Quicksilver all the time on my Powerbook and it really does improve my work there. This would take Firefox to a whole new level. It could take up a bit less screen space though… =)

    Keyboard shortcuts for the win!

  34. Toby Powell-Blyth wrote on :

    Hi, I think what you’ve mocked up is a fantastic idea… But I don’t know how easy it would be to implement the alpha blending into the FF UI.

    Have you posted this on to any mozilla specific forums? or posted a bug onto bugzilla to ask someone to get involved?

  35. Fred wrote on :

    I don’t know why you’re giving credit to Aza Raskin for anything. He’s *selling* a mediocre knockoff of Jitkoff’s work, just for Windows. It’s not even the third best Quicksilver knockoff for Windows!

    You’ve mocked up FIVE completely independent interfaces in Photoshop. I suggest you go back and actually use Quicksilver as something besides an application launcher. Unless you go and install plugins like Constellation, it has a single interface. ONE. Subject > Verb, with an Object where appropriate.

    All you’ve done is make alpha-transparency-laden mockups of bezels. Some of them appear to be intended to utilize find-as-you-type. None of them involve any Subject > Verb, much less Object. A few appear to involve extremely limited Verb > Subject.

    That you’re a Windows dev says volumes about your level of understanding of what *really* makes Quicksilver work [Hint: it’s not translucency. It’s not app-launching. It isn’t even the keyboard! Grab a Mac and try the Constellation plugin.]

    Spend more time actually using the tools you’re trying to emulate, not screwing around in Photoshop.

  36. Online TV wrote on :

    That’s actually quite beautiful, not the command prompt – but the quick interface for searching. But wouldn’t it eat a lot of memory, I’m assuming that transparency would be a serious memory hog.

  37. i am angry wrote on :

    meta comment about commenting: If the submitting of the comment fails for some reason (e.g. your spam detector thinks this is spam, or email missing) the comment is not available anymore when you hit back. Are you trying to be too fancy?

    grr…

  38. VesaS wrote on :

    Hi,

    nice article. Thanks for pointing enso out (installed it!).

    I would Love to see this in Firefox. Please do not lock this to only built-in commands, but let the web site authors to take advatage of the feature, for example by providing a way to hook to this from javascript.

  39. Marty wrote on :

    Your are on to something with this approach. There is nobody more efficient then a customer service agent using the old green screen terminals. They can get around faster then anyone.

    This has been lost in web applications and client server applications.

    I think any innvoation around in this area inside and outside of the browser is great!

  40. Paul Brown wrote on :

    You’re not the first to notice this trend http://www.jnd.org/dn.mss/ui_breakthroughcomma.html but the reality is that command line works for highly variable commands such as search (it’s hardly feasible to have a checkbox for each search term that anyone could possibly want), but for more constricted commands where there are more commands to choose from the GUI works better; how many ordinary users use ctrl + p instead of the little picture of a printer?

    The reality is that both paradigms have a part to play, there are areas where both excel and there are areas where both struggle. Unfortunately there are also areas where neither paradigm works very well and the best we can currently have is a compromise and therein lie the real challenges to come up with a third type of interface to bridge the gap.

  41. Trey Boudreau wrote on :

    As a long time vi(m) weenie, I find VIMperator http://vimperator.mozdev.org/ extremely useful. It certainly has its warts, but the speed of *useful* keyboard-only navigation combined with Firefox’s graphical display makes for a high-throughput user experience.

  42. kurivaim wrote on :

    I already have keyboard-based searching in Firefox. I just hit alt-d to get to the address bar, then type ‘g foo’ for a Google search, ‘y foo’ for a Yahoo search, ‘wiki foo’ for a Wikipedia search, ‘ana foo’ for an anagram search, etc. In that sense, the address bar already provides a degree of command-line functionality.

  43. Loic wrote on :

    Yay, finally someone that doesn’t fear command line.

    An hybrid that take the best of the two world is the best thing that could be done for computer. People must not fear command line as they save a lot of time for repetitive task or other think like that. Gui are great for visualizing data and interact with an unknown environment.

    Quicksilver, gnome-lunch-box are great example of how it is so great. And one other thing, making an environement in 3d doesn’t mean it will be better. Flat 2d panel with good effects (because eyes like to see sexy application) will do the job for most of the thing.

    Thats like saying VI is a bad editor. VI is like a photoshop for editing text/code. When you have a great setup. VI may become faster than using GUI app for coding in exemple…

    you can use VI from mostly anywhere…trough ssh or something like that.

    As i do really like console…everyone should there…

    http://libcaca.zoy.org/

    Consoles are powerfull tools but a lot of people miss it. And probably miss the possibility to create some habits. People that are used to GUI will have probably more hard time to use and run hybrid gui/cmd application because they fear it. And a command line sounds really abstract for them.

    While command lines are more often faster to use than gui. The learning curve is different to GUI but i still believe you don’t loose any benefit to know how to use it.

    Being a power user isn’t a prerequisite to use command line.
    While you may become a power user after learning it.

  44. Pierre Côté wrote on :

    Very nice idea.

    Removing unnecessary UI and using full screen to display pages seems like the logical thing to do. Your article gave me a glimpse of what future browsers should look like: invisible.

    Why not hide the top bar and show it *over* a full screen page when the mouse touches the top of the screen (like XP’s button bar)? And keep a keyboard-based UI, so you have best of both worlds 🙂

  45. Chris wrote on :

    Some of that design is sweet.

  46. Tonio Loewald wrote on :

    I would challenge the assertion that keyboard input is “high bandwidth” and graphical input is “low bandwidth”. In some cases, keyboards are obviously superior, but bandwidth is not the correct differentiator. Inputing textual data is bottlenecked for graphical input devices just as inputing positional data is bottlenecked for keyboards.

    QuickSilver is a very nice example of a hybrid interface, but similar concepts already exist in FireFox (autocompletion of URLs for example) and could be improved and extended.

  47. Jason Douglas wrote on :

    Awesome stuff, Alex. I’d been playing around with a more “generalized” UI like QuickSilver myself, but I like your more task-specific approach much better. It feels more natural.

    A few questions/thoughts:
    – What about adding Find in Page to the search UI? Maybe listed as (with favicon)? That’s the only other task-y use case I was looking at that you haven’t already covered.
    – What about discoverability for people who aren’t already habituated to the keyboard short-cuts? I’m worried many users would never know these capabilities were there.
    – How would this relate to existing UI mechanisms? I.e., would you take the current search box out of the chrome? Replace it with a button that launches the panel? Or would it just be duplicative?
    – It feels like you might need some concept of hierarchy (grouped by domain or by time slice) to make the Recent History browser really useful (and not just a visualization of the back button).

  48. Axel Rauschmayer wrote on :

    Great blog entry! It is amazing how much command lines and GUIs complement each other. Even a shell profits from additionally having a graphical view on the working directory. I think this kind of integration should go even further in the future. FWIW, I’ve writting a short paper on this two years ago: “Semantic-Web-Backed GUI Applications” [1].

    [1] http://www.pst.ifi.lmu.de/%7Erauschma/bib/#rauschma:iswc_ui:2005

  49. Scott wrote on :

    Alex, I couldn’t agree more. I’ve been wondering for a couple years when Quicksilver like interfaces would take off and I’m still surprised it’s taken this long.

  50. Ferdinand wrote on :

    Why can’t Firefox look like this? You have things like Joost where you have a beautiful interface with smooth animation.

    I love the idea of purely using the keyboard to surf.

  51. moolder wrote on :

    Hear hear!

    I loved pine as a student, and was sad to give it up. And I’d love to be able to browse the net without using the mouse/touchpad in mozilla… Take link navigation inside a webpage: Right now the “intuitive” thing to do is press over and over until you get text focus on the link you want to press, then press . This is out of the question with 2- or 3-column layouts. Yet you can – search for your link text (IF you’re navigating to a text link), until your text is marked. then press to stop searching, and you have text focus. Problem: You search thru all of the page, not only links. Possible solution: why not just type in the link text without the , search only for link text in that mode, and get instant focus on your link.
    Another, quite simple alternative to that would be 2D-navigation through the webpage using cursor keys: focus on one word, image or link at a time, moving in the direction of the cursor key. use +arrowkey to jump directly to the next link in the direction of the arrowkey.

    Well, just some random thoughts…

  52. Michael wrote on :

    You’re not really exploring the potential power of command-line interfaces here. Rather, you are exploring the potential power of modal user interfaces that are called and then dismissed by some escape action.

    For example, a mouse gesture or other mouse based event such as double right click enters a pop-up interface for navigating your browsing history, which then works exactly the same as the interfaces you posit above. Creative new escape actions that are mouse based have just as much potential as keyboard navigation, with one critical advantage: what really takes time is switching BETWEEN mouse and keyboard.

    While possible, browsing without using the mouse at all is frustrating and not something that will ever sell to the common user. Conversely, what do you use your keyboard for while browsing? For most users it’s just 3 things: Logging into sites, Search, and Web-Based Email. Therefore, although you can make certain aspects more keyboard driven, most users will always go back to the mouse for the core of web-browsing-activity: navigating pages with links. In this way, making more things keyboard driven increases the amount of switching between mouse and keyboard and thus may actually reduce efficiency!

    The only one of your examples that does not translate into a better mouse-only driven interface is search. However, because search is already pretty accessible in the search bar, it is the example with the least incremental advantage in speed: regardless of how you get to the search box, the majority of the time is spent typing in search terms.

    If you want to make navigating bookmarks more efficient, then I suggest abandoning the idea of it being a tree with just one GUI root. The majority of the time going to any given bookmark is navigating a bunch of NESTED folders. Eliminating the single root of the bookmark tree makes every single book mark nested by one less, and thus more accessible.

  53. mark wrote on :

    I already use Firefox’s “Add a keyword for this search” option all the time, and Sogudi to accomplish the quivalent in Safari– typing ‘w Ming Dynasty’ in the address bar to do a wikipedia search, etc.

    Adding a quicksilver-esque hotkey triggered way to do this from any app would definitely be a cool thing.

  54. smerwin wrote on :

    Have you looked into Jon Aquino’s yubnub project at all? http://yubnub.org … he describes it as a command line interface for the web. I’ve been using it regularly for about a year, and I find it indispensable.

  55. Stu wrote on :

    I don’t mean to be a fanboy, but you can use the keyboard so efficiently in Opera that I usually don’t use the mouse.

  56. thegaswepass wrote on :

    launchy is a good enso/quicksilver type app for windows, and it’s free.

    http://launchy.net/

  57. ans wrote on :

    please release this as an extension, at the very least. looks great.

  58. Glen wrote on :

    I wholeheartedly agree. Using the mouse is such a drag on my productivity, doubly so on my procrastination!

    After years of design and development experience, it’s clear that most problems with a software come from interface deficiencies. This keyboard-centric development idea is right on, but when will joe-designer figure that out?

  59. austin s wrote on :

    Normally I’m a terminal-only guy on my Linux boxes, however, I have had some experiances with hybrid-esque interfaces you’re talking about here (for example, Beryl and even WMII/Xmonad, although not pretty, they fit the bill) and the small amount of keyboard interaction alone can make up some time and make many things quick and simple if you take about 2 minutes [or less] to learn it.

    I would personally love to see an idea like this implemented in Firefox. You can be assured at least one person would use it. 🙂

  60. Matt wrote on :

    Check out Vimperator, which is a keyboard-orientated interface for Firefox. One nice thing about it is the “fast hint” mode. Hit f: all the navigable items on a page get a tag. type the tag, and you’re off.

  61. Bill Smith wrote on :

    Command lines are also great testing.

  62. John Resig wrote on :

    Great article Alex. I took the liberty of submitting it to Digg and Reddit:
    http://digg.com/software/Firefox_with_Quicksilver_Inside
    http://reddit.com/info/241hz/comments