Ask HN: Best solutions for keeping a personal log?
But I'm interested in being able to pull in more automation--for example, download a csv of transactions from my bank and integrate purchases into the log, maybe add in entries for emails sent, phone calls made. The goal is to capture information passively enough that I can add context and commentary when I want to without spending more time on it than it's worth. I have an idea that it would be helpful for me to be able to look back and get a long term sense of things that I'm doing and interested about.
Do you know of any tools that might make that easier to accomplish? I struggled to find a general purpose app for the iPhone to write new records to a database, and I thought about using a google form but I don't want to have to manually record the time. I thought about sending emails to a specific address, but I couldn't come up with a simple way to do the kind of purchase integration that I'd like to do, and I have a hunch that the whole thing is really only going to be useable if it ends up in a database or spreadsheet form.
With all the personal data collection going on right now I think it would be interesting to start trying to use similar tactics to bring more of my attention to the decisions I'm making about how to spend my time and focus.
137 comments
[ 5.5 ms ] story [ 169 ms ] threadThis is my top one issue, because most logging apps require constant manual inputs and commitment, but not all.
Recently, I have been using Journey [0], an app that is helping me in the difficult task to write entries nearly every day. Problem: those are free-form, so it's only a good old journal, not a tracking app for custom metrics.
I have tried using another app to track my food habits [1] but that required way too much effort to get it right (finding the right food for every intake is just too much, I'd rather wait for something more automated like computer vision accurately seeing what I am eating, and how much of it).
I passively track my spendings, cross accounts with an bank aggregator called Bankin [2] (EU focused). From it, I can export the normalized data. You should look into similar services.
> a general purpose app for the iPhone to write new records to a database
I don't like it, but Notion [3] does that.
In the end, if you're committed, a spreadsheet is not that bad to start prototyping and checking what your really need.
Don't forget passive tracking with apps such as Google Fit, Swarm (Foursquare), Google Location, etc.
[0] https://2appstudio.com/journey/
[1] https://lifesum.com/
[2] https://bankin.com/en/home.html
[3] https://www.notion.so/
It's a shame that there isn't a bigger player in the space for user friendly custom metrics like this
Google form entries have an automatic timestamp.
No other ideas besides the ones already stated (also a jrnl.sh user).
It's not exactly what you are looking for, but has some good properties:
- Always easy to jump in to, since I use TG to chat with people all day long; works on all devices (I need to journal from desktop and mobile)
- Easy to forward in/out notes to/from others
- No formatting woes since it's pretty much open ended. Supports hash tags and search. Can easily find all media and links.
- Telegram already supports tons of different kinds of media files and attachments; can easily snap of a pic of what I'm doing
- Can easily export HTML archive of convo at any time for analysis in other software
With my setup you'd have trouble automatically injecting content from programs, but you could make a Telegram bot that does that work, and just have conversations with it instead of yourself. (Telegram's API is incredibly simple to get started with and doesn't even require webhooks)
I've imagined the bot to:
* save each message in the chat as a separate "log" in a text file that is saved on an online backup. This can be a private GitHub repo, OneDrive, etc.
* give a short summary/statistics of how much I wrote
* tag message with the hashtags I use
...etc.
I haven't got time to start it, but hopefully I do soon. How would you like this sort of a personal bot?
Though I really wanted my logs to be logged in a plaintext file, I'll give this a try again. Thanks!
In the past I played with exporting the log and then drawing a word cloud (by week) with Mathematica. It gives you some interesting insights into whats going on in your life in that period.
Other cool features that would be nice: structure extraction (i.e., msg myself `#food #lunch cheeseburger` and `#mood tired` and then building a CSV of only what I ate vs how I felt), reminders (to encourage you to journal every so often, or to quickly have the bot remind you to check on something 12 hours from now), automatically posting external stuff like uptime alerts, calendar entries or commit logs, and other stuff I can't think of right now.. :)
Then I've got a script (https://github.com/karlicoss/telegram2org) that checks for new messages in this group every hour or so (cron) and appends Org-mode formatted messages to a special file. There are some extra features, like automatically mapping select senders into org-mode tags (yes, I do keep tags for closest friends :D ).
That makes it always show up when I search something (adressing the problem of finding information), I also can easily transform it into a proper todo/task if necessary.
https://www.aina-wireless.com/shop/aina-ptt-voice-responder/
But it's use case is push-to-talk messaging and not voice recording. But combined with the right app perhaps... Maybe I should look into chat apps like Telegram?
https://play.google.com/store/apps/details?id=com.abelssoft....
https://apps.apple.com/us/app/voice2mail/id533391644
a big ask but would love for this to do speech to text also.
- Create a private Twitter account
- Private Slack community/channel
- Private Keybase account (E2E encryption)
There are drawbacks with all these though because they are not specifically designed for logging but for fast social interaction over the web, it affects things like UI, security, readability, and searchability, the advantage is they already have a load of features as you outlined. A journaling app could learn a lot from the design patterns of low-friction social apps though.
I've been trying to come up with ways to automate entry of other data as entries in day one, because something that's really useful is that you can grab a copy of the sqlite database underneath it and do what you want with it.
For passive logging, I've got Orger, set of scripts that are pulling data from different APIs and render it as org-mode [1]. Having it as org-mode allows me for quick search and recall in the logs.
There is also Memacs that uses similar approach [2].
1. https://beepb00p.xyz/orger.html
2. https://github.com/novoid/Memacs
I'm using an iphone, do you have any suggestions about how to sync up entries made on the move?
Don't have iphone, so don't know about the apps. But, even if I didn't have any org-mode specific apps, a tool that merely indexed org-mode files as plaintext and allowed me to search it would already be massively helpful.
For synchronising files across your phone and computer, I'm sure there is Dropbox or Syncthing for Iphone. It's periodic sync, so there is slight possibility of conflicts, but if you use separate files to log on desktop and phone, just merging them now and then, it's not an issue.
You basically coerce all manner of new formats into soemthing you can easily manipulate in the future - which is kind of the essential feature of a note taking system.
You will obviously have to update those scripts a little as these other formats change but then again you’ll only have to do so for the systems u really care about.
Would be great if you could wrap all this back up into a emacs package for easy install ;)
Not really planning for emacs package:
- I don't feel very efficient coding in Elisp
- lots of infrastructure required (e.g. scripts for fetching data) is not worth rewriting in Elisp. Actually most of it is quite Emacs-agnosic and it would be a trivial task for Orger to output Markdown/HTML instead of Org-mode if one wants.
- it's a bit more accessible for other people when it's written in Python. I probably wouldn't be wrong if I say that people who are comfortable messing with Emacs are a strict subset of people that can run few Python scripts in cron :)
That said, if you think there are some benefits in having it tighter integrated with Emacs, I'd be really interested to hear!
That said, in the business world I have enjoyed the many features of evernote, but it's been a few years since I used it.
[0] https://github.com/ryuslash/git-auto-commit-mode
Notes:
mg is micro emacs, +-1 opens the file with the cursor at the end.Transactions:
I record my transactions into ledger[0]. I wrote an auto-complete wrapper in Python to help speed up entry and another to keep the formatting consistent, but otherwise it's a manual job. It helps keep me aware of my transactions, plus I like to add comments and customize the entries instead of just loading them from the institution's CSVs.
[0] https://www.ledger-cli.org
I've been doing it for about 20 years. Services come and go and you can deal with that. But what's crucial to me, is that it is fast. Always. No logging in, just a keyboard shortcut and I'm writing. Waiting for something to load everywhere can be really annoying.
I built a prototype that does this. It’s got a UI very similar to twitter but organized by day. Special hash tags on a messages at the end of one day appear front and center on the next day so you can get cached in on what you were doing.
I gave up after a few weeks. I don’t use it enough for it to be useful.
So I need to iterate a lot for this to be valuable. I wanted to prototype this before going crazy about building a tool that I wouldn’t even use. Glad I did because now I know the magic needs to happen on the data entry side to make that more frequent.
Ive got a bazillion ideas on how to extract meaning and apply organization to the random little messages ... but without having a personal corpus of entries to mine it’s impossible.
I keep seeing this question pop up though so I know it’s a problem for more than just me, and there is a need in the market. An iOS/Android app was showcased here recently called ZenJournal but it’s not quite what I’m looking for either.
I almost need a lapel mic that can be activated very easily - so I can dictate to this thing as stuff comes to mind. Sometimes the friction comes from trying to organize my thoughts before I write them, which defeats the point.
Life has changed recently and I've been thinking about some low-friction options for capturing thoughts. Any solution needs to work from mobile and desktop (macOS, Windows, and Linux for me.)
On desktop I'm imagining something like an Alfred window popping up on a keyboard shortcut. Storing the text note or screenshot with timestamp. Nothing precludes audio, or any other format, but the capture tool needs to load immediately, capture whatever, and disappear into the background. It'd then bug me at specific times to group these notes or add some context.
I'd be able to "zoom" by hour, day, week. It would work out what was during work hours and what was outside of work time, but I'd still be able to indicate personal or work. Tagging would be available, but not required.
I could take some note, or a group of notes "forward" to another tool. It'd store a link to that next system (Trello, work bug tracker, etc.) so I'd know the items were "actioned" in some way.
I'm not aware of any tool which really does this. Note-taking tools are developed for folks who love creating notes and not for people who don't love doing this (or have had excellent memories up to now and skipped development a love for taking a note on everything!)
Thanks for taking the time to spill out your thoughts on this.
[0]: https://brettterpstra.com/projects/nvalt/
I saw the Myle [0] at CES 3 years ago, but it ended up never shipping - they took ~$150k in orders but never fulfilled any, sadly. It was a great idea, though.
[0] https://www.indiegogo.com/projects/myle-tap-wearable-thought...
You can use it to automatically keep track of your online research, notes etc, and have a nice knowledge base as a result. It connects to Telegram too, so you can take notes on the go. You don't need to install a new app for that.
If you're like me, you have trouble sticking to journals/logs. I like having one collapsible document in outline form. I can remember it, and I come back to it. It works well with the natural chaos of life. And it feels more satisfying to add to one big log.
Org-mode is so powerful that it’s hard to discount.
http://www.davidrm.com/
Personally, at the end of each work day, I use the spreadsheet method to record my progress for that day. I have one column for the date and one for a 1 or 2-sentence summary or notes about what I did during the day. I've been doing this for years and it's nice to have a historic "captain's log" of my work.
It would be easy to add more columns to this type of spreadsheet to break the day into hourly increments or even 15 minute increments. Any shorter than 15 mins and it's too easy to get frustrated by the interruption of needing to write the log. Hourly would probably be more realistic.
In Google Sheets, use command-shift-colon to do a timestamp.
> In Google Sheets, use command-shift-colon to do a timestamp
Okay not for nothing but I use sheets constantly for work, and as soon as I’m back on a desktop I am stupidly excited to try this out
Supplement this approach with a small paper notebook (originally I used 3x5inch pocket then moved to a 5x8 inch) where you no longer need your phone/computer to log entries (enter them later). I'm collecting a nice physical library of notebooks that are chronologically ordered and contain everything from in depth technical tasks to notes on groceries. Also acts as a good spot for stickers collected on your travels.
Regarding transactions, I've started using everydollar.com. I've only started using it in 2019 so I cannot 100% vouch for it yet.
1. It is a highly personal process. I've tried copying high-level systems (like GTD and its derivatives), specific note-taking / TODO paradigms, productivity/habit tracking apps, and other journaling approaches, and I've always found that if the system is not built around your own habits and preferences, you will eventually lose motivation. Figuring out your own style seems to be important. Another general principle I’ve found is keeping the tools simple. Mostly text-based, always available offline, built to last, etc. Develop the habits, then adopt fancier tools.
2. For quick context-capturing and bookmarking, I rely on email and Pocket. I prefer email because it is reliable, it'll be here in 20 years, and it is fast to flag a message as "needs attention" or e-mail yourself an important thought or reminder. Pocket seems to just work across all my devices, so I haven't had any reason to branch out. Whenever I have time during the day, I organize this “unorganized” view by either taking care of the item (if it’s a quick article in Pocket or errand in email), skipping it (it’s fine to de-prioritize things until later), or by triaging it into Evernote:
3. I use Evernote for a lot of things (including all my technical notes, paper highlights, personal journaling, my "principles" document, philosophy on nutrition, habit aspirations, workout plans, and so on), but of interest for this question is probably a topic-specific log and backlog system. Near the top of my Evernote shortcuts are four log links (Daily Log, Technical Log, Health Log, Workout Log).
4. Daily Log is where I can make a plan for each day, or put nothing here, or just have a place to ramble (writing down thoughts helps internalize them, after all). This is something of an unstructured personal journal.
5. Technical Log is for all technical work that I undertake (coding train-of-thought, reading papers, reading blog-posts, etc.). In reality, under each date, this log contains a bunch of Evernote links to more detailed notes on specific technical topics, but the big benefit here is being able to look back over the course of a week or month about what kind of insights or interesting concepts I’ve come across. It’s particularly useful to read the day after and get most of the context back quickly. I usually always have this log file opened.
6. Health and workout logs track both metrics and how I generally felt that day (health-wise and workout-wise, respectively). It’s ok to have empty days. The important part is filling in on days when things are particularly bad, or particularly good, so you can reflect.
7. After this, I have a bunch of backlog shortcuts — so when I triage items from Pocket or my email, they go into the appropriate backlog list. Examples for me: Backlog of {ML reading, CS reading, Bio reading, Travel destinations, Video/TV/Movies, Restaurants, Games, Running routes, Books, etc.}. Backlogs are great -- they are lightweight, they can grow indefinitely, and you'll naturally prune them of things that you don't care about after some time. Really, lists are a great way of writing things down! When I'm at a coffee shop, I'll pick and item from one of my reading backlogs, if I'm not already working on something. When I have time to plan a weekend, I can scroll through my recreational backlogs and combine some items to fill out my schedule.
8. I like having a high level view of what I did and what I have coming up on long time scales, and for this I use a big spreadsheet, one sheet per year, one row per week, where all past and future social events, travels, and “macro” ev...
[1] https://hledger.org/timeclock.html
As for automation, I wonder if it might be worth looking at some simple Python scripts running somewhere (a cheap DigitalOcean $5/mth droplet?) pulling data as needed and writing to Google Docs via the Google Docs API? It does require some programming know-how however.
I haven't quite figured out if I'll make it my todo-list/gtd solution yet, for that I'm fairly entrenched in kanban/issue-tracker apps like trello. Also wondering how to use it alongside bookmarking tools like pinboard (or if the longer goal is to have better bookmark features).
--- From the OP:
"download a csv of transactions from my bank and integrate purchases into the log"
- Depending on how much time you have, you may want to check out the beancount community / https://plaintextaccounting.org/ . I don't recommend it to people short on time to go through the learning curve, in those cases just use an existing financial app (moneydance, quicken, gnucash, etc.).
"entries for emails sent, phone calls made"
Roam could work for these use cases, see Conor's recent video: https://www.youtube.com/watch?v=YcNW-eidDJk
> I haven't quite figured out if I'll make it my todo-list/gtd solution yet, for that I'm fairly entrenched in kanban/issue-tracker apps like trello.
I believe both will have to tackled sufficiently before Roam really takes off.
For example, I'd love to be able to:
* Filter for TODO items between $start_date and $end_date
* Filter for TODO items ranked by number of connections (further arbitrary weighting would be really interesting here)
* Filter for TODO items at the intersection of two terms (haven't found an elegant way to do this yet)
> Also wondering how to use it alongside bookmarking tools like pinboard (or if the longer goal is to have better bookmark features).
I'd love to be able to see all the stuff I want to read for #term - this might include books, articles, etc.
Which brings us to content: I really want to read all of this stuff inside of Roam, but there are two approaches right now, neither of which are super comfortable:
1. Copy the whole thing into Roam and process it chunk by chunk. Nice but formatting is a gigantic pain, front-loads a lot of work. Benefit is it saves the content in case it disappears. No easy way to see only the highlights from a certain article as they're all mixed in.
2. Copy metadata and highlights/annotations/quotes into Roam after reading it and creating them elsewhere. More compact but annoying to access original content. Requires yet another tool.
What I like about it is that I can combine the journal/log aspect with a general knowledge database and seamlessly interlink the two.
Theoretically, TiddlyWiki is ridiculously customizable, so any kind of automation would be possible. Unfortunately, it has fallen victim pretty badly to the "inner platform effect" - instead of letting people simply use the Javascript that it's built on, customizing is supposed to happen in a template language that is just plain horrible and makes even the most simple things like concatenating strings comically hard when done in a context where that kind of operation wasn't planned for.