This page tracks the functional and interface changes I make to the site. Future changes are on the roadmap.
The updated date, a word count, and estimated reading time were added to note metadata. A disclose-able contents was added for narrow-width screens.
The print output of note pages was dramatically improved, with proper margins and footnotes.
Math support using KaTeX was added for select notes on Motion planning, despite its heavy cost in page sizes.
Added fragment separator support for note link references, like
[woodworking books][Books I want to read#woodworking].
The email link at the bottom of each note added a subject line containing the note’s name.
For wide viewports, the table of contents next to each note was moved further right and fixed in position. This makes it accessible at any scroll position and provides more room for sidenotes at the start of pages like on The 2021 Kona Rove DL bicycle note.
Entries were added to the site again so that visitors can keep up with changes and I can record ephemeral thoughts.
Notes can have optional front-matter to fix their date and add epistemic status and effort metadata, shown in the margin or inline with the note depending on the viewport width. The styling was reworked to allow code blocks to span the full width of the page.
Footnotes were changed to sidenotes for wide windows and toggle-able inline notes when narrow. The glyphs next to outbound or download links became a superscript. Internally, asynchronous note generation cut site rebuild times in half by hiding I/O latency and using additional CPUs.
The footer switched from being centered to left-aligned.
The number of recently-updated notes went back down to 10 and a paragraph explaining interesting notes was added to the main index.
The book updates have moved out of the home page and I increased the number of note updates from 10 to 30.
I removed the
index.html portion of links resolving to note pages, so the URL is a bit cleaner in browsers.
I made it easier to link to notes from any page by using the name of the note, instead of a URL.
Also, note URLs are became a directory with an
index.html, making it easier for per-note assets to be included.
Outbound links got a north east arrow suffix to indicate when a user would be leaving the site.
The home page has a list of recently-changed elements on the site, like books and notes. I removed the granular now updates in lieu of a more traditional, infrequently-updated page.
To make it easier to navigate long notes, I added a table of contents in the margin, with inter-page links to headings.
I added support for now entries to be treated like articles, with a file-per-update, as opposed to manually moving them to then whenever a new one is added. This also means that they get their own Atom feed and makes it easier to add other entry types, like book or media essays.
Markdown documents can now contain footnotes. 1 Which needed a few hacks in the Markdown parser.
I re-worked how articles are added to the site, going back to a one-Markdown-file-per-article approach, to make it easier to write longer articles.
The roadmap, changelog, and colophon were added.
The now page was restructured and expanded to better fit the vision described at nownownow’s about page.
The Rust source code that generates the site was re-structured as a library with a model-view-controller architecture. This made it easier to add incremental rebuilds to the site, only copying files and parsing Markdown if the built products are older than their sources.
Articles can be directories that contain a Markdown file and other assets, allowing images can be referenced using only their file name.
SVG and plain text files are copied directly into the resulting HTML, instead of being referenced by an
I re-wrote the site as a Rust program and redesigned it so the page content is left-aligned and doesn’t have a contrasting header. The Rust version added support for a basic linking between notes, inspired by Andy Matuschak’s working notes.
Sidenotes, bibliographies, and YAML were removed to keep things simple, and articles (or log entries) are meant to be shorter by forcing them all into a single file for the same month.
The first iteration of this site was generated from a Lua program that I spent several months building, making extensive use of the excellent lunamark Markdown library. It had a single-column, centered layout with a contrasting header that spanned the entire width of the page. Articles were the only content supported on the site, but they could contain sidenotes that turned into footnotes at small viewport widths and citation lists. I never ended up using it, aside from pushing it to a staging server.
The next incarnation of the site used the Metalsmith static site generator, but I never published it.
I started off by using Jekyll for a simple one-page website to serve my resume.