And as you imply, when you have a lot of files that you need to organise, you tend to start compiling them into directories.
And as you imply, when you have a lot of files that you need to organise, you tend to start compiling them into directories.
Tags are very powerful if used properly. They describe sets by definition and allow quick filtering with intersections and other set operations. If the filtering is a bit smarter it can support boolean operators, or use tag distance and order as a meaningful data point so that e.g. "discussion board" doesn't return the same results as "discussion snow board".
They're a more flexible way to organize data than hierarchical directories. Hierarchy can easily be expressed with tags (use any character as separator, e.g. "os.linux"), but files and directories are not nearly as expressive enough for all the use cases tags can be used for.
You could put the same file in multiple directories. You could have a file in ~/vat and symlink it to ~/urgent and ~/accountant.
I'm really addressing the argument that tags are a revolutionary change that should replace the directory-based filesystem entirely. The cost seems too high to justify the benefit.
I'm not actually interested in building such a system, it's been done before[1,2]. Though I haven't actually used any extensively, since it does require a shift in how file management is done, and I'm quite familiar with filesystems to bother to change, but it's on my list. :)
[1]: https://tmsu.org/