Trees, TreeViews, and UI

First Pee Wee, now Gomer. If my server weren’t down I’d like totally link to you. Brilliant.

I suspect that if you’re not careful, labeling systems can get just as complex as other classification systems. I think labels tend to shift the complexity towards maintenance and away from navigation. For small domains, this is a really good thing. For larger domains - maybe not.

In the end, you just have to know the customer (of course).

I never use them (despite their apparent usefulness) because they are such a pain to setup - and then you have to actually remember to apply them.

Shouldn’t incoming emails be tagged with 1 or more labels automatically based on rules you set up? This part is no different than folders. It’s the after-the-fact flexibility that is superior.

Next time you are about to create a SQL table with a parent-child relationship to itself, just say no!

Yeah, a few of our apps have tables like this at their core, and I really don’t care for them. In Oracle, you have to use a special join syntax (CONNECT BY) to join the table to itself. :stuck_out_tongue:

I haven’t used GMail, but labels appear to be similar to Outlook’s search folders. I never use them (despite their apparent usefulness) because they are such a pain to setup - and then you have to actually remember to apply them. I suppose I could setup rules to apply the proper category - but that’s more work! :slight_smile: I get by with just a small set of special folders in my inbox for things I want to keep around.

How have you made the label management process easy for your users?

-Jeff M
Tree Hugger :wink:

I love labels! Adobe Photoshop Album is an example of an excellent implementation–the labels themselves can be arranged hierarchically, so that picture of Joe and Ted shows up when you click either the “Joe” or “Ted” labels, or their parent label “Friends”.

I think it goes further than the treeview, to all classification systems. Too often, programmers will create complex heirarchical classification systems, when a much simpler “labelling” scheme would be easier to implement, and easier to understand for the user.

Next time you are about to create a SQL table with a parent-child relationship to itself, just say no!

Even the example that you give of managers and employees breaks down in any situation other than the mythical “midsize organization” - in a small company you frequently have a flat heirarcy, and in any larger organization you’ll get people reporting to a personnel manager for vacation scheduling, etc), possibly more than one project manager, et cetera.

I think the notion of a relative treeview is interesting - a way to say, “From the point of view of this node, this is what the rest of the tree looks like,” but I’m not sure that its ever actually terribly useful as an absolute rooted view.

Joyce Kilmer was not a she. He was a he.

http://en.wikipedia.org/wiki/Joyce_Kilmer

Thanks-- I made the correction.

This is not always true. Hierarchies are useful when users are looking at the content for the first time and a long list would make things hard to find, but navigating in the tree is easy because they know the criteria by which the content is categorized.
It becomes the opposite once they learn the content - now tree comes in the way, they learn how to search etc. So we have a problem - we need trees at a certain point in time, only to replace them later, preferably on the fly while users are becoming more experienced with the data.

Google’s War on Hierarchy, and the Death of Hierarchical Folders

http://www.microcontentnews.com/articles/deathofhierarchy.htm

I am a personal fan of the “Search Folder” type of functionality found on Outlook 2003 and Windows Vista. This lets me build flat lists of interesting information regardless of how it is stored.

Here’s an interesting take on email Folders: they’re easy to abuse.

http://www.43folders.com/2006/08/10/folders-for-action/

With regard to Gmail’s lack of folders, I actually find it to be a pain in the neck in the absence of the ability to filter my view by label.

For instance, my mailing list account gets around a hundred emails a day - and at times I’d prefer to remove the wxPython or Plone list emails from my view, reduce the visual noise.

At the moment, I can’t do that. I can view one label specifically, but that’s not what I’m after.

If I could use folders in conjunctions with Gmail’s rules, I’d have no problems. Labels are great, but folders are useful too. :slight_smile:

PS Is this an overaggressive spam filter?

“Your comment could not be submitted due to questionable content: blxgspot matching (blxgspot)” Argh, can’t even submit this comment with the b-word intact.

No website for me. :frowning:

Liam, check out Gmail’s filters (Next to the search button up top).

You can create a filter that applies labels and sends messages to archive instead of your inbox.

Then, you can find a message to wxPython using a search like:
label:wxpython

And if you only want to find labelled stuff in your inbox, it’d be:
label:plone in:inbox

Tada!

Tags are a great way to categorise but older blogs that have hundreds of labels actually make me wish for hierarchy.

Unfortunately, one of the sections of our application deals with merchandise taxonomy. You know how you can go to your favorite electronics chain website and it let’s you search under electronics-computers-notebooks-blah blah blah. Yeah that’s the type of stuff that our application does. So I guess the treeview is the best widget in this case :wink:

Unfortunately the same applies to file systems: the “transitivity” of the hierarchy is an advantage, but without some kind of property/label/tag management, it quickly becomes very limited.

Agree. This gets into the whole “folksonomy” thing a bit, which drives the purists crazy. I think it’s great.

I came to this realization when catagorizing digital photos - the is a photo of me, AND it’s a photo of Tommy Lasorda, AND it’s in 1985, AND… So a photo has many attributes, all of which are useful in decribing it. The best information systems, then, are ones which allow me the flexibility to tag my information, and query based on tags.

A trick, or course, is that eventually it’s nice to have some standard categories. An example there is the Genre categories in MP3 ID3 tags.

Trees do have some other good uses.
-IDEs: when dealing with languages that have packages, a flat browser would be impossible.
-Anything that deals with multiple projects at once
-Many things that can be represented by xml or json
-Things built for multiple devices:
-Project A
–device a
—properties
–device b
—properties