reddit / emacs
org-roam vs org-super-links
JustinSilverman · 2022-09-20 22:22
After 2 years of consideration I have come to the conclusion that I need some flavor of zettle-whatever in my workflow. I have played around with both org-roam and org-super-links much like a toddler plays with a shiny toy.
I like how lightweight org-super-links feels and the fact that the links are just standard or links that work in orgzly. Honestly I can't figure out what org-roam adds to the picture. That said there seems to be a bunch of hype about org-roam and feel like I must be missing something.
Honest question: can someone explain the attraction of org-roam over org-super-links? Is there something special about the org-roam-capture stuff that's different enough from org-capture to fill some gaps?
verticaleyes · 2022-09-21 03:54
I am in the same boat. I have never been able to shake the feeling that org-roam is unnecessarily complex and reinvents the wheel a bunch; which might or might not be true, but for all my use cases so far, I haven't needed/used a feature that warrants so many moving pieces. I have a todo item to move my notes from org-roam to [denote](https://github.com/protesilaos/denote) instead, which I am eyeing for its apparent simplicity.
mee8Ti6Eit · 2022-09-21 04:12
org-roam basically just provides a sqlite database that tracks all the links in org files that you put in the org-roam directory.
Based on a quick skim of org-super-links functionality, I expect that org-roam has much better performance (like 1000x better due to using a sqlite DB) and may do a better job of keeping backlinks up to date (due to having a dedicated org-roam directory to scan, but depends on your workflow). org-roam also easily supports things like a GUI graph viewer (org-roam-ui) which I imagine org-super-links does not have.
wilbur-d · 2022-09-21 06:59
One difference between org-super-links and org-roam is that org-super-links doesn't track any links. They're just regular org-mode links. It just adds them on both sides of the relationship for you, so there is nothing really to make it that slow, or no slower than following any other link at least.
meedstrom · 2022-09-21 09:17
Good question! First, I want to claim that org-roam is also not that much technology, and if it seems to have a whole cohesive framework you must swallow at once, it's because many users and devs approach it with a certain mindset. You can find many answers in _How to Take Smart Notes_ by Sönke Ahrens.
At the time I started with org-roam, the features that mattered to me overlap a lot with org-super-links:
1. a single hotkey for letting me pick from headlines known to the org-id database, to insert a preformatted link in one step (or to visit it)! Wow! This turns out to be crucial, and I no longer understand why anyone would bother to write anything without such a mechanism at their fingertips. If I could send just this component (`org-roam-node-insert`) to my past self...
2. org-roam doesn't mandate a hierarchy. I still use hierarchy many places by nesting notes, but I'm not obligated to make one up when there's no natural hierarchy to the topic. I don't have to think about where to put a new note, which turns out to be important.
3. org-roam-ui
4. backlinks
The moment I was sold on org-roam was seeing org-roam-ui visualize my own notes. That experience carried me over the threshold, lit a vision for the way forwards, and gave me a fire of excitement.
Before that, had held off for a couple of years because it seemed to be a Big Thing to learn. In reality it's just org-super-links but with enough hype to scare us lazy people. It's just this to start with, two hotkeys: `org-roam-node-insert`, `org-roam-node-find`, and occasionally `M-x org-roam-ui-mode`.
After that, as you sophisticate your notetaking, you'll find use for the other tools -- they are provided for a reason, as they were useful to other zettelkasten-writers, so why would you not keep them in the toolbox?
publicvoit · 2022-09-21 12:08
[UOMF: Linking Headings With org-super-links (Poor-Man's Zettelkasten)](https://karl-voit.at/2020/07/22/org-super-links/) does contain my point of view.
TL;DR: Zettelkästen are cool but if you don't use the navigation/visualization feature, a bi-directional link solution like org-super-links might be enough to you.
nv-elisp · 2022-09-21 13:28
> org-roam-ui
what do you actually use this for?
I've yet to hear anyone give a compelling case.
masukomi · 2022-09-21 14:56
I kept having issues with org-roam borking its sqlite db, or refusing to add something to it or... yeah. just repeated problems and none of the suggested solutions to fix it ever did.
So, I switched to denote. i am SO happy i did. I now fully believe that you're right, that org-roam is unnecessarily complex, reinvents wheels unnecessarily, and just added failure points as a result.
Denote has just worked flawlessly, and the video and text documentation has addressed all my questions.
EFLS_ · 2022-09-21 15:34
Part of the joy and strength of Emacs are possibilities to tinker with Lisp, so that you can create your own environment.
It’s how I got to create Zetteldeft, a note taking package that builds on Deft, even though my Lisp skills are fairly limited.
After playing with it for a couple of days, I find that the Org-roam codebase has a very high bar of entry. It simply isn’t as accessible (because of the SQL dependency) in comparison to Denote or Deft.
In the end you have to make a trade off. For me, the ability to understand the code and build on top of it is essential, so I’d include that as a point of attention in your comparison between different packages.
EFLS_ · 2022-09-21 15:37
I very much agree with your assessment. Understanding the tools I use is fundamental to my Emacs experience, so simplicity is key. While it has nice bells and whistles, ultimately Org-roam is too inaccessible to me, unfortunately.
argtri · 2022-09-21 16:14
Pretty knowledge graphs are to knowledge management what speaker lights are to music.
JustinSilverman · 2022-09-21 17:05
I love this response. That's said with two kids and grants due frequently. My tinkering time is limited. Still fantastic point.
akirakom · 2022-09-21 18:57
It's hard to migrate one's PKMS to another system in a fully compatible way. Using an existing framework would save time in the beginning, but in a long term, it's about building your own system. You need to keep it in a future-proof format.
AuroraDraco · 2022-09-21 20:52
I would say Org-roam probably has the biggest ecosystem compared to other solutions. Its a large package that does a lot of things, but there are a lot of other packages that build on it. Examples of the top of my head are: Org-roam-ui, citar-org-roam, org-roam-bibtex, zetteldesk. Its more or less the most "standard" zettelkasten implementation in emacs as in most people know about it and its often recommended.
I haven't tried other solutions, so I can't give you any comparison, cause frankly I started with org-roam (after seeing the EmacsConf talks on it in 2020) and after I got used to it I just felt no reason to move to anything else. It has a lot of features built in and its definitely not the simplest solution. But its really well made for sure, I couldn't recommend it enough
JustinSilverman · 2022-09-21 22:42
Thank you!
JustinSilverman · 2022-09-21 22:42
Yes I am very familiar with this post. It's excellent. Thank you for making it.
dm_g · 2022-09-22 01:27
I think there is one thing that org-roam might do better and it has to do with the database it maintains:
queries with tags
I use org-ql. Org ql requires to load every file, and parse it, to be able to understand its structure. This is a slow process that might take seconds if you have more than 50 or so files.
Here is where the org-roam database comes to help:
You can quickly search for files that have a certain tag. Many of us use it to keep track of todos in org-roam files: every time we want to query the agenda-files, we first update it with a list of files from org-roam that has the given tag. It works great.
meedstrom · 2022-09-23 15:23
It's inspiring, which I view as a real use case. But also, friends love to click around in it.
nv-elisp · 2022-09-23 15:25
Sorry, I don't find that to be a compelling use case. That only confirms to me that it's nothing more than eye candy.
meedstrom · 2022-09-25 08:33
You may be right. If there's a compelling use case for you, I guess it has to do with detecting redundancies in the network, and if you're a visual thinker, giving you a space in which to think about whether it makes sense to split a node, merge two nodes, or about how to reorganize a cluster of nodes where, in hindsight, you disagree with the way you separated the topics. But Luhmann wouldn't have called these activities necessary... you'll refactor your writings over time, as needed.
Chobbez · 2022-09-28 01:02
Yeah. I don't look at it all that often, but sometimes I scan through to see if anything should link up with something else and make some connections and it's a good reminder of what things are in my org-roam. It's a nice way to get a quick refresher on what you have notes on. Even if it is just eye candy, I don't think that means it's useless. I think it can be encouraging to see the network, and I think that can be important for staying motivated to use and maintain it. Is it absolutely vital? No... And if you don't think it's useful, you don't have to use it.
vidbina · 2022-09-30 09:28
I jot various notes on folks, utils, different NN architectures and web services/tools and very often I'll realize that I want to recall something but can't figure out the name. In that case "walking the graph" often helps me figure it out. Especially when I'm trying to recall the AWS service that competed with something from another vendor (AWS Cognito is somewhat comparable to Auth0, Okta, ory.sh, etc.) or relates to a given concept (AWS EFS relates to NFS).
I don't live in the graph but it's a bit more than eye candy for me because the spatial representation does help me navigate information. Maybe just limitations in how I tick, though so yes to it probably being just eye candy for others.
I also jot notes on people with links to where I've met them such as town and venue (like my favorite cafe) and related organizations. Sometimes I find myself walking the graph starting at such a place where I recall meeting someone to figure out which org or person I was exactly thinking of. I do the same for projects, which allows me to recall project names based on proximity to concepts (e.g.: that project where I did something with NixOS+Edge computing+web3, forgive the buzzword bingo).
Another thing is that I keep forgetting some org-related projects (like parsers, etc.) and I often recall those by just navigating to my org-parser heading and see seeing what pops up nearby. This, I could do just in the org-roam buffer but with the org-roam-ui on a secondary display, it doesn't hurt to have the advantage of being able to pick this up with a quick glance or through peripheral vision. 🤣
nv-elisp · 2022-10-01 07:24
Sounds incredibly inefficient compared to textual search.
PivAd-2 · 2022-10-02 19:09
I use org-roam to map ideas and concepts, like how a certain concept is derived from one author, and is referenced or used by other authors. With that, I use org-roam-ui to help visualize and quickly navigate through the relations, links, and connections between ideas (rather navigating link-by-link like a standard wiki). It can also help provide a general overview of things when mapped out. It is extremely helpful in that regard.
However, for documentation and basic hierarchical notes, I just use org-super-link. I just link the org-roam nodes to the personal documentation when needed, i.e. this certain concept or technique (org-roam node) can be applied in this particular instance (documentation).