In response to a challenge by Aza Raskin to come up with a better way of tabbing in Firefox—in particular a solution that scales better the more tabs you have—I produced this mockup in Javascript. Be clear that, because of the way the tab previews are done, the performance is creaky and not representative of what a proper implementation would be like. Please, use your imagination and pretend the previews pop-up instantly. Also understand, it ONLY WORKS IN FIREFOX. (While it won’t work at all in IE, it should mostly work in other non-Firefox browsers, though I haven’t tested any).
The rationalization is given on the page, so I’ll simply discuss here why I rejected some ideas proposed by others and also consider some variants on my design which might be even better.
In the comments of Aza’s post, a number of people expressed a desire to introduce alternative ways of conceptually ordering the tabs other than the default order in which you opened them, e.g. some wished to be able to group their tabs (which you can kind of do already by reordering), some wished to see their tabs listed by chronology of the pages (as opposed to of the tabs), and some wished to see their tabs in a web displaying heritage (which page was opened from which other page). While there might be something to these ideas, I avoided them as there seemed to be easier gains to be made that didn’t involve conceptual changes for the user. I wanted to improve the tactile experience of dealing with many tabs.
Others have proposed some kind of zooming UI. Again, there may be something to this idea, but until hardware support can be implemented consistently across platforms, I don’t see this happening. Besides, it’s a tricky thing to get right, as many users are easily disoriented.
Others mention multiple tab rows. This idea is problematic for the same reasons displaying any one-dimensional information in rows is problematic: things move around in unexpected ways when the bounds gets resized and tabs are added and removed, messing with the users spatial memory of where their tabs are. (Of course, text has the same problem, but text has paragraph breaks that help a large section of text mostly retain some recognizable shape as it is edited and its bounds resized.)
As for variants on my design:
A major flaw of the current Firefox tabbing which my design doesn’t really conquer is that I find myself often confronted with having to do multiple searches to find a tab: by reflex, I first search through those tabs I can see, then I’ll mousewheel back and forth, then occasionally I’ll go into the full list on the right if I still haven’t found the tab. The problem here is that the worst-case scenario searches are very expensive and distracting, but they wouldn’t be if I simply went to the full list to begin with. As nearly good would be if I couldn’t scroll the tab bar at all, forcing me to go into the full list of tabs sooner; in this scenario, we’re actually better off keeping the number of tabs visible in the main bar rather low, say 7-9 at most.
If we embrace the idea that the full tab list should be used more often, it then makes sense to better purpose the main bar. Rather than show tabs which occur consecutively in the full tab list, the main tab bar could display the last viewed tabs in the order they were viewed. In this design, you actually wouldn’t ever see the current tab in the main tab bar as you don’t need to click on it, but you’d still find it in its proper place in the full tab list.
If this is too confusing, perhaps get rid of the main tab bar altogether and have the full tab list button sit by itself to the right of the search box.
I’ve also considered simply having a single vertical sidebar for tabs. This would be like having the full tab list always open. While you might object to the loss of screen space, I’m not sure it would be so bad, especially for wide screen users, who often have to artificially make their Firefox windows narrower for reading, anyway. The Vertigo extension already offers Firefox users vertical tabs, but it could be improved:
- The tabs bar should not be as wide as the history and bookmarks sidebars are by default, not really for functional reasons (at least on big widescreen monitors) but rather aesthetic ones.
- Each tab should be two lines high for easier clicking and so that titles can wrap onto two lines if needed.
- Hovering over a tab should display a preview (as in the demo) and any part of the title cut off should appear extending out of the tab bar into the page. (In fact, I’m thinking that hovering over the vertical tab bar should make all cut off titles appear in this manner; even with the titles extending out of the sidebar, you would still be able to see where the sidebar ends, so when you mouse out of the sidebar, the titles would all go back to normal.)
I think the Adobe Reader’s “pages” view is a decent idea for Firefox. Having window previews in a thin vertical frame on the left hand side would take advantage of a few things:
1) Thumbnails could be reasonably sized while still fitting 5+ on screen;
2) Users could take advantage of vertical scrolling, which they’ve been using for years;
3) Top-bottom thumbnails translating into tabs left-right is fairly intuitive;
4) The user could still read the active tab’s content while keeping the thumbnail frames open.
Hi other Brian,
I assume you mean the thumbnails should show up larger than they do in Acrobat than the default, so maybe one per row, right?
If I were to adopt your idea, I would actually get rid of the tab bar entirely, simply having a scroll bar of tabs to select, with their titles hovering over the thumbnails. This is because I always prefer to eliminate redundant mechanisms: while one mechanism may be sub-optimal compared to others in some use cases, not forcing the user to choose between mechanisms makes up for the deficiency.
Even modified, I still prefer my way, mostly because, for me, the most important feature is that the tab thumbnails be very large, preferably nearly as big as their full size when actually selected. In my experience, I often have many tabs open that look too similar as small thumbnails to be discernable from one another, so I need thumbnails big enough to read the page’s text to choose the correct tab.
By having large previews appear instantly upon mousing over a tab, it becomes cheap to browse tabs by visual recognition.
I use a plugin for Firefox called All-In-One gestures that mimics Opera’s nonintuitive but incredibly useful right-mouse-button navigation. One of these gestures is to right-click and hold, then use the move the scroll wheel up and down. This brings up a menu of all the tabs you have open, and you use the scroll wheel to navigate to the tab you want to switch to.
This could be improved by having a “sticky” menu in which you right-click and scroll to bring up the menu, and can then click directly on the tab you want to switch to. You might also be able to satisfy your readers who want to “group” tabs by having a hierarchical menu pop up, but at that point you have to waste energy naming tab groups. Group your tabs by firefox window if you are going to have that many open.
Firefox 3 is gonna be awesome. Heres some mockups:
http://ctrlaltweb.blogspot.com/2007/09/top-five-mozilla-firefox-3-features.html
[...] rethought my ideas for better tabbing in Firefox (first mentioned here) and have revised my mockup in Javascript accordingly. The performance of the tab switching and [...]
[...] points I made about my thinking for the original design are still [...]