jkitchin / scimax

An emacs starterkit for scientists and engineers
Other
1.04k stars 123 forks source link

Notetaking workflow? #375

Closed zenny closed 1 year ago

zenny commented 4 years ago

@jkitchin Thanks for this emacs configurations, but I feel like there is a typical aspect I feel missing:

NOTETAKING

If your notetaking workflow is different than https://www.reddit.com/r/emacs/comments/hltl69/org_roam_for_academics_demo/ for hypothesizing and preliminary research, please share.

WISHFUL THINKING

Else, everyone in academic research or I in particular appreciate if the configuration and workflow from @suunyhasija's repo at https://github.com/sunnyhasija/DOOMEmacs or any other zettlekasten methods as discussed in https://www.reddit.com/r/emacs/comments/hfamm7/those_who_have_tried_out_multiple_zettelkasten/ could be glued into scimax repo to make a true academic research suite.

Cheers, and stay safe, /z

jkitchin commented 4 years ago

I typically use scimax-journal and scimax-notebook for my notetaking needs. org-db indexes them, and so far it does what I need. They are not perfect, but they work well enough for me.

I have seen things like org-roam, but I haven't used them myself, and these days don't have the time to dig into to them. Since I don't actively use them, they have not made their way into scimax.

At this point, if it is something simple to include them, I don't typically add new packages to scimax; it is easy to add those to your user.el file. there are some exceptions, e.g. scimax-statistics.el was contributed by a user. you could do something like that for org-roam or some zettlekasten tool.

zenny commented 4 years ago

I typically use scimax-journal and scimax-notebook for my notetaking needs. org-db indexes them, and so far it does what I need. They are not perfect, but they work well enough for me.

Would like to know how you do it? A short video like the Introduction to org-ref would be great, subject to your convenience.

UPDATE: Thanks @jkitchin for your extremely useful presentation I watched today (posted in https://youtu.be/31gwvApo8zg from 01:17:15 onwards up till 01:45:00).

I have seen things like org-roam, but I haven't used them myself, and these days don't have the time to dig into to them. Since I don't actively use them, they have not made their way into scimax.

Apology in advance and thanks for taking time to reply.

At this point, if it is something simple to include them, I don't typically add new packages to scimax; it is easy to add those to your user.el file. there are some exceptions, e.g. scimax-statistics.el was contributed by a user. you could do something like that for org-roam or some zettlekasten tool.

I shall try to dig into it. Thanks again and stay safe,

shrysr commented 4 years ago

I typically use scimax-journal and scimax-notebook for my notetaking needs. org-db indexes them, and so far it does what I need. They are not perfect, but they work well enough for me.

Would like to know how you do it? A short video like the Introduction to org-ref would be great, subject to your convenience.

310 has some additional discussion and John's earlier comments on using scimax-journal. There was also an earlier discussion on org-db which can be found with a search of the repo issues.

At this point, if it is something simple to include them, I don't typically add new packages to scimax; it is easy to add those to your user.el file. there are some exceptions, e.g. scimax-statistics.el was contributed by a user. you could do something like that for org-roam or some zettlekasten tool.

I shall try to dig into it. Thanks again and stay safe,

I think the note taking workflow ultimately rests on the individual's preference and this would be complex to create. Perhaps the explanation below will help.

Overall, I have used org-journal, scimax-journal, Neuron, org-brain (this for over a year) and am now actively using org-roam for the past month. I am not an academic, but I live in Org mode and used to live in Scimax. I plan to post all my notes on the topic and share an exo-brain down the line when I have org-roam-server set up. Hope that answers better than the summary below.

From what I've gathered from trying these packages and actively following r/emacs threads is that each package has it's strengths and peculiarities and require a priori 'known' or 'realised' approach that works for you. I did not, and so it is still an experiment for me. However, I am utterly fascinated by the concepts outlined in Ahren's book (isbn = 9781542866507) and it has made a large difference to my assimilation and recall of learned concepts.

There are some interesting similarities between what Scimax finally achieves and what Org-roam does. Org-roam also relies on a sqlite database cache that indexes all the 'entries', which at the moment seem to be file entries only. org-db is more interesting in a direct comparison of indexing at the moment and could have actually been adapted for org-roam.

The gist of the zettelkasten method is to have a 'slipbox' of notes. You have fleeting notes that you 'throw away' and others that you add into a 'graph' of concepts. The graph is built by taking the effort to add all the connected / related topics that you 'want to also see' when you see this 'entry'. Of course, nothing is 'thrown away' per se - fleeting notes do not get the additional attention of 'connecting them to other notes'. Each 'zettel' or retained note - should be written in your own words and reflect your thoughts on the topic, rather than a 'copy-paste'. Ultimately, when you look up a topic, you have a large percentage of your 'document' already written and only a small portion has to be streamlined.

Org-brain follows a different approach of having a parent-child-sibling type fixed relationships, but then the text based graph is visible in Emacs. This is useful in 'study' and mapping out stuff, but still rigid with limited export and visualisation capabilities at the moment. At some point, you want the flexibility (and features) of org-roam. Anyway, in principle you can use org-brain and org-roam side by side, which is what I am trying out now. :). This is what I love about Org mode. Beyond these, there's another package called Neuron, which is based on a Haskell stack. If you are looking to quickly publish your notes to static sites and have /some/ form of non-Emacs visualization - you are better off with org-roam or neuron. Org-roam also obviously provides superior support for citations via org-ref. Also note - org-brain works on org-id's for Each entry, and these can be either/both file as well as org headlines. Org-roam relies primarily on file based entry identification, though each file can of course include headlines and the latest release allows back-linking to headlines (via surprise : org-id's which the org-roam author was originally averse to use iirc the initial reddit threads). The introductory article on Org roam by Jethro (https://blog.jethro.dev/posts/how_to_take_smart_notes_org/) provides a pretty accurate overview of the org-roam method and I would recommend it.

To conclude this lengthy comment, which I hope was useful - I use org-journal for fleeting and personal notes with one file a day. I still use my old capture system and a bunch of separate agenda files. I capture relative links to files outside my agenda for clocking purposes. Now, beyond this - ANY thought/ idea or whatever that I want to expand on a little more - I use org-roam and start with figuring out how the article connects with the existing graph. For a longer term / structured study, I try to start with Org-brain or alternatively, use scimax-notebook's functions for creating a new repo / projectile project. General folder structure :

So org-roam indexes the entire directory in principle, though it is more efficient to use helm-rg (or org-db) etc to search for org-headlines and extract links that can be inserted. The private folder is used so that org-roam can add the 'last' directory as a tag name to the entries within which will influence hugo export to not include private backlinks and notes. I am yet to fully test drive the latter hugo export (with respect to correct tagging of private notes and backlinks), but I've seen articles of people using it.

zenny commented 4 years ago

@shrysr Thanks for taking time to reply in such a length. Admirable! :+1:

I typically use scimax-journal and scimax-notebook for my notetaking needs. org-db indexes them, and so far it does what I need. They are not perfect, but they work well enough for me. Would like to know how you do it? A short video like the Introduction to org-ref would be great, subject to your convenience.

310 has some additional discussion and John's earlier comments on using scimax-journal. There was also an earlier discussion on org-db which can be found with a search of the repo issues.

Thanks for the pointers, I shall have a thorough look.

At this point, if it is something simple to include them, I don't typically add new packages to scimax; it is easy to add those to your user.el file. there are some exceptions, e.g. scimax-statistics.el was contributed by a user. you could do something like that for org-roam or some zettlekasten tool. I shall try to dig into it. Thanks again and stay safe, I think the note taking workflow ultimately rests on the individual's preference and this would be complex to create. Perhaps the explanation below will help. Overall, I have used org-journal, scimax-journal, Neuron, org-brain (this for over a year) and am now actively using org-roam for the past month. I am not an academic, but I live in Org mode and used to live in Scimax. I plan to post all my notes on the topic and share an exo-brain down the line when I have org-roam-server set up.

Look forward to.

Hope that answers better than the summary below. From what I've gathered from trying these packages and actively following r/emacs threads is that each package has it's strengths and peculiarities and require a priori 'known' or 'realised' approach that works for you. I did not, and so it is still an experiment for me. However, I am utterly fascinated by the concepts outlined in Ahren's book (isbn = 9781542866507) and it has made a large difference to my assimilation and recall of learned concepts.

Thanks for the recommendation of Ahren's book. I look into it.

There are some interesting similarities between what Scimax finally achieves and what Org-roam does.

I would love to know how can one glue org-roam (or any zettelkasten packages) to scimax (the configuration part). Appreciate if you explain how you capture in org-roam to capture further into the scimax!?

Org-roam also relies on a sqlite database cache that indexes all the 'entries', which at the moment seem to be file entries only. org-db is more interesting in a direct comparison of indexing at the moment and could have actually been adapted for org-roam. The gist of the zettelkasten method is to have a 'slipbox' of notes. You have fleeting notes that you 'throw away' and others that you add into a 'graph' of concepts. The graph is built by taking the effort to add all the connected / related topics that you 'want to also see' when you see this 'entry'. Of course, nothing is 'thrown away' per se - fleeting notes do not get the additional attention of 'connecting them to other notes'. Each 'zettel' or retained note - should be written in your own words and reflect your thoughts on the topic, rather than a 'copy-paste'. Ultimately, when you look up a topic, you have a large percentage of your 'document' already written and only a small portion has to be streamlined. Org-brain follows a different approach of having a parent-child-sibling type fixed relationships, but then the text based graph is visible in Emacs. This is useful in 'study' and mapping out stuff, but still rigid with limited export and visualisation capabilities at the moment. At some point, you want the flexibility (and features) of org-roam. Anyway, in principle you can use org-brain and org-roam side by side, which is what I am trying out now. :). This is what I love about Org mode.

Thanks for nifty briefing on the zettelkasten method in relation to org-mode. Your use of org-brain and org-roam side-by-side part makes me more curious.

Beyond these, there's another package called Neuron, which is based on a Haskell stack. If you are looking to quickly publish your notes to static sites and have /some/ form of non-Emacs visualization - you are better off with org-roam or neuron. Org-roam also obviously provides superior support for citations via org-ref. Also note - org-brain works on org-id's for Each entry, and these can be either/both file as well as org headlines. Org-roam relies primarily on file based entry identification, though each file can of course include headlines and the latest release allows back-linking to headlines (via surprise : org-id's which the org-roam author was originally averse to use iirc the initial reddit threads).

Interesting overview. :+1:

The introductory article on Org roam by Jethro (https://blog.jethro.dev/posts/how_to_take_smart_notes_org/) provides a pretty accurate overview of the org-roam method and I would recommend it.

I did check the intro and @zaeph's videos, but I am expecting simple intro like that of Prof. @jkitchin's approach because his simple explanations are streamlined to a particular niche who wants to focus on research than on struggling with the tools.

To conclude this lengthy comment, which I hope was useful - I use org-journal for fleeting and personal notes with one file a day.

Have you posted any video/write-up of your org-roam/org-journal/org-brain workflow in scimax à la @jkitchin? If so, please share a pointer.

I still use my old capture system and a bunch of separate agenda files. I capture relative links to files outside my agenda for clocking purposes. Now, beyond this - ANY thought/ idea or whatever that I want to expand on a little more - I use org-roam and start with figuring out how the article connects with the existing graph. For a longer term / structured study, I try to start with Org-brain or alternatively, use scimax-notebook's functions for creating a new repo / projectile project. General folder structure : - my_org - roam - references (for org-ref stuff) - deft (Earlier deft entries) - private - agenda - journal - (ALL the file entries of org-roam + org-brain entries in a big bad jumble) So org-roam indexes the entire directory in principle, though it is more efficient to use helm-rg (or org-db) etc to search for org-headlines and extract links that can be inserted. The private folder is used so that org-roam can add the 'last' directory as a tag name to the entries within which will influence hugo export to not include private backlinks and notes. I am yet to fully test drive the latter hugo export (with respect to correct tagging of private notes and backlinks), but I've seen articles of people using it.

Delighted to read wonderful overview, indeed. Appreciate your input.

However, I prefer to follow a time-tested (like Emacs/scimax) approach than continue experimenting with several tools because I want to focus more on what I am trying to do (in academic writing) than struggling with hundreds of permutations and combinations of tools and configurations, fyi.

There is always something new to look for in this aggresively-changing world, but nobody affords to give a heck to everything new in such a short human life-span, imho. Else it would be like chasing a phoenix. In that connection, I liked Prof. @jkitchin's approach to reproducible academic writing configuration of scimax and org-roam approach described in https://www.reddit.com/r/emacs/comments/hfamm7/those_who_have_tried_out_multiple_zettelkasten/ (his configurations are for Doom-emacs posted in https://github.com/sunnyhasija/DOOMEmacs), but yet to figure out a glue between them.

Usually a writer (any academic/research/non-fiction) who first bookmarks/highlights/annotates multiple papers while reading and develops a hypothesis, and finally sits to draft a paper based on his own research needs:

  1. A note-taking with capture (including the bookmarks, highlights and annotations in the pdfs) which is well explained in https://www.reddit.com/r/emacs/comments/hltl69/org_roam_for_academics_demo/ by @sunnyhacija. The tools could be any (like scimax-notebook/journal, org-roam, org-brain, zettel-mode, org-multi-wiki or anything that works) but needs to be easily hooked to scimax.
  2. A writing tool like scimax with necessary templates and a nifty citation tool (org-ref).

The only thing that I could not figure out is how to get the bookmarks/highlights/annotations from the pdfs I read already to scimax document without copy-paste, but imported in a similar fashion as one imports citations with org-ref from a .bib file to avoid duplication of efforts. I appreciate if anyone seasoned in this (including @jkitchin or @shrysr) can write/post a video that resembles with Prof. @jkitchin's comprehensive video on org-ref ( https://www.youtube.com/watch?v=2t925KRBbFc) which inspired my journey to literate programming for reproducible research/academic writing.

Cheers, and stay safe, /z