45

I'm asking not about professional software like IDE's, but about OS GUI and web interfaces.

A few years ago there was File manager in Windows, Gopher and other interfaces and data models like this.

Example of Windows File Manager
file manager in Windows

Example of Gopher.
Gopher

Now we rarely can see tree views in operation systems and applications, but we usually see tags, keywords or just one level of some tree structure.

Why tree views became unpopular?

  • Perhaps it's because tags generalize hierarchies? – redtuna May 31 '13 at 1:42
  • 3
    I don't believe they are unpopular. What makes you think they are? I have Windows 7 in front of me now and that still uses tree views. I use Axure for wireframing - that also displays content pages in a tree view. Photoshop displays its layers in tree-views... Seems to me tree views haven't gone anywhere. – JonW May 31 '13 at 8:54
58

People don't generally use hierarchical structures 'in the real world' -- it seems to be something that has been forced upon them, a technical remnant of the past.

What needs to be understood is the way that people recognise and organise things. Our brains don't work in a hierarchical way (without generating a lot of heat). Instead, we recognise things by similarity -- similarity of appearance, smell, taste, touch, etc. We see an apple, and we know it's an apple straight away. We don't have to think about it -- in a sense, it's a one dimensional way of thinking.

Since we recognise by similarity, it seems appropriate we should organise by similarity, too. This is something that hierarchical structure cannot achieve. Two documents may be very similar, but may differ by 3-4 branches on your tree. In the hierarchical world, these documents would be very distant. It is also difficult to define a canonical hierarchical structure -- a single document may be adequately described by two or more paths on your tree.

So it seems a more appropriate way is to 'cluster' documents. Rather than selecting documents to fit in some rigid structure, you create a fuzzy structure to fit your documents. You may create some descriptors (tags) for each document and use these as the basis of organisation.

The great benefit of tags is that they are relatively future proof. Trees work by assuming you know how you are going to query the documents in the future. For the Dewey system, this is fine because we are still querying books, in the same way, to find their bookshelf location. But, for digital documents, it may be more difficult to predict how we will query them in the future. By creating some semantic description of the document, it doesn't matter how we are querying in the future since the structure exists to explain the document, rather than simply locate it.

| improve this answer | |
  • 4
    +2 (but alas SE won't let me) for getting into the "functional" reasons of why trees don't mesh well with us people. – Marjan Venema May 30 '13 at 19:56
  • + Characterization is often more appropriate than classifying and allows structure to emerge around the artifacts instead of squeezing artifacts into a structure. – JustinC May 30 '13 at 21:16
  • 4
    +1 and like the Dewey decimal system, over time you see just how badly they match the current culture. Consider for example that languages like Mandarin are simply in "other languages", and the massive focus on Christianity. – l0b0 May 31 '13 at 13:56
  • 1
    +1 for "without generating a lot of heat" and "the structure exists to explain the document, rather than simply locate it". Very wise and funny answer. – Pol Jun 8 '13 at 10:13
  • 1
    It's not actually correct to say that our brains don't work at all in a hierarchical way. There is some hierarchy. However, it's true that it remains at a basic level and spreads middle-out (e.g., a basic category is "object", a specialisation of it might be a "car", and a generalisation of it might be an "entity"). People and places are also basic categories. I guess this basic hierarchy can be combined with tags clustering. – ekapros Jun 27 '13 at 17:06
26

There are several problems with trees:

  1. A tree is a single taxonomy. This requires the user's mental model to match the software developer's mental model of the domain.
  2. Navigating with trees requires high-precision mouse accuracy to expand a tree without selecting the branch. This is also very difficult to manage with touch interfaces.
  3. Navigating trees usually requires repeated interaction/clicking to traverse from the root to the desired leaf.
  4. Viewing the details of a leaf often obscures the broader context of the taxonomy and other interesting branches and leafs. This is the reason many multi-pane file explorers are created.

That being said, there are still many useful applications of trees. I think at one time, trees were "overused" and now there is a little more balance to the application of that pattern.

| improve this answer | |
10

Perception: A new market for low complexity ("entertainy") applications has developed - explosively. Thus, even with non-diminishing tree use, it diminishes in percentage and plays less of a role in discusison of "modern" UI and UX changes.

Alternatives: One feature of a hierarchy - fast locatability - has been largely replaced by instant search. We now have the computational and algorithmic power to implement it, and a certain large search provider training a huge user base in using this efficiently, even if this may be less efficient thant a well-designed and well-understood taxonomy.

Another alternative that has become popular (because it is sufficient in many cases when navigation is fast) is a breadcrumb-style hierarchy indicator.

Fluid ubiquitous data: A taxonomy requires maintenance and familiarity. Recent technology has made more data accessible, and gives access to faster-changing (e.g. user created) data.

A taxonomy of a tree requires a (sub-) central authority of definition and - when data changes - maintenance. Search does away with that cost.

On the other side, many long-running taxonomies suffer from "initial skew" [citation needed], they fit the original data very well, but might be more efficient when rebuilt for current data. However, that would kill familiarity with the taxonomy, harming users.

| improve this answer | |
2

rarely? I see them all the time.
Half the windows I have open right now contain tree views, and half the other half are either console windows or this web browser loaded with SE.
Tree views can be very useful, depending on context. It's just that ever more people seem to think they're "outdated" and try to find twisted ways to do things differently for no other purpose than to be seen doing things differently.
Of course there are places where tree views were used (and sometimes are used) inappropriately, but the same is true for everything.

| improve this answer | |
2

I agree with others here in that search and tags have replaced hierarchical conceptual models in many cases because they have real advantages both on the content creation side and the content consumption side.

But I must point out that tree hierarchies are hardly obsolete as conceptual models that are surfaced in UIs. Often it is the right conceptual model (e.g. underlying file/directory systems). While a label categorizing system as in gmail is more flexible than a hierarchical categorizing system, in some ways the more concreteness of a folder hierarchy is easier to understand.

| improve this answer | |
1

The number 1 answer for this question begins by stating:

"People don't generally use hierarchical structures 'in the real world' -- it seems to be something that has been forced upon them, a technical remnant of the past."

What?!? That's crazy talk. This is an old question but I wanted to answer it because it's spreading a bit of misinformation. Hierarchical systems are actually pretty awesome and efficient. I don't know what this guy is talking about.

He also says that:

"What needs to be understood is the way that people recognise and organise things. Our brains don't work in a hierarchical way (without generating a lot of heat). Instead, we recognise things by similarity -- similarity of appearance, smell, taste, touch, etc. We see an apple, and we know it's an apple straight away. We don't have to think about it -- in a sense, it's a one dimensional way of thinking."

This is crazy too. Our brains don't organize information in a hierarchical system but if it did, it would work much more efficiently. Our brains literally cannot work in a hierarchical way so it won't generate a lot of heat. It simply can't do it. And, our brains do not work by similarity either. I take that back. It does a little bit of classification. For example, they might put red memories next to red memories but this system of classification is actually a minor, secondary method used by the brain. The brain actually stores information by chronological order. That's it. Do you, guys think that's efficient at all? This is why when you forget something, no matter how much you think about the events that occurred after you lost something, you will NEVER remember where you placed it. But, simply walk to place at the time right before you lost it, you'll remember where you put the lost object in a second. Every memory is linked in one direction - forward. You can't remember things backward, unfortunately. Try it.

Storing things chronologically might be appropriate sometimes but many times, it's not very efficient. Yet, that's how Evolution set things up. By the way, tagging has its good points but it has its bad points too. But that's a topic for another time.

I just wanted to make sure people understood that hierarchical filing systems are not some remnant of the past. They are an excellent way of organizing information. You can divide the number of files into 2, 3, or 10 different folders (4 is preferred) based upon a sensible category. Doing it this way, you can quickly whittle down the number of files until you finally locate your file. For example, if you have 10,000 files, you only need about 6 folder levels to find the file you want.

So, what's the problem? The problem is that the amount of information has increased exponentially. I don't mean it has increased exponentially from 20 years ago to today. No. It has increased exponentially each year for the past 2 decades. This is the problem of today. TMI. Too Much Information. Maybe, we should rename it Too Many Files. Whatever. This problem actually started at the advent of the internet. We had something called portals like Yahoo, AOL, and MSN. These were websites that helped people find the websites that they needed. Need to go shopping? Yahoo gave you a comprehensive list of where to click. It was essentially a list of websites divided via a hierarchical system. But, the problem even then was the number of websites was literally growing exponentially. The portal up keepers could not keep up with reviewing which websites were the best and posting it on their website. Search engines were apparently needed and needed quickly. Now, here comes the ingenious part. It wasn't intentionally ingenious but just lucky but still an ingenious arrangement if it was done intentionally. Search engines found a source of labor that could quickly find the website that you were looking for. Nope, it wasn't immigrants or out-sourcing the labor to India. The source of labor was the Department of Y.O.U. You and everyone else found the website for you and everyone else! You and everyone else did the work for the search engines! The websites you and everyone visit most often is tracked by the search engines and pushes them up higher in the site rankings. Basically, Google is taking your work and you pay them for it! Apparently, it's billions of dollars a year. Ironic isn't it? Or, maybe the correct word is sick? I don't know.

If you read an introductory book on information science, they would immediately explain that hierarchical file systems are a great way to organize data. However, the main reason that hierarchial file systems are becoming less popular is that they start to become inefficient as the number of files grows large.

I'll go through a simple explanation. I forget the exact number but after a certain number of levels, it gets mentally strenuous and time-consuming to retrieve just one file. For example, say you have 50,000 files which is slightly large for a personal computer. You'll need at most 8 levels of folders to reach the deepest folder if each folder node branches into 4 other folder nodes. (4x4x4x4x4x4x4x4=65536) You'll probably need less folder levels but I am giving you the worst-case scenario. Just going through 4 levels is time-consuming but imagine having to go through 8 folder levels to reach the file that you want!

This is why tagging has been becoming a more important system of file organization. The number of files have increased dramatically. In servers, it's not surprising to find tens of millions of files. Are you going to search through them via a folder system? That would be nuts. Tagging is a way to get to the information directly. The only problem is that tagging comes with its own problems like creating unique names.

| improve this answer | |
0

My take is that the most valuable thing a tree does is this:

  • Current thing
    • Details of current thing
    • More details
    • More details...
  • Another unrelated thing
    • Its details
    • Amazing details
    • More details

That is, it lets you see the detail of several different things at once.

IMHO - this is not a very useful attribute. Most of the time, you get better UX by only showing the single most relevant view, which is why the modern replacement of a tree view looks more like this:

  • Current thing
    • Details of current thing

< go back

| improve this answer | |
  • The problem is, that this only works if the tree does not have more than a few nodes per branch, and they are not too deeply nested. Otherwise, the view you present is going to be obscured by lots of - potentially irrelevent - data. Also, the details end up in lists under each other. That makes for a harder comparison than next to each other. So, IMHO, the tree doesn't work all that well for the usecase you describe. – André Jun 5 '13 at 6:01
  • My point is that trees are useful in a limited range of circumstances. (I can't tell if you're agreeing with that or not.) – Steve Bennett Jun 5 '13 at 6:07
  • I agree with that statement, but I disagree that the feature of being able to see several things at once is one of them in the general use case. – André Jun 5 '13 at 10:24

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy