One Desktop to Rule Them All: A Proposal for Revisions to Tracker

One Desktop to Rule Them All

For the purposes of the novice user, Tracker is Haiku. Many people don't even know -- or care -- what an operating system is. As I have said many times before, the average person just wants to get his work done. This makes Tracker's interface crucial to user productivity because it is the main way for someone to use the computer. Many different kinds of people use Tracker. Some want to choose where each file goes. Many more don't care. Some (like me) fit into either category, depending on the moment. Everyone wants fast access to the programs he uses most. Tracker needs to have the ability to automate as much file management work as possible and still make it just as easy for the user to do things manually when he wishes.

The main file management tasks that are performed with Tracker (or components of Tracker) can be categorized under one of two headings: access and organization. The following improvements to Tracker can automate significant parts of both kinds of work without requiring the user to use them.

Improving File Access

File access governs more than just opening a Word document on a floppy disk. It also encompasses starting applications and copying/moving files. There are several ways to keep file access effort to a minimum. The first would be to provide easy access to frequently-used files, primarily certain applications and some of the user's documents. The Start Menu concept pioneered by Micro$oft was a step in the right direction, but a tab-based organization method for documents and applications, as proposed in the 3D Desktop RFC, will help even more. The second way would be to improve the file browser. The third way would be to give the user appropriate and useful search tools.

The current means of browsing the filesystem is based on the spatial concepts initially developed in the Finder for Mac OS, but this needs to change. Desktop computing has outgrown these concepts -- spatial methods are appropriate for small numbers of files, but they are less and less efficient as the number of the user's files increases. Today's desktop user has many files, from word processing documents and spreadsheets to digital photos and music. The Single Window Browse mode needs to be changed because it doesn't provide give enough feedback on where the user is in the filesystem. Merely having the name of the current folder is not enough. Instead, Tracker will use a default format quite similar to OS X and NeXTStep where navigation is done in a series of columns.

Column-based navigation is already present in BeOS, but its use needs to be expanded. A user can navigate the filesystem this way simply by right-clicking on a folder. It is both very fast and simple, but because the columns are displayed in a series of menus and submenus, navigation is not as easy as it needs to be. Menus are not well-suited to this task because of the fine motor control needed to move between folders -- the user must carefully navigate the cursor with precision usually reserved for gaming, particularly at high screen resolutions. Using a regular window for column navigation eliminates this -- clicking on a folder creates a new column to the right of the old one and displays folder contents or file information. At the top of the window will also be a breadcrumb bar which will allow for faster jumps up the folder hierarchy and to make the current filesystem location very clear to the user. Getting "lost" or forgetting ones current location is not normally a problem for advanced users, but it happens frequently for average users. An rough example of the layout for these changes can be seen below.

Note that while the main way for the user for browsing the filesystem will be using the column method, the single window browsing mode will not disappear entirely. It will simply not be the default. There are times where the user needs to be able to see details about entries in a particular folder, and an alternative for the user will be to use the existing List mode to navigate. The breadcrumb bar will still be available to the user for fast navigation and for additional context information. For those with limited screen space, the breadcrumb bar can be configured to use large icons with text labels, small icons with labels,  or just the text labels themselves.

Integrated Search Technology

The Big Three operating systems (Window$, MacOS, and Linux) all have "search engine" technology available which enables the user with tools to search his files just like he would search the World Wide Web, but with better results and more options. In its day, one way that BeOS was ahead of other operating systems was its filesystem queries. Queries are powerful, but they have major limitations: they are limited to only BFS disks and they do not search within a file's contents. Full indexing of a computer's documents is needed to let the user search filesystems which do not support queries and also to search within documents. The current thought in many IT companies is that search technology is a "magic bullet" which will solve all of everyone's problems. It isn't, but it is a major part of the solution. Search can provide much of the automation needed to get existing files without having to do the file retrieval manually.

Proper integration is needed to maximize the usefulness of document search. This will be accomplished by changes to the Open and Find windows. The new Open window will contain two tabs:  Search and Browse. The Search tab will provide a simple interface for the user to type in terms to find a particular document. It will default to documents of the filetype used by the program, sorted by order of most recent access. An expander will hide or show extended options. The Browse tab will provide the same familiar interface as current Tracker open panels, but with a breadcrumb bar replacing the popup folder menu.

The Find window will be both simplified and made more powerful. The current interface makes complicated searches relatively simple, but simple searches require much more effort than they should, including multiple switches between the keyboard and the mouse. The new Find window has fewer controls and operates more like a search engine -- the user can limit searches to a certain kind of file and enter in terms to be searched in the document's name and/or contents. An expander is available to reveal the extra controls needed to create complicated searches in the same way that it currently does for Search By Attribute. Advanced users will also find the new interface does not sacrifice power: regular expressions can be specified in the name by preceding a term with REGEX: just like it can be done currently with settings for mail filter preferences.



Improving Organization

Manual file organization is a burden that is responsible for countless instances of users having lost documents on their hard drives. Basic forgetfulness and sometimes a lack of a sufficiently obvious indicator for filesystem location -- the user *thinks* he is saving his file in one location when, in fact, he is somewhere else. How often does the location of a file really matter in the first place? Frequently or rarely, depending on what's being done and who's doing it. Office workers often don't care where documents are kept so long as they are easy to find. Many developers like to keep all files for a project in the same folder or in a hierarchy under a folder dedicated to a project. System administrators don't normally worry about where a user keeps his documents as long as it's in his home folder because it makes backups simple. Automation can be very helpful in filing, but it must be possible to control how much automation there is or how often it is used. Some slight modifications to the Desktop and a new Save window can provide some helpful automatic filing without taking control away from the user.

All filing-related changes center around the Filer. The Filer is the proper name for the Sorting Chute concept originally conceived of on the Glass Elevator list. It automatically organizes files for a user according to a set of rules that can be customized. The RFC itself proposes a replicant for placing an icon on the desktop, but because the Filer is an integral part of the Save window, the icon for the Filer should actually be a part of Tracker like the Trash or the Disks icon. However, this icon could be hidden for those users not wanting one more icon adding clutter to their desktop. By adding the Filer to an easily accessed place on the desktop, the user can easily drag and drop a file to it and move on to other tasks, having moved it to a safe, organized, logical location without any of the work involved.

Along with an icon on the Desktop for the Filer, a new Save panel will also be needed. It will utilize the Filer's sorting rules to automatically save documents to an appropriate place or allow the user to manually choose a location for the file. A checkbox, when unchecked, expands the save panel to reveal a file browser window very much like the Browse tab for the Open panel. Normally, all the user has to do is give the document a name and hit Enter or click Save and the rest is done automatically.




The Desktop

Along with the use of the Filer, there is one other small change which will also help the user: a change in the default setting for displaying disk icons on the desktop. The desktop -- as in the part of the screen which is a placeholder for replicants and displays volume icons and the Trash -- does not need many changes. The Disks icon should be displayed on the desktop by default to reduce confusion. A common mistake for novice users is to click on a volume marked BeOS when asked to go click on "the BeOS menu" (as in the Deskbar). The concepts of volumes and mounting, while relatively simple, are foreign concepts to non-technical users, particularly those with only a Windows background. There are other changes which are not technically part of Tracker, such as the Workspaces control, launcher tabs, and an improved system tray, but these are discussed in the 3D Desktop proposal.


Final Thoughts

When combined with the concepts in the 3D Desktop RFC, Haiku has the potential to be an operating system that simple enough for basic users to get work done, but powerful enough that everyone likes using it. Finding your files is simple and you do as much work as you want. Manually navigating the filesystem is fast and it's harder to forget where you are. System-level controls are better organized and easier to access. Up-to-date system information is available at a glance. Virtual desktops are better integrated, so now you also have more desktop space. Haiku has a bright future ahead.

Comments

Re: One Desktop to Rule Them All: A Proposal for Revisions to Tr

Though I think it's very important to look ahead in future innovations of Haiku and its GUI evolution; I think it's more important to polish the current Haiku UI (OpenTracker) of both look and feel. Let's face it, one of the best things BeOS had going for it was a nice simple to use GUI that melded the best of Mac OS and Windows along with BeOS firsts. I think the best approach would be to bring BeOS R5 (Haiku R1) forward to today's polish of what people expect in a nice desktop environment without over doing it. You know, a subtle Aqua, Aero and/or Beryl like eye candy, but something that is both appealing and yet useful to the user in many ways. Haiku should shine that coat of paint, but keep it simple and clean.

Re: One Desktop to Rule Them All: A Proposal for Revisions to Tr

Yep. Thought of that, actually. Even though I can do basic graphics, I don't hold a candle to someone who does graphic design like, say, stippi or stubear. This document is really part of a greater vision that I have for R2. See my 3D-Accelerated Desktop RFC for an idea of some of the other stuff I'd like to see for R2. I didn't make any sweet-looking graphics in that document, either, but I set the stage for the infrastructure for someone to put a pretty face on. It's at http://haiku-os.org/glass_elevator/rfc/3d_accelerated_haiku_desktop

Re: One Desktop to Rule Them All: A Proposal for Revisions to Tr

Yeah, I'm on the Glass Elevator mailing list (or was I think); anyways I understand about looking ahead to R2; you definitely have to start thinking R2 in R&D mode. I would just love to see the current GUI (OpenTracker) very polished and fluid with look-n-feel to really get people interested in Haiku for its awesome idea of a simple and smooth desktop operating system meant for everyone (eventually).

Re: One Desktop to Rule Them All: A Proposal for Revisions to Tr

I think the open dialog will do better without tabs. Generally for me, tabs are optimal when there are atleast four different modes/pages to switch between with plenty of content. Here its just two tabs with not so much difference in content. Why not integrate it in one pane? Something like -

[Search Field] in [folder]
+-----------------+

Files and Folders

+-----------------+

[Cancel] [Open]

I agree this is no less irritating, but something along the lines... At times I keep browsing for a file that I get irritated and search for it; for example a folder with lots of files. In such cases this kinda interface would be handy.

The save box might also feature an icon; something like RISCOS which can be dragged and dropped. Although it can mess the save-box quite a lot from just being a clean and quick way to get things done.

Re: One Desktop to Rule Them All: A Proposal for Revisions to Tr

"Drag and Drop Save" ala RISCOS? Yes please. Its a really nice feature i'd love to see in R2 of Haiku.

Re: One Desktop to Rule Them All: A Proposal for Revisions to Tr

I'm no computer geek, but I am a user of BeOS/Zeta, and I have to say I love it. I think a user should be given a choice, or a chance to change back and forth if they want. Sometimes I like going back to old way of doing things. Like windows xp, you can change to the classic view if you want. Simply put, people like choices. Thx.

Re: Another good addition to column-based navigation

Hi,

I think you showed some good ideas in this entry, but I have some negative expieriences with "Column-based navigation" and an Idea that improves your column-based navigation I want to share.

I splited this post in two parts. The first part explains my feelings about column-based navigation, the second part shows what I think would be a good modification.

- PART 1------------------------------------------------------------
I was using Column-based navigation for some months on MacOSX and there were two things that I really dont't like about it.

First thing is the column itself. Naturally there isn't much space in each column. In some folders that really became a problem, because my filenames where too long to be shown properly. MacOSX has a good way of cutting the names (start...end.jpg), but sometimes that left me with three names that looked the same.

The second thing is I instantly got lost in the filesystem or it at least slowed me down. If your hirachy becomes too deep you always have to scroll to keep up where you are. You adress that flaw with your "breadcrumb bar" what is a very good idea and works great for Gnomes Nautilus and XFCEs Thunar, but will have the same problem as the Column-based navigation, if directory names become too long.

The other downside in OSX is, if you have lots of directorys and they don't fit on the screen, you see the content of a folder but you don't see what its parent is. An example in your screenshot would be, if you got preferences in the second (active) column but the window is too small and only shows the folders from apps to optional. You can see where you are, if you look at the breadcrumbs, but you can't see it where you would naturaly look at, in the left column.

The third thing is that it's a pain to view folders with lots of files, if every file is rowed up. Sorting files doesn't work good, because you don't see your rule anymore (missing details for date, if you sort by date).

Column-based navigation as only way of navigation (and the way apple does it) won't work, because you kill lots of information and it is not the best way to see everything. You need to have several different ways to view foldercontents. Sometimes you want to see thumbnails, sometimes details, etc.

I actually don't prefer Column-based navigation, but you are right. Unexpierienced users have problems with tree-based navigation and I think column-based navigation might help them.
I worked with my cousin yesterday and she had problems finding her files, because she didn't see how the tree fits to the folder. After she was working for a while she navigated by looking at the foldercontent, not the folder name. She was in the right location already (her workspace for the task) and didn't have to go anywhere else in the filesystem just one or two levels up or down.
It would have been a big help for her to have column-viewed navigation, if she could have seen the content of the lower folder at the same time.

If you do one little thing different, I could see column-based navigation as a usable tool.

- PART 2------------------------------------------------------------

I think a good addition to your concept is to put a different view in the last/active open column. If I understand you right, you don't like the tree view. You like column view better. As I see it, column view is a tree view that takes more space. Why not combine both. The leading columns are fixed as shown in your picture or MacOSX. The active column is scaleable and shows at least full names. It would come in handy if you had an option to show details or other views at that place. That way you always have full control on your files and still have the benefits of column-based navigation.

Best regards,
Thomas

edit Sorry, this was supposed to be a new comment and no reply :-(

Re: One Desktop to Rule Them All: A Proposal for Revisions to Tr

Well done, 1 *but* about the file browsing using menu's; I really dislike clicking and hate doubleclicking too much. Therefore I love the menubrowsing but I agree about your considerations. I think the new method could work when you click just once on a folder but don't do doubleclicking!

I'd like to preserve the menu browsing but make them easier to handle and add browsing *UP* the tree not just down, AND making this much more visible and obvious! For example by more or less stacking a part of the sides of the menu's next to each other like this; going up; the next menu is stacked a bit upon the former. Going down; the next menu is stacked below and the former. All in a 3D-like way, with depth illusion.

I'm sure a handy artist could accomplish this.

Well done all!

breadcrumb bar

I'd also like (or rather have) a shelf like nextstep has, esp. for easy copy / pasting. Wikipedia has a nice explenation.

The icons in your mockup of the breadcrumb bar should also be above its collumn not partly besides it.

Re: One Desktop to Rule Them All: A Proposal for Revisions to Tr

Concerning the navigation through columns, this gives to me the idea of a horizontal presentation. You can see this proposal here:

http://lucmars.wordpress.com/2007/05/22/horizontal-files-system-navigation/

Mainly by this way, one could browse each top directories. Though, I agree that having control to display more info than the filename would improve the navigation.

Tracker

Concerning the navigation, I definitely miss a directory tree in the tracker !

And about the horizontal presentation, it seems to me being a bad idea over 3 or 4 level of sub-directory.

Re: Tracker

Instead of directory tree, customizable shorcuts on a side pan would be nice.

A bit off topil; a tool to raise and lower Windows' windows!

http://fy.chalmers.se/~appro/nt/TXMouse/

Now I finally have on my work; focus follow mouse, only raise with click on titlebar, put windows in the background aka. lowering windows, copy paste ala X-windows, etc.