(HFS here means “hierarchical file system”, i.e. one with nested folders.)
I tire of the either-or dichotomy. Yes, search is great. But a couple years ago, I adopted Johnny Decimal[0] for storing my archive files and I couldn’t be happier. Our 2023 tax filings are in 22.23. Physics articles are in 34.04. Her CME records are in 43.03. Go into one of those and you’ll find every file I have related to those things.
And they’re still searchable. You can still do tag-based queries, indexed text searches, and all that, but you don’t have to. When I want all my 2025 tax deduction receipts come tax filing time next year, I’ll send the contents of 22.25 to my accountant and be done with it, confident we found 100% of the related files.
I don’t do those for everything. Music files are in their own directories. Movies live with movies. I don’t try to shoehorn Obsidian into it. But all my long-term storage files go straight to their home in JD.
This has the huge benefit that I can instantly locate them when I’m accessing the archive from my phone, my wife can find things without learning special tooling or the vagaries of search, and there’s zero need for any additional apps or software beyond Finder.
I love using great search software. I used Devonthink daily for years. But I also adore not having to.
I wouldn't bother; the time for this is past. It is not worth curating tags/ontologies. Let the computer do it for you, or don't: just search. Google was right.
The problem is acute in organizations, where the question of ontology ownership crops up. The last place I worked at had a dedicated engineer on the job. And marvel at the elaborate systems Wikipedia and StackOverflow have to manage their ontologies. It is best to avoid that stuff and improve search instead, which is likely why an ontology was sought in the first place.
This argument's been coming up every now and then since at least 2010, but it never goes anywhere. macOS has had tags in Finder for years, and few people actually use them; I like them and still fail to use them consistently.
I wonder if there's a counter-argument to be made that humans organize their knowledge of the world in ontological hierarchies, so a hierarchical file system is intuitive.
Tags only work when it's a restricted domain. Like your music files, or ebooks, or your pictures library. So the best way is to construct multiple volumes, one for each type of repository. But it's not truly universal because of hardware devices you can't program as we don't have standards for tags.
The primary problems with tag-based organization are that 1) tags are difficult to organize hierarchically and 2) discoverability of existing tags tends to be poor.
However, if you have multiple overlapping hierarchical organization, common operations such as "moving" and "deleting" become overly complicated.
IMO, there's no best way, only different pros/cons and compromises.
From what I understand, the author's proposal for a tag-based file system reminds me of how Microsoft Azure Blob Storage works.
Azure blobs support multiple queryable tags per file, which aligns with the idea of organizing by metadata instead of folders.
It’s not as deeply integrated or user-centric as the article suggests, but it offers a practical usage, especially for large-scale, developer-driven storage.
Are there good examples tools for tagging files? I've long been interested,but haven't found anything good.
There's a standard used in content management systems that's been around for, I think, over twenty years - JCR, or Java Content Repository.
I know this is about an OS and not a CMS, but it seems storing your documents in a repository like this would be useful - not sure about the rest of the OS though.
It could still be a good idea. Wrote about almost the same thing in 2008 https://wouter.info/tag_based_file_management.pdf
Past comments: https://news.ycombinator.com/item?id=29141800
the one thing about hierarchies that keeps them alive for me is that I am forced to assign one when I save a file, and they already exist. Sure, you could have a dumping ground like a "downloads" folder, but that's temporary or expendable.
It's probably easier to just through everything into a clustering algorithm and autotag than going back and tagging tens of thousands of files.
I still want hierarchies. Tags would be a great addition, though.
Actually I don't care for any kind of organization for personal files. I just search.
I have my _really_ important files that are cumbersome to recreate like a <50kb jpg of my signature for those annoying forms, scans of my identity cards, etc, in ~/Documents/important
I have my to-read stuff in ~/Documents/books
All my other files are slammed together in ~/Downloads. I search through the folder using everything.exe (on windows) or fsearch(on linux).
That already covers the 90% case, and for the rest recoll maintains a search index that even stores file contents (including zip,pdf,xml-based stuff like office files). It works well. These days I hear everything.exe itself supports searching within files.
On the other hand, I'm really picky about properly hierarchically organizing code files in any SW project I do, and proper hierarchical organizing of the app folder of any app I make. As for tags, the only reason I see myself using them is for pictures. It can enable a deterministic version of Google photos search. But I'm happy with Google photos search for now.
My files are mostly org-mode/org-attach-ed stuff, linked in notes so they physically reside in a cache-like structure, accessed via search&narrow.
Classic taxonomies are a thing of the past.
I'm going to admit that I didn't read the whole article.
I remember about 10-15 years ago that there were a lot of photo organizers that supported tagging. Tag the events as birthday or the people's names. I saw a lot of people who would then post "My photo organizer has been discontinued and I spent years organizing by tags. How do I migrate all the tags to another photo editor."
The hierarchical file system is kind of a lowest common denominator. I can copy a directory structure from ext4 to brtfs to zfs to ntfs to exfat to macos or whatever and have the same organization.