GDC2009 has started, first publications should be available soon. Preparing for them, I wanted to organize my documents collection. “Standard”, filesystem organization isn’t perfect here. I usually try to categorize papers by conference or author, but it quickly gets messy. Say, I’ve paper from Siggraph2k8 by Bungie programmer. Should it go to Siggraph or Bungie directory? End result is that it always takes me too much time to find the publication I need.

Wouldn’t it be better to tag files (like Wordpress posts) and have possibility to search by tag? Sadly, I don’t know of a program that does this (there is one, for sure, I didn’t really try too hard), so I decided to hack simple app by myself. Result is DocOrganizer (yay for my imagination!).

When launched for the first time, it’ll simply display list of hard drives. You can specify file extensions that you’re interested in (by default - *.pdf & *.ppt), then right click on tree-view entry and let it rescan subtree searching for files (it’ll take a while). Now, it’s time to tag entries. Each file is initially tagged with it’s filename by default. Usually, I tag them by parent directory as well (right click and choose “Tag subtree with dir name”). That’s most there is to it, really, but it does what I wanted it to do. Now, by typing tags into filter textbox, you filter your documents. I didn’t really implement any fancy filtering mode, the only possibility is OR (tags separated with commas, so to see documents published at Siggraph or written by someone from Bungie, you type “bungie, sigg”). Sample snapshot (searching for Siggraph stuff):


Nothing fancy, but works well enough for my needs, especially as I slapped it together in one evening. It doesn’t detect deleted documents and other changes in the tree structure, in such case you have to rebuild the (sub)tree, filtering is rather slow (whole treeview is rebuilt), etc… In case you’re feeling adventureous – code + binary can be downloaded here.

Can’t wait to put GDC2009 docs there, I’ve already heard that Insomniac guys did great presentation.

PS. C++ implementation of Larrabee instructions is out!

Old comments

foo 2009-03-26 01:31:02

Nice but the docs I want the application to list are on a 500gb drive :( hack hack hack away, gently through the source

admin 2009-03-26 08:16:46

I feel for you, this definitelly isn’t a speed daemon :/

questor 2009-03-26 09:03:05

what a much better solution would be a tag-based filesystem… I’ve started a prototype but never came to a usable system because of no time :(

foo 2009-03-26 19:21:58

Actually I have just had the following recommended to me, which has tags which can be search on. I have not tried it yet.