>I have never (never ever ever) seen a tag based system actually work once you have large amounts of files and tags
If you've ever done online shopping, you probably have. For example, try going on Amazon or Newegg and searching for a GPU. You're shown a sidebar where you can easily filter results be certain tags such as: brand, price range, memory size, core count, in stock, energy star certified, free shipping, etc.
I don't think these systems work nearly as well as you do.
Simple example right now:
Go on amazon, and search for "intel CPU" - I see the following:
1-16 of 942 results for "intel cpu"
Now go back and search for "cpu", then filter by brand "intel" - I see the following:
1-24 of 835 results for "cpu"
It turns out the tags are exactly what I said they would be - a hodgepodge of things not correctly applied. For example - searching "intel cpu" actually returns items that include intel CPUs (such as motherboard + cpu bundles) that are missing in just the tagged search. But it's still absolutely a valid result if I was interested in buying a cpu.
---
as mostly an aside - I don't really trust Amazon or Newegg to be neutral in their results either, a tagged view is convenient to them as a seller where they can control results.
... and on the top of the list, the first thing you click as a part of the filter, is a hierarchical locator:
Home Components -> Video Cards & Video Devices -> Desktop Graphics -> Cards Search Results: "GPU"
The tags system works for specific areas. For example, tags in photo management apps are great. But they don't really work across separate domains, so what you want is top-level hierarchy, and, where needed, tags for the subtrees. That's how existing tag systems work.
If you've ever done online shopping, you probably have. For example, try going on Amazon or Newegg and searching for a GPU. You're shown a sidebar where you can easily filter results be certain tags such as: brand, price range, memory size, core count, in stock, energy star certified, free shipping, etc.