[HN Gopher] Yet another hot take on "folders versus tags"
       ___________________________________________________________________
        
       Yet another hot take on "folders versus tags"
        
       Author : not-now
       Score  : 89 points
       Date   : 2022-01-24 20:11 UTC (2 hours ago)
        
 (HTM) web link (eleanorkonik.com)
 (TXT) w3m dump (eleanorkonik.com)
        
       | endisneigh wrote:
       | What can you do with folders that you cannot with tags?
        
         | sseagull wrote:
         | It's not about ability, but mindset.
         | 
         | Folders are tree structures where each file lives in only one
         | place (in practice, hard links are uncommon, and symlinks are
         | more common but obvious).
         | 
         | That abstraction is useful when navigating, looking for related
         | files, etc.
         | 
         | Tags are more general. Yes, they could implement the features
         | of folders, but the connotation of tags is that they are flat
         | and unstructured.
        
         | mro_name wrote:
         | exclusivity.
        
           | endisneigh wrote:
           | you can do that with tags tho.
        
       | brazzy wrote:
       | > Sometimes people will ask me what I do when I have something
       | that could go into multiple places and the answer has always been
       | pretty simple: if something could conceivably fit in two
       | different folders I need to consolidate my folders.
       | 
       | How does that not lead to an end result where you have _one_
       | folder  "everything", and thus no organization at all? There's
       | always edge cases.
        
         | EleanorKonik wrote:
         | I've got over 2k files in my Obsidian vault and haven't had a
         | problem really.
         | 
         | I think it depends on how you categorize things? I'm never
         | going to confuse my tax documents with my short fiction, or my
         | character profiles for a fantasy character for my daily notes
         | page.
        
       | c7DJTLrn wrote:
       | >Error establishing a database connection
       | 
       | Whew I wasn't ready for that hot take.
        
         | riffic wrote:
         | running a wordpress is a noble endeavor but it isn't ideal for
         | unexpected traffic hugs from a site like this.
        
           | EleanorKonik wrote:
           | I am _literally_ mid-migration to Ghost because of how slow
           | Wordpress is :( :( :(
        
             | riffic wrote:
             | The Ghost team has been talking about moving more towards
             | the JAMstack model (static sites, basically). I don't run
             | it myself but it's something worth looking into depending
             | on your traffic expectations in the future:
             | 
             | https://www.netlify.com/blog/2019/01/11/ghost-on-the-
             | jamstac...
        
         | bacro wrote:
         | I guess it was so hot, that the database melted.
        
           | EleanorKonik wrote:
           | I'm hosted on Digital Ocean, and the irony is, I'm literally
           | mid-migration to Ghost from Wordpress -- if this had happened
           | a week later this wouldn't have happened.
           | 
           | I'm trying to figure out how to upgrade the droplet but being
           | honest, my husband is the one who set all this up for me, so
           | it's going to take me a minute to figure out how to add more
           | bandwidth or whatever.
        
             | riffic wrote:
             | if you're expecting more bursty traffic coming your way
             | from reddit or HN, it might be best to deploy a static site
             | out to something like Vercel, GitHub Pages, Cloudflare
             | Pages, Netlify, et cetera. it's not really as easy as
             | running from a WordPress instance but it'll better handle
             | these sort of events.
             | 
             | DigitalOcean's App Platform supports static sites too.
        
             | mikestew wrote:
             | _I 'm trying to figure out how to upgrade the droplet but
             | being honest, my husband is the one who set all this up for
             | me_
             | 
             | Yeah, HN can be all "why didn't you just...?" when a site
             | gets hit with traffic, but you know what? I've been in this
             | industry for over 30 years, had a decent stint at Microsoft
             | and other companies you've heard of, working on stuff
             | you've probably used. And if my stupid blog somehow ended
             | up on the front page of $POPULAR_SITE I wouldn't have the
             | first clue how to increase bandwidth. Oh, 30 years of this
             | shite means I know where to immediately start looking, but
             | off the top of my head? _phhhhht_ And it sure as hell would
             | take me more than  "a minute to figure out how to add more
             | bandwidth or whatever". :-)
             | 
             | Point is, your page hit the HN lottery, no need for
             | apology. I can bookmark it for later.
        
               | EleanorKonik wrote:
               | If I can figure out how to GET to my wordpress page for
               | long enough, I'll set up a redirect and mirror it as an
               | article on https://obsidianroundup.org/ -- which is
               | literally what I was working on this week, haha, the nice
               | folks at Ghost's concierge already helped me do it for my
               | history nerd stuff newsletter.
               | 
               | Someone reached out and said I can use Cloudflare to fix
               | this, so I'm gonna go try that, doot doot.
        
               | mattnewton wrote:
               | This - I've worked fullstack on apps that do unfathomable
               | numbers of connections per second. But for a personal
               | blog the best thing I could muster is probably go to the
               | cloudflare site with my wallet in hand and click around
               | nervously until I figure out how to buy caching from them
               | before it falls off the top page of hacker news.
        
             | weaksauce wrote:
             | It's the database that is being hit(multiple times
             | probably) every page request. typically you would add a
             | caching layer to wordpress so that each url would get
             | cached for N minutes so you don't need to do the expensive
             | rendering each time.
        
             | Jarwain wrote:
             | If you want something quick and easy, just sign up for a
             | free account at Cloudflare and hook up their CDN. It's a
             | useful thing to have even when you've switched to
             | WordPress, too.
        
               | EleanorKonik wrote:
               | Ah, bless, this is exactly what I am doing right now and
               | it is much less terrifying than I thought it would be.
               | 
               | Ironically, this has been on my todo list to learn -- I
               | want to mirror my Obsidian notes and that requires
               | Cloudflare and before today I've been too nervous to muck
               | around with it.
        
               | Jarwain wrote:
               | Or, uh, switched to ghost. Although ghost could likely
               | handle it on its own
        
             | renewiltord wrote:
             | It's an old problem. You just need WP-Cache or WP-
             | SuperCache or successor plugins. i.e. not your fault, this
             | happens to everyone who runs WP.
        
         | [deleted]
        
         | [deleted]
        
         | EleanorKonik wrote:
         | Oh god I'm sorry I wasn't expecting this level of traffic, let
         | me see if I can fix it.
        
           | jetrink wrote:
           | Here's an archive link for now:
           | 
           | https://web.archive.org/web/20220124201438/https://eleanorko.
           | ..
        
           | c7DJTLrn wrote:
           | Don't worry about it, it's the HN effect. I really recommend
           | using a PaaS like Netlify (I'm not sponsored or affiliated).
           | It will take a weight off your shoulders the next time you
           | get a surge.
        
             | EleanorKonik wrote:
             | I think I managed to get Cloudflare set up, let's hope that
             | works
        
       | [deleted]
        
       | irthomasthomas wrote:
       | I just accept that modern computing is complex, and requires a
       | multitude of methods to organise and navigate.
       | 
       | For example, I use Digikam from KDE to manage my photos. It has a
       | LOT of ways to file and retrieve photos. First are collections,
       | and they contain folders that are a window to the filesystem. (I
       | like that, because it means only maintaining one filing system.)
       | Inside a folder view, you can also group photos by dragNdrop. You
       | also have star ratings, tags, flags, locations and faces. You can
       | search by dates, locations on a map, or show images that are
       | similar. The list goes on. It is very flexible, so you can choose
       | your workflow.
        
       | hyferg wrote:
       | Check out Bonsai Browser [0] if you want to see what a web
       | browser built on tagging rather than folders looks like
       | (disclaimer: co-founder).
       | 
       | I think the main virtue of tagging systems is in the low friction
       | to add info and multiple inclusion.
       | 
       | Tagging also has its downsides and I think we'll probably end up
       | on some hybrid system in the long run.
       | 
       | [0] https://bonsaibrowser.com/
        
         | wsinks wrote:
         | Seemed interesting, but why do you have to have an account to
         | log in?
         | 
         | I was going to try it out, but.. I just hate not being able to
         | try something before giving away my email.
        
           | hyferg wrote:
           | Maybe we can add anon accounts at some point. The main reason
           | right now is to make the feedback process easier since it
           | starts an email chain that we can follow up on. All of the
           | best improvements recently have started with these email
           | chains and follow on conversations.
        
             | hooande wrote:
             | You'll get more and higher quality feedback from a larger
             | volume of users. And right now you're self selecting for
             | people who are willing to use their email to create an
             | account.
             | 
             | The best way to improve a product is to have a lot of
             | people use it
        
       | dariusj18 wrote:
       | I miss the promise of WinFS
        
       | ryanjkirk wrote:
       | Folders work perfectly in a pure hierarchical taxonomy. Many
       | classifications defy this rigid of a structure, however. For
       | example:
       | 
       | Widget 1: it is A and B but not C, so tag it with A and B.
       | 
       | Widget 2: it is A and B and C, so tag it A, B, and C.
       | 
       | Widget 3: it is B only, so tag it B.
       | 
       | That is pretty simple, but you couldn't represent that in a
       | folder system without permutation folders, meaning you now have
       | folder sprawl, making things harder to find.
       | 
       | This is how servers and ec2s are for almost everyone. Billing
       | codes, environments, teams, business units, etc. A folder
       | taxonomy to replace ec2 tags would be a nightmare.
        
       | whywhywhywhy wrote:
       | After the past 5 years or so of experiencing the supposed best
       | "folderless" computing has to offer on iOS and ideologically
       | similar platforms.
       | 
       | I've gained huge respect for how beautiful the concept of the
       | folder is.
        
         | [deleted]
        
         | daenz wrote:
         | I wrote Supertag[0] specifically to get the same kind of
         | ergonomics with tags as you get with folders. Basically you can
         | dynamically render sub-folders based on the tags that apply to
         | your current selection.
         | 
         | Example: /A/B contains the intersection of tags A and B. If
         | sub-folder C exists underneath /A/B, it's because one of the
         | files in the intersection also has tag C.
         | 
         | 0. https://amoffat.github.io/supertag/
        
         | ASalazarMX wrote:
         | Folders are simple, even if tags can imitate them, they can't
         | replace their structure. Tags are a good fit for items that
         | naturally fall into several categories, like music or books,
         | but not for general file systems.
        
           | tablespoon wrote:
           | > Folders are simple, even if tags can imitate them, they
           | can't replace their structure. Tags are a good fit for items
           | that naturally fall into several categories, like music or
           | books, but not for general file systems.
           | 
           | This. They're different tools for different jobs. Being a
           | dogmatist and trying to win an us vs them competition on
           | which is the ONE TRUE SOLUTION is stupid. That's like trying
           | to argue which is a better tool, a screwdriver or a pair of
           | pliers, and saying it's stupid to keep a screwdriver in a
           | toolbox. Honestly, in a lot of cases both should be
           | implemented and available.
           | 
           | Stupid reasons pliers are better than screwdrivers:
           | 
           | * There are so many different kinds of screwdrivers; it's too
           | confusing to users.
           | 
           | * Pliers can be used to drive screws, so there's no need for
           | a dedicated screw-driving tool. We've had a lot of success
           | gripping the screw head with pliers and turning.
           | 
           | * Pliers are beautiful and modern, and lots of popular
           | influencers are using pliers now. Screwdrivers are old tech
           | and ugly.
        
             | jdechko wrote:
             | Your toolbox analogy is great for another reason. I can
             | "tag" my screwdrivers with multiple items: Philips, flat,
             | Torx, Square, short, long, ratcheting... Each screwdriver
             | can have multiple tags. But I store them all in the same
             | drawer in my toolbox.
        
           | munificent wrote:
           | _> if tags can imitate them, they can 't replace their
           | structure._
           | 
           | Technically, they can. A "folder" is just a tag whose name is
           | the entire directory path up to root. All files with that
           | same tag are in the same folder.
        
           | alpaca128 wrote:
           | Assuming the tags cannot be linked in hierarchies/graphs.
        
           | politician wrote:
           | And yet, folders are tags.
        
             | ASalazarMX wrote:
             | In the sense that a staircase can be used to seat guests.
             | Folders are not like tags, tags are like flat folders.
             | Folders are better at separating, tags are better at
             | mixing.
        
             | mro_name wrote:
             | just veeery shy ones.
        
           | Eddy_Viscosity2 wrote:
           | Agree. They both have a place. I use Zotero to keep track of
           | my references and also just interesting things I find. It
           | uses folders and tags. Fantastic!
        
             | throwoutway wrote:
             | Could you describe your Zotero folder & tag strategy? I
             | don't know where to start with this and it's a hot mess
        
               | 24thofjan wrote:
               | Here you can see uses of folders and tags. It's from an
               | academic context but you'll get the idea.
               | https://youtu.be/efLOqgS4jzA
        
       | joe8756438 wrote:
       | I think a casual relationship to tags and folders together is the
       | way. I built a system that allows both [0]. And using them
       | together has some advantages. It's important that nothing of type
       | A could ever be of type B. This is useful managing client work,
       | and other things like transactional data. Folders handle this
       | scenario. OTOH, a lot of research material for one bucket might
       | be related to another, for me that's usually programming related
       | articles etc. I want to review all that stuff together -- a tag
       | handles that.
       | 
       | In other words, folders create boundaries between information,
       | and tags connect across those boundaries.
       | 
       | [0]. https://www.tatatap.com
        
       | dejj wrote:
       | Shameless plug:
       | 
       | I wrote a Nemo extension [1] that lets you add columns for #tags
       | @persons or $whatever you put in a filename. You can sort by
       | these columns. For complex things, there's always `find`.
       | 
       | [1] https://github.com/dejj/nemo-addons/blob/main/nemo-
       | python/ex...
        
       | asciimov wrote:
       | I still want a filesystem that can do both.
       | 
       | I want to have regular folders, and then folders that I can issue
       | a SQL style query to generate their contents.
       | 
       | Take multimedia. With a traditional file system you can only have
       | one type of sort. Typically by type (audio, video, image) and
       | then alphabetically. It would often be nice to have a folder that
       | is formed by querying the metadata, say all the items released in
       | the 1950's, or all the items that are a low quality copy.
        
         | fishtacos wrote:
         | MS tried it [0] and failed. It was not easy. This was in the
         | days of Whistler, Blackcomb and Longhorn and always an
         | interesting read if you've the time. [1]
         | 
         | [0] https://en.wikipedia.org/wiki/WinFS [1]
         | https://hal2020.com/2013/03/10/winfs-integratedunified-stora...
        
           | snowwrestler wrote:
           | Apple did it and succeeded? In MacOS you can use tags and/or
           | folders to organize files, and there is an OS-wide search
           | index (Spotlight).
        
       | PaulHoule wrote:
       | With symlinks (or hard links for that matter) you can have
       | folders work like tags in a real filesystem.
       | 
       | That said, binary classification (object A is a member of class
       | B, a function with a boolean truth value) is the basic concept in
       | classification. That is, any classification can be represented
       | correctly with binary classification.
       | 
       | There really are a few things where you assign something a
       | category from a finite set (like a chess game was won by "White",
       | "Black" or was a draw) but frequently when people build
       | ontologies based the idea that "A is a member of one of this set
       | of categories" they are going to screw it up.
        
         | jancsika wrote:
         | > With symlinks (or hard links for that matter) you can have
         | folders work like tags in a real filesystem.
         | 
         | The word _can_ is doing a lot of heavy lifting there.
         | 
         | Tagging system (at least the ones I've seen): enter the tags as
         | autocompleted tokens in a single text entry. Possibly the
         | system can autosuggest a number of tokens, possibly not,
         | depending on your use case.
         | 
         | Symlinks-as-Tagging-System: I want to save a file called
         | "foo.txt" and start editing it immediately. How do I enter the
         | tags?
        
           | hotdag wrote:
           | Presumably the same way you would enter tags in a regular
           | program that has tags, except the datastructure would be
           | stored as a disk file system. you dont necessarily have to
           | manually run ln -s every time, the same way you dont have to
           | run a sql insert to update a tumblr posts tags.
        
         | vannevar wrote:
         | Is there some reason that a filesystem couldn't be written to
         | permit multiple paths to the same file without the clunkiness
         | of sym links?
        
           | throwaway_Aef8 wrote:
           | I have the answer it's a graph based filesystem! Just kidding
           | I don't really have an "answer" just your question inspired
           | me to Google for a graph based file system.
           | 
           | https://fsgeek.ca/2019/05/09/graph-file-systems/
        
           | PaulHoule wrote:
           | That's a hard link. They have problems too.
        
           | bityard wrote:
           | Unix has supported multiple paths pointing to the same inode
           | for a very long time. `man ln`.
        
           | zinekeller wrote:
           | (Windows) NTFS has hard links which are multiple pointers to
           | the same file, but I imagine that the strict separation
           | between FSes that made it possible in NT is also the reason
           | why Unix, which has a single arbitrary hierarchy, doesn't
           | have hard links.*
           | 
           | * Yes there _are_ hard links, but the single hierarchy means
           | that unless you memorised the specific FS of each folder, it
           | 's gonna be hard.
        
           | ryanjkirk wrote:
           | That would be a hard link, though they can't cross filesystem
           | boundaries.
        
           | jerf wrote:
           | The problem with multiple paths leading to the same file
           | isn't with the file system, but with the file system users.
           | When you're writing scripts or programs against file systems
           | it is really convenient to assume that each filename is one
           | and only one file, that the file has a unique name, and that
           | the file system is strictly a tree.
           | 
           | File systems can technically break all of these; files can
           | contain multiple files within themselves with many file
           | systems, the ability to have multiple paths leading to the
           | same file means that if you just have the file in hand you
           | don't have a unique path, which also means that if you remove
           | that name it doesn't mean you've removed the file. But most
           | of the time, you can kinda get away with writing normal code
           | and it'll do the right thing. But that last one really burns.
           | It is really easy to write code assuming file systems are
           | just trees, and in particular can't have infinite loops, and
           | be wrong about that.
        
             | em-bee wrote:
             | i make extensive use of hardlinks in my files (especially
             | with photos), and i don't see the problem. if i remove a
             | file, i don't usually want it gone completely, but i want
             | removed from this particular location, if it is hardlinked
             | elsewhere, i usually still want to keep it there.
             | 
             | if i want to really remove it, i can scrub the contents
             | without removing the hardlink, and if i want to delete
             | after scrubbing i check the hardlink count and search for
             | the remaining entries.
        
         | malkia wrote:
         | If only symlinks worked for every software / OS. On Windows at
         | least, there are so many different way to link things
         | (including "subst") that it's hard to get idea which one to
         | use. (I do love symlinks, but having spent most of my time on
         | Windows, there are some edge cases I've hit, for example some
         | third_party software not following the symlink and simply
         | failing to open the file..., and no that was not the old .lnk
         | style link)
        
           | sumtechguy wrote:
           | mklink if anyone is curious. It can act oddly in a few cases.
           | Especially if you cross volume/network boundries.
        
       | marginalia_nu wrote:
       | Spatial metaphors is arguably the easiest shortcut to a design
       | that makes sense to humans. Spatial reasoning is something even
       | animals are capable of.
       | 
       | Categories are much more abstract, and while useful, less
       | intuitive.
       | 
       | Which is why folders should remain, complement them with other
       | means of navigation for sure, but hiding them away will only make
       | things less intuitive.
       | 
       | In the end, whatever capabilities your design has are only as
       | useful as their ability to be understood and used.
        
         | BlueTemplar wrote:
         | Indeed, consider how one navigates a "memory palace" going into
         | a specific room (=folder) !
        
       | stickfigure wrote:
       | I've always wanted to see a "folder view" of a purely tags-based
       | system. At the root level, `ls` shows you a list of tags (and
       | possibly "all files"). cd into a tag, and `ls` shows you a list
       | of the remaining tags (and relevant files). Repeat as many times
       | as you like.
       | 
       | Example session might look something like this:
       | / $ ls -d         foo bar baz         / $ cd foo         /foo $
       | ls -d         bar baz         /foo $ cd baz         /foo/baz $ ls
       | -d         bar
       | 
       | Obviously, at the root level you're also including all files so a
       | naked `ls` would return a lot of output. But this seems like a
       | good way to bridge to the POSIX world; you could probably
       | implement it on any modern OS with a FUSE filesystem.
        
         | daenz wrote:
         | I'm really trying not to overly promote Supertag[0] in this
         | thread (disclaimer: I am the author) , but it does exactly what
         | you describe.
         | 
         | 0. https://amoffat.github.io/supertag/
        
           | alpaca128 wrote:
           | Does this also allow looking for e.g. files that are either
           | in tag A or B or both? Intuitively I'd guess this is a
           | limitation when you use a path to filter files, though I
           | might be wrong.
        
           | xtracto wrote:
           | In my opinion, any OpenSource application should not be
           | bashed for promoting in threads like these. What will you
           | win? probably more work as more people try your software and
           | raise issues (feature requests or bugs). The fact that it is
           | Libre means that any "self promotion" will not have any
           | monetary gain, so it is fine with me.
           | 
           | Aaaaanyways... SuperTag looks AMAZING. I will give it a try
           | right now and see how it works for me. Thanks a lot for
           | implementing it :)
           | 
           | EDIT: It doesn't want to install for me on OSX :( Oh well, it
           | sounded too good to be true haha.                     ~ brew
           | install amoffat/rnd/supertag              Running `brew
           | update --preinstall`...         ==> Tapping amoffat/rnd
           | Cloning into
           | '/usr/local/Homebrew/Library/Taps/amoffat/homebrew-rnd'...
           | remote: Enumerating objects: 24, done.         remote:
           | Counting objects: 100% (24/24), done.         remote:
           | Compressing objects: 100% (17/17), done.         remote:
           | Total 24 (delta 4), reused 24 (delta 4), pack-reused 0
           | Receiving objects: 100% (24/24), done.         Resolving
           | deltas: 100% (4/4), done.         Error: Invalid formula:
           | /usr/local/Homebrew/Library/Taps/amoffat/homebrew-
           | rnd/supertag.rb         supertag: Unsupported special
           | dependency :osxfuse         Error: Cannot tap amoffat/rnd:
           | invalid syntax in tap!
        
           | Melatonic wrote:
           | Very interesting
        
       | gorjusborg wrote:
       | why choose?
       | 
       | Current desktop operating systems have hierarchical filesystems
       | _and_ support flat lookup via indexing (e.g. MacOS 's spotlight).
        
       | ggm wrote:
       | 2021
        
       | gorjusborg wrote:
       | https://archive.is/M9r4Q
        
       | pphysch wrote:
       | Trees/hierarchies ("folders") are for organization, unconstrained
       | graphs/networks ("tags") are for ontologies. Crossing these
       | streams leads to a lot of trouble.
       | 
       | When flexible graphs/networks are abused for organizational
       | purposes, you get circular dependencies, spaghetti code, and
       | general dysfunction. Organizations (code or people) _need_ to be
       | easy to navigate.
       | 
       | When rigid hierarchies are abused for classification purposes,
       | you run into "class House, class Boat, class HouseBoat extends
       | ???" knots. Ontologies _need_ to be flexible.
       | 
       | Modern filesystems necessarily use both: we have folders, and we
       | have file types/tags.
        
         | culi wrote:
         | You could hypothetically collapse the two though. You can have
         | tags and could use those to automatically generate efficient
         | organization structures.
         | 
         | For example, say you have the following datums with the
         | following tags                 apple:     plant, Rosaceae,
         | tree, fruit       peach:     plant, Rosaceae, tree, fruit
         | rose:      plant, Rosaceae, shrub, flower       dandelion:
         | plant, Asteraceae, herb, flower       carrot:    plant,
         | Apiaceae, herb, root       pig:       animal, Suidae
         | 
         | You can then try to generate a folder structures that optimizes
         | certain parameters like keeping the average number of children
         | to not too far away from ~6 and/or minimizing the depth of the
         | repo structure or whatever. Depending on how you wanna optimize
         | it, you could end up with a number of structures such as:
         | root       - plant         - tree           - apple           -
         | peach         - herb           - dandelion           - carrot
         | - rose       - animals         - pig
         | 
         | or                 root       - Rosaceae         - apple
         | - peach         - rose       - animal         - pig       -
         | other         - dandelion         - carrot
         | 
         | You can use your imagination to think of better structures or
         | optimization problems, but you get the basic point. We can have
         | tags be our primary classification method and have the
         | organizational structure be an outcome of that.
        
           | pphysch wrote:
           | I like this approach: building a simple folder interface on
           | top of a more flexible tag system, which can always be
           | accessed when necessary. I think many systems would benefit
           | from it.
           | 
           | There are tradeoffs, though: a fair bit of overhead for each
           | heavily nested item. And you would want some support for
           | ensuring the integrity of the hierarchies (i.e. someone
           | accidentally removes "tree" from the tag set of "apple").
        
             | throwaway_Aef8 wrote:
             | maybe on top of your idea ensure there's a graph feature
             | like at the top right of
             | https://help.obsidian.md/Obsidian/Index
        
           | githubalphapapa wrote:
           | Here's a library for writing such classification systems in
           | Emacs Lisp: https://github.com/alphapapa/taxy.el
           | 
           | Especially, see this example:
           | https://github.com/alphapapa/taxy.el#sporty-understanding-
           | co...
        
         | willbudd wrote:
         | An interesting hybrid approach I've experimented with in the
         | past is to use tags while ensuring that the tags themselves are
         | purely hierarchical. (Is there a name for this scheme?)
        
           | [deleted]
        
           | alpaca128 wrote:
           | Maybe something like "hierarchical taxonomy", or just simply
           | class hierarchy? Though I'm not aware of such a term that's
           | explicitly for tags if that's the point.
        
           | jeddy3 wrote:
           | I'm having troubles visualising what you mean, without it
           | becoming "just folders".
           | 
           | Can you elaborate?
        
             | willbudd wrote:
             | As a node in a tree hierarchy any folder can only have one
             | parent folder. Tags of course allow nodes to have any
             | number of parents (aka "associations").
             | 
             | The relationship between arbitrary nodes in a tree can be
             | determined by tracing their common ancestry, but tags don't
             | provide equivalent functionality, unless you strictly
             | define how tags themselves relate to other tags. An obvious
             | way to do so is to prescribe that every tag shall have
             | exactly one parent (except for the root abstract "thing"
             | tag).
             | 
             | In other words tags become folders, but any non-folder
             | content of those folders can simultaneously live inside any
             | number of folders. Similar to symlinks, but arguably less
             | hacky, because there is no differentiation between "actual"
             | location and "linked" location.
        
           | slaymaker1907 wrote:
           | I'm not sure of a name, but Tiddlywiki does this. You create
           | hierarchies by having tags by creating an item with the tag
           | as its name which causes all items with said tag to be a
           | child of that item. This has a nice side effect of allowing
           | items to exist in multiple locations (so no unique parent is
           | enforced) while still requiring the graph to be acyclic.
           | 
           | It ends up working kind of like hard links for folders/files,
           | but it is a lot easier to setup since child items are the
           | ones which declare where they are located, not the
           | parents/directories. I think another reason why hard links
           | are more difficult to use than this particular system is that
           | with Tiddlywiki, it is easy to see all the locations an item
           | falls under at once as well as seeing all the items at a
           | particular location. I feel like adding this reverse location
           | information would be quite helpful and would be less of a
           | change than implementing tags for existing filesystems.
        
         | irrational wrote:
         | The challenge is knowing which one you are dealing with at any
         | particular time.
        
       | robbrown451 wrote:
       | https://archive.fo/M9r4Q
        
       | fallingmeat wrote:
       | They both support discoverability in different ways
        
       | leecarraher wrote:
       | what about 3d building like structures that you fly over or into.
       | mainly for amusement parks, zoos, a combination of both, and oil
       | speculation supercomputers
        
       | smrtinsert wrote:
       | Tags I've always thought of conceptual while Folders are at the
       | very least absolute.
       | 
       | Let's say I'm recording events for my future travels.
       | trips/paris.md and trips/cancun.md are in my folder structure
       | with them tagged as business and vacation respectively. Later, I
       | can go back and add a "mistakes" tag to cancun.md, but really if
       | ever need to look up all my trips, I know it will be in trips and
       | it's incontrovertible fact that cancun was a trip.
       | 
       | There's room for both, but tagging historically came out of a
       | need where search functions were poor. These days tagging is
       | unnecessary work imo.
        
       | fouc wrote:
       | It should be possible to mimic tags with folders & clever
       | scripting that moves files around according to their "tags".
       | 
       | Imagine a command like:                   tagmv file1 file2
       | directory1 directory2 -t tag1 tag2 tag3
       | 
       | where it moves the files/directories to something like
       | ~/t/tag1#/tag2#/tag3#/
       | 
       | Or instead of using "#" could use some other special/rare
       | character/unicode to indicate that it is a "tag-directory".
       | 
       | The hierarchy of the tag-directories could ordered from the most
       | common to least common tags. The most common tag, would have the
       | tag-directory under the top level directory (something like ~/t/
       | to prevent confusion with the rest of the filesystem perhaps?).
       | 
       | The files & tag-directories could get re-organized every time the
       | usage of tags changes, in order to keep the hierarchy from most
       | common tags to least common.
       | 
       | A set of tools like tagmv, tagcd, tagls, etc could work with this
       | tag-based structure.
       | 
       | Thoughts?
        
         | mro_name wrote:
         | There's a talk about such https://karl-voit.at/managing-
         | digital-photographs/, there's a video.
         | 
         | Karl seems to have a fancy TUI, I made me a cmdline helper
         | https://codeberg.org/mro/Tagger.
        
           | fouc wrote:
           | I've seen that type of idea before, encoding tags within the
           | file name. But as someone that lives in the terminal, I'm not
           | a huge fan of cluttering up and making the file names so
           | long.
        
       | amelius wrote:
       | Instead of tagging (which takes effort) you could also use a good
       | search algorithm.
        
         | pphysch wrote:
         | If (fuzzy) search is your primary use case, sure. But
         | classification is also important for other use cases, like
         | security ACLs, usage analytics, etc.
        
         | klyrs wrote:
         | SELECT * FROM desktop_icons WHERE ...
         | 
         | I used to be one of those people who had to sort my desktop
         | icons to find stuff, because there were so many icons they'd
         | overlap. Today, ~/Desktop is completely empty. I've gotta say,
         | folders are far superior to a rubbish bin, even when it isn't
         | hard to search files by name & contents.
        
         | YXNjaGVyZWdlbgo wrote:
         | If you don't know what's the name of what to search for can you
         | search for it? I get that a lot of developers like the idea of
         | falling back to search because most files you use can be
         | searched for contents but for everyone that has to work with
         | binary files it's not suitable.
         | 
         | Johnny Decimal is also just another abstraction layer and in
         | this a terrible one.
        
         | Tagbert wrote:
         | i would still want it to support tagging so that I could ensure
         | that those searches picked up specifically what I wanted and
         | not more random results. I've had to try to find things on
         | Confluence and Sharepoint and it takes a lot of time to try to
         | get what you want out of the search results.
        
         | ASalazarMX wrote:
         | A good folder hierarchy is like a library: you know where it is
         | even before you look for it.
        
           | arsome wrote:
           | Except when you forgot to put it in the right place because
           | you just had to extract it and do that one quick thing...
           | 
           | I'd rather not rely on my own willingness to organize files
           | so I'll take a search tool any day.
        
             | quacked wrote:
             | Nah, that's when you just have an "Unsorted" folder. Sort
             | that once per week. Problem solved
        
               | Jtsummers wrote:
               | This is how I treat my project (personal and work) task
               | management. Throw things into the inbox as they come up
               | unless I have the time to organize right then, later on
               | sort into various contexts and tag them (to the extent I
               | care to tag) when I have a chance. Once I've tagged it,
               | it's clear of the inbox. Also how I used to use Gmail
               | (back when I used the web interface, which I gave up on
               | when it started crawling on my new and bleeding edge, at
               | the time, desktop).
        
             | ASalazarMX wrote:
             | I have two such folders: "Downloads" and "Temp". Everything
             | not classified stays there until it gets moved to a
             | permanent folder, or erased.
             | 
             | I admit I sometimes search for files, but it's a filename
             | search, not a content search. I don't want a background
             | service indexing the files and contents of all my disks
             | when I can use a regular search instead.
        
             | wrycoder wrote:
             | One needs both. With folders and trees of bookmarks, you
             | can discover stuff you'd forgotten and wouldn't search for
             | (because you'd forgotten you knew it once :).
             | 
             | This becomes more important as you get older and begin to
             | experience the pleasures of reading things again for the
             | "first" time.
        
         | [deleted]
        
         | btrettel wrote:
         | Probably depends on your use case, but my experience is that
         | getting good results with text search often takes a lot more
         | effort than tagging/classifying the documents when you get them
         | would. It takes effort to craft a good query. Terminology used
         | varies. "Oh, Sally uses a different term than I do, what was
         | that?" If you tag or put the files into folders then you can
         | standardize.
         | 
         | I worked as a patent examiner in the past and using only text
         | search for that would be considered negligent there as it would
         | miss a lot of documents. I ultimately used a combination of
         | text, classification, citation, and AI similarity search
         | techniques. Each has strengths and weaknesses so using all of
         | them makes sense.
        
       | bityard wrote:
       | I keep my personal notes in an app that I wrote which is backed
       | by SQLite. It resembles a wiki.
       | 
       | First, I tried tags. This seemed like a good idea and was a lot
       | of fun at first, but eventually I got _really_ tired of having to
       | curate tags for all of my notes and boy there were a lot of them!
       | It's not something you can just do once either, because every
       | time you update a note you have to remember to change the list of
       | tags as well. I wound up with many articles whose tags no longer
       | (or never did) match the content.
       | 
       | To get myself out of the tag-curating business, I then tried the
       | "folder" idea by separating areas of concerns into namespaces.
       | So, all of the Python-related notes go under the "Python"
       | namespace. All of the database notes into "Databases," and so on.
       | All the did was shift the problem space. Which namespace does the
       | note on SQLAlchemy go in? If an article does not fit into an
       | existing namespace, should I create one for it now, or put it in
       | the root and hope I remember to move it if a second related note
       | comes along? To put it succinctly, my notes do not fit into a
       | DAG.
       | 
       | My third iteration dropped both tags and namespaces and
       | implemented the FTS5 search built into SQLite. Two years later, I
       | have no regrets. The only "curation" I have to worry about is
       | giving each note an accurate title and breaking up large notes
       | into smaller ones when it makes sense. Now when I need something
       | I just search for it and it shows up in the results.
       | 
       | Google for all of their other faults got one thing extremely
       | right when it came to web content and email: curation is a fine
       | hobby but for Really Getting Shit Done, you index the content
       | well and then just search for it when you need it.
        
         | mro_name wrote:
         | exactly the same sold me on spotlight search on macos. Have to
         | sign "for all of their other faults got one thing extremely
         | right" as well, sigh.
        
         | BoppreH wrote:
         | > To put it succinctly, my notes do not fit into a DAG.
         | 
         | I think you mean "tree" or "hierarchy"? A DAG would be a
         | superset of tagging, and could place SQLAlchemy under both
         | Python and Databases, as long as you consider the edges
         | oriented (i.e. there's a parent-child relationship).
         | 
         | Doesn't solve the tag maintenance issue, though.
        
           | tylerhou wrote:
           | Technically, if their notes can't be represented by a DAG,
           | they also can't be represented by a tree either.
        
         | onion2k wrote:
         | Search works brilliantly for your own notes because you know
         | what you're looking for. You wrote the notes. It fails for
         | problems that you can't describe well though, especially if you
         | don't know the technical jargon to search for. Directories and
         | tags can work for that problem because you can easily see
         | relationships like a hierarchy of folders, or what other tags a
         | tagged item has. Tags and folders also act as a prompt to
         | classify and organise things, which occasionaly leads to
         | discovering how things are connected.
         | 
         | "How to find stuff" is a space with many solutions to similar
         | looking but subtly different problems.
        
         | telchar wrote:
         | That's a nice summary of the problem and a solution I think I
         | can agree with. One quibble is I think your notes could maybe
         | fit into a DAG, but (as I think you meant) not a tree. In
         | practice I don't think there's an easy way to do that - it
         | would mean lots of sym or maybe hard linking and I don't know
         | enough about filesystems to know if that's feasible.
         | 
         | But the one area that curation carries a big advantage over
         | search is in browsing. You can do maybe some things with topic
         | modeling and recommendations to allow a kind of browsing, but
         | with searching it's really hard to know whether you have
         | thoroughly covered a part of the space via searching, while
         | with hierarchical curation that is easy. Filling in that last
         | part with a good solution would make searching a no brainer
         | over curation I think, but IMO I don't think most search
         | solutions try to handle that right now.
        
         | viraptor wrote:
         | > I wound up with many articles whose tags no longer (or never
         | did) match the content.
         | 
         | I'm curious about your tagging strategy. Could you show some
         | example of this issue?
         | 
         | I feel like my tags are very different since they're barely
         | curated, but I can't imagine ending up with a "wrong" tag. I
         | may miss some and have to add them later, but i can't remember
         | ever removing or changing a tag. That's both in pinboard and in
         | my scanned documents.
        
         | akvadrako wrote:
         | I feel like you must be implicitly tagging your notes.
         | 
         | Let's say you have notes about SQLite. If you don't put
         | "SQLite" in the note, how will you find them?
        
           | iqanq wrote:
           | select * from notes where upper(text) like '%SQLITE%' :P
        
         | em-bee wrote:
         | for me, folders are just a limited form of tagging. since i
         | switched from mutt with its folders to sup which uses tags for
         | email, i don't want to look back. first of all, my extensive
         | list of mutt folders was trivially translated to equivalent
         | tags, so i could continue as i was used to. but then, tagging
         | allowed me to create additional tags as i needed them. i didn't
         | tag everything, and sup also indexes all mails and also has
         | search, so in fact i get the advantage of both tags and search
         | (and i can save searches and treat them like virtual
         | tags/folders as well).
         | 
         | well, effectively, tags too, are just a specialized form of
         | searching.
         | 
         | the one thing i don't see is the problem with tags getting out
         | of sync.
         | 
         | yes, it happens. tags do become obsolete, but that is rarely a
         | problem. it just means that i find get more results than i
         | should otherwise. occasionally when i see way to many obsolete
         | tags i go and clean up that particular category of tags. if it
         | is just a few then i ignore them.
         | 
         | and if i look at a tag and i don't find what i need, then i
         | search for it, and add the tag when i find it so that next time
         | i'll find it faster, because with more than 2 million emails in
         | my archive search alone is not good enough.
        
           | Quekid5 wrote:
           | > for me, folders are just a limited form of tagging.
           | 
           | I understand that this is a very subjective thing... but
           | folders offer an exclusion which isn't immediately available
           | via tagging. Tagging is _implicitly_ an _OR_ operation.
           | 
           | Now, your search engine might offer ways to add "not X", but
           | it's a tradeoff. It you have highly-compartmentalized bits of
           | info you end up with the problem of "how much do have to
           | explicitly exclude from my search?".
           | 
           | It's complicated.
           | 
           | Personally, I think we're missing a level of organization
           | somehow.
        
           | jgtrosh wrote:
           | The final step GP is describing would correspond to
           | notmuch[1] for mail. Have you looked into that?
           | 
           | [1]: https://www.notmuchmail.org
        
       | tkot wrote:
       | I have settled on putting tags (bunch of words I associate with
       | given subject separated by underscores) in names of
       | files/directories and using FSearch
       | (https://github.com/cboxdoerfer/fsearch) to search for the tags
       | in names/paths.
       | 
       | It's simple, it's portable, it's good enough. You could in theory
       | improve it by having multiple views of the same data (let's say
       | you want to save some notes about "Naturalis Historia" - should
       | you put it under "ancient Rome" directory or under"biology"?) for
       | example by using hardlinks but I don't know if there is a way to
       | create a backup on another filesystem that will keep hardlinks as
       | hardlinks (DAR seems promising
       | http://dar.linux.free.fr/doc/Features.html but I have yet to try
       | it).
        
       ___________________________________________________________________
       (page generated 2022-01-24 23:03 UTC)