“He was going to live forever, or die in the attempt.”
— Joseph Heller, Catch-22
Are all sunk costs fallacies?
It feels incredibly wasteful to learn something and have my notes and memory atrophy after spending the time and effort; so I spend more time and effort on preserving them.
Also, it forces me to explain things to myself, which is good for learning.
Most organizations with the power to share academic knowledge prioritize selling over sharing, but that doesn’t mean individuals should be apathetic.
\frac{ \text{Ends} }{ \text{Means} } \lt \frac{ \text{Means} }{ \text{Ends} }
It’s fun to do personal librarianship and have the right information in the right place. I like how the continuous improvement of this project allows me to reflect on my learning and myself, rather than just forgetting it all.
I take my notes in plaintext (Markdown) during lecture.
In unrelated news, the source of the incessant click-clacking keyboard driving you insane during lecture has yet to be found.
When I want to upload my note(s) to this GitLab repository, I just add them to a folder, like so:
|-cs1300
|--index.md
|--01 - Formal Logic.md
|--02 - Propositional Logic.md
|--etc...
|-cs1400
|--etc...
|-phl2020
|--etc...
The daemon.sh script can be run with ./daemon.sh, and it’s essentially a wrapper for pandoc that does parallel and selective processing.
daemon.sh has two states:
<style> tags are replaced with a <link> pointing to a shared style.min.css.
CTRL+C)template.html)Note —
daemon.shcan also be run in oneshot mode with./daemon.sh -o, where it just does the cleanup process.
Tools Used
pandoc: Universal document converter.
minify: Minification and (especially) CSS bundling.PlantUML: Tool to create diagrams from plaintext.
plantuml.lua) is used to turn all embedded PlantUML into embedded SVGs.Lunr.js: Client-side search library (for Search Notes page)Gentoo Dependencies
app-shells/bashapp-text/pandocmedia-gfx/plantumldev-libs/libxml2sys-apps/gawkAside — All of these dependencies are defined in the CI config, I just have to install these dependencies on my personal devices because I don’t feel like maintaining an ebuild.
Since minify isn’t in the Portage tree, I just built it from source and added ~/go/bin to my $PATH.↩︎