I have a client that categorizes their documents.
Great, you think. Well, they categorize their documents in one or more of almost 3,000 categories. That’s something that’s hard to build a nice, simple interface for.
Here are some possible approaches that I and the few people I’ve asked have come up with:
1. Present a single page with all 3,000 categories, displayed hierarchically, each with a checkbox next to it. Yeah, that’s what we have today. Let me just say that it doesn’t work great, and that we didn’t start out with 3,000 categories.
2. Let people navigate to the category first (think the Yahoo! directory) and add the document there. We have that, too, but that only helps you choose the first cateogry, not the additional ones.
3. Present a series of drop-downs. First we show you one with the top-level. When you choose there, we show you another one with the subcategories of your first choice. We keep doing that until there are no children or you choose “Add category”. Yes, documents can be added to any category, including those that have subcategories.
4. A variant of this is to use multi-select boxes instead of dropdowns, mimicking the OS X finder interface.
5. Use a dynamic Windows Explorer-style tree, like XLoadTree.
6. Live substring-based search. Good if you know what you’re looking for, not good for browsing. And it short-circuits the structure, searching just the categories and not their relationship. This seems useful, but it’s an add-on to another solution, not a solution in itself.
I’d like to ask your advice. Please send me your suggestions. Screenhots or links to interfaces that solve this well, whether web or not, would be fantastic. Post in the comments or email me, and I’ll put it up and share.

Comments ↓
1 John Sequeira // Aug 02, 2006 at 05:09 PM
2 Kai // Aug 02, 2006 at 05:25 PM
3 Michael Yoon // Aug 02, 2006 at 05:47 PM
4 Dave Bauer // Aug 02, 2006 at 06:40 PM
5 Hartvig // Aug 02, 2006 at 09:09 PM
6 Thijs van der Vossen // Aug 02, 2006 at 09:48 PM
7 Tanya // Aug 02, 2006 at 10:42 PM
8 Lars Pind // Aug 02, 2006 at 11:11 PM
9 Lars Pind // Aug 02, 2006 at 11:19 PM
10 James Melzer // Aug 03, 2006 at 01:51 AM
11 Hamilton // Aug 03, 2006 at 07:21 AM
12 Eric Reiss // Aug 03, 2006 at 11:29 AM
13 Lars Pind // Aug 03, 2006 at 11:34 AM
14 Thijs van der Vossen // Aug 03, 2006 at 12:00 PM
15 Lars Pind // Aug 03, 2006 at 02:25 PM
16 Thijs van der Vossen // Aug 03, 2006 at 03:28 PM
17 Koyan // Aug 03, 2006 at 04:54 PM
18 Thijs van der Vossen // Aug 03, 2006 at 09:03 PM
19 Lars Pind // Aug 03, 2006 at 10:51 PM
20 Thijs van der Vossen // Aug 04, 2006 at 12:12 AM
21 Martin // Aug 15, 2006 at 02:07 PM