Miller Columns
Encyclopedia
Miller columns are a browsing/visualization
technique that can be applied to tree structures
. The columns allow multiple levels of the hierarchy to be open at once, and provide a visual representation of the current location. It is closely related to techniques used earlier in the Smalltalk
browser, but was independently invented by Mark S. Miller
in 1980 at Yale University
. The technique was then used at Project Xanadu
, Datapoint
, and NeXT
.
While at Datapoint, Miller generalized the technique to browse directed graphs with labeled nodes
and directed graphs with labeled nodes and arcs. In all cases, the technique is appropriate only for structures with high degree (large fanout). For low-degree structures, outline editors or graph viewers are more effective.
Finder
, as well as the "Browser" view in iTunes
.
The columns in Finder descend directly from the NeXTSTEP
File Viewer's use of Miller columns going back to 1986. The GNUstep
project continues to offer a Miller column browser that closely follows the NeXT approach, bringing the advantages of a Column browser to Linux
, BSD, and other operating system
s with large tree structures. The iPod
's browsing of categories and audio file tag attributes is reminiscent of column browsing, but only one column is visible at a time. Many software music players
implement a "tag browsing" feature that utilizes Miller columns. An implementation of a columns view is also available in the Dolphin
file manager in KDE 4.
Information visualization
Information visualization is the interdisciplinary study of "the visual representation of large-scale collections of non-numerical information, such as files and lines of code in software systems, library and bibliographic databases, networks of relations on the internet, and so forth".- Overview...
technique that can be applied to tree structures
Tree (data structure)
In computer science, a tree is a widely-used data structure that emulates a hierarchical tree structure with a set of linked nodes.Mathematically, it is an ordered directed tree, more specifically an arborescence: an acyclic connected graph where each node has zero or more children nodes and at...
. The columns allow multiple levels of the hierarchy to be open at once, and provide a visual representation of the current location. It is closely related to techniques used earlier in the Smalltalk
Smalltalk
Smalltalk is an object-oriented, dynamically typed, reflective programming language. Smalltalk was created as the language to underpin the "new world" of computing exemplified by "human–computer symbiosis." It was designed and created in part for educational use, more so for constructionist...
browser, but was independently invented by Mark S. Miller
Mark S. Miller
Mark S. Miller is an American computer scientist. He is known for his work as one of the participants in the 1979 hypertext project known as Project Xanadu; for inventing Miller Columns; as the co-creator of the Agoric Paradigm of market-based distributed secure computing; and the open-source...
in 1980 at Yale University
Yale University
Yale University is a private, Ivy League university located in New Haven, Connecticut, United States. Founded in 1701 in the Colony of Connecticut, the university is the third-oldest institution of higher education in the United States...
. The technique was then used at Project Xanadu
Project Xanadu
Project Xanadu was the first hypertext project, founded in 1960 by Ted Nelson. Administrators of Project Xanadu have declared it an improvement over the World Wide Web, with mission statement: "Today's popular software simulates paper...
, Datapoint
Datapoint
Datapoint Corporation, originally known as Computer Terminal Corporation , was a computer company based in San Antonio, Texas, United States. Founded in 1967 by Phil Ray and Gus Roche, its first products were, as the company's initial name suggests, computer terminals...
, and NeXT
NeXT
Next, Inc. was an American computer company headquartered in Redwood City, California, that developed and manufactured a series of computer workstations intended for the higher education and business markets...
.
While at Datapoint, Miller generalized the technique to browse directed graphs with labeled nodes
Node (computer science)
A node is a record consisting of one or more fields that are links to other nodes, and a data field. The link and data fields are often implemented by pointers or references although it is also quite common for the data to be embedded directly in the node. Nodes are used to build linked, often...
and directed graphs with labeled nodes and arcs. In all cases, the technique is appropriate only for structures with high degree (large fanout). For low-degree structures, outline editors or graph viewers are more effective.
Popularizing the column browser
Miller columns are most well known today as the "columns" view of the Mac OS XMac OS X
Mac OS X is a series of Unix-based operating systems and graphical user interfaces developed, marketed, and sold by Apple Inc. Since 2002, has been included with all new Macintosh computer systems...
Finder
Macintosh Finder
The Finder is the default file manager used on Mac OS and Mac OS X operating systems; it is responsible for the overall user-management of files, disks, network volumes and the launching of other applications...
, as well as the "Browser" view in iTunes
ITunes
iTunes is a media player computer program, used for playing, downloading, and organizing digital music and video files on desktop computers. It can also manage contents on iPod, iPhone, iPod Touch and iPad....
.
The columns in Finder descend directly from the NeXTSTEP
NEXTSTEP
NeXTSTEP was the object-oriented, multitasking operating system developed by NeXT Computer to run on its range of proprietary workstation computers, such as the NeXTcube...
File Viewer's use of Miller columns going back to 1986. The GNUstep
GNUstep
GNUstep is a free software implementation of Cocoa Objective-C libraries , widget toolkit, and application development tools not only for Unix-like operating systems, but also for Microsoft Windows. It is part of the GNU Project.GNUstep features a cross-platform, object-oriented development...
project continues to offer a Miller column browser that closely follows the NeXT approach, bringing the advantages of a Column browser to Linux
Linux
Linux is a Unix-like computer operating system assembled under the model of free and open source software development and distribution. The defining component of any Linux system is the Linux kernel, an operating system kernel first released October 5, 1991 by Linus Torvalds...
, BSD, and other operating system
Operating system
An operating system is a set of programs that manage computer hardware resources and provide common services for application software. The operating system is the most important type of system software in a computer system...
s with large tree structures. The iPod
IPod
iPod is a line of portable media players created and marketed by Apple Inc. The product line-up currently consists of the hard drive-based iPod Classic, the touchscreen iPod Touch, the compact iPod Nano, and the ultra-compact iPod Shuffle...
's browsing of categories and audio file tag attributes is reminiscent of column browsing, but only one column is visible at a time. Many software music players
Audio player (software)
An audio player is a kind of media player for playing back digital audio, including optical discs such as CDs, SACDs, DVD-Audio, HDCD, audio files and streaming audio....
implement a "tag browsing" feature that utilizes Miller columns. An implementation of a columns view is also available in the Dolphin
Dolphin (software)
Dolphin is a free and open source software file manager for and part of the KDE Software Compilation. It is the default file manager in the current version, KDE Software Compilation 4, and can be optionally installed on K Desktop Environment 3...
file manager in KDE 4.
See also
- ShelfShelf (computing)The Shelf is an interface feature in NeXTSTEP and OPENSTEP, and is used as a repository to store links to commonly used files, directories and programs, and as a temporary "holding" place to move/copy files and directories around in the file system hierarchy...
: NeXT GUI element that can be combined with columns to make a file manager. - Some Microsoft WindowsMicrosoft WindowsMicrosoft Windows is a series of operating systems produced by Microsoft.Microsoft introduced an operating environment named Windows on November 20, 1985 as an add-on to MS-DOS in response to the growing interest in graphical user interfaces . Microsoft Windows came to dominate the world's personal...
file managerFile managerA file manager or file browser is a computer program that provides a user interface to work with file systems. The most common operations performed on files or groups of files are: create, open, edit, view, print, play, rename, move, copy, delete, search/find, and modify file attributes, properties...
s such as CubicExplorerCubicExplorerCubicExplorer is an open source file manager for Windows operating systems family. Its goal is to be easy and pleasant to use while still having powerful features...
and UltraExplorer use this technique with the name Drop Stack.
External links
- FSViewer a GNU file system viewer similar to NeXT's Workspace Manager, with code
- Greg's Browser a NeXT-inspired column browser for the Mac OSMac OSMac OS is a series of graphical user interface-based operating systems developed by Apple Inc. for their Macintosh line of computer systems. The Macintosh user experience is credited with popularizing the graphical user interface...
that predates Mac OS X - NSBrowser The Cocoa/NextStep class that represents a generalized Miller Column widget
- Path Finder an alternative file system viewer for the OS X Finder
- Ranger a console file manager for Linux written in Python, inspired by Miller columns
- RBrowser a Miller Column FTP browser that started on NeXTSTEP
- UltraExplorer a file manager for Microsoft WindowsMicrosoft WindowsMicrosoft Windows is a series of operating systems produced by Microsoft.Microsoft introduced an operating environment named Windows on November 20, 1985 as an add-on to MS-DOS in response to the growing interest in graphical user interfaces . Microsoft Windows came to dominate the world's personal...
that has a column mode similar to Mac OS X column view