implement and maintain time- and knowledge management workflow
Schematicus Education and Career DK30 Spring 2021 0 0
Description
Back in the fall I made an attempt to “do stuff regularly”, as opposed to procrastinate and occasionally do a bit of work on a random project on a whim but leave it unfinished. It did not turn out all that well. Over time, I have managed to build and maintain several basic habits, ca. 5-minute sessions, such as rudimentary exercise, mindfulness practice, certain housework and so on. I have realized, however, that expanding the list to more varied activities and tracking their progress (including knowledge management, such as reading notes) would require structured time/project/knowledge management rather than simple TODO lists; IIRC more than some 5-8 points in a list tend to present a cognitive limit too. Therefore, I have been meaning to adopt more advanced software tools and workflow. Sadly, I did not do it in university, but better late than never.
Recent Updates
The very first update on the final day of the four weeks, what a great start. For a time-management project, no less. To be fair and balanced, I had to finish an extended sprint at work, then at least partially recover from the burn out, and it still took me several attempts to finish writing this. I think someone out there might find the writeup helpful.
Anyway, what is this project about? Long story short, the goal is to adopt systematic time- and knowledge management.
Naturally, I have created TODO lists and kept various notes at times, but because they were scattered around, I would sometimes forget to check them or even lose them, and even if not, they were not easily searchable. The most successful part has been logging daily activities, especially habits, to keep myself accountable, but the entries have become bloated over time. Additionally, a big part of my motivation for knowledge management is that I do a lot of reading/listening, and then want to reference it in arguments or make use of the attained knowledge to write a blog.
So obviously I have decided to switch to a more complex solution.
In this day and age, many simply go with one of many online services that can synchronize notes between devices and what not. I reject such approach: in part because of privacy (or rather lack thereof), in part because those services may disappear (remember Google Notebook?) or ones data may disappear (the Mat Honan’s story came out almost a decade ago already), in part because I don’t even have a data plan (or a modern smartphone for that matter).
My notes have already been mostly in the form of plain-text files, stored in a VeraCrypt container. Back when I moved between multiple computers in university, I shared the container between them using a cloud service (MEGA). It wasn’t always reliable and obviously required an internet connection. Thus, I have looked into alternatives that work over a local network, ideally without any central server, because I still resist maintaining a home server as well. I found multiple ad-hoc file-sharing solutions, such as ezshare, but eventually remembered Syncthing. I have also contemplated using version control (probably git
for convenience, as I believe “bare remote” workflow would be applicable, although Fossil might be a better fit for the task) inside the container to make the synchronization more reliable.
The remaining piece is the specific note-taking software itself. For a long time, I stuck to regular text editors (albeit more sophisticated than notepad.exe
), Markdown formatting and basic text search from the command line (grep
). When I looked at specialized note-taking applications, it turned out that dozens of nearly similar Markdown editors written in Electron came out in recent years, and I had bookmarked a few interesting, more sophisticated applications. Here is a short list (each of these is multiplatform and more or less free):
- Joplin
- Markdown
- client-server, multiple clients (Electron, CLI and mobile)
- built-in synchronization and encryption support (not relevant for me)
- MindForger
- Markdown
- desktop app (Qt)
- advanced search, tags, tracking progress
- Notable
- Markdown
- desktop app (Electron)
- text-editor component from Visual Studio Code
- Obsidian
- Markdown
- desktop app (Electron)
- org-mode
- uses its own syntax
- all-powerful framework in GNU Emacs, a fully customizable environment, can run on a toaster too
- QOwnNotes
- Markdown
- desktop app (Qt)
- integration with NextCloud/OwnCloud (not relevant for me)
- Trilium Notes
- uses its own proprietary format (WYSIWYG editor), Markdown export
- desktop app (Electron)
- built-in synchronization and encryption support (not relevant for me)
- Typora
- Markdown
- desktop app (Electron)
- Zettlr
- Markdown
- desktop app (Electron)
I’m particularly intrigued by org-mode
. It can do almost anything, and because it’s an Emacs mode, it can run on almost anything (including a remote Linux server or a Linux e-book reader) and supports very powerful keyboard-oriented editing (including vi-like). The flipside is twofold: a steep learning curve (intimidating breadth leading to analysis paralysis), and a dated user interface (Emacs is primarily a console application from the 1980s, hence doesn’t seem as smooth as current editors).
In the meantime, I have used a couple of others: Notable and QOwnNotes.
These are immediately usable. Having an ever-present panel with a list of notes and tags is helpful. I have spent a bit less time procrastinating on a few writeups. A nice feature in either case is the ability to open files in an external text editor (such as a customized Emacs), because while the default text-editing components highlight and sometimes even autocomplete Markdown syntax, advanced features, such as macros, are lacking.
However, I haven’t been entirely comfortable using either. QOwnNotes’ UI (including text editor) sometimes feels surprisingly sluggish for a native (Qt) desktop application, and also odd. Many basic features, such as non-trivial tag manipulation, can be added through plugins. Notable, despite using Electron, is much more responsive… but sometimes flickers; the UI is odd too, seems restricted. While Notable’s text editor is supposedly from VSCode, it makes use of only several features (multiple cursors; line numbers, minimap); these are discoverable only by accident or reading the tutorial (a PDF file), and aren’t persistently saved when the application is closed.
This is about as far as I got in the four weeks (a night here and there, really).
Future plans: I will continue using the more basic applications to get a better feel for the various features (tags, hyperlinks to other local notes), then export a bulk of notes into the more sophisticated applications (MindForger, Trilium Notes) to see if I can benefit from the advanced notes-management features. I will also try some pre-configured Emacs distribution (Doom Emacs, Spacemacs) for easier org-mode
adoption.
Estimated Timeframe
Mar 1st - Mar 28th
Week 1 Goal
- pick a desktop application (I already have a list of candidates), go through the tutorial and setup a basic workflow (journaling, agenda, notes)
- setup file synchronization between my computer systems
- actually start using it!
Week 2 Goal
TBD
Week 3 Goal
TBD
Week 4 Goal
TBD