fedops blog

Privacy in Computing

Sun 09 December 2018

Personal Notebook - Redux

Posted by fedops in InfoManagement   

TiddlyWiki

In Keeping a Personal Notebook I described my use of TiddlyWiki for collecting information in a semi-organized way.

It's quite good at most things; however, the one thing I feel it's lacking in is hierarchical organization. I get that using tags is a reasonable way to navigate unstructured information. However, I really like tree structures for sorting information based on their default location, and using tags for things that belong in more than place in the tree. Maybe I'm weird. There is a tree extension for TiddlyWiki but I never quite got it work.

The other thing I like to be able to do is use common CLI commands like grep to sift through information without having to click around in GUIs. While that's technically possible in the Wiki, the fact all its contents are in one big HTML file is less than convenient.

Joplin

I recently happened upon an alternative application called Joplin that is available in three versions: an Electron desktop app, a mobile version for Android and iOS, and even a CLI version.

Best of Both Worlds

While it uses an SQLite database as its backend, there is also a very convenient (and fully automatic) synchronization function that exports the entire database contents as well as embedded resources such as images and PDFs into individual files.

The included Meta information such as creation time and parent node in the tree allows easy onward use of the data should a change of application become necessary. And, in a pinch, greping the information is possible even over an SSH session should the need arise.

Markdown Throughout

Both the internal as well as the synchronized data uses Markdown syntax, which is easy to use and very light weight, and again doesn't get in the way of grep & friends.

Order!

The other "killer feature" (for me) is the easy reordering and nesting of notebooks inside notebooks via drag-and-drop. This leads to nicely structured trees, while still maintaining full-text and tag-based search capabilities.

Joplin

Desktop Joplin is available as an AppImage, self-contained application, which easily integrates into common desktop environments. The CLI version must be installed using the Node.js Package Manager (npm) -- information on how to do that is available at the Github page.

So far I haven't completely made up my mind on which way I will go, but Joplin looks like a strong contender.