Live data from Hacker News

Tagsistant: semantic filesystem for Linux

tagsistant.net

31–40 of 71 posts

Re: Tagsistant: semantic filesystem for Linux

#31
post #14

Hierarchical file systems lack expressiveness and are awkward in places. In my day-to-day computing this has become more apparent and problematic with each passing year. For example, I dislike that you are forced to give unique names for each file, that you can classify each file in only one way, and that you can't tell how many copies you own of a piece of data. The smallest step up from a hierarchical file system i…

Awesome writeup! This goes right to the printer :)

Printing it out because it's too long to read on screen? (Maybe I have failed as a writer to be concise)

Re: Tagsistant: semantic filesystem for Linux

#32
post #30
post #14

Hierarchical file systems lack expressiveness and are awkward in places. In my day-to-day computing this has become more apparent and problematic with each passing year. For example, I dislike that you are forced to give unique names for each file, that you can classify each file in only one way, and that you can't tell how many copies you own of a piece of data. The smallest step up from a hierarchical file system i…

I remember for a while Google Drive worked on a tags metaphor and it was just too much friction for users. The UI for the traditional file tree is just plain cleaner. Trees provide clear delineations of ownership and categorization. They suffer from the limits of hierarchies, but you can break them down and get a nice tree-view of them, for example. Having spent time categorizing my photos, adding a tag layer on top…

I wasn't aware of the Google Drive thing; that's a shame it was found to be confusing to users. I'm glad Gmail still has tagging, because I do label my messages in multiple ways, and would find it agonizing to use a hierarchy.

Regarding photos, I fully intend to have a tag-only system to organize my own collection. I see file names and folders and counterproductive.

I agree with you that tagging becomes more complicated, and the semantics of "delete everything in here" is different. Gmail provides some insight into this - you have to distinguish between untagging a bunch of files versus actually deleting the messages (and any tags they carry). This isn't a dealbreaker in my opinion; it is a consequence of being more expressive.

Re: Tagsistant: semantic filesystem for Linux

#33
post #14

Hierarchical file systems lack expressiveness and are awkward in places. In my day-to-day computing this has become more apparent and problematic with each passing year. For example, I dislike that you are forced to give unique names for each file, that you can classify each file in only one way, and that you can't tell how many copies you own of a piece of data. The smallest step up from a hierarchical file system i…

I imagine you are familiar with BFS ( https://en.m.wikipedia.org/wiki/Be_File_System ) already, but if you aren't I'm sure you will find it interesting.

Thanks for pointing out BeFS. I only learned about it in the past few months, whereas I was thinking about alternatives to hierarchies for a decade. These related links were quite helpful to my initial understanding of BeFS's unique features:

* https://systemswe.love/archive/minneapolis-2017/ivan-richwal...

* https://arstechnica.com/information-technology/2010/06/the-b...

I am a fan of their dynamic queries. Being able to search all over the file system for certain attributes, instead of merely browsing a pre-canned hierarchy, is a powerful feature. I'm not a fan of their extended attributes though; it seems brittle currently because we have reduced files down to the lowest common denominator of being a finite sequence of bytes, with very little metadata on the side (if you're lucky, you might get a file name and MIME type attached).

Re: Tagsistant: semantic filesystem for Linux

#34
post #30
post #14

Hierarchical file systems lack expressiveness and are awkward in places. In my day-to-day computing this has become more apparent and problematic with each passing year. For example, I dislike that you are forced to give unique names for each file, that you can classify each file in only one way, and that you can't tell how many copies you own of a piece of data. The smallest step up from a hierarchical file system i…

I remember for a while Google Drive worked on a tags metaphor and it was just too much friction for users. The UI for the traditional file tree is just plain cleaner. Trees provide clear delineations of ownership and categorization. They suffer from the limits of hierarchies, but you can break them down and get a nice tree-view of them, for example. Having spent time categorizing my photos, adding a tag layer on top…

FWIW you can still work with Drive like this, though it's somewhat hidden functionality. "Shift+Z" after selecting an item will bring up the otherwise hidden "Add to" dialogue, allowing you to add an object to multiple parent folders/tags.

Re: Tagsistant: semantic filesystem for Linux

#35
post #27
post #13

Humans have to tag the files, though. This is the same problem which kept the "semantic web" from going anywhere.

Humans have to tag the files, though. Only once, if done properly. Look at music tagging. A good system ought to have canonical tags for everything. User-created files could also have a lot of auto-generated tags too. I'm thinking along the lines of email address/URL origin, Exif metadata, source code tags (ctags/etags), keyword extraction from prose text (via machine learning models)... Beyond all that, though, woul…

Could you clarify what you mean by "canonical tags for everything"? Do you mean an online database like freedb, MusicBrainz, and such?

Re: Tagsistant: semantic filesystem for Linux

#36
post #35
post #27

Earlier quoted context omitted.

Humans have to tag the files, though. Only once, if done properly. Look at music tagging. A good system ought to have canonical tags for everything. User-created files could also have a lot of auto-generated tags too. I'm thinking along the lines of email address/URL origin, Exif metadata, source code tags (ctags/etags), keyword extraction from prose text (via machine learning models)... Beyond all that, though, woul…

Could you clarify what you mean by "canonical tags for everything"? Do you mean an online database like freedb, MusicBrainz, and such?

Do you mean an online database like freedb, MusicBrainz, and such?

Yes, as well as the Library of Congress and doi.org.

Re: Tagsistant: semantic filesystem for Linux

#37

Great project! I feel that the problem of archiving files is not well served by the POSIX file system, and deserves attention. Gaps are in data safety and backup capabilities (dropbox is a huge leap forward here) and document retrival. Usually external idices (which go out of sync) are used to query file names. Also there is no way to attach semantic metadata to files (appart from date stamps, and permissions). This…

I wanted to second this. I've got a similar project [1] for photos, videos and audio files. It encodes much of the metadata into the filename itself [2].

[1] https://github.com/jmathai/elodie

[2] https://medium.com/@jmathai/introducing-elodie-your-personal...

Re: Tagsistant: semantic filesystem for Linux

#38
post #14

Hierarchical file systems lack expressiveness and are awkward in places. In my day-to-day computing this has become more apparent and problematic with each passing year. For example, I dislike that you are forced to give unique names for each file, that you can classify each file in only one way, and that you can't tell how many copies you own of a piece of data. The smallest step up from a hierarchical file system i…

The problem with any other model is there are secondary superpowers required to make it work: forget what deleting a file means, what does editing it mean when it can appear in multiple places?

Tagging files IMO depends on having a robust deduplication system under the hood.

Re: Tagsistant: semantic filesystem for Linux

#39
post #30
post #14

Hierarchical file systems lack expressiveness and are awkward in places. In my day-to-day computing this has become more apparent and problematic with each passing year. For example, I dislike that you are forced to give unique names for each file, that you can classify each file in only one way, and that you can't tell how many copies you own of a piece of data. The smallest step up from a hierarchical file system i…

I remember for a while Google Drive worked on a tags metaphor and it was just too much friction for users. The UI for the traditional file tree is just plain cleaner. Trees provide clear delineations of ownership and categorization. They suffer from the limits of hierarchies, but you can break them down and get a nice tree-view of them, for example. Having spent time categorizing my photos, adding a tag layer on top…

You can have preferential ordering of tags, which, basically, gives you hierarchy.

Or, put another way, the hierarchical file name can be seen as an ordered n-tuple of tags.

Both approaches give you new ways to view, find and manipulate FS content. What about viewing all files which are sources (belong to "src" directory in any part of a path)? Something like that.

Re: Tagsistant: semantic filesystem for Linux

#40
post #30
post #14

Hierarchical file systems lack expressiveness and are awkward in places. In my day-to-day computing this has become more apparent and problematic with each passing year. For example, I dislike that you are forced to give unique names for each file, that you can classify each file in only one way, and that you can't tell how many copies you own of a piece of data. The smallest step up from a hierarchical file system i…

I remember for a while Google Drive worked on a tags metaphor and it was just too much friction for users. The UI for the traditional file tree is just plain cleaner. Trees provide clear delineations of ownership and categorization. They suffer from the limits of hierarchies, but you can break them down and get a nice tree-view of them, for example. Having spent time categorizing my photos, adding a tag layer on top…

I think it's way too early to say is this kind of models good replacements of traditional file systems since we are so used to work with hierarchies everywhere and tooling is very young if any.

I think simple operations remain still quite simply but we need to alternate those a bit. For example "delete everything in here" may not be very clear thing but "delete these files globally" and "unlink these tags" are still simple concepts. What tags are offered to be unlinked for what files is just UX decision where is multiple quite ok answers. For example if we browse files as tag stack we may delete first one or ask how deeply we want clear stack tags.

Post reply on HN