8 ms·
I'm actually not frustrated with the hierarchical nature of filesystems. I'm most frustrated with the state of filesystem search these days. I don't want to tag
by zaphar 11y ago
I'm actually not frustrated with the hierarchical nature of filesystems. I'm most frustrated with the state of filesystem search these days. I don't want to tag and curate my files. I want to search them.
I've strung together something using bleve full-text search and some OCR libs to scratch my particular itch but it still doesn't quite get all there.
- kpil 11y agoI agree. I actually like the hierarchical organisation, and I don't like the 10 year usability trend, particularly driven by Microsofts attempts to patch over their horrid structure with even worse workarounds. The solution to learning my mother were to find her documents is not hiding the place 15 levels deep and having 10 symlinks to it. Fast, unobtrusive indexing and a good structure is all that is needed. Humans organise and memorise things in hierarchies, and while categories is another helpful abstraction they tend to be confusing if they do not point to a fixed position in a hierarchy in my opinion. You can also explore a hierarchy; Not so with a cloud of things connected to a bunch of tags.
- ori_b 11y agoTags are a subset of hierarchies + symlinks. If you have a one level hierarchy, you have the equivalent of tags.
- alpyne 11y agoI'd argue that tags provide a more graph-like structure, of which a hierarchy (tree)[1] is just a subset. Symlinks provide an "escape-hatch" to hierarchical systems allowing objects to appear to be in more than one directory. [1] https://en.wikipedia.org/wiki/Tree_(graph_theory) https://en.wikipedia.org/wiki/Tree_(graph_theory)
- ori_b 11y agoHow so? Unless you can tag tags, you can't represent a tree with them. If you can tag tags, you get an arbitrary graph, with all the problems that represents. I don't think I've seen tagging systems that let me tag tags out in the wild.
- zaphar 11y agoYou can create a DAG from Tagged objects if you use Set operations. The set of things with tag A includes things from other sets. Those sets form the next level in the hierarchy. The tagged objects define the relationships between differing tags which allows you to define that arbitrary graph. The graph can be viewed as an effectively infinite depth tree if you wish to.
- DougWebb 11y agoThe 'path' in the tree can be represented as a tag. It's a simplistic way to go, but you can get pretty far with it to emulate a folder structure using tags.
- vlunkr 11y agoYou have to realize though that this software doesn't take away your heiracichal system, it just gives you another way to look at it. Recently I've been cleaning up my music library and I'm seeing some of the shortcomings of the current system. What do you do with a compilation album? Have a folder for each artist or put them all together, (Which would separate them from others works by the same artist)? iTunes or whatever media player you use will probably list them in both locations depending on how you sort or whatever. I find this to be a useful feature, why wouldn't you like to have the option to do that sort of thing from the command line?
- stormbrew 11y agoThat iTunes view is still a hierarchy, though. More accurately, it's still a DAG. The hierarchy is not the problem here, it's the rigidity of trying to put something in only one part of that hierarchy.
- andrewflnr 11y agoTags are still a DAG, too. I don't see what you're trying to prove here.
- zaphar 11y agoTags are unordered sets that can be viewed in a DAG format if desired. Tag's themselves do not specify a DAG though.
- ozim 11y agoSpot on, for file system now it should not be a problem to have links in different places in hierarchy. You can have "favoriteSong.mp3" in catalogue with artist name and use links to put it in catalogue with "ultimate super songs". But I think people are not aware of possibilities.
- neohaven 11y agoIt's multiple, interwoven hierarchies, which you can look at by "seeing" a particular DAG (a subset of the actual graph). You can see this twin representation conceptually as Artist->Album->Song and also as Compilation->Artist->Song, the latter being a small folder with symlinks to the actual song directly. It's really just two different trees.
- igravious 11y ago> Humans organise and memorise things in hierarchies Big claim. Proof?
- tremon 11y agoBig proofs. Conceptual categorization is a big part of how we humans comprehend and analyze the world around us, and it relies on a hierarchy of defining attributes, from abstract model to concrete specimen: https://en.wikipedia.org/wiki/Prototype_theory#Basic_level_categories https://en.wikipedia.org/wiki/Prototype_theory#Basic_level_c... https://en.wikipedia.org/wiki/Stereotype#Cognitive_functions https://en.wikipedia.org/wiki/Stereotype#Cognitive_functions https://en.wikipedia.org/wiki/Concept_learning https://en.wikipedia.org/wiki/Concept_learning Maybe less abstract: if you try to remember where your phone is, do you follow a pattern like "which room", "which coat/pants/desk", then "which pocket/drawer"?
- igravious 11y agoI actually wnt to believe you because it accords with my own intuition but I don't trust my intuition on this! Conceptual categorisation + language + ? is totally how we humans comprehend and analyze the world around us, granted. (The devil is in the details of course.) But I don't see how we can go from there to "it relies on a hierarchy of defining attributes" I don't buy your example because the concepts in our heads seem to be organised in context-specific word bags, i.e. tags. I think I would believe you if cognitive science discovered that tree-hierarchy navigation relied on built-in neuro-spatial machinery or something like that :) I _want_ to believe you but I also want proper proof! :) edit: thanks for the heads up on prototype theory, can't believe I'd forgotten about this. also, thanks for making me ponder more deeply about stereotypes.
- tremon 11y agoGlad to be of (some) help :) I'm not a developmental psychologist btw, just have an interest in cognitive development. The proof you're looking for would be more the field of cognitive neuroscience. There definitely are graph-like connections between concepts all over the brain, I didn't mean to suggest that our brains work hierarchical only, to the exclusion of all other relations. As an example: if our brains were strictly hierarchical, we would be unable to see the similarity in colour between a grey table and a grey hare. I just meant to explain my thinking on how abstract thought is tied to a attribute/property hierarchy, not proclaim that I know how the brain works. (edit: snipped on-topic content, best reserved for a separate post)
- blakeyrat 11y ago> Humans organise and memorise things in hierarchies, Humans also track a lot of things based on spatial memory, which no OS since Mac Classic has even tried to make use of, which is a shame.
- Bjartr 11y agoI wouldn't say no OS has tried, the windows 8 start screen was designed to exploit spatial memory for instance.
- tambourine_man 11y agoTrue, with the exemption of iOS spring board. It's a great spatial memory comeback and a testament to the easy of use of the model, even if it doesn't scale well when you get into the 100s of items.
- therein 11y agoHow did Mac Classic make use of that?
- chongli 11y agoIn Mac Classic each folder you opened created a new window which remembered all of its settings for size, position on screen, scroll position, icon size/layout, etc. This window is an explicit and exclusive representation of that particular folder and attempting to open the same folder again does not create a new window, it simply shifts the focus to the already-open window. The change in Mac OS X towards a browser for navigating the filesystem hierarchy caused an active debate over spatial[0] vs. navigation (or browser)[1] file managers. [0] https://en.wikipedia.org/wiki/Spatial_file_manager https://en.wikipedia.org/wiki/Spatial_file_manager [1] https://en.wikipedia.org/wiki/File_manager#Navigational_file_manager https://en.wikipedia.org/wiki/File_manager#Navigational_file...
- therein 10y agoVery interesting, thank you.
- choosername 11y ago>Humans organise and memorise things in hierarchies, ... Well, sure, if things do have a hierarchical relationship, but a hierarchy is just one form of network. It fails for concurrent dependency problems, e.g.
- qwertyuiop924 11y agoYeah. I just want my files in directories, save maybe music, where I might want to query by various tags. But beets already can do that. Or I suppose I could build an app to build a static index off of a master, but again, why would I do that when I can use beets? All of the other files I work with on a day to day basis I don't really want to query by structure or tags. I just want to know where the %^&*@ they ARE! And a simple hierarchy is actually better than tags for that.
- kujenga 11y agoI hear you there! If you're looking for a tool that scratches that itch, I've spent the last year and a half working on a could based search engine that spans all services and devices. We inherit all the information from your existing file system structure, as well as the people files are shared with, and provide a powerful content-based search on top of that. Check out our website if you'd like: https://www.meta.sc https://www.meta.sc
- zaphar 11y agoIf my files include a scanned in PDF with text that isn't stored as text per se will meta.sc index those? My homegrown solution does this for the most part and that feature was the motivation for creating it. That and the fact that it's available offline on my machine.
- tremon 11y agoI'm not a big fan of semantic search itself, nor do I enjoy meticulously tagging my files. But I would love to have different views of my files, based on different metadata. I know that I'm not always searching for files along the same hierarchy: sometimes I want to search along a timeline, because I know that I edited two files around the same time. Or I remember where I was when I wrote something, and I'd like to search on geolocation. Sometimes I know that I've implemented a similar feature for a different project, and want to copy/review what I did then. All these searches still have hierarchical components in them: in the "date" case, I would expect to browse to a generic "N weeks ago" directory, look at a few specific items to get my bearings, and start browsing deeper to narrow my date range, or move forward or backward in time. In the geolocation case, I'd want to pull up a map, click on a country, then a city or area, and look at the files I accessed while there. As for the project example, I probably have the project files lying around in a hierarchical directory already. But I'd want to access only the relevant feature file, not browse the entire project structure again. For me, the problem with non-hierarchic interfaces isn't just the lack of metadata: it's a lack of tools for visualizing non-hierarchic matches. Every search I described above requires its own GUI...
- copperx 11y agoThere needs to be a middle ground between hierarchical organization and search. Hierarchical organization is painful because an object can only be in one place in the hierarchy (disregarding links, which are a hack), and search by itself (as implemented in e.g., Spotlight) is not optimal because spatial/temporal/conceptual clustering of documents is important for discovery of related materials. I have more than 5 todo.txts scattered in my system. I have cloned my webpage's git repository countless times in my local drive. I have countless LaTeX documents named letter.tex. Of course, if I search for letter.txt I get a hit, but what other documents in my system did I create around the same date? were any other associated file changes? these questions are hard to answer in a hierarchical filesystem. While we're at it, we should separate the task of document naming and classification from document saving. Right now, if I create a document in say, Microsoft Word and I want to make sure it gets saved, I have to pick not only a discoverable filename but also the right place for it in the hierarchical tree. I am just trying to type up a quick letter and get it printed, not grapple with the philosophical question of "where does this file belong and what should I name it?"