|
|
Subscribe / Log in / New account

Zooming with Eagle Mode

August 20, 2014

This article was contributed by Adam Saunders

Zoomable user interfaces (ZUIs) — using "zooming in" and "zooming out" as the controls for an application's interface — are often a good way to manage human interactions with complex graphical information on a computer; for example, a ZUI makes intuitive sense for software maps, like OpenStreetMap. An open-source project, Eagle Mode, uses a ZUI to navigate through the filesystem, which is quite a departure from the style of well-known file managers like Nautilus and Dolphin. That makes for quite a different user experience, which is worth exploring.

Eagle Mode is developed by Oliver Hamann and licensed under GPLv3; the project began a few years ago and has been adding features since. I tried out its latest version, 0.85.0, which was released in June, on Fedora 20. There are also packages available for download for Windows, multiple Linux distributions, and a source code archive file. [Eagle Mode]

Eagle Mode's ZUI may not be intuitive at first. Thankfully, there's a straightforward user guide to get started quickly. I've found it best to use it with a mouse; the official system requirements states that one should have a mouse "with three buttons (not emulated) and with a smooth-running wheel". One can zoom in the "content view" — which displays the directories and files you are looking at — by setting your pointer at a certain spot and rolling your mouse wheel up, and zoom out by rolling it down. Holding down the middle button lets one scroll by moving the mouse, instead.

A few minutes playing with Eagle Mode can lead to some pleasant surprises and an immediate sense of the value that it can provide users. For example, one can zoom into a music folder, find a subdirectory with a song one likes, and zoom into the song. The song will then load, and one click will begin playback within Eagle Mode itself. Zooming out stops playback.

Just one experience like that can trigger ideas of other practical uses. Zooming into a pictures folder lets you see previews at a glance. Zooming into a folder with a number of PDFs lets you read them. You can also snap a panel (e.g. a folder, a file, or the preview of a file's contents) into a full view quickly: "For showing a panel full-sized so that it fits into the view, double-click with the middle mouse button on the panel. And for showing a panel full-sized so that the view is completely utilized, triple-click or shift-double-click with the middle mouse button on the panel."

As with other graphical file managers, double-clicking on the file itself launches an appropriate program to handle the file in a separate window, so one could, say, double click a song to launch it in a separate music player, and then go back to Eagle Mode to navigate the filesystem again while the music plays. Another way to multitask is to simply run multiple instances of Eagle Mode itself, so that one could have an Eagle Mode window dedicated to, say, music playback, and another for browsing PDFs, and so on.

[Virtual cosmos]

The "control view" — "a replacement for classic menu bars, tool bars and status bars" — is packed with features. There are lots of buttons and options; some are miniscule without zooming-in, though, which is an initial discoverability challenge. Like other file managers, there are integrated tools to sort files in directories (e.g. by name or date of modification), to rename or move files, to make new directories, and so on. There are also some buttons for bash commands, like chmod and grep, which can come in handy. There's even built-in chess, netwalk, and 3D minesweeper games, which, like the view of the filesystem, form discrete parts of an overarching graphical "virtual cosmos": a simulated view of the stars with different tools and functionality visible as discrete celestial bodies (seen at right).

I only had a few usability quibbles with Eagle Mode. It isn't intuitive out-of-the-box, but that's more the fault of the relative homogeneity in desktop GUI file managers than anything Eagle Mode does. The control view is powerful, but one needs to zoom-in to see many of the options, which obscures the content view, and then zoom-out to see the content again. This can feel a bit cumbersome and slow. Eagle Mode also assumes that certain packages are installed on one's system that may not be there, such as GIMP and Abiword; without these programs, there will be errors displayed when the program is instructed to show previews or open certain file types. These issues can be corrected relatively quickly by making changes to configuration files.

Speaking of the code, Eagle Mode is written in C++ and Perl and extensively documented, with both standalone information for developers and thorough comments in source code files. There is a C++ API for extending Eagle Mode's functionality; one has the option to make a plugin that "could show in the virtual cosmos and/or in the file manager, [or] a standalone application [which would show] as [its] own window on the desktop". As a test, I was able to download the source code, modify Eagle Mode to use a different program for handling office documents, and compile it in about a minute on my laptop.

With the number of different command line and GUI-based approaches to interact with the filesystem, one may question Eagle Mode's claimed efficiency improvements over its competitors. As mentioned above, there is a non-trivial learning curve to get the most out of the project, which may be enough of a time investment for non-technical users to outweigh its ostensible productivity benefits.

Eagle Mode is also a bit resource-hungry; the system requirements page describes memory requirements as: "1 GB RAM and 1 GB swap space (or more RAM). [...] If you run Eagle Mode with less memory, then your first job after starting should be to navigate to the Preferences (somewhere in the upper left area of the control and) view lessen the value for Max Megabytes Per View." Eagle Mode also recommends "an accelerated graphics driver. On UNIX-like systems it should be an accelerated X-Server with a fast XShm extension. 3D acceleration is not needed. It is not recommended to use something like a 3D desktop or composite manager, because that could slow down Eagle Mode a lot." I was surprised by the latter recommendation, as I didn't experience sluggishness on GNOME 3.10, although I do have 4 GB of RAM and Intel HD 4000 integrated graphics on my machine.

Given the learning curve and resource demands, some may feel Eagle Mode misses out in comparison to its more widely-known competitors. Some desktop environments, like GNOME, can find individual files with a tap of the Super key and typing a few letters of the file's name. Synapse, an application and file launcher, provides similar functionality to GNOME's individual file finding tool, while being lightweight and usable across a variety of desktop environments and window managers.

If speed of diving into frequently-used or half-remembered files is primary for the user, then those competitors may trump Eagle Mode. For example, hitting Super, typing "ArticleAugust21" and then Enter, remained faster for me than trying to line up Documents from my Home folder and zooming, then lining up my LWN article writing folder and zooming, then double-clicking the draft of this article. Nonetheless, Eagle Mode can beat the competition at a number of tasks, including managing folders with many pictures and skimming through a folder of PDFs to find the right one.

Down the road, some future development plans may be interesting to see, potentially including an API for writing plugins in other programming languages. There is an old video of a not-yet-publicly-released Android version [YouTube]. As a recent email correspondence with Hamann revealed, the Android version hasn't been worked on "for more than two years now, and maybe it will take some more years until I seriously come back to it. My estimation is that it requires about 400 hours of work until release. But one day it will come, for sure." He also plans to connect the API to X11 to handle "touch events and gesture programming."

Most interesting to see in the near future will be graphical effects and UI overhauls that Hamann referred in his email to me as "view animators", which include "kinetic effects for the zoom and scroll functions (e.g. swipe with mouse), animation of navigation functions like [...] bookmarks, and last but not least [...] automatically position[ing] the nearest content (a picture, a text page...) full-sized in the view." Hamann expects these changes to come out "with version 0.86.0 perhaps in November or December this year".

Perhaps most fascinating about Eagle Mode is the developer's philosophy behind the project: he believes "that ZUIs could make computing easier and faster, and that it would be a good idea to replace most GUIs by ZUIs." On the project's home page, he notes that "The Eagle Mode C++ API could be used to develop human machine interfaces, or control stations, or similar industrial applications, as [ZUIs]. If it is well done, a ZUI in that area could be very intuitive and logical to use, and it could surely improve and accelerate the work significantly". Whatever one's opinions of Eagle Mode itself, Hamann's assertion that most GUIs should be discarded in favor of ZUIs is certainly thought-provoking.

Imagine a doctor zooming through electronic patient files to quickly load up and compare X-ray results, or biologists zooming three-dimensional images from macroscopic to microscopic. Imagine a screen integrated into a gesture-detecting wall in your living room, displaying graphical abstractions for a camera, a TV, a game console, and a phone; one could zoom in with gestures to start a video chat, watch a movie, play a game, or look in your contacts list and call someone, respectively.

Eagle Mode is more than a file manager. It's a manifestation of one person's wish to challenge the way we think about how humans should interact with the computers in their everyday lives. Maybe we need to stop thinking about grey, utilitarian filing cabinets, and start thinking about soaring like an eagle, ready to zoom in on the varied landscape below.

Index entries for this article
GuestArticlesSaunders, Adam


to post comments

Zooming with Eagle Mode

Posted Aug 21, 2014 3:03 UTC (Thu) by Cyberax (✭ supporter ✭, #52523) [Link] (2 responses)

"It's a UNIX system!"

Zooming with Eagle Mode

Posted Aug 25, 2014 17:35 UTC (Mon) by Baylink (guest, #755) [Link] (1 responses)

I believe the quote is "It's a UNIX system; I know this." :-)

This isn't all that far off from what SGI had, I don't think, though I never sat in front of one.

Zooming with Eagle Mode

Posted Aug 25, 2014 19:18 UTC (Mon) by Cyberax (✭ supporter ✭, #52523) [Link]

You can try it on Linux: http://fsv.sourceforge.net/ (I don't think it compiles with the modern gcc, though). Amusing, but impractical.

Zooming with Eagle Mode

Posted Aug 21, 2014 13:38 UTC (Thu) by dskoll (subscriber, #1630) [Link]

I tried Eagle Mode; it's very cool. I zoomed out to the Virtual Cosmos and then zoomed out more and more until I was zoomed out all the way. Very nice. :)

I'm not sure how useful Eagle Mode is, but it's definitely fun and thought-provoking.

Zooming with Eagle Mode

Posted Aug 21, 2014 13:47 UTC (Thu) by tshow (subscriber, #6411) [Link] (3 responses)

Jef Raskin devoted a good chunk of his "The Humane Interface" book to zooming UIs.

Zooming with Eagle Mode

Posted Aug 26, 2014 9:16 UTC (Tue) by gasche (subscriber, #74946) [Link] (2 responses)

KDE4 announced that it would experiment with ZUI; see for example this 2007 story on the future of Plasma, citing Jeff Raskin's work. I'm not sure why the ZUI was dropped or never materialized into a useful, well-known tool. I suspect after the release the KDE4 developers were very busy working on stuff to "make users less angry", and never got time to work on the more experimental stuff.

Zooming with Eagle Mode

Posted Aug 26, 2014 9:30 UTC (Tue) by halla (subscriber, #14185) [Link] (1 responses)

I remember playing with it; I also remember we tried to implement a zui for shape object selection in KOffice back then. The problem was that even with a prototype implementation it already becomes quite clear that zui's don't work -- they sound cool but are a bad idea if you care about usability and productivity.

Zooming with Eagle Mode

Posted Aug 27, 2014 11:43 UTC (Wed) by dgm (subscriber, #49227) [Link]

I think I have to disagree. I just have discovered this application: http://strlen.com/treesheets/

The menu and toolbars are a classic GUI, but the grid editor is a ZUI, and it works considerably well.


Copyright © 2014, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds