diff options
Diffstat (limited to '2024/talks/project.md')
| -rw-r--r-- | 2024/talks/project.md | 258 | 
1 files changed, 258 insertions, 0 deletions
diff --git a/2024/talks/project.md b/2024/talks/project.md new file mode 100644 index 00000000..7aa44df8 --- /dev/null +++ b/2024/talks/project.md @@ -0,0 +1,258 @@ +[[!meta title="Managing writing project metadata with org-mode"]] +[[!meta copyright="Copyright © 2024 Blaine Mooers"]] +[[!inline pages="internal(2024/info/project-nav)" raw="yes"]] + +<!-- Initially generated with emacsconf-publish-talk-page and then left alone for manual editing --> +<!-- You can manually edit this file to update the abstract, add links, etc. ---> + + +# Managing writing project metadata with org-mode +Blaine Mooers (he/him) - Pronunciation: Blane Moors, <mailto:blaine-mooers@ouhsc.edu> + +[[!inline pages="internal(2024/info/project-before)" raw="yes"]] + +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/](https://zettelkasten.de/introduction/) +  - A: Pls cf. +    [https://en.wikipedia.org/wiki/Zettelkasten](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](https://github.com/Vidianos-Giannitsis/zetteldesk.el). See  his talk from EmacsConf 2022:  +    [https://www.youtube.com/watch?v=dJ859kiFRLg&t=0s](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/](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](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](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](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. +  - A: Thank you for your interest on the PyMOL project. I have not published that particular project yet, but a number of related PyMOL projects are on my GitHub site. The most popular is MooersLab/PyMOLshortcuts [https://github.com/MooersLab/pymolshortcuts](https://github.com/MooersLab/pymolshortcuts). The associated paper is here [https://onlinelibrary.wiley.com/doi/10.1002/pro.3781](https://onlinelibrary.wiley.com/doi/10.1002/pro.3781). I have run PyMOL in Jupyter [https://github.com/MooersLab/jupyterlabpymolpysnips](https://github.com/MooersLab/jupyterlabpymolpysnips)  [https://pubmed.ncbi.nlm.nih.gov/33967632/](https://pubmed.ncbi.nlm.nih.gov/33967632/) ,  Colab   [https://github.com/MooersLab/colabOpenSourcePyMOLpySnips](https://github.com/MooersLab/colabOpenSourcePyMOLpySnips)  [https://proceedings.scipy.org/articles/majora-1b6fd038-002](https://proceedings.scipy.org/articles/majora-1b6fd038-002), RStudio  [https://github.com/MooersLab/rstudiopymolpysnips](https://github.com/MooersLab/rstudiopymolpysnips), and Org-mode [https://github.com/MooersLab/orgpymolpysnips](https://github.com/MooersLab/orgpymolpysnips). I gave a talk about the later at emacsconf 2021 +    [https://emacsconf.org/2021/talks/molecular/](https://emacsconf.org/2021/talks/molecular/).  +- 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](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](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](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](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! + +[[!inline pages="internal(2024/info/project-after)" raw="yes"]] + +[[!inline pages="internal(2024/info/project-nav)" raw="yes"]] + +  | 
