6 ms·
The first thing I missed when I moved from my browser's built-in bookmark manager to Pinboard.in was the folder structure. With folders, I could easily browse t
by kijin 14y ago
The first thing I missed when I moved from my browser's built-in bookmark manager to Pinboard.in was the folder structure. With folders, I could easily browse the list of topics I've made folders for, and drag a new bookmark into one or another folder. Folders can also have subfolders, so if I bookmarked something about PostgreSQL optimization, I could tuck it under Databases/PostgreSQL/Performance and easily find it later. But of course, not every article fits cleanly under one category, so sooner or later I ended up having to decide which folder to drag my bookmark into.
Tags are a wonderful way to solve this problem, because every item can have multiple tags. Even while using the browser's bookmark manager, I began to rely more on tags and less on folders. When I moved all of my 6000+ bookmarks to Pinboard, I thought I'd forget completely about the folders and start using tags exclusively. But that didn't work out as well as I thought it would.
1. You have to type tags manually. Pinboard has autocomplete, but I still need to remember the first few letters of the tag to find what I want. Yes, it also shows a tag cloud below the new bookmark window, but when you have thousands of bookmarks and hundreds of tags, discoverability just goes out the window. Moreover, what happens if you accidentally type PsotgreSQL instead of PostgreSQL?
2. Tags are like global variables. The more tags you create, the more garbage you have in the global namespace. Combined with (1), this makes it even more difficult to find that obscure new database system that you bookmarked 6 months ago. Instead of going into the "Databases" folder and looking inside it, you have to browse the global namespace and try to remember the name of the tag. That's a much larger search space.
3. I can't rearrange bookmarks unless I mess with their timestamps. When I research a topic and collect a few dozen articles on it, I usually decide which articles are the most authoritative or comprehensive and move them to the top of a folder. When I revisit the topic later, I can start with these articles and get up to speed quickly. This worked wonderfully with my browser's bookmark manager. With today's bookmarking services, everything is sorted by timestamp. Yes, Pinboard has a Star button, but it's not quite the same as having something appear at the top of a list.
I partially mitigated these problems by renaming all my tags to a Usenet-like namespace structure. So PostgreSQL becomes comp.db.pgsql and Ruby becomes comp.lang.ruby. Now it's a little bit easier for me to organize my bookmarks, but it's still a mess because all those tags still pollute the global namespace. It's like how PHP throws all functions into the global namespace with a copious amount of underscores in between words. This sucks. In addition, I can't go to comp.db to see all the bookmarks I added under comp.db.mysql, comp.db.pgsql, etc. because the system doesn't support any notion of a hierarchy among tags. I also still can't rearrange bookmarks within a tag, so often the most important articles on a topic end up at the bottom of the list. Finally, I need to type even more, because namespacing make my tags longer.
Do I want to go back to folders? Hell no. I've got too many items filed under multiple tags for folders to make sense anymore. But there is definitely room for improvement while keeping to the concept of tagging. I want:
- A drag-and-drop interface for adding tags. This will drastically reduce the duplication caused by mistyping tags. With folders, you drag an item into a folder. With tags, you might want to drag tags into an item.
- Tag namespacing. My ideal bookmark database would have at most a dozen "supertags" in the global namespace, and everything else would be filed under "subtags". Searching by a supertag would show all items filed under subtags, too. Other people might have different preferences, but nothing stops them from making all tags global anyway.
- An option to sort tags by something other than the timestamp. Not everyone is interested in the latest articles from the last 15 minutes. I often revisit articles I bookmarked a year ago. A rating system would be great, for example, if accompanied by an option to sort by rating.
The author proposes search, lists, and hashtags. But search would only exacerbate the everything-is-in-the-global-namespace problem if you use it to find things that you yourself created. (It's great for things other people created.) Lists might not be very useful unless you could have sublists for different subgroups within a team, and hashtags are just as chaotic as plain old tags, only with an extra Shift+keystroke.
tl;dr: We might not want to organize everything in a neat hierarchy all the time, and we might not always want to do it ourselves. But the ability to impose some hierarchy on your data is a good thing when you have more than a certain amount of data to juggle.
- MatthewPhillips 14y agoI think the key is that you can still find content without tagging. Gmail does this through fantastic search capability. When you have that as a backup, tagging becomes quite wonderful. As a sidenote, I've often wondered what computing would have been like had the concept of folders been replaced by tags from the beginning.
- DividesByZero 14y agoNamespacing is a really good idea, and I think might be what they were trying for but didn't quite reach.
- artsrc 14y ago> Tag namespacing. I think tags model all the information you want. Perhaps there is UI problem. Available tags can listed with number of tagged documents as an ordering criteria. So then you click on databases. Interesting things to show are other tags for documents tagged with databases (subdirectories), and documents with only databases as a tag (members of this directory). I think sub/super tags are not necessary.
- sprobertson 14y agoYes, I think it might be an interface problem as well. Maybe tag clouds were a good idea after all?
- kijin 14y ago> I think tags model all the information you want. > other tags for documents tagged with databases (subdirectories), and documents with only databases as a tag (members of this directory) I don't like to tag my items "databases, mysql". I just want to tag them "mysql" and I want the system to know that MySQL is a type of database. Besides, there might be too much noise in the "other tags" list once you have a large number of tags. Just because I bookmarked an article about making TLS connections to MySQL doesn't mean that "tls" belongs to "mysql" just as much as "innodb" does. Tags don't model all the information I want. Even if it does, I feel like there's a serious impedance mismatch between the tagging model and my mental model. MySQL is a database. Give me all the items that I tagged with (any database + rails) between 20120701 and 20120731. The mountain lion is a big cat. Give me all the items I've tagged with a big cat. Some things in the world naturally fit into categories like that. The world is not a flat namespace in my mental model. A good UI would help narrow the mental gap, but the gap will always be there. To say that a one-dimensional tagging system can model all the information I want is like saying that a key-value store can model all the information I want. Just because I can stuff my data into it and make basic queries doesn't mean that it's the best way to organize my data.