tsunami tags

Luke Breuer
2009-02-01 18:26 UTC

Tags are about the simplest way to do rough classification of pieces of data. They're just little descriptors. If used consistently, they can be pretty useful. To what extent consistency can be attained is something that will have to be determined through usage by more than just one person.

I have started a little experiment called hierarchical tags. These are simply tags that contain dashes. The idea is that you can click on different parts of them as indicated below, to narrow down your search. For example sql-script can be specialized into sql-script-2005 and sql-script-2008. I have no idea whether this will end up being a good idea or not.
technical/user interface
Tags are parsed according to this regex:
(?<!-)         # not preceded by '-'
([\w\.#]+)     # valid keyword characters
(?:            # followed by - and more valid keyword characters
)*             # a is valid, a-b is valid, a-b-c, etc.
Any characters not in the above simply don't get processed. That means many delimiters are available. I find the best delimiter is simply a space.

^^^                      click and get tag results for "sql"
   ^^^^^^^                                             "sql-script"
          ^^^^^^^^^^^^                                 "sql-script-awesomeness"
tags vs. relationships
Tags don't scale. Once you get more than N results for a tag, you either have to filter by including/excluding other tags, adding text criteria, etc. In contrast, actual relationships let you describe why the connection between two items in tsunami exists. You can do a lot of other cool stuff that I have yet to explain.