how my website works

This website is a little non-traditional in that blog posts are not standalone. Posts will frequently reference content covered in other posts as well as smaller notes identified by their url containing /zk/ before the title. To understand why I have structured my blog like this, we must discuss how I take notes digitally.

the philosophy behind my notes

Even the most rigid of ideas are not self-contained. As I study computer science, physics, music, etc. I constantly find overlap in content. To reckon with this, I follow a couple patterns that avoid unnecessary re-learning of concepts and promote and active note-taking system.

I follow a modified zettelkasten system for digital notes. My process can be summarized by a few key points:

  1. Notes contain one idea
  2. All subjects live in the same directory

What this system provides me is a repository of notes that I constantly revisit, tweak, and append to. I don't like wasting time writing notes into the void that I will never revisit. Every single note I write has a purpose, and will always have one.

integrating my note system and my website

Sometimes when you click a link in one of my blogs, it will take you to a url with /zk/<note-name>. These are not blog posts, they are notes that I have taken in my personal note-taking system. This is a little weird, right? My blog posts are not part of my notes, and yet they reference them. Well, the idea is that I can save a lot of time by first accumulating knowledge on a subject, and then directly linking to my notes after doing so. This is much faster then rewriting what I've already written.

There is another hidden benefit this approach. Linking to my notes in my public website means that real people will view them. Therefore, I must ensure that what I write is accurate and well thought out. While writing these initial blog posts, I noticed quite a few notes that jumped to conclusions, contained very sloppy thought processes, or were just plain incomplete. Directly integrating my notes has serious improved the quality of my notes.

the technical parts: how this is done

I made another post that goes into detail about how I did this here: how-i-built-this-website-in-less-than-1000-loc, but here is the basic idea.

I have 2 directories: one that has all my posts, and one that has all my notes. My custom SSG scans both directories, building a list of references in the post directory and a list of posts in my notes directory. Then, after all the posts are generated, it collects that list of references, de-deduplicates it, parses all the notes, and clones them into the correct spot.

Back to the Top