Ask HN: How do you maintain your daily log?
88 points| dr_kiszonka | 3 years ago | reply
Questions:
1. What is your workflow?
2. What tools do you use?
3. If you log to a text file, how do you format your entries?
My framework
Daily log vs. daily journal
For me, entries in a daily journal require deeper thought and reflection on what you have done, your goals, etc. Usually, journaling is done 1-2 times/day. Conversely, entries in a daily log concern immediate actions and are done many times a day. However, your daily log could inform entries in your daily journal.
Daily log vs. a to-do list
For me, entries in a to-do list are only the things you need to do. Also, most to-do lists I've seen don't store the timestamp of when a to-do item was created. Conversely, entries in a daily log are more diverse and are all timestamped. They may include to-do items but don't have to. My entries are updates, notes, questions, and to-dos.
My log is a markdown file, which I edit in Sublime Text. I created Espanso [1] shortcuts to add timestamped entries. E.g., "zzq" expands to "[2022-10-26 10:45:24]: Question []:" and "zzn" expands to "[2022-10-26 10:45:56]: Note:". For proper task/to-do management, I use Amazing Marvin [2], which is decent.
[2022-10-23 09:18:44]: Update: prepared slides for meeting with @Laura #1on1 #projectLion
[2022-10-23 10:54:36]: Note: I created a new keystore key using these instructions https://xxx.xxx, stored in keys dir #projectGamma
[2022-10-23 11:16:54]: TODO [x]: deploy a new build, which fixes the bug with incorrectly parsed dates (id:1332); [2022-10-24 10:12:12]: rolled out, v17 (2.0-17) #projectGamma
[2022-10-23 12:27:56]: TODO []: ask about daily log software on HN @me
[2022-10-23 13:38:00]: Note: password for W in stored in LP #projectGamma
[2022-10-23 13:43:25]: Question [x]: should the style guide be in the repo or YouTrack? @Alex #weeklymeet #projectGamma; [2022-10-25 15:17:13]: @alex said in YT because we'll use it in other projects
[2022-10-23 14:11:15]: Question []: should we use Red Frames (https://github.com/maxhumber/redframes) in addition to Pandas? Criteria for decision? @me #projectLion
What do you want to improve and why? - I need an easier way to find, e.g., all questions from this week for @Alex about #projectGamma. I'd like to easily filter entries by date, project (#projectGamma), person (@Alex), and type (Update, Question).
- Nice to have but not required:
- sort entries by status (not done: [], done: [x])
- auto-timestamp when a to-do item was created and completed
- surround selected text with [], {}, "" and auto-close them like a programming text editor, e.g., ST, VSCode
- duplicate & move entries via shortcuts
What have you looked into? - People enjoy Obsidian [3] and Logseq [4]. I find them alluring too, but I don't yet know how to make them support my daily log. I'd need to spend at least a full day to figure out each of them, the time I don't have at the moment. (I use Obsidian for code snippets; it is excellent.)
- Org-mode is very popular, but emacs and vim are way too much of a time investment (I tried many times before). Do share your evil and holy workflows, though. There are org-mode extensions for other text editors and EasyOrg [5]. I still need to try them.
- I like the todo.txt format [6] and I am considering forking pter [7], but making it fit my needs would take quite a bit of work.
Dealbreakers: - No Windows version
- No desktop app
- Subscription-based software, including charging for syncing between computers
- No export option
Links posted in a comment.
[+] [-] allanrbo|3 years ago|reply
I use a little script I wrote that, once per hour, opens a full screen always-on-top window that forces me to write one sentence on what I have been doing this past hour, and saves it in a plain text file. The input field is a combobox, so I can just press arrow up if I'm doing the same thing as the previous hour. This way, by the end of the day, I have a journal for the day that went.
Linux: https://gist.github.com/allanrbo/4f2ae1968afe9cb8b3ce6e9580d...
Windows (includes screenshot to get a visual on this idea): https://allanrbo.blogspot.com/2017/05/utility-to-remind-you-...
[+] [-] kabdib|3 years ago|reply
I use a single flat text file, and use it for years. I have an editor macro that adds a new, timestamped entry at the end of the file, which looks something like this:
The bar is where my cursor lands, all ready to start typing. A simple alias ("note") brings up the file. I can make a note in a second or two, then get back to what I was doing.I dump everything into this file. At my last job, my notes file was maybe 20-30MB and nearly a decade old. I record hard-won knowledge, TODO items, pieces of debug sessions that are interesting, little notes about what's going on, jokes and random thoughts, contact info, whatever. Editors load big files fast, and incremental search works great. The idea is to make this practice fast, nearly frictionless, and not adopt complications that are tough to maintain over time.
I've found that the less formal and structured I make things, the more notes I take; if I had to conform to a schema it would be a burden. No Emacs modes. No email or contact or TODO-system integration. Just notes.
It's saved my butt more times that I can remember. It's great to have at review time, too.
[+] [-] afefers|3 years ago|reply
[+] [-] karanmg|3 years ago|reply
* Write down today what you want to accomplish tomorrow. Each item on a line.
* Check them off the next day.
* You could add meetings, but if your day is full of meetings rely on your calendar for that.
* If you did something meaningful, not on the list, add it. Cross it out.
* There will be enough space on the paper to capture some meeting notes or thoughts.
* At end of day, throw (recycle) or retain that page.
I use the Amazon Basics graph paper notepad and a simple gel pen.
Writing works better than most things if you need a list.
For long projects, I use Apple notes to capture the plan. When ready to be worked on, I switch to paper.
[+] [-] kiernanmcgowan|3 years ago|reply
The "friction" of having to write things down means that you only write down the things that matter vs having a perfect log of the day, which makes reviewing easier.
Finally, if theres any end of date notes or things to highlight for the next day just star or underline them.
No push notifications, no alerts, no pings, no monthly fee, secure, and helps to improve your spelling and penmanship.
[+] [-] ZeroCool2u|3 years ago|reply
It's the only reason I'd consider getting an iPad, but it just seems so wasteful for that express purpose.
[+] [-] vidyesh|3 years ago|reply
I too prefer a graph paper hard bound notebook and I follow the Ryder Carroll's bullet journaling format. Currently its just a daily log of tasks but I am planning to expand to be a dev log too.
> For long projects, I use Apple notes to capture the plan. When ready to be worked on, I switch to paper.
Interesting, I generally write everything in a notebook transfer it in Trello and generally transfer daily tasks back to daily log as and if needed.
[+] [-] mattpallissard|3 years ago|reply
[+] [-] dr_kiszonka|3 years ago|reply
0. Unfortunately, I cannot find the link anymore. I think it was one of those "what I learned during my 50 years as a senior software engineer". The author possibly mentioned using Kate-editor. It was a really good article.
1. Espanso (free): https://espanso.org
2. Amazing Marvin (paid): https://amazingmarvin.com
3. Obsidian (free/subscription for sync): https://obsidian.md
4. Logseq (free): https://logseq.com
5. EasyOrg (paid): https://easyorgmode.com/
6. todo.txt format: https://github.com/todotxt/todo.txt
7. pter: https://github.com/vonshednob/pter
[+] [-] taurusnoises|3 years ago|reply
https://jeffhuang.com/productivity_text_file/
[+] [-] ElevenLathe|3 years ago|reply
Every so often I empty the discard pile into shoebox for storage. I produce about 3/4 of a shoebox per year so storage isn't really a problem (yet). Since they're all dated and more or less chronological, it's easy to go back and reconstruct what I was doing on a given day, and I can also thumb through them for ammunition come review time.
I currently use 3x5 cards but am thinking about upsizing to 4x6 (postcard size).
[+] [-] matanrubin|3 years ago|reply
Take a look at obsidian-tasks, templater, and the dataview plugins to understand how powerful (yet simple) this is.
[+] [-] immrammc|3 years ago|reply
[+] [-] meheleventyone|3 years ago|reply
Works great, makes sure I don’t forget what I’ve been doing or should be doing and means the entire team can see what I’m working on and what I’m thinking about.
I don’t really get all the obsession with structure, style and having a specific application for notes. For me this is mostly a way to keep organised with a brain that’s prone to lose things without regular reprompting.
[+] [-] mmplxx|3 years ago|reply
[+] [-] 147|3 years ago|reply
What's nice about this workflow is when I create TODO items and don't finish them for a day it transfers over to the next day.
[+] [-] stevekemp|3 years ago|reply
* The review of pull-requests.
* Meetings.
* Some "tickets" I work on.
* etc
So with that in mind I have an emacs org-file, which has a standard set of headers which are inserted in a single file, beneath today's date.
I use the following emacs package to make that easy to manage:
* https://github.com/skx/org-diary
With that in place I get something like this automatically:
On export to HTML/PDF any section that is empty, or contains only "None." is removed.[+] [-] LinuxBender|3 years ago|reply
Usage: notes some text -or- notes "some text that needs to be quoted in a shell;/;-)" then "notes" by itself to read all the notes. I suppose a function to null out the notes.txt file would be handy and maybe a function to commit the notes to a repo.
[+] [-] belkarx|3 years ago|reply
[+] [-] dr_kiszonka|3 years ago|reply
[+] [-] jamisonbryant|3 years ago|reply
Step 1: send yourself a message and mark it as Saved. It will now show up in your Saved items. The message should contain a section for what you did yesterday and what you're going to do today. Other than that it can be any content or formatting you like.
Step 2: set up a channel for posting your daily logs, e.g. #yesterdayandtoday
Step 3: update your daily log (saved message) as you go through your day. Add things you did TODAY in the Yesterday section, add things you know you have to do TOMORROW in the Tomorrow section.
Step 4: At the start of each day, copy-paste your saved message into the daily logs channel. Do this every day, this will form the longevity of your logs.
Finally, to review all your logs, just search for your name in the channel. Or tags, or whatever. I like to divide my log entries between tasks, accomplishments, blockers, and goals.
[+] [-] em-bee|3 years ago|reply
but i like to pick up on the messenger idea. instead of doing something structured like above i would just keep sending messages to a private group or channel as i go through my day. an instant timestamped log that can be accessed from any platform supported by my chosen messenger.
[+] [-] amflare|3 years ago|reply
I used to do this in Sublime, which was fine, but Obsidian let me automate the date and frontmatter stuff, which made my life marginally easier. The point though, is that Obsidian is not something I'm locked into, which is nice.
[+] [-] dr_kiszonka|3 years ago|reply
[+] [-] acemarke|3 years ago|reply
- https://blog.isquaredsoftware.com/2020/09/coding-career-advi...
Since then, I've switched tools. I now use VS Code to write a Markdown file per-day. I also use the Foam extension, although the only feature I actually use from that is the "Create Daily Note" command, specifically tweaked to auto-create the right folders and filenames like "2022-10-24 (Monday).md" and similar main file header. I keep those in a Git repo.
[+] [-] antoineMoPa|3 years ago|reply
Tools: I use a single org-mode file and I have a shortcut command in Emacs to launch it (M-x wl). When I run this command, it generates a new entry with the date and time and places my cursor so I can type right away.
Format: No particular format except the auto-generated date above. There needs to be the string '#now#' in ~/dailylog/wl.org, this is where new entries are generated.[+] [-] nilslindemann|3 years ago|reply
https://tibleiz.net/code-browser/download.html
I have kept an older, personally preferred version of that Editor on my GitHub Repo, unfortunately it does not perform stable on Linux and I have not been able to compile it on that system, in order to fix the bugs.
https://github.com/nilslindemann/Code_Browser_49/blob/master...
Here is a video showing how it works (my older version + scripts):
https://www.youtube.com/watch?v=sU4ThIJ6eKc
I also use this editor for code, it gives me the expressiveness I need, but its comments make the code look terrible in other editors.
I wish these features were available in other text editors. For someone used to Code Browsers folding capabilities, other editors are just awkward. But I guess other Coders will think the same when they see that they don't even get completion in Code Browser. Also, it is quite a niche editor.
[+] [-] dbieber|3 years ago|reply
Go Note Go is a note-taking system for when you're on the go, with a focus on driving and camping. It's just a headless keyboard (Raspberry Pi 400) -- no monitor, no display at all -- that you can type on (or speak to; it has a microphone). Anything you type will get uploaded to your notes, and if you speak it will get transcribed automatically and uploaded to your notes, all as soon as the device gets an internet connection (so you can use it offline, e.g. when camping).
Being single-purpose is really nice -- no time lost switching apps or waiting for something to load before you can type. And being screenless is nice too: it feels really freeing to not think about typos or wording etc, and to just keep moving forward.
For me, the notes are uploaded to Roam Research, but it supports other note-taking systems too (e.g. email, Notion, RemNote, Ideaflow, Mem, ...).
Links: https://davidbieber.com/projects/go-note-go/ https://github.com/dbieber/GoNoteGo
[+] [-] unknown|3 years ago|reply
[deleted]
[+] [-] nokya|3 years ago|reply
- Ctrl+End (goes to end of file)
- New line
- New line
- Left bracket
- Edit > Insert > Date time (custom)
- Right bracket
- New line
The macro is assigned to my F5 key, everytime I press it, the sequence is triggered.
In my file, it will more or less look like this:
[...previous log entry...]
[2022-10-28 12:48:31]
- wrote comment about my time macro in notepad++ on HN
- https://news.ycombinator.com/item?id=33359329
[+] [-] masukomi|3 years ago|reply
todos exist in other org-mode docs.
> - Org-mode is very popular, but emacs and vim are way too much of a time investment (I tried many times before). Do share your evil and holy workflows, though. There are org-mode extensions for other text editors and EasyOrg [5]. I still need to try them.
I would argue that vim and emacs being "too much of a time investment" is a common misconception based on the incorrect implication / belief that you need to learn "all the things" or "most of the things". there's far too much. no-one can. Last time i checked there were 2956 8 1/2 x 11 pages worth of help docs for vim. No-one knows it all.
I came from vim, was a huge fan and teacher, and moved to emacs largely because of the lure of org-mode.
In both i have learned that you need to learn essentially nothing to get work done. For example: here's my vim quick start. You can learn it in < 30 seconds. the only other thing you need to know is `vim path/to/file` to open the file.
that's enough to have you productive, because once you enter insert mode it's just a normal text editor. Do it in a GUI version and you've got mouse interaction too.
You don't _need_ to learn anything else. You'll _want_ to learn more, but the thing is that all the "more" you _want_ to learn can be done at whatever relaxed pace you want.
now, there are caveats and asterisks in that emacs and vim are both incredibly bare bones in their default configuration with no plugins or tweaks. Like...reeeeeeealy bare bones. So, there's a good argument to be made to start with a common distribution that bundles plugins. I use Doom emacs which is great if you're a vim geek.
But, even then my point remains. There is very little you actually _need_ to know in emacs or vim in order to get work done, and you can learn the other things you want to learn as you have time and inclination.
https://vim.works/2019/03/03/emergency-vim-quickstart/
[+] [-] guynamedloren|3 years ago|reply
This system works really well for me. I've stuck with it for years, longer than any other "daily log" system I've tried.
Why it works for me:
- The separation of notes between days mitigates the visual clutter that comes with a "one giant document" system. Each day I start with a blank slate.
- I can quickly reference notes from any day in the past by scanning the calendar and finding the day I worked on a particular thing.
- Everything is still searchable via Notion's global search.