Hacker News new | past | comments | ask | show | jobs | submit login
How to take smart notes with Org mode (jethro.dev)
296 points by noelwelsh on Feb 15, 2020 | hide | past | favorite | 72 comments

> Notes aren’t a record of my thinking process. They are my thinking process. – Richard Feynman

I haven’t ever found a quote that described how i approach software as succinctly as this. I use a bullet journal religiously and it’s specifically because of this.

Great article.

For a man who placed a lot of stock in people’s ability to explain things clearly, it’s self-consistent that he would characterize writing and thinking as inseparable.

Love the quote and the idea too. Check out Roam^1 which completely changed my relationship to note-taking.

1 https://roamresearch.com

I actually use Roam quite regularly! However, I have found Roam is better for solidifying and consolidating my handwritten notes at a later point.

For me it goes: 1 - handwritten brain dump 2 - Re-read my notes, analyze them and prep them for consolidation. This means writing down questions I have, updating notes I took that I might have better understanding of now, etc... 3 - Consolidate and import them into Roam with links and supplementary materials (images, code snippets, etc...)

The article linked to at the very top of this comment page talks about implementing Roam in org-mode.

I can't seem to find a reliable source for this quote though. Anyone know of one?

Closest I know is this [0] interview

> Weiner:

> Well, the work was done in your head but the record of it is still here.

> Feynman:

> No, it’s not a record, not really, it’s working. You have to work on paper and this is the paper. OK?

[0] https://via.hypothes.is/https://www.aip.org/history-programs...

Thanks so much for digging this up! So the version in the article is a pseudo-quote?

Out of curiosity, is your bullet journal digital?

No, it's physical. That's on purpose, because it requires me to sit down at the beginning of my day and pull it out. The writing and routine of it is very therapeutic. I normally do it over my morning coffee and reddit/hn browsing.

I've seen it suggested before that while 'tasks' need to be well-structured, reference/notes don't.

I like the idea of not trying to store notes in a hierarchy, but using search and/or tags to try and reference (or discover relations between) notes.

I like the article's emphasis on "how do I want to access this later?". TBH Sometimes I've looked up previous bookmarks or notes, and they didn't have the keywords or tags I was expecting. I'd suggest https://github.com/EFLS/zetteldeft as another project which more/less supports some of the workflow suggested in the article.

That said, yeah, I do prefer pen and paper for worklog notes.

> TBH Sometimes I've looked up previous bookmarks or notes, and they didn't have the keywords or tags I was expecting.

I also use a personal set of scripts for Zettelkasten (in combination with rofi) and I do encounter this sometimes. I've come to the conclusion that it's not a large problem: as long as you find the notes you're looking for most of the time, it's good.

I think the problem of always finding all notes that are relevant to each search is too hard and has diminishing returns. It's best to simply avoid it by relaxing your expectations.

Part of the Zettelkasten philosophy is that it requires you to actively work on links between notes. Some notes are simply forgotten, Luhmann (the original Zettelkasten master) used to say, unless they are indexed into your system.

Yes, and I do actively work on the links. My point is there is no need for perfection here. Good enough is good enough.

If some of the notes are forgotten, so be it. I place my requirements and expectations on the system as a whole, not on each particular note. If the overall system is useful and serves me well, I don't care if some of the notes are forgotten and I've reduced my workload and note loss anxiety by several orders of magnitude. This is what I meant by diminishing returns.

However, with full-text search, it's hard to imagine how any note could be forgotten completely, unless it contains no text at all. This is something Luhmann did not have.

Hey, thanks for including a link to my package! Which serves as a reminder that I should include a better tutorial or introduction sometime...

I used to use Evernote then org-mode heavily but switched to pen and paper notes and haven't looked back. Whenever I used org-mode I started tweaking Emacs and writing macros for hours.

Yeah, I'm a big emacs and org mode fan, but use pen and paper now for note taking.

I think this is mainly due to the fact that my note pad sits at my desk as a constant reminder of what needs to be done. Org files sit in my file system and are often forgotten.

I started out taking hand written notes decades ago but got annoyed when I couldn't easily search through them. Ever since, I just keep a giant text file in Emacs and heavily rely on the 'occur' command. Using these more sophisticated tools would actually require me to do some actual WORK...

I take notes in class or in a meeting with pen and paper mainly because tablets still suck at this and typing on a phone isn't much better. The downside to this is organizing them after the fact. Especially if you don't have a lot of free time. So oftentimes my paper notes are a mess.

Interesting. I always have my notes window open in one half of my monitors. I use it for everything while developing, including pseudocode, developing SQL queries, planning my changes, etc. I use it as a digital scratchpad.

Same. This process works but I have realized the crucial need of tags.

> Whenever I used org-mode I started tweaking Emacs and writing macros for hours.

Does this imply that it contained too many distractions for you, which pen/paper doesn’t? Genuinely curious as I’m trying to optimize my note-taking process and have never used org mode.

Yes, by default it's unusable. You have to read the docs, check out other people's configs. It becomes a whole rabbit hole when all I wanted to do was make a list.

I used org-mode for note-taking in its default configuration for about 10 years before I started customizing it. I found it quite useful. I suspect its utility without customization may vary from use-case to use-case, or perhaps from person to person.

Lately I just use a big Markdown file. That's been pretty nice, but I haven't been at it long enough to be able to endorse it strongly.

That's a tad unfair. Yes, you will have to read the documentation [1], at least the first few sections, before anything will make sense. But "Making a list" is literally the first topic covered after the introduction. ("Headlines", but that's the first type of list you'll ever use.)

I agree if you decide to put some big chunk of your life into Org, you'll either find yourself reading the rest of those chapters, or copying/writing your own customizations, or both. That's where the rabbit hole starts.

[1] https://orgmode.org/org.html

I use org-mode heavily and the only customization I use is toggle-truncate-lines.

Jethro Kuan’s earlier posts on Org mode for planning finally made the idea click for me (maybe just the last straw on the camel’s back). I strongly recommend checking those out too.

Btw, to Notion users — does anyone feel that it’s matched/surpassed Org mode in the breadth of workflows it supports?

I've actually been flip-flopping between Notion and Org-mode for months, and just the other day decided to finally organize myself all on Notion.

I love Org-mode, and will likely continue to use it for various things, but I agree that Notion is the only thing that (to me) surpasses it.

I also moved from org to Notion and have mixed feelings about it. Notion is an amazing platform. In some ways, it’s revolutionary, but everything I store in Notion feels... haphazard. It’s easy to get lost in. Org feels more structured, less Notion is so flexible that it can be almost anything but I still don’t have the ability to extend it like I can with org. It’s also slow and, as is common with Electron apps, a resource hog that I frequently need to restart to keep its appetite under control. There is considerable lag when doing simple things and the keystroke latency is brutal. I don’t mind paying for it though. I prefer it, actually. I think I’m going to stick with it anyway. It’s so good in so many ways and I hope it will only improve with time.

My two biggest problem with notion are no offline storage of data and monthly payments.

Yeah, notion looks great but for this particular case, the part the about being tied to a montnly fee to be able to write my personal notes didn't felt right. Also the friction to write notes felt higher, unless you leave your browser always opened and logged in.

It's now free if you have an academic email. Obviously that doesn't apply to most people, but it was enough to get me to at least create an account.

For those of you using Notion, what system do you follow to organize your notes? Is anyone here actively using something similar to Zettelkasten inside Notion?

my Notion/Zettelkasten practice is inspired by this thread: https://forum.zettelkasten.de/discussion/404/moving-on

I still don't completely trust the manual ordering of the entries to be persistent, but for notetaking/archiving it has worked well so far. I recently started to write longer notes on one topic, sometimes including passages from several articles, instead of adhering to the size limitations of a paper card

I have two issues with Notion -- first, it's not _quite_ fast enough. I find myself avoiding taking notes with Notion because I don't feel like waiting for the page to load, the search to find what I'm looking for, and so on. And second, as someone else mentioned, it feels kind of structurally disorganized.

What is notion?

It's SaaS only, so no locally stored data.


I would say it's primarily a web application for note taking (there's some auxiliary capabilities around kanban boards, etc, but most people I know who use it, use it as a rich text editor).

I think where Notion differs from others, and where it has similarity to Org-Mode is it's ability to create 'blocks' with more dynamic behaviours (calendars, kanban blocks, tables) as well as how easy it is to create linkages between pages.

They have good SEO

They have good platform too.

Hi! Author here, happy to answer any questions.

I'm in the process of moving all my organization stuff into org-mode. This includes agenda, todo lists, project management and notes. This is a long process with a lot of fine tunings and try/errors. But, for me it's like what you said about writing : it's in the process of doing it that you think. This helps me understand my actual needs. And emacs/orgmode is so powerfull and customizable that it's a very goos tool to do that.

Some weeks ago, I read your series of articles about org-mode workflow. I was especially insterested by the one about zettelkasten. This was a trigger for me to switch my notes into org-mode. So I would like first to thank you for your good quality articles !

What interests me in your new package is the automatic link/backlink detection between notes. This is a really great feature I was missing that in the other packages. I'm currently using zetteldeft and I insert hashtags into my notes to be able to search them by tag.

I would like to try org-roam. My question is : in what way should I modify my current note files to be compatible with org-roam ?

Glad you enjoyed the articles!

> My question is : in what way should I modify my current note files to be compatible with org-roam ?

In contrast to zetteldeft, the links in org-roam are real file links. This means you need to replace all of the zetteldeft links with actual org file-links.

That should be all the changes required I think.

I just gave it a try. It is so easy to insert a link/backlink ! Adopted.

good to hear (: feel free to make feature requests/bug reports on the repo. It should become a lot more stable soon, then we can start making it more awesome.

As already echoed in some other comments in this thread:

What is your experience with Notion? How does it compare to org-mode, specifically your system?

I had a run at org-mode, specifically with interest in literate and pkm, and it was too painful/buggy, with the obvious rabbit hole of config. So far, Notion appears to be "good-enough", but it's slow and there is some export friction I feel could be smoothed over with org.

> What is your experience with Notion?

Never used it, so I can't comment here.

> How does it compare to org-mode, specifically your system?

I think Notion targets users who just want to take notes, and not spend time messing around with config. Notion has what I will term "sane defaults", but if something doesn't feel right, there's no way to change it. My system also has sane defaults, and the code powering it is simple and easy to tweak as you please.

Another difference is that Notion is online-first. I'm of the opinion that PKMs should be offline-first, and that the data should be entirely in your control.

Org-mode is just plain text, which is incredibly important for the longevity of the system. It's a system that will be around in a few decades. Can you say the same about Notion?

Org-mode also has an amazing ecosystem of packages, with first-class support for math, tables, images, citations and code. You also have the editing power of Emacs, rather than some web-based IDE.

> it was too painful/buggy, with the obvious rabbit hole of config

I feel like the defaults of Org-mode are pretty good. At least you get to make the decision of trading off your time configuring Org, and using it as it is.

My Emacs configuration hasn't changed in some time. This project started out as 27 lines of Emacs Lisp in my config, but since there was some interest in making it more widely usable, I took some time to polish and release it. To the end user, it should be just plug and play.

Thanks for the comprehensive reply!

I think you definitely highlighted the other side of the coin with Notion: once you're out on the edges of what it can do, there's no way to extend/change/modify.

The performance also comes to mind. Emacs will always be faster vs. an Electron app.

I think I just need to bite the bullet and take some time to really learn Emacs/org, I think after the initial learning curve the flexibility and power will really pay off.

One other question: Sometimes I'll be listening to a podcast, or reading, or will just generally have a thought or idea, and Emacs isn't easily reachable. What's the best way(IYO) to get that in to your system?

Thanks again and I'm hopeful you'll keep up the writing, it's done quite well.

I do this kind of stream-of-consciousness recording by just sending messages to myself on Telegram, sort of like a mobile fleeting note. Some people like doing it through voice, but typing is fine with me.

After that I just refine the saved messages and transfer them into my system.

> Emacs will always be faster vs. an Electron app.

No, but it should certainly take up less memory. Emacs lisp is slow, I think the basic operations would be faster if it were an Electron app.

I wish orgmode would apply Todo to simple bullet or number lists and not only * * (.. ) form.

I wish orgmode used space)tab indents not / * * /* * * stacking

> Tab intends and not * stacking

The org-hide-leading-stars variable visually hides the leading stars, which sounds like it might suit your preference. https://orgmode.org/worg/org-tutorials/org-appearance.html

> TODO to simple bullet or numbered lists

Org-mode lists can have checkboxes (like markdown has on GitHub). https://orgmode.org/manual/Checkboxes.html

But I feel this is exasperated by org-headings not having a 'closing' syntax (like XML elements). Since you can't "close" a heading, you can't easily just continue the content of a heading after the content of its sub-headings; so to have a 'TODO' list within the contents of a heading, subheadings aren't an option.

Thanks TIL

I'm actually working on a literate programming environment that's similar to Org-mode. One of the early design decisions was to use lists, not headers, for Todo-type functionality.

I haven't updated the github repo in awhile and it's under the radar for a few more months, but you can read a design document here https://github.com/mnemnion/orb/blob/master/orb/notes/orb.or...

Although it's easier to read the woken Markdown documentation, despite a couple errors: https://github.com/mnemnion/orb/blob/master/doc/md/notes/orb...

It's self-hosting as well.

is asciidoc similarly powerful?

I have everything in org/githubpages but I often get a bit frustrated with Emacs and its clunkiness. My issue is that orgmode has no spec and is so tightly coupled to Emacs - so ive ended up unintentionally married to the whole ecosystem.. I've been considering migrating away from org but I don't have any great alternative in mind

I get annoyed when other people repeat messages on HN, so I won't do that here: I'm working on a format like orgmode but with an actual specification and standalone implementation. You can find links elsewhere in this thread.

It's not ready for primetime, but it's getting close; there's years of work ahead before it can do everything orgmode does, but as a literate programming environment, it works great.

As long as you stick to Lua. Making it work with Jupyter kernels is the next major phase of the project.

Asciidoc seems to be just a format.

For me, the main benefits of org-mode are the Emacs keybindings to handle the docs semantically, to e.g. move the headings around, nest a whole hierarchy, archive a heading, etc. Also, the agenda view is really useful.

I've been using org-mode mostly to keep day-by-day notes in files such as ~/org/diary/2020-02-15.org, which I create for a given day from a keybinding. I've been thinking of starting to make personal backlogs in the form of org-mode files, keeping the headings ordered by priority, and archiving each heading when I'm done with them. All the benefit of using org-mode here comes from the keybindings.

> My issue is that orgmode has no spec and is so tightly coupled to Emacs

The spec is the org-mode manual. What other programs do, like Orgzly on Android, is to just support what they can of the format. They don't need to have feature-parity with org-mode on Emacs to be useful.

What do you find clunky about org-mode within Emacs? For me it's the opposite, all other tools feel primitive compared to Org, which has really simple and powerful primitives. You can easily adapt it to implement any productivity and knowledge management methodology.

I used to be a religious Org-mode user. Over time, accumulating lots of info and time registrations, I felt I lost the big picture.

What did you lose exactly?

How can we feel in love again with Org?

I find org mode little complicated for my taste.

My note taking is some plain text files in hierarchy and vim. It works even on Android phone using termux. And I am pretty much used to it.

For todo, I have a shellscript that takes an argument and open text file of that name. Works reasonably well.

Plus, prefix your text files with .md and get all the formatting stuff.

Have you tried vimwiki[1]? I’ve been using it for a daily journal for the past couple of weeks and it’s been quite good. I was using it for tasks as well, but then found Taskwarrior[2] and have since moved on to using it.

[1]: https://vimwiki.github.io/ [2]: https://taskwarrior.org/

I am not a prolific vim user, I used nano for same purpose a month ago, where its keybindings were so customized that I thought I'd rather take a chance to learn vim (I am a student).

Have heard about vimwiki. But maybe because I am a student, text files suffice for my purpose. Thanks for reminding about it.

What level of emacs knowledge does org mode require such that it is actually useful to me and can do stuff Microsoft onenote cannot?

I love org mode, but to be honest I think the killer feature of org mode is that it is implemented in the same editor I use for programming. In fact, I had moved from Emacs to Vim several years prior, but moved back to Emacs simply for org mode (and luckily Evil is good enough that I don't really miss Vim at all). Additionally, everything is ascii. There aren't different editors for different kinds of objects because there aren't different kinds of objects. Even tables are just arbitrary pipes, dashes and pluses. I can hack together something that looks kind of like a row in a table, say, "Emacs, please format that to look pretty" and then carry on hacking away. Dates are just text until I tell Emacs, "Oh, please make that date tomorrow". And then it's just text again. I can do crazy things like write some code in one and think, "Oh I need to remember to check that constant to see if it's right". Then I hit a button and I've got a TODO with either a link to the line of the code, or even a link with the context of the code so that stays valid if the line moves. When I am going through my TODOs, I press a button and my TODO list pops up. I press another button and it jumps to my code. I edit it. Rinse and repeat. It's all just normal text in my normal text editor. I don't think there is anything at all like it.

Thank you. Well written.

Depends what your use-cases are.

If you want good, painless syncing between devices, and good mobile use: this would require quite some effort to get org-mode as good as OneNote's.

Org-Babel is an example of something that org can do but OneNote can't. (e.g. showing the results of code blocks in the same markup file). It would be straightforward to make use of this without very much Emacs knowledge, but the Emacs UX isn't great out of the box.

Or maybe some other feature of org-mode might be useful to have with your notes. https://orgmode.org/manual/index.html e.g. I like the org-agenda. I haven't used exporting org files into PDF or presentations, but I could see it being useful for people who use it.

You'd be fine getting on without needing to learn much Emacs (beyond a relevant tutorial for the feature), not counting aforementioned Emacs default configuration. -- I think the momentum of "I can do a bunch of different things in org" comes incrementally, rather than starting using several features of org.

All this is good but then those notes aren't accessible on my phone

There are a few apps that support org-mode. For Android there is http://www.orgzly.com/ For iOS there is https://beorgapp.com/ I think there are a few more but those are the ones I see people talk about.

My problem is with the corporate firewall that inhibits me from using dropbox/box/etc. to sync notes between my mobile phone and the work laptop. Just yesterday I tried to connect through Github (which I can access, for the time being), and running a "Working Copy" (an iphone app) webdav server that shares the github repo clone in the phone with Beorg. It was completely unusable. Does anyone have an alternate suggestion, perchance?

Setup a hook that exports to HTML and send the file to your mail? Not an elegant solution, but gets the job done.

I don't think orgzly will handle some of the custom org packages the author is talking about so unless you can get really good at org searches it'll be a mess on the phone. For example every file will blitz the sidebar.

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact