Personal Knowledge Management Systems (PKMS) are systems used to organize and track an individual’s growth of knowledge across their entire life. The intention is to form organic and insightful connections among an individual’s pieces of knowledge.
The oldest modern version of this is Zettelkasten, developed by sociologist Niklas Luhmann. Literally translating to “slip box”, zettelkasten was originally done with boxes of note cards that had a method to uniquely identify each note card. When new note cards were created, Luhmann would refer back to older note cards with their identifier. He would also update the old note card with the new note card’s identifier. This is known as a backlink.
Modern PKMS follow this principle of linking, and digitize the overhead.
The primary mechanism of PKMS is linking. PKMS use articles with links, in a similar way to wiki articles. Each of these article files is called a /node/. Linking creates connections with other node in the filesystem.
Modern PKM software has a way to perform linking between files/articles and often a way to visualize those links. Modern PKM software also has backlinking, which shows what articles link to the current article.
It is recommended to write most nodes as a single concept instead of one longer file with multiple concepts. This makes it easier for both the user to search concepts, and for the software to reveal interesting connections between concepts. After interesting connections are created, it would make sense to make nodes that are synthesis of atomized concepts. These synthesized nodes should still link to the original nodes they draw inspiration from.
A PKMS is meant to be non or minimally hierarchical. A PKMS can be as simple as bunch of plain text files inside of one folder or something more elaborated to promote a certain workflow. The links will form most of the structure.
tagging is recommended instead of categorization because tagging eliminates rigid hierarchy. tagging is also recommended to be done frequently and early on.
The software will reveal the majority of the structure so it is not necessary to create subfolders for the purposes of categorization. However moving files into subfolders should not affect the ability for the PKM software to graph links between nodes.
Some reasons to create subfolders include privacy and chronological or developmental organization.
Depending on the publishing software used, one may wish to hide some files from publishing. A common set of files to hide are “dailies”, which usually function as people’s daily journal.
Another reason to use subfolders maybe to organize a workflow based on its development of ideas. A simple example of a workflow might be a progression of fleeting ideas, reference material, original ideas.
On might have a folder dedicated solely to files that are meant to annotate literature notes, or todo lists.
This software in this section is organized from easiest to more involved programs.
Obsidian is a PKM software that manages markdown files.
Each PKM is called a vault.
Markdown files are plain text files that use the Markdown markup language.
Some version of Markdwon is commonly used in Reddit, Discord, and Github.
Obsidian’s Markdwon does inlcude the [[]]
wiki syntax as the usual markdown link syntax is more complicated.
It is easy to open and create files and folders.
Graph View is available inside Obsidian with many filters and coloring options based on tags, directories, and more.
Obsidian has a plugin popular plugin ecosystem. Compared to the other options, it is probably the most supported. Plugins introduce additional features to a workflow.
Syncing across Multiple devices
Publish Obsidian Vaults to a website.
Logseq is an Open Source alternative of obsidian.
It also uses Markdwon with [[]]
link syntax.
This is a good option for someone who uses Emacs, org-mode, or wishes to do roam:literate programming org-roam takes .org files, gives the UUIDs and creates a sql database to query.
org mode is a markup language that originates in Emacs. it has enjoyed many decades of a developer ecosystem. org-roam is compatible with most org-mode plugins.
This extension allows for the execution of code inside of org mode files.
These extensions provide citations for org files.
org-roam-ui produces the graph for Emacs in a browser.
Reference Managers organize references, and many have integrations that allow easy insertion of references into word processors and PKMS.
Zotero is the most supported reference manager, and has many integrations with Obsidian, web browsers, and Word.