Back to the talks Previous by track: Writing academic papers in Org-Roam Next by track: The Future of Org Track: General

Managing writing project metadata with org-mode

Blaine Mooers (he/him) - Pronunciation: Blane Moors, blaine-mooers@ouhsc.edu

Format: 22-min talk ; Q&A: BigBlueButton conference room
Status: TO_CAPTION_QA

Talk

00:00.000 Introduction 02:20.080 Starting a new writing project 04:05.480 The writing log 04:36.960 Starting the research paper 05:25.310 Outline 06:11.440 Another kind of writing log - accountability 07:17.458 Reducing switching costs 07:46.480 Motivation 09:31.520 Overview of the writing log 10:17.295 LaTeX preamble in opened drawer 10:42.668 Informative header 12:21.400 Four workflows 13:28.080 Project initiation workflow 14:56.960 Daily workflow 17:05.751 Metadata and metacognition 17:48.885 Periodic assessment workflow 18:56.960 Project closeout workflow 19:49.640 Conclusions 20:34.520 Acknowledgements

Duration: 21:38 minutes

Q&A

01:38.600 Q: what does 0573 means in your init. file name? 03:09.520 Q: What does Zettelkasten mean? 05:41.760 Q: How many papers are you writing at the same time? 10:42.680 Q: How you capture those ideas when when you are away from Emacs? 14:50.273 Q: What if an ideas does not belong to any current working manuscript? 16:28.802 Q: If there were one habit from your process (referencing your extensive flow chart) that you want active learners/professional researchers to adopt, which would it be and why? 18:16.600 Off-stream Q&A 33:01.560 Time Power 48:32.800 Do you use a lot of TeX inside Org Mode? 52:48.680 Org Mode versus Markdown 56:28.560 Raku

Listen to just the audio:
Duration: 1:02:41 minutes

Description

The planning and writing of a scientific manuscript is an intricate process that requires focused effort. Scientists must make many decisions about what to include and exclude from the paper, often capturing these decisions in notes in the margins, appended notes, or external files. This ad hoc approach becomes unmanageable when the notes exceed the length of the manuscript, which is often the case. Nonetheless, these notes can be vital when responding to reviewers' critiques.

Great scientists like Linus Pauling effectively utilized laboratory notebooks to store metadata on his manuscripts. His cross-referencing system resembled that of Niklas Luhmann in his physical zettelkasten. These paper-based approaches have pros and cons, but they are no longer popular because of the hard work required to make them work well. In comparison, the org-roam-ui view of my zettelkasten provides a garden of endlessly forking paths I can wander in all day.

I sought a more focused approach to managing my attention and the metadata for one writing project. I developed a project-specific writing log for this purpose about a decade ago. The writing log helps me manage anxieties about forgetting where I left off on an interrupted project (Fear of Forgetting, FoF). In this talk, I will highlight the features of my writing log template in org-mode.

The first section supports gathering the initial thoughts about the project needed to assemble a central hypothesis around which to build the paper. Subsections support listing the experiments required to address the central hypothesis and the key discussion points. These subsections include plans for graphical items like images, data plots, tables, equations, and code blocks. Of course, this section will evolve as the results accumulate. When largely completed, this section supports drafting a quarter to a third of a manuscript on day one of the project.

The following two sections support project administration and assessment. The administration section includes plans to apply for funding and approvals for the work. The assessment section supports periodic checks of the project's current state, what holds the manuscript from submission today, and what is missing that makes a larger impact. This section includes a timeline and milestones to finish the project promptly. These can be displayed in tables that org-mode so strongly supports.

The central section of the template contains daily accounts of accomplishments, decisions, and correspondence about the project. I read this section after a hiatus to resume work on the project quickly. An open-ended to-do list and a section for collecting ideas for future projects follow the daily log. The last section contains protocols and guidelines for the various tasks involved in completing the project.

Here, context switching between the writing log and the manuscript is fine because it usually happens only at the beginning and the end of the writing session. My project-specific approach keeps my mind focused on the project at hand and my FoF under control. I share my writing log template in org-mode on GitHub.

About the speaker:

Blaine Mooers is an associate professor of Biochemistry and Physiology at the University of Oklahoma. He uses X-ray diffraction to study the molecular structure of proteins and RNAs important in disease. He writes grant applications, progress reports, manuscripts, lectures, seminars, and talks each year in Emacs. To control his fear of forgetting (FoF), he uses an external document, the writing log, to store metadata about each writing project. He switched from using LaTeX to Org-mode recently. He will discuss the features of the writing log and the joys of editing it in Org-mode.

Discussion

Questions and answers

  • Q: what does 0573 means in your init. file name?
    • A: Index number used to "name"/ describe a project. My project folders in my home directory are of the format

      stubOfTheProjectsFullName. Maybe i will describe my project

      numbering system in a future talk. It helps enormously in navigating between projects and stayting organized. I store the project ID number and the folder name in a sqlite database that I pop open with a bash alias to the DB Browser for SQlite. I also use the Project ID to track time spent on each project to the nearest 15 minues increment. I do this time tracking once every several hours 2-4 times a day. If I cannot remember what I was doing, nothing is recorded. This is important for keeping the data accurate. This practive is a pain but the data are valuable for self-assessments and annual reports.

  • Q: <gringo> What does Zettelkasten mean?
    • A: <vidianos> It's a notetaking method <Neil>Useful overview at https://zettelkasten.de/introduction/
    • A: Pls cf. https://en.wikipedia.org/wiki/Zettelkasten An augmented org-roam is found in the zetteldesk.el project by Vidianos https://github.com/Vidianos-Giannitsis/zetteldesk.el. See  his talk from EmacsConf 2022:  https://www.youtube.com/watch?v=dJ859kiFRLg&t=0s
    • A: A great resource is Sönke Ahrens's "How to Take Smart Notes" (to get you thinking about the progressive evolution of your note taking; and a solid walk through of Zettlekasten in practice/implementation) . There also is a German edition of the book, it's called: "Das Zettelkasten-Prinzip". The book "Antinet Zettelkasten" by Scott Scheper clarifies several misconceptions about the Zettelkasten Method (see chapter 3). He spent months replicating the analog version that Luhman used and gained a number of important insights. I have seen the method applied in ways that were never intended. I think that these vairant approaches are innovative and can enhance productivity, but they can cause some confusion. The ultimate source is the https://niklas-luhmann-archiv.de/.
    • Smart notes are linked to one another. They make up a kind of hypertext, similar to a wiki, as a whole.
    • Org-Roam and Denote are two implementations that can support the slipcase; backlinks are important (and also/perhaps a consideration of the hierarchy)
  • Q: How many papers are you writing at the same time?
    • A: Working on 10--15/y, publishing 1--8/y
    • On a given day, 2 papers/day usually, sometimes up to 5 papers/day
  • Q: How you capture those ideas when when you are away from Emacs?+3
    • A: Digital recorder for recording thoughts, especially during daily commute. I also mentioned caputing thoughts in 750words.com. I was an early user (May 2012) and was grandfathered in with a free subscription for life. This is why I am reluctant to give it up. I started learning to use Emacs in 2000. I have not yet moved all of my workflow to Emacs, but I am getting there. The other site that I use when I exceed the 5000 word limit at 750words.com is WriteHoney https://app.writehoney.com/write.
    • Whisper AI to transcribe the recordings. See this site for the post transcription scripts that I apply to clean up the text before I see the transcript: https://github.com/MooersLab/bash-whisper-transcription. I also jot down notes but not so much after I started using the digitial voice recorder (DVR). Dragging the audio file to the folder where I do the transcriptions does take a wee bit of time so I try to be judicious about selecting when I turn on the DVR. I should probably write a Elisp function to transcribe the audio recording from the DVR, save the transcript, and delete the audio recording so that I can streamline this process. There is always a way to do things more efficiently with Emacs!
      • sachac: oooh, I can recommend getting an inexpensive lapel mic if you don't already have one. I'm also experimenting with using keywords to organize my audio braindumps.
  • Q: What if an ideas does not belong to any current working manuscript?
    • A: Sandbox area in a log file. The Sandbox area is called "Future additions and tangents" in the template log file and is also used to draft sections of the paper that I am uncertain that I will retain.
    • If not related, kept in an external diary
  • Q: It looks like you have daily log per project, what do you think about just using single daily notes and cross referencing different projects?
    • A: I have > 800 projects per year in 10 categories. Several years ago, I made org files for each category with 1000 headlines, but this proved to be too unwieldy for me at the time as a noivice org-mode user. The log files for the manuscript projects wind up with 50-100 pages of content each so the single-threaded nature of Emacs hampers scrolling through such huge org files. In addition, I want to keep all other projects out of sight and mind while focused on the project at hand.
  • Q: If there were one habit from your process (referencing your extensive flow chart) that you want active learners/professional researchers to adopt, which would it be and why?
    • Keeping a daily diary is essential for overcoming the fears of forgetting and losing momentum. These fears are the maiin barriers to switching between projects on a given day. The in-grained preference is to do binge writing, which I still succumb to doing sometimes, but I am trying to avoid binge writing with this system.
  • Q: I see that you use checkboxes for tasks. Did you know you can format headings to support tracking them? Like this: TODO Heading [0/4]
    • A: Yes, I convert some of my most important todo items into *** TODO headline to be picked up by arg agenda. I add the writing-project log file to the list of org files that org agenda searches. I use a Elisp function to add new ***TODO items to the list when they come to mind. I will post this function shortly on the AAAreadme of https://github.com/MooersLab/writingLogTemplateInOrg. This eliminates the need to refile the idea, which I am too undisciplined to do.
  • Q: I actually love this one! But it creates as much separated log as there is project. You limit yourself to work only on how many project per day? How do you explore them back (if you ever)?  I assume your org files is growing exponantially over time. You said about "valuable when receiving critiques?" (Donovan)  
    • A: Thank you for the opportunity to make clarifications. I try to work on two writing projects a day on average terms of doing generative writing tasks. Yes, there is one writing-project log file per project. They tend to grow to a length of 50-100 pages by the time the paper is published. Because of the ability to fold sections, I have not run into trouble with the longer lengths.  I use the template on GitHub to start the log file for a new writing probject. I could consider retaining a log file for a sequel paper to retain the history of decisions made in the first paper but I would duplicate it and rename the copy with the new project number. I will go through an old log file for a published paper from years ago to recover details on how I carried out certain procedures. The history of decisions in the daily log is invaluable for responding to probing questions by reviewers about why we decided to do certain procedures.
  • Q: Sorry, not really related to the talk's topic but can you share the pymol project that shown in the writing log slide earlier in the talk? I am interested in the paper/project.
  • Q: Have you tweaked your Emacs configuration at all -- with cus keybindings, etc -- to support the process you demonstrated?
    • A: Thank for the good question because my talk was focused on a template org document. I use org-ref heavily. I use it to add Bibtex entries, download PDFs of research articles by their DOIs, and rename them with the citekey. I made several Elisp functions that do minor tasks to support my worflow. I will post them github. 
  • I like to separate my ZettelKasten and GTD  with daily and global, Zettelkasten daily would be a journal. The reason to keep them seperated is daily is to start with a black sheet and can be thrown ignored if not done well, If good enough goes into zettel etc.
    • Blaine: That is a good suggestion. Thank you for sharing it.

Notes

  • Hi, This is Blaine. I am checkin in!
    • Hey :)
  • Hello from Madagascar :) Hello from Brazil (there's an old song about madagascar: https://www.youtube.com/watch?v=k206JIkXJbk) :) Hello from Uganda Hello from ISS^^ The International Space Station? 0_0 Hello from US
    • Blaine: Hello world and outer space!!!
  • It's so awesome seeing these talks that are not strictly software development related
    • Thank you!
  • It's amazing to see how much people do with emacs
    • Thank you!
  • [MooersLab/writingLogTemplateInOrg: Template for writing.log in org-mode](https://github.com/MooersLab/writingLogTemplateInOrg)
  • it's really impressive. it also makes me realise that people are a lot more organised than could ever be.
    • Blaine: I have been studying time management for decades; it is still a stuggle for me.
  • That chart looks complicated. It can get pretty complicated as its deeply personal and has seen several revisions.  (Sounds like the chart is descriptive and not prescriptive)
    • Blaine: Right, is just descriptive. Yes, that concept map it a bit overwhelming. I plann to make a slimmed down version. Thank you for the feedback.
  • I love the fact. that "shower" is called out as an Ideation "feed" in the writing process chart :-) Takes shower thoughts to a whole new level...
    • Blaine: It is a feature of our insane 24-7 culture.
    • I missed that, but that's kinda cute. (Kinda true too)
    • I do love the "Shower" element in that diagram.
    • Wow didnt notice the Shower element
  • The man is trying to treat cancer, I expected nothing less complicated than this gg
    • Blaine: Thank you! Yes, our work has added years of additional life to many cancer patients.
  • There is a package -- I think it is 'org-tracktable -- that records word counts by session in an inline block within org files  https://github.com/tty-tourist/org-tracktable
    • Blaine: I will check it out. Thank you for the link! My time tracking database has 10,848 rows after 2.5 years. It may be over 100,000 rows long by the time that I expire. I decided that a org-mode table would be not appropriate. I adandoned the Google Sheet Workbook over a year ago because it is redundant with entries in my timespent.db. I did not like the duplicated effort.  I am now testing the use of a heat map for a similar writing accountability purpose. It tallies my writing effort per day from my timespent.db file. I enter `hmj` for Heat Map of Journal article writing to effort.  This is a long bash alias to to script and commands that generate the heatmap and post it on Github. The GitHub repo for the script is here https://github.com/MooersLab/writing-time-spent-heatmap. I have similar aliases for makng heatamps for grant writing, teaching, and service, but my daily focus is on article writing.
  • oohhh using a drawer for stashing these details away is a nice idea!
    • Blaine: Thank you! Org-mode has so many nifty feature like drawers.
  • I'm impressed by how systematic he is about everything.
    • Blaine: Thank you!
  • I'm thankful for people like the presenter that dedicate so much of their time to researching treatments for the horrible diseases that people suffer.
    • Blaine: Thank you!
  • I feel like that writing log can be turned into an emacs mode. the spreadsheet that was shown earlier
  • Also noticed that he uses Emacs without any themes.
    • Evidence that the default theme is sufficient for some. Black on white, however uncomfortable to me, really is what most people want.
  • So his car gets a lecture every morning. I suspect his car is more highly educated than I am
  • No cell phone. Just emacs and superhuman focus lol
  • YouTube comment: excellent presentation that I will definitely keep as a reference!

Transcript

[00:00:00.000] Introduction
Good morning. I'm Blaine Mooers. I'm an associate professor of biochemistry and physiology at the University of Oklahoma Health Sciences in Oklahoma City. I'm going to be talking about the utilization of Org mode to write a specific kind of log file for thinking about writing projects, in particular research articles. I have stored a template for this file on GitHub. You can find it at Mooers Lab. If you go to the landing page and scroll down to Emacs-related, you'll find a link to it. I am a structural biologist. I utilize X-ray crystallography to determine the structures of proteins and nucleic acids that are important in human health. Our workflow is shown across the top. We start out with a purified material that we crystallize as shown by that elongated rod-shaped crystal on the left. We will mount that in a cold stream and collect diffraction data with X-rays in the instrument to the right. That instrument will generate an image like the one to the right where you see a bunch of spots. That's a diffraction pattern from the crystal. After rotating the crystal for one degree, we'll rotate the crystal 180 degrees to get a full data set that we'll process with a computer. This will lead to the chicken-wire map of electron density shown further to the right. Then on the far right, we have compared electrostructures of two drug molecules from two different structures, overlapped after superimposing a wild type protein and a mutant protein. We're trying to analyze how the mutant was preventing one of the drugs from binding. These kind of analyses we can develop that are drugs. In this case, the drugs are being used to treat lung cancer.
[00:02:20.080] Starting a new writing project
When I start a new writing project, I will assign it a number. In this case, I'm developing a review article about the detection of crystals in images collected with microscopes like the image in the upper left. The article is about the utilization of AI to help with that detection of crystals. I start the name of the folder with this index number, and I store the manuscript folders in the top level of my home directory to ease navigation. Whenever I pop open a terminal window, I just enter 0573, hit TAB to autocomplete the name of the folder, and I'll be right in the appropriate folder. I also use that index number to label the names of the files. I start every project with three files: a manuscript, the log file that I'll be talking about today, and an annotated bibliography, which is kind of like one on steroids. Annotated bibliography for the 21st century, not the 20th century annotated bibliography you worked on as an undergraduate. I have developed templates not only for Org Mode, but also for other markup languages, like R Markdown and LaTeX. I actually developed this log file template over a dozen years ago in LaTeX. I also have developed it for Typst. Typst is independent of LaTeX. It's inspired by LaTeX, but it's written in Rust, and it's extremely fast.
[00:04:05.480] The writing log
My writing process involves having the writing log at the center of the process. That's where I began the writing project. On the right, I have the manuscript and all its components highlighted in yellow. On the right, hopefully I said on the right, I have the manuscript with all its components highlighted in yellow. On the left, I have the annotated bibliography.
[00:04:36.960] Starting the research paper
When I start a research paper, I will do this after I have built up a strong idea from various sources, and then I'll sit down and go through a series of steps outlined in the writing log to develop that central hypothesis into several paragraphs that are used in the introduction of the manuscript. The rest of the manuscript is built around that central hypothesis, so the results section will include experiments that address the central hypothesis, and it will exclude experiments that have nothing to do with it. Likewise, the discussion points address the central hypothesis. When I'm done developing that introduction in, say, three or four hours, I'll have an outline in hand. At least for the results and discussion section, the outline will be detailed down to at least a sub-heading level. I'll move those components over to the manuscript on the right. As work is done to address that central hypothesis, the manuscript will be updated. Also as exploration of the literature continues, new ideas will flow in to the manuscript through the log file.
[00:06:11.440] Another kind of writing log - accountability
You've probably heard of another kind of writing log, which is more of an accountability tool, a tool you use to hold yourself accountable in terms of your commitment to work on your writing projects. So, this idea of carrying out this documentation is supported by research done by Robert Boice. He found that those academics who record their writing are four times more productive than those that do not. Those that actually share their writing with colleagues are nine times more productive. This is sort of a case in point. This is a snapshot of a Google sheet of such a writing log that I was sharing as part of a Google workbook. I was sharing it with three other colleagues. I had the possibility of them taking a peek at my Google sheet, and that possibility I found to be highly motivating.
[00:07:17.458] Reducing switching costs
As you can see, on July 24th, 2023, I worked on five different writing projects. This would not have been possible if it had not been for having five separate writing logs where I could figure out where I had started and where I would report the day's progress before maybe taking a break and then switching to another writing project. The writing log helps reduce switching costs between projects.
[00:07:46.480] Motivation
My motivation for developing this project-specific log that I'm presenting here is to support clearer thinking about the science that I'm trying to do, hopefully leading to better science, as well as accelerating the completion of the writing project. The secondary purpose is to enable working on multiple writing projects in parallel. This is important to be able to harness your subconscious. If you work on project A for a few hours in the morning, say early morning, then late morning you work on project B. While you're working on project B, your subconscious is busy working away on project A. As a result, perhaps the following morning, when you wake up or while you're taking a shower or commuting, new ideas will emerge for projects A and B as a result of these background jobs that you have launched. If you don't work on project A, then you're not going to get the benefit the following morning. The side effects of using this writing log are that it reduces the fear of forgetting and also reduces the fear of losing momentum. These are two barriers to attempting to carry out work on multiple writing projects in a given day. This problem of dealing with multiple writing projects is one that is not discussed in books about writing. It's apparently a very difficult problem. I think my writing log is a successful solution to that problem.
[00:09:31.520] Overview of the writing log
This is an overview of the writing log in Org mode. It has various components. I don't have time to go through all of them in detail, but you can see its structure. We get this summary view when you open up the file. You have this in the header for a startup command overview. Then I just click on the heading and hit TAB to see the contents below. So normally, I'm just going to go straight to the daily log. In this case, it starts on line 944.
[00:10:17.295] LaTeX preamble in opened drawer
I don't have to scroll all the way down to it, because thanks to the support for folding of these sections in Org mode, if I open up the drawer labeled :PREAMBLE:, you can see that I have imported a number of LaTeX packages to enhance the format of the PDF file that is upon export.
[00:10:42.668] Informative header
I have commands that are listed below at the bottom for providing a fancy header. This header has the current date as well as a running title and the current page number and total number of pages. You can see in the center the header at the start of page 2. You can see the bottom of page 1 where the page number is at the bottom of the page. These headers are very useful if you happen to print out several log files and their corresponding manuscripts and take them with you to work on them while traveling. Invariably, the pages will get intermingled, and you'll have to sort them out when you return home. These headers ease that problem. You can see that the table of contents that begin the writing log is hyperlinked to various sections. In addition to the table of contents, the log file, of course, will support various graphical objects like images, tables, equations, code listings. I also have added LaTeX support for an index, a list of acronyms, glossary, mathematical notation, and literature cited. It takes no effort to add these in, so why not have them available? These features are also available in the annotated bibliography template, which helps support making that annotated bibliography far more relevant and interesting.
[00:12:21.400] Four workflows
This shows a list of four workflows that I'm going to discuss, since I don't have time to go through each of the items. Obviously, project initiation occurs on day one. If I have a three- or four-hour block of time, that's sufficient to finish project initiation. Then the daily workflow is obviously what occurs every day to move the project forward. The periodic assessments are done on a monthly or weekly basis, generally on the weekly basis as the submission deadline approaches. Then after you have received the galley proofs and sent them back, there are a few chores that need to be done in terms of project closeout. This is an example of a protocol that could be followed to do that, and an example of the kinds of more or less appendix material that could be included in the writing log to help get these things done.
[00:13:28.080] Project initiation workflow
This shows a project initiation section of the workflow. I go through a series of sections that include advice about what I need to do to complete each section. The rationale section asks me like, why are you doing this? Why should you do this? Why not somebody else? Those sort of fundamental questions. Then I have a drawer labeled guidance that I have, and that headline immediately above, I have this :noexport: keyword so that guidance is not written out upon export to the PDF unless you want it. If you want it, you have to remove the :noexport: tag. Then I have the response to these questions--in this case, a list of journals that I'm targeting for submission of this review article. I have a plan B journal picked out in case the editors decide to reject it. Having a plan B journal picked out is a decision you can make at the time of submission, so that you're prepared to move quickly if the article is rejected.
[00:14:56.960] Daily workflow
This shows the daily workflow section. Each entry has a date. I sometimes annotate the dated entries with a small phrase to highlight certain events. Within a given entry, I'll have a list of accomplishments. That's sort of the bare minimum of what I include. This just demonstrates how relatively brief these entries are. Just whatever distinct accomplishments were made are listed. Sometimes I'll include the goals for that day. I'll always include the correspondence related to the project. I'll copy and paste an email into a quote environment from LaTeX. I have a snippet template for auto-generating these entries. It will insert the date, for example, in the subheading. Then below that, I'll have the next action, following David Allen's Getting Things Done approach where you identify the next thing that needs to be done. That may have come from a to-do list that's indicated below that. Beyond that, there's sections for some writing accountability, and then a reminder to go about updating your Zettelkasten and Org-roam if you have come across any nuggets of knowledge you want to add to your Org-roam. Then below that, there's another section for the storage of additions to be made to the manuscript. Maybe they're not ready to go yet, so this provides a spot for them to be incubated, a sandbox, if you will, where you have room to develop them further before they're ready to be transferred over to the main manuscript. I also have a section there too for the incubation of new ideas for new projects.
[00:17:05.751] Metadata and metacognition
So this kind of metadata and metacognition about the project are often stored in commented out regions or in comments, like MS Word documents. These are often stripped out in the rush to submit the manuscript, and they're quite often lost. Yet they can be invaluable, not only for the preparation of future manuscripts, but they can be very invaluable for responding to critiques by reviewers. This writing log provides ample room for the safe storage of such information, such knowledge.
[00:17:48.885] Periodic assessment workflow
Then periodically, every several months or weeks, we'll carry out an assessment of the project. We go through a checklist for the completion of the manuscript. We also have a timeline with milestones identified. Of course, Org has these wonderful tables that are very dynamic. If you need a wider column to accommodate a new entry, it self-adjusts. These self-adjusting tables are one reason why I was attracted to Org mode, because coming from LaTex, where trying to make changes to tables is quite difficult. Below that, there's a section to make assessments. There are four questions that I address about the status of the project. One really good question is, why can't you submit this project today? What's holding it back? Other such existential questions are important to ask from time to time.
[00:18:56.960] Project closeout workflow
Then finally, the project closeout workflow. So this is in the form of a checklist. This checklist in the main template is already included, but you could include it from an external file. Of course, that checklist will be only in the PDF when it's included in this fashion. It won't be in the Org file, but you can view that checklist by clicking on its file path. It serves as a link that will open up in an Org buffer. The advantage of taking a modular approach to this sort of appendix material is that you can update your protocols and the updated protocols will be available to all log files across all projects.
[00:19:49.640] Conclusions
In conclusion, this project-specific log file helps narrow the focus on one project. It provides space to harbor the thinking about that project, and it helps support the project initiation and sustain its momentum and facilitate its completion. The side effects of using this log file for one project is that it dampens the fear of forgetting, the fear of losing momentum, which inhibits us working on more than one project in a given day.
[00:20:34.520] Acknowledgements
I would like to thank my friends at the Oklahoma Data Science Workshop. We hold this workshop every third Friday at noon central time by Zoom. It's open to participation by people from all around the world. Send me an email if you are interested in the applications of computing to scientific research. I participate occasionally in these Emacs meetups, and I have shared this writing blog with members of the UK Research Software Engineer group through the Emacs Research Slack channel. My efforts are supported by funding from these grants. I'll be happy to take any questions.

Captioner: sachac

Q&A transcript (unedited)

And about, I think we are live. Okay, hi again everyone. And hi Blaine, how are you doing? Fantastic, happy to be here. Yeah, it's good to see you again. We were just reminiscing in a room right now that it's almost been a year exactly since we last spoke because you were at the EmacsConf last year. That's right. This is great fun. Yeah, well, thank you for coming in and especially every time you come with a very well-crafted talks talking about, you know, what you do with Org Mode, Org Roam and whatever. And it's really fascinating as someone who develops and use those tools constantly to see you put them in action so well. Because you, you know, the way you talk about your research, it really reminds me on what we were, sorry, I've got elves talking in my ears and I'm still not used to it at this point. But it's really nice to see you put all of this together into a very cohesive way for you to write. Okay, let me just share my screen and I'll be sharing the questions. Where is it? All right, take presenter. And I will be sharing the questions. All right. Can you see my screen all right? I can, yes. OK, cool. So we move straight to the question. Let me just check on the time. I think we have about until 10.20, which is in 17 minutes. So let's take about 10 to 15 minutes of question time. And if people have joined on BBB, we'll also be taking questions live. All
[00:01:38.600] Q: what does 0573 means in your init. file name?
right. Starting with the first question, what does 0573 mean in your init file name? So this name is, you can think of it as a prefix or a stub. It's an index number that I utilize before a short name that describes the project. So I have all my projects in my home directory, and I just start typing the project number or index number. in the terminal and I have autocompletion available through oh my ZSH package. So I just hit tab and it autocompletes the name of the project and pops me into that folder. And so I find this to be very easy for navigating between projects. As you saw, I work on multiple projects in a given day and this helps me move about. And I also use this number at the start of the log file name and at the start of the manuscript name and the start of the, I also have an annotated bibliography. So all those files are identified just in case I accidentally save one to the wrong folder. I can avoid, I can sort them out later. Great question. Thank you. Next question, which I think is going
[00:03:09.520] Q: What does Zettelkasten mean?
to be a long one. What does Zettelkasten mean? So this means like, I guess, notebox, something along those lines. You can think of it as a- Yeah, spitbox usually, that's the word we use. Thank you. So this is a kind of like a card catalog system that when it was done on paper, and now it's being done electronically through various software packages. So in the Emacs world, org-roam is a one of several alternate packages that you can use. Prot has the note and there's a couple others. So, idea is that you create a note, usually a, ultimately what you want to do is create a nugget of knowledge from your reading that you've done. and you add it to this note system in such a way that you can recover it more easily than what had to be done in the old days with index cards. So you set up backlinks and then you can use the search features in Org Roam to filter and find the notes again in the future. Org Roam has a wonderful GUI interface where you can display it as a knowledge graph, essentially, all your nodes and the backlinks between them. I set mine up in a rather hierarchical fashion to, at least right now, it's pretty hierarchical at this point, but it may become more disorganized over time. But I find it I'm sort of a visual person. I like mind maps a lot. I find that this visual display of my Zettelkasten is similar, resembles to a certain degree, a mind map. Okay, well, that's a pretty good definition of what Zettelkasten is, and you also went on to specify what it means inside Emacs, so thank you. I think that clarifies it for the two people in the room who still do not know, after attending four Emacs conferences, what is the Zettelkasten method. Moving on to the next question,
[00:05:41.760] Q: How many papers are you writing at the same time?
how many papers are you writing at the same time? Because I believe you mentioned that you had concurrent papers being written during your presentation. So I'm probably working on, in a given year, somewhere between 10 and 15. How many do I get published in a year? Probably anywhere from one to four or five. So these papers often, the work on them spans multiple years. will start working on a paper when I begin, before I begin the experiments, ideally, because I'm trying to do hypothesis-driven research. And so that helps define the scope of the project and limit the number of rabbit holes I go down. So, but through the nature of the work, there's a lot of waiting required in my case for crystals to grow and then the opportunity to collect diffraction data on the crystals. And then the structures have to be determined and refined and analyzed and then deposited, figures have to be made. So a lot of steps are involved that those take generally span, that work can span several years. In a given day, I try to work on two papers, ideally. I haven't been doing so well lately over the past month. In the past year, there was a couple of days where I worked on five papers. There was something like a half dozen where I worked on four, about 40 days where I worked on three, and I think there was something like about 100 days where I worked on two papers a day, about 140 days where I just worked on one. So my idea is, I've been sort of developing more recently is that I'll start doing like the generative writing on a paper at the beginning of the day on the paper project I'm most excited about. I tried to, I'm a night owl. I tried to do this work early in the morning when I'm half awake to try to overcome my internal editor that inhibits me from writing prose freely. And so the idea is just to get a lot of words out, worry about editing them later. And then after about three hours, I'll switch to the second project that I'm less excited about. And I can go for another 90 minutes to two hours on that project. So I build up a lot of momentum, and then I do the switch. And I find that switch to be relatively easy. So my process will be On project A, make some final notes about what was accomplished in the writing log. Then I'll switch over to the writing log for the project B, and I'll go to the diary section at the beginning. I'll make a little to-do list and maybe look at the prior entry in the diary if I need to reboot my memory. And then I'll move on to the manuscript and go for 90 minutes or two hours. Generally, you're only good for somewhere between four and a half, five and a half hours. If you try to write in a generative fashion much longer than that, your productivity goes down quite a bit. You're better off switching to a completely different activity and then using your experience doing that writing to essentially launch background jobs in your subconscious. And so you will get those ideas in the shower the next morning. I find it really funny because I also relate. I've also worked a lot on organization as linked to paper writing but also to on my work as a developer and it's funny how you refer to your ability to think about something in very similar terms to how a computer would think about something. You've mentioned in your presentation the cost of context switching between different things but it's also something that we use in computing when a processor needs to be thinking about something else, well, it has a cost. And it's really fun for me to hear you talk about, oh, I need to select two topics, but no longer than 90 minutes per topic, because it's really about maximizing your output for creativity. And overall, your entire chat, your entire presentation here is about really maximizing the engagement that you have between outputs and your cognition. And I really find this amazing how down to the T you've managed to do this. And it actually leads me to another question which is being asked of you, which is,
[00:10:42.680] Q: How you capture those ideas when when you are away from Emacs?
how do you capture those ideas when you are away from Emacs? And perhaps not only those you have in the showers, but also elsewhere. So that's a great question. Over the past year, I actually, last January, upon recommendation of a senior colleague, I bought a digital voice recorder for $85 from Sony, and it's the best investment I've made in a very long time. other than my laptop computer, because I then record my thoughts. So I have a half hour commute. And to me, that's largely a waste of time. I wish I lived a lot closer to work. But I use that time to generate ideas. So maybe I'll start my day at home for 90 minutes, worked on paper A, and then I might try to prime my mind about project B, or I might still have ideas that are flowing about project A. And I'll record those in the digital voice recorder. And then when I get to the lab, I'll transfer the audio file to my computer, and I'll transcribe it using Whisper. So I've set up some Python scripts and bash functions to go through and I convert all the sentences into one sentence per line because that's the way I like to write and edit things. And so it does all this pre-processing for me. And I have this transcript that's in pretty good shape. I don't have to do very much editing. And I'll then copy that over and work on it, clean it up, and pluck out the ideas that I think might be useful. Unfortunately, I'm not very I'm not away from my computer that much. I'm in front of it, 12, 14 hours a day. So when I'm teaching, when I'm in seminar, other committee meetings, traveling, then I'll capture ideas on paper. I don't have a cell phone. I'm trying to be the last human on earth without a cell phone. I think I would be so distracted by a cell phone. I would be the worst person on the planet, I would be totally focused on my cell phone if I had one. So I'm like one of the few people left who can read a map. So I do run into some difficulties hailing taxis and that sort of thing when I'm traveling. So there are some downsides to not having a cell phone, but these days. Yeah, but I think there's a pretty significant upside because, you know, you talk about cell phones here, but before you were talking about the 90 minutes of uninterrupted focus on a given topic. And I think plenty of people would be envious of this ability to focus for that long on a topic. And I guess if we are to thread the needle here, well, the lack of cell phone might be for something for this ability to focus. So take of this what you will. True, I am a sucker for the web browser. I can get distracted going down various rabbit holes thanks to Google searches and that sort of thing. Likewise, email is another tension grabber. So, there's those other battles I have to fight too. So, right, that is a huge battle that all of us face is developing focus and being able to maintain focus. Right. So, we have about three more minutes of questions. So, thank you so much already for answering many questions. How about we do a quick fire for the remaining questions and then maybe we will take a question from... from here or in the room. So how about we go for the next one?
[00:14:50.273] Q: What if an ideas does not belong to any current working manuscript?
What if an ID does not belong to any current working manuscript? So I have a sandbox area in the log file. So if it's likely going to be related to something to a certain degree, if the idea is totally unrelated to anything I'm working on, then I will I maintain a 700 through 750 words. I maintain a kind of a external diary and I just capture those kind of ideas there. So, I have access to a web interface to this big text area with nothing in it. And I just dump ideas all day long in there. So, and I save that away. I have that in a big LaTeX document currently on Overleaf. but each day has its own page. And so that information is captured and I can recover it. And maybe it's gonna take me a week, a month, a year to take that idea and think about it. And then eventually I'll get to a point where I have a critical mass of momentum and data and so forth, where I could start a new writing project. But you're right, that is a problem, capturing those ideas and keeping track of them. The Xenocasting can also help with that. Right. OK, so we have time for one more question and I think I'm going to skip this one. You can take all the time you want after we're done with the live show for you to answer in BBB, obviously, and even after the conference. But I'd really like to finish on this one.
[00:16:28.802] Q: If there were one habit from your process (referencing your extensive flow chart) that you want active learners/professional researchers to adopt, which would it be and why?
So, if there were one habit from your process, referencing your extensive flowchart, that you want active learners or professional researchers to adopt, which would it be and why? So, I think just keeping that daily diary, that's the essential part for overcoming the fear of forgetting and the fear of losing momentum. One reason why people don't work on two projects a day is that they fear losing momentum on the first project they're working on. But we often are stuck with working on multiple writing projects, and they're best done over longer periods of time rather than in a hasty fashion. I try to avoid binge writing, although I do my share of that, too. Okay, well, Blaine, thank you so much for all your questions. The stream is going to move to the next chat and talk. We're moving to the next talk of the day, but feel free to stay in a room. For everyone interested in asking more questions to Blaine, the BBB, sorry, BigBlueButton link is available on the website. You can join and ask questions directly to Blaine. And otherwise, we'll make sure that all the remaining questions on the pad get their answer eventually. Thank you so much, Blaine. You're welcome. Bye-bye. Bye. okay I think the stream is moving on. Just making sure. okay. Yes we are moving on to the next stream. So Blaine, I'm going to need to get ready for the next talk. Thank you so much for all your answers and feel free to answer your questions. I'm sorry that i didn't get to fill your question live. It's just there was a lot of questions actually. It was a comment. Okay.
[00:18:16.600] Off-stream Q&A
Yeah, yeah. You mentioned about that you sit all the day in front of computer, right? And I have to say, it's not too different from a bathroom if you get distracted by web browser. I also have the same problem. And one interesting solution I found at some point is that I pry my mind about certain task, I leave my office and I go for a walk while thinking about this. And that really forces to focus because while you're working you have nothing else to do. You cannot go and like go like searching Google and stuff like that. It can really help in some cases. Yeah, I try to. Periodically, I'll try to restart doing the Pomodoro method, where you're supposed to get up every 25 minutes and take a break. But that requires a lot of discipline. And it also has, I find I'm more exhausted by following that method at the end of the day. But I think the problem with, well, I think in part- No, no, I don't mean Pomodoro actually. I mean, more like showers. Because when you take a shower, you think about something, right? When you just go for a walk, you again think about it. So this is not a break to take rest. It's a break to think away from computer. And you prime yourself, your brain by... picking something to work on. So I have a project, I think, like certain questions I want to think about. I sometimes take my, like a piece of paper with me. And then when I walk, I like take notes. You can record voice in your case. And like half an hour and you can really generate ideas. I have been doing a similar thing. I will take a clipboard. Maybe I'll have, um, Some blank pages where I'll write, jot down ideas as I walk. I'll go for like a half hour, hour-long walk and also read a paper sometimes, and in the process of reading, I get ideas. The clipboard though is socially less acceptable. It reminds people of their gym teacher, I think, or their marine drill sergeant, and they give me all kinds of weird looks. Even though they're walking and reading their cell phone, looking down at their cell phone, they give me weird looks for looking down at a clipboard as I walk. So there's that weird aspect to it. It's kind of hilarious. Thank you very much for the comment. Yeah, hopefully it's helpful. Because I really struggled about this web browser in the past. Not so much these days. Very good. That's good to hear. I asked, when I write notes, I've noticed like with the Getting Things Done and the Zettelkasten, I like to separate them out. And beyond that, I also like to separate them out on daily things and the global things. So that, for instance, your Zettelkasten, a daily would be like a journal. If you separate it out, It gives a lot of tension of, oh, well, if it's just a stray thought, I'll write it into my journal if I don't know where it goes. If I can think of a permanent place for it to go, it goes into the Zettelkasten. Same thing with, and then with like the getting things done is like, I don't, you start with like a fresh sheet of paper every single day or note or whatever. You ever done, you have tricks like that that you've noticed? So I'm sort of doing something similar through this. Well, to be honest, I like at the start of the day, I actually will just do sort of a brain dump of what happened the day before, just to try to get writing again. And these days, because of carpal tunnel syndrome, I'll use a voice speech to text to generate that initial text. And I'm just trying to, build up momentum of generating words. And so I capture, but I'm also adding to that document throughout the day. And so that is available through the web browser. I have a tab open to 750 words all the time. There's an alternate to it that is called Write Honey, that somebody in Berlin started, because they benefited so greatly from this practice. They have made it available for free, apparently for life. And so there's no word limit, whereas I have a grandfathered version of 750 words, and I have a word limit of 5,000 words. I rarely hit it. It's nice to know that right honey doesn't have that limit. So, that's how I'm capturing things. And then, so some of that text winds up being moved into my log file or even sometimes into the manuscript. So maybe a little less organized than the getting things done approach with the dailies and then the refiling process. So I don't do any refiling. I want to file once. I don't want to file a second time or have to go back and handle something a second time. So that's my rationale for the approach I take. I'm not using it. I've had various iterations of systems I've used, but I think my favorite one for like getting things done is actually not using Org Agenda, just like making a blank sheet and kind of doing like a template where it's just like, and separating my tasks out into three categories, like core tasks, like, and rule of thumb is like, if it's beyond three, it's too much too many. And like core tasks, secondary tasks and unplanned tasks. So these, those three categories, like for instance, the core task, if it's greater than three, it's too many. That way is like, when you look back, then you can see, like, if I got my core tasks done, I did really good. or if I got a lot of secondary tasks but not my core tasks done, I got side reactions with things that don't matter. If I got a lot of unplanned tasks, I could look at those unplanned tasks to see, oh yeah, okay, that was fine. Okay, the day didn't go as planned, but it was, yeah. That's an excellent suggestion. I generally just And I ended up long of a to-do list. It's impossible to accomplish in a day. Then I just like furnaces. Another trick that I liked was I also put like that under like a week. Cause it makes more sense to do it under a week. And then I'd have like subheadings under that, like, you know, so week day. Um, then I'd have those three categories for each of the tasks and then kind of as an unofficial day at the end, I just like have a staging area for all tasks. So I just kind of, then I just, I want to be using org agenda. So then I just be moving up and down, you know, cause you could, cause you're able to rearrange stuff in org mode so easily. I don't know if there's a good way of, that's been my favorite iteration of doing it. So I wrote a little function that pops in the to-dos that are specific to a particular project in the log file for that project. And then I add the log file name to the list of org files that Org Agenda searches, so those to-dos will show up. But my list is too long, and that becomes overwhelming. So I'll just assign a to-do heading to the top item in my to-do list to try to, but maybe it should be three. That would be a reasonable compromise. That's a good idea. So you're doing weekly planning then? I can show up. I was. This is, yeah, this was, yeah. What ended up making me stop is I didn't know how to make a template of it. And I, I ended up getting annoyed by manually changing the days every single time and naming like my files and stuff like that. If I Maybe if I did it now, I could figure out how to program it or if I spent enough time, but that's what I think eventually made me stop doing it. So there's a, um, you can make a snippet for the week and then you could have code in the snippet that would generate the dates automatically. Um, So I have like for my daily entry, I have a snippet called entry and then I hit tab and our control or whatever to insert the snippet and that has the current date already entered. So I skip that, I don't have to deal with that. So I think you could probably feed what you want to accomplish to a copilot, for example, being copilot. I've been using Bing Copilot for the past three or four months to return Elisp code that works 90% of the time. I've been pretty impressed. And it's free. So no API key required. It runs. So I guess I installed the Bing Copilot plugin in the Google Chrome. And that's what I've been using. Yeah, I can show you my screen if you want to see what the screen looks like. I can email you the template. I kind of have it saved as a template. I've got to find it, though. Let's see. Not exactly set up to. Alright, so. I don't know if you can see this well enough, but... Yeah, let's make it bigger. Can you see that at all? I can see a little bit of it. Yeah, it's kind of blurry. Alright, well. But then you just do that right there. So it's all color coded. I, so I get a sense of, uh, uh, what the kind of greenish blue lines must be or days, I guess, or. Okay. Well, right. There's like, so you can see like startup show two levels. Then I have like numbers right there. So right on one day you have like the core tasks, there's three out of four done. Then I have like secondary and unplanned and then. Yeah, that's just the general idea So that this is you raise you know the so the dilemma I face of course is that I have maintain like a to-do list and our project specific and then there's the all the other things I have to do and So there should be like some The org agenda should be a way of being able to pull the two sets together, I guess. I had broken up my, well, I had way too many to-do lists stored in various places. And so that's a problem, I guess, when you have too many to-dos and the org Agenda becomes overwhelming and sort of discourages Yeah, I figure that the general task on that is like I start writing things up. I get more and more items. I'll make a master to-do list. Oh my master to-do list has too many items. Let me throw it out Well, there's another name for that kind of list you could you know called a grass
[00:33:01.560] Time Power
catcher list. So Charles Hobbs was this, he wrote a book in the 80s called Time Power. And he had like, you know, so he was one of these time management gurus. And so, let's see, you get the name of some, like Tony Robbins and, I forget the name of the other guy, that's Brian Tracy. So that they have kind of pushed the same kind of similar approaches. But Charles Hobbs had a very more organized approach, I think, and more disciplined. And he identified that kind of list as a grass catcher list, where you have a list of items that you think you might want to do, but you haven't prioritized them yet. And you haven't scheduled them yet. but they need a safe place to be stored. When time permits, the idea was you would pull items off that grass catcher list and move it into a to-do item that you will schedule and commit to getting done. That was the idea, separating them between core tasks, secondary tasks, unplanned tasks, because your whole day can't be planned. Right, right. You have things you have to do that are unscheduled that come through your door or land in your inbox or land in your email. You've got to do them. And then core tasks, I don't know, like to-do lists, their whole point is. So for instance, like journal and Zettelkasten are kind of, and like that's global lists versus the daily lists are kind of. done a little differently. With Zettelkasten, it's organic. Things build up. If you make a note, it's great. If you don't, if it has a small amount, that's great. Have a small note. With a daily to-do, you want to use it to make decisions. That's the idea of having the core task and the secondary task separate because the whole thing about it is, I wanna use this to eliminate what I'm going to do. It's to choose what I'm going to do, like the core tasks. Because if I can get my core tasks, I can be happy with my previous days. And then I would probably start using agenda a lot more if I was more consistent with using like these as like weekly files. I don't know. But then the whole goal thing is just like, let me see what I wanna populate the day list with. So how many core tasks wind up spanning multiple days because they're such big projects? I would need more time using the system before I'd figure something like that out. As I said, I'm not using it right now, but that has been my favorite iteration of using these. So within the core tasks, do you assign priorities? So the way I would translate this a little bit would be like in this method that Charles Hobbs had, he had a category for the items that you really have to get done, and they're really important. And so they get a priority of A. And then the secondary tasks would get a priority of B. But then within the A category, you would number them like one through three, I guess. All right, so this would be part of the purpose of separating the daily list or like the weekly list from the global list. So for instance, your global list, you'd say, I want this project that will take a long duration of time. But your daily list would just say, I want to work on it today, even if I don't get it done today. Like, I want to work on it today. then maybe you can link like for instance that your daily list to that global list or something along those lines. But that would be I think a good answer to that type of problem because yeah, the daily list is like supposed to be for that day, not for, Like for instance, you start out clean, you make the list like that would probably be your first task for the week is what do I want for the week? Then you have some tasks that you do with staging. And then like for instance, since you look at it as a whole week at a time, you're able to rearrange it and say, these are the things I wanna get done this week. This is what I really wanna get done on this day. This is what I don't care about on this day or yeah. Another person that kind of, and this is kind of related, there's this idea of of time blocking. So obviously, three tasks, core tasks, maybe they're going to take three or four hours each or two or three. And you can assign blocks of time in your schedule to get them done. And often, what happens is they take longer than you expect. And you have to extend the blocks. Calvin Newport has a that's a kind of approach he advocates is you and I think the power to that is you're you. you're mapping out, you know, you're allocating the time to do these things and you're seeing how you actually, how much time things actually take. And then you, so you wind up adjusting in the future. And the idea is with this approach is do it on paper. And then you have to like, uh, if something takes longer, that pushes everything else down. You just wind up redrawing your schedule for the day, uh, manually. And, um, So it's kind of laborious, and that labor is supposed to inhibit you from spending too much time on a project. As you know, you've got the pain of redrawing everything if you spend too much time on the first project. Yeah, there was a, let's see. It's whatever you strategy you want to do. Like for instance, to me, it's like doing it this way makes me say, I want to focus on like what matters. Then it'll tell me if I feel good about that day, depends on what algorithm, what level and what type of strategy you're using. If you're using time blocking, you're optimizing for each level of time block where I'm, where's like, And you can combine the approaches. It'd be trickier. But like, now let's see. I was listening to a talk with Jordan Peterson. One of the things he said that really resonated with me is like, you wanna use a calendar, but the first rule of using a calendar is don't let the calendar tyrannize you. Because like the first thing you wanna do whenever you use a calendar is schedule every single minute of the day Now you don't have any room for if any task overruns at all. And after a couple of tests, you're like, I don't want to do this anymore. I rebel. I'm going to throw it out. So one kind of combination is through this Pomodoro method I mentioned earlier, where you would sort of like block out, say, two hours. You work for like 25 minutes, take a little, break for up to five minutes and get back to work. And then after two hours, you're to take like a 15 minute break in the morning. In the afternoon, you might even let that break run longer and you might only have three work sessions between breaks. So because you're going to be more run down in the afternoon. And so you build in some into your schedule, some flex like, okay, that's supposed to be a break time, but you know, maybe some urgency comes up and you got to deal with, um, and you have to break out of this, uh, Pomodoro technique. So, uh, that, that, that's one way of kind of scheduling in some, uh, flexibility is through the breaks at Peterson's[??], right. Right. That... I can't, I can't... I don't schedule to that kind of detail. That's just too oppressive. Well, neither do I, but it's like that, like I, that's, I don't try to, to me, the much more interesting question that I tried to do is like, let's try to make sure I do the important things. Cause if I do those, my life would probably move a lot quicker. If I get, if I choose a couple items that I really want and am able to consistently do them, I think my life would bastically start improving. Not necessarily if I can play the game of optimizing every hour. Maybe that could be, and it's a place to start rather, and I think it'd be the most effective place to start. And if I got better at using it all the time, perhaps I'd be playing optimizing every hour game. But this is the game I think would be best bang for buck for me to optimize now. What you're trying to optimize for is accomplishing these core tasks, getting them done as quickly as possible, or as effectively as possible, and as effectively as you need, or whatever your goal is. But yeah, focusing on that rather than the scheduling, I think. Plus, a core task could be, I don't know, catch up on all my house chores, or let, or do a specific one if it's really big or like, I don't know, it's whatever you want it to be. It's like, you can make them bigger or smaller depending on, on how you word them and everything. Cause like, if you say cap, capture all of your house chores up for like one week and you haven't done anything, that's probably a little too ambitious. That's right. Yeah, well, a lot of. Yeah. I spend, I don't know, at least 15 minutes, half an hour at the beginning of the day, sort of my my planning and sort of my initial writing session is involves a bit of planning and there's always. A lot more time. So generally, depending on the nature of your work, it can take up to 15% of your time. It can take quite a bit of time. And I think people don't really acknowledge that as part of your work is planning. And it can take a significant amount of time. Yeah, that's what I was meaning though is like the very first thing I think people generally always try to do with the scanners like look at how productive I can be let's schedule every single minute up and it's like You're not gonna want to do that for very long and it's not gonna work out And what you were saying about The pomodoro technique one of the core Let's see, one of the benefits could be described of another benefit I've seen of like multiple habits books is if you start multiple small habits where you try to do them consistently, you give yourself an opening to where if you get into the flow state, you can do a lot more of it. Like, I don't know, let's say you got a habit of, I don't know, just write a journal entry. You're a journal entry of like at least two lines. I don't know that could very easily turn to like three paragraphs and if you have like a whole bunch of Like the pomodoro technique it could be like stubs to allow you to do more stuff Where are they in spur to allow inspiration to allow you to generate inspiration and then capture it when it strikes if the mood fancies you Yeah, so that's kind of an issue with the Pomodoro technique. So, one idea is that you just, if you really have to break out, because the idea is too big to put on the back burner and hold in place, then you do have to break out of the Pomodoro and go, you know, jot down a quick note or three paragraphs. but like how much... You don't get to count that as a Pomodoro. You have to like reset your count because you've broken it. I mean, according to that method, it's kind of rigid. It's a different algorithm optimizing for different things. And this may just be like a by-product, but this could be very easily like a core advantage that may or may not be the core reason that you were using it but didn't realize it, and may not be something that it's optimizing for. So are you developing a Emacs package then with your template? No. As I said, My next steps where I think would make it work a lot better is if I figured out some way of automatically filling out the dates or maybe automatically adding the file per week into and out of Org Agenda. That would be my next steps. I think if I did that, it would have a much greater chance of becoming part of my workflow at all times. Yeah, I bet you could do it pretty Something I got to work with the help of copilot. I'm not a wizard yet at Emacs Lisp, but I find that copilot is quite helpful. Yeah, their AIs are definitely interesting.
[00:48:32.800] Do you use a lot of TeX inside Org Mode?
So. do you ever use any, uh, a lot of TeX inside of org mode? No, mostly because I know that like I could try to learn it, but I just don't have a need for it. So yeah. And then also like I remember learning, when I learned HTML, I like writing HTML more than like, for instance, Word, because it was a lot more transparent, like a plain text document is, and kind of wrote the ordered list, unordered list, in such a way that it kind of looked similar to the page. But I find that I like Org Mode more than, HTML because, well, it's optimized for, like, my writing and consumption and overall use case rather than, like, optimizing it for somebody else to view, which I generally don't have as much. But, so, like, I don't know. Org Mode is what I'm going to end up using the most, so. I just want to use LaTeX enough. Although I'd be interested in learning LaTeX snippets inside of Org Mode for like the math stuff, but then again, I just never have to type it. So my attitude towards Org Mode changed radically over the summer. I was avoiding it somewhat before and then when I realized I can keep all the great aspects of LaTeX and still use all the great features of Org Mode. So I view now, I think of Org Mode as a wrapper around LaTeX. I know it's not really that, but by thinking about it that way, uh, it's much more palatable to me to, uh, uh, just go, uh, commit to doing as much as possible in org mode. So I've been, that's what I've been doing. Um, this fall is just, uh, every document I started as an org file. I imagine I would like it if I knew it, it's just because I, because I imagine it would feel to me like HTML, or it's just like, Yeah, I can write it, I can format it the way I want to. This is just guesses from my experience with HTML. I can read the source code of it and kind of get an idea of how it will look like, but I just... It's like if you're gonna use the Linux terminal, but you're gonna use it for an hour a week every... Yeah, an hour a week. It's just like, it's just not enough time to dedicate to learn it for to start paying off. That's right. And you can always export your org file to an HTML file. Yeah. But the org file is what I stare at 95% of the time or more. I only use a PDF. So I export to PDF generally. And when I export to HTML, it's very cool. I like looking at the document in the web browser. I like navigating it. But I generally will export it to PDF so I can print it out when I'm traveling to carry out editing. But that's just a small, tiny fraction of the time that I'm actually working with the document. So most of the time it's in org mode. You know, maybe it doesn't look as pretty as in, you know, uh, HTML, but it's, uh, it's so such a pleasure to work in because of the way you can reorder
[00:52:48.680] Org Mode versus Markdown
lists, you know, create headlines. So what about org mode versus Markdown? Cause I know when, cause when I looked at org mode versus Markdown, I was like, yeah, more stuff supports Markdown, but. Org mode has more stuff built into it, like the calendar and agenda stuff. And it's obvious what this is supposed to be in org mode. And Emacs has got the best client. I use Emacs. And I think it's got a better syntax than Markdown. You've got stuff like Obsidian and Notes. And what about the Markdown? So Markdown, I use it a lot on GitHub repositories for the readme files. Sometimes I'll do them in org, but generally just go with the GitHub Markdown. But tables are still kind of a pain in Markdown, whereas tables are such a pleasure to build in org mode, because you have that dynamic adjusting of the column width as you make entries that become wider. And it's so easy to add columns. And it's so hard to add columns. It's much harder in Markdown and in LaTeX. It's more of a pain to add new columns. So the table aspect, that, to me, was one of the killer features. And then the other killer feature, of course, is the literate programming or interactive programming. So interactive computing that you can do where you have a code block and then you can execute it and have the output show up right below the code block. And org modes support for that kind of interactive computing is I'm not aware of anything more sophisticated, because you could have parallel sessions. You could have four Python sessions going, each of them labeled differently. And they're all walled off from each other. They don't see each other. Or you can have different programming languages. So you can do polyglottic programming where you have... Maybe Python's generating a table, and then that table gets, you decide you want to plot it using R, or you want to use ggplot2 and R to plot it, so that table gets fed into R in the next code block down, and then below it, you get a graph made in R, or you can make it in new plot, or you could, or some other, or you could move it into a LaTeX code block, plot the data in with Tikz, or you could move it into Clojure and use one of the Clojure plotting programs. Just kind of limitless what you can do in terms of recombining the best of different programming languages. Yeah, let's see. The literate DevOps are really good talks and subjects to get into this type of stuff. And they give a very good example of some tips on how to do this. You start writing in the previous or past tenses, though. You got the answer already, and then your notes are already formatted out as you're doing it for after the fact. And like, one thing I like doing a lot is using the Raku language as a calculator, because I can just type in math as normal and it all works. I've tried that. Yeah, you can just say like, I don't know, 25 times four with, and you can put like parentheses in it. I'm not exactly, I haven't used it very heavily. Oh, it also supports Unicode. So if you wanted to have the not equals sign, the Unicode not equals sign, it will actually do that. Cool. Or like the division sign. I don't know how it will do it. Yeah. But yeah. And then using that in, I also wrote a shell script where it would just help me do a calculation. I was trying to do a business calculation where I was, and I'd have variable names and I ended up writing the, in the parentheses I'd have enters, returns, and then just a variable name with like a dollar sign, kind of like how you'd have in the shell. And I outputted every single line that I had in the enter. six or 10 variables in this paragraph, the paragraph spanned, I don't know, like four lines or something like that. Maybe, yeah, something, I think it was along those lines. And I was just thinking of like what this would be in something else, just like, it was a lot nicer. Yeah, I had like equations for the variable, like in like one line, but when I wrote that, what my output should be is like, like I wasn't putting all of these like, you know, string join, string join, string join, It looked relatively close to what my terminal output would be, and then a later iteration I found on this was, let's write what I'm going to put into the command line, made a couple changeable variables in it, and then I can see my results, and that ended up being very nice. Ended up being nicer than the shells. Yeah, ended up enhancing that shell script that I wrote. That's a Raku calculator. Uh, it's the Raku programming language, which I was just using it, which I was just using as, which I'll just use as just straight up that calculator. Cause I'll do like, because it supports math well enough that I, like I, yeah, you can put like 25 divided by four and it doesn't start doing, what's the word, modular fractal, the double math, like it, if it's, the double math where it's like negative .2 versus like minus one, or sometimes it'll do optimized computer math where it doesn't give you the right answer, why people will like Mathematica. So, how do you, do you access it through, in org mode then? I'll do it in that. Sometimes I just fire up a Raku shell, but one of the biggest things I'll fire up a Raku shell for is like just, um, what's oh just recently I was just like doing it for some math and like how many people how much money will I have to spend on Christmas oh I've got I'm gonna buy this gift it's gonna cost this much and then I've got so let's I think 15 times four because it's no 60 divided by four because it was a four pack And then times, and then I put it in parentheses, oh, four plus like two plus two, because like of the families, each of the units, and I just started doing it that way. And I put them all in a parentheses. And then at the end of this spit out the numbers, like, so I could just use the parentheses without thinking about, you know, like, oh, I'm actually in a programming language. No, I just kind of wrote it like I was in algebra, algebra, not in, not finding some special program, not finding a calculator, because it's easy for me to file up a terminal. Then I open that up, and it all just works. Plus, I also got a full programming language behind it if I ever need it. I wasn't aware that it utilizes standard math notation rather than the Polish math notation that we use in ELISP. Um, that's interesting because it's, it's in the list family of programming languages. Yeah. It's like, Hey, I can use, I can actually use my math knowledge. I can use the order of operations. Yep. I just wish that when I was in high school, they started telling me how to practically use this rather than me discover it years later when I'm out of it. Yeah. Well, I probably better move along to attend the other talks. All right. So it's been great talking to you, Plasma Strike. Yep, you too.

Questions or comments? Please e-mail blaine-mooers@ouhsc.edu

Back to the talks Previous by track: Writing academic papers in Org-Roam Next by track: The Future of Org Track: General