Other programs I’ve tried: Roam, dynalist, tiddlywiki, lightweight or physical note taking systems.
If you’re not using a personal knowledge management system I highly recommend you read about what they can do for you, possibly under “zettlekasten” or “digital gardening”. I wish I’d started earlier.
Obsidian.md is sadly closed source, but it works entirely on standard markdown with locally stored files. It has a thriving thriving plugin community supporting things like sql queries of your notes, kanban boards, and spaced repetition.
I have tried Obsidian, Joplin, Logseq, Notion, Evernote, Onenote, Google Notes, Apple Notes, and various other markdown editors. I have ultimately found emacs’ org-mode plus git (for syncing, backups, and, well, version control) plus ripgrep/fzf (for searching and quickly jumping to a file/section) plus org-super-links (which provides automatic backlink insertion/deletion) plus gpg (for encrypting sensitive files/sections; emacs and org-mode support for gpg is superb) to be leagues ahead of the competition. Its mobile story is pretty sad though (There are some options, but by its very nature org-mode shines when it is run by emacs. And emacs isn’t too mobile-friendly. iOS also doesn’t let us run emacs directly (Ask yourself how an OS could be allowed to exist that doesn’t allow you to run GPL software.), and so SSH needs to be used.)
Emacs (and org-mode) reward investment and self-extensions, so if someone is adamant not to invest in their tooling, I would recommend Obsidian. Beware that Obsidian is a closed source tool and any investment you do make in it is likely to become obsolete in ten years.
Some examples of extended usages I have had with org-mode this week, to give you a taste of possibilities:
Managing my various irregularly recurring bills (no credit cards or any kind of auto money retrieval here)
Doing some NLP work, I marked up different words via a custom markup extension. This visualizes the words differently and lets me jump between specific classes of words (e.g., command verbs).
Doing some other NLP work, I easily changed the execution machine of the code cells in my notebook to a remote machine. Did I mention that org-mode notebooks support multi-language, multi-session notebooks, and that you can use Jupyter kernels or code your own backend(s) to support a new language?
Whenever I like the music currently playing, I go to a playlist file, and type some keyword which then gets expanded to the path of the music file being played (the path is received by communicating with mpv). I can then manage my playlists in org-mode, ordering them as trees, adding tags, etc. I don’t personally appreciate using cloud services, but I imagine a similar thing should be possible using Spotify’s API.
I have made some keywords color the line they occur in. This is surprisingly useful. E.g., @urgent will use a pink background and make the text bold and black.@great will make the background a light blue and the text green.
I have a lot of custom links; E.g., using [help:sth] will open the documentation of sth. I color some of the links differently than others.
I frequently paste rich text (e.g., from Chrome) as org-mode text (using pandoc under the hood to convert the HTML to org-mode text). This is extremely useful. I don’t remember which other editors have this feature; Usually, editors using binary formats do have an equivalent feature, but the ones using plain text do not.
I have custom link inserters for sites I use frequently, such as Github, Goodreads, Steam, Imdb, fanfiction.net, rotalroad.com, etc. Here is a Goodreads example (all of this gets inserted automatically, no manual entering of the data is necessary):
Beware that Obsidian is a closed source tool and any investment you do make in it is likely to become obsolete in ten years.
That seems really unlikely to me, as several plugin developers who write open source plugins for Obsidian routinely reverse engineer Obsidian’s internals (in order to improve our plugins). Obsidian, after all, is built as an Electron app (or Capacitor on mobile) in TypeScript, with AFAIK the only non-JS bits coming from open source projects (such as various Node modules and Electron/Capacitor themselves). Thus, the entire code base is merely partially obfuscated, rather then being a truly “closed” source app. It is only “closed” in the sense that it is against copyright law to create and distribute your own version.
So for Obsidian to disappear altogether, it would require both 1) the end of the current entity with ownership, and 2) that end to happen in such a way that a successor copyright owner exists to actively stamp out any attempts to create a community build—or an API-compatible clone.
That could happen, I suppose. But it’s hard to imagine what company would have deep enough pockets to do it, and yet also feel threatened enough by Obsidian to want to eradicate it.
I liked Notion for a while, and it certainly has done well, but it has pivoted to the Enterprise market and away from individual consumers, and more importantly, it is just too slow.
I’m currently on Notion and have went through many off these different things.
I’m always worried about getting too invested and then the company going under. However, the open source things are always a little too rough around the edges for my taste.
This is the factor that persuaded me to try Obsidian in the first place. It’s maintained by a company, so perhaps more polish than some FOSS projects, but the notes are all stored purely as simple markdown files on your hard disk, so if the company goes under the worst that happens is there are no more updates and I just keep using whatever the last version was
To address that concern, I think it is important that a service has good data export. One thing that is good about Notion is that the data you are creating is fairly generic: markdown and tables, so now that they are popular and have a public API we are seeing lots of services for moving and sync’ing their data with other services.
I’ve thought about trying Roam, but it is expensive and I worry that, if I use it for a while but then decide it is no longer worth the cost, how will I move that data elsewhere?
I’m currently using Notion and agree on the “slow” part.
However, what Notion does give you, which other, mostly markdown / flat-file based systems do not, is a form of “data-base”, or more truthfully spreadsheet-like applications with light formulas, sorting, filtering etc. Also, the free version also includes sharing / “publication” and sync.
I do not use it heavily, but those are the reasons I’m sticking with it for now.
Thanks for pointing me to it, if I make the jump in the future, that might come in handy. Although it does slightly take away from the appeal of pure markdown files.
Yes, and having that database like functionality, as well as the usual note taking, is really a great addition. And sync is critical IMO. If they would just make the web front-end faster I would stop looking for alternatives.
For those worried about Obsidian not being FOSS (like I was), keep in mind that you can avoid paying for their Sync feature.
Note-encryption, and even some Internet port-blocking/monitoring/offline-usage, can also probably prevent note exfiltration. (I mean, you still need your own good opsec. But you can do it with Obsidian I think, just as you could do it with a FOSS notetaker that, like Obsidian, stores files in a nice open format like Markdown.)
There’s also a FOSS(?) alternative to Obsidian, but it’s harder to use and may also be a data harvesting scheme from China and may also not be open-source/updated any more???
The things that are most valuable to me in roam (other than the obvious) are:
the daily notes page
phone2roam
each block is its own unit
I assume since Obsidian has such a great plugin community, that the phone2roam functionality exists there.
But last time I checked, there was nothing like the daily notes page in Obsidian and it also wanted to treat each page as a unit rather than each block. Have those shortcomings been overcome yet?
Blocks can be linked and embedded; if you’re not using a plugin, you need to begin typing a link like [[some page#^ and then you’ll get a selection of blocks within that page. It’s much easier with community plugins like “Copy Block Link” or “Carry Forward”, though. Blocks can be linked or embedded/transcluded, as can page sections designated by heading text (e.g. [[My Page#Some Section]]) and autocomplete works for those as well as link hovering. (You can ctrl-or-cmd hover a link even in edit mode to see a popup of where it goes, and if the link is to a section or block the popup will just be that section or block.)
There is a plugin called Daily notes and another called Periodic Notes (which also does weekly and monthly notes). Also yes you can now transclude individual blocks/headers as well as whole pages.
I’m using Obsidian as well. IIRC there is an open source alternative that aims to work with Obsidian markdown files (with features still being added the last time I looked). I forgot what it’s called, though, and it doesn’t have the same plugin ecosystem either.
It’s possible that you have Zettlr in mind? And possibly not! But given the high degree of overlap with Obsidian’s approach (Zettlr’s forums/discussion address this matter in several threads), it’s worth noting in this curated post. It, too, is a Markdown based writing + note-taking + idea-connecting (Zettelkasten model) app which is open source and cross platform.
Software: Obsidian.md
Need: Knowledge management system.
Other programs I’ve tried: Roam, dynalist, tiddlywiki, lightweight or physical note taking systems.
If you’re not using a personal knowledge management system I highly recommend you read about what they can do for you, possibly under “zettlekasten” or “digital gardening”. I wish I’d started earlier. Obsidian.md is sadly closed source, but it works entirely on standard markdown with locally stored files. It has a thriving thriving plugin community supporting things like sql queries of your notes, kanban boards, and spaced repetition.
I have tried Obsidian, Joplin, Logseq, Notion, Evernote, Onenote, Google Notes, Apple Notes, and various other markdown editors. I have ultimately found emacs’ org-mode plus git (for syncing, backups, and, well, version control) plus ripgrep/fzf (for searching and quickly jumping to a file/section) plus
org-super-links
(which provides automatic backlink insertion/deletion) plusgpg
(for encrypting sensitive files/sections; emacs and org-mode support forgpg
is superb) to be leagues ahead of the competition. Its mobile story is pretty sad though (There are some options, but by its very nature org-mode shines when it is run by emacs. And emacs isn’t too mobile-friendly. iOS also doesn’t let us run emacs directly (Ask yourself how an OS could be allowed to exist that doesn’t allow you to run GPL software.), and so SSH needs to be used.)Emacs (and org-mode) reward investment and self-extensions, so if someone is adamant not to invest in their tooling, I would recommend Obsidian. Beware that Obsidian is a closed source tool and any investment you do make in it is likely to become obsolete in ten years.
Some examples of extended usages I have had with org-mode this week, to give you a taste of possibilities:
Managing my various irregularly recurring bills (no credit cards or any kind of auto money retrieval here)
Doing some NLP work, I marked up different words via a custom markup extension. This visualizes the words differently and lets me jump between specific classes of words (e.g., command verbs).
Screenshot: https://files.lilf.ir/tmp/tmp.5L6JeSJoCw.png
Doing some other NLP work, I easily changed the execution machine of the code cells in my notebook to a remote machine. Did I mention that org-mode notebooks support multi-language, multi-session notebooks, and that you can use Jupyter kernels or code your own backend(s) to support a new language?
Whenever I like the music currently playing, I go to a playlist file, and type some keyword which then gets expanded to the path of the music file being played (the path is received by communicating with
mpv
). I can then manage my playlists in org-mode, ordering them as trees, adding tags, etc. I don’t personally appreciate using cloud services, but I imagine a similar thing should be possible using Spotify’s API.I have made some keywords color the line they occur in. This is surprisingly useful. E.g.,
@urgent
will use a pink background and make the text bold and black.@great
will make the background a light blue and the text green.I have a lot of custom links; E.g., using
[help:sth]
will open the documentation ofsth
. I color some of the links differently than others.I frequently paste rich text (e.g., from Chrome) as org-mode text (using
pandoc
under the hood to convert the HTML to org-mode text). This is extremely useful. I don’t remember which other editors have this feature; Usually, editors using binary formats do have an equivalent feature, but the ones using plain text do not.I have custom link inserters for sites I use frequently, such as
Github
,Goodreads
,Steam
,Imdb
,fanfiction.net
,rotalroad.com
, etc. Here is a Goodreads example (all of this gets inserted automatically, no manual entering of the data is necessary):That seems really unlikely to me, as several plugin developers who write open source plugins for Obsidian routinely reverse engineer Obsidian’s internals (in order to improve our plugins). Obsidian, after all, is built as an Electron app (or Capacitor on mobile) in TypeScript, with AFAIK the only non-JS bits coming from open source projects (such as various Node modules and Electron/Capacitor themselves). Thus, the entire code base is merely partially obfuscated, rather then being a truly “closed” source app. It is only “closed” in the sense that it is against copyright law to create and distribute your own version.
So for Obsidian to disappear altogether, it would require both 1) the end of the current entity with ownership, and 2) that end to happen in such a way that a successor copyright owner exists to actively stamp out any attempts to create a community build—or an API-compatible clone.
That could happen, I suppose. But it’s hard to imagine what company would have deep enough pockets to do it, and yet also feel threatened enough by Obsidian to want to eradicate it.
This is an important but tricky category.
I liked Notion for a while, and it certainly has done well, but it has pivoted to the Enterprise market and away from individual consumers, and more importantly, it is just too slow.
I’m currently on Notion and have went through many off these different things.
I’m always worried about getting too invested and then the company going under. However, the open source things are always a little too rough around the edges for my taste.
This is the factor that persuaded me to try Obsidian in the first place. It’s maintained by a company, so perhaps more polish than some FOSS projects, but the notes are all stored purely as simple markdown files on your hard disk, so if the company goes under the worst that happens is there are no more updates and I just keep using whatever the last version was
To address that concern, I think it is important that a service has good data export. One thing that is good about Notion is that the data you are creating is fairly generic: markdown and tables, so now that they are popular and have a public API we are seeing lots of services for moving and sync’ing their data with other services.
I’ve thought about trying Roam, but it is expensive and I worry that, if I use it for a while but then decide it is no longer worth the cost, how will I move that data elsewhere?
I’m currently using Notion and agree on the “slow” part.
However, what Notion does give you, which other, mostly markdown / flat-file based systems do not, is a form of “data-base”, or more truthfully spreadsheet-like applications with light formulas, sorting, filtering etc. Also, the free version also includes sharing / “publication” and sync.
I do not use it heavily, but those are the reasons I’m sticking with it for now.
Obsidian’s dataview plugin might have all the database features you’re looking for.
Strongly agree with sync and publish though. The free solutions I out together for each are ugly.
Thanks for pointing me to it, if I make the jump in the future, that might come in handy. Although it does slightly take away from the appeal of pure markdown files.
Yes, and having that database like functionality, as well as the usual note taking, is really a great addition. And sync is critical IMO. If they would just make the web front-end faster I would stop looking for alternatives.
For those worried about Obsidian not being FOSS (like I was), keep in mind that you can avoid paying for their Sync feature.
Note-encryption, and even some Internet port-blocking/monitoring/offline-usage, can also probably prevent note exfiltration. (I mean, you still need your own good opsec. But you can do it with Obsidian I think, just as you could do it with a FOSS notetaker that, like Obsidian, stores files in a nice open format like Markdown.)
There’s also a FOSS(?) alternative to Obsidian, but it’s harder to use and may also be a data harvesting scheme from China and may also not be open-source/updated any more???
The things that are most valuable to me in roam (other than the obvious) are:
the daily notes page
phone2roam
each block is its own unit
I assume since Obsidian has such a great plugin community, that the phone2roam functionality exists there.
But last time I checked, there was nothing like the daily notes page in Obsidian and it also wanted to treat each page as a unit rather than each block. Have those shortcomings been overcome yet?
Blocks can be linked and embedded; if you’re not using a plugin, you need to begin typing a link like
[[some page#^
and then you’ll get a selection of blocks within that page. It’s much easier with community plugins like “Copy Block Link” or “Carry Forward”, though. Blocks can be linked or embedded/transcluded, as can page sections designated by heading text (e.g.[[My Page#Some Section]]
) and autocomplete works for those as well as link hovering. (You can ctrl-or-cmd hover a link even in edit mode to see a popup of where it goes, and if the link is to a section or block the popup will just be that section or block.)There is a plugin called Daily notes and another called Periodic Notes (which also does weekly and monthly notes). Also yes you can now transclude individual blocks/headers as well as whole pages.
I’m using Obsidian as well. IIRC there is an open source alternative that aims to work with Obsidian markdown files (with features still being added the last time I looked). I forgot what it’s called, though, and it doesn’t have the same plugin ecosystem either.
It’s possible that you have Zettlr in mind? And possibly not! But given the high degree of overlap with Obsidian’s approach (Zettlr’s forums/discussion address this matter in several threads), it’s worth noting in this curated post. It, too, is a Markdown based writing + note-taking + idea-connecting (Zettelkasten model) app which is open source and cross platform.
I think it starts with (or contains) an F, so I don’t think it’s that. Maybe Foam?