About Me & This Site
Hey y’all, I’m Will Clardy, and this is my personal site. I’m a computer programmer, and I suspect that the majority of the content here will center around the practice of programming.
Contact: will at this
domain
Feel free to reach out! I enjoy interesting conversations, and I’ve found a lot of value and joy in regular, sustained correspondence. I’ll do my best to respond in a timely manner.
Places
| 1988–2012 | I grew up in Williamston, SC—a small town in the Upstate region. My childhood was split between my quiet home on sleepy, tree-lined Stewart St. and the rowdy swelter of my Mema’s country home in neighboring Pelzer, SC. Both environments shaped me, and I’m deeply nostalgic about them. |
| 2012–2017, 2019–2024 |
After our wedding, Talley and I moved to Louisville, KY, for my undergrad work. We lived in the Crescent Hill and St. Matthews neighborhoods. |
| 2017–2019 | We relocated to New England (lived in Glastonbury, CT, and Manchester, CT). Ultimately, it wasn’t for us, but we met some great folks and grew to love Providence, RI. |
| 2024– | After the birth of our son, we relocated to the Asheville, NC, area to raise him closer to family. |
How This Site Is Built
Part of the fun of having this site is hacking on it. If I don’t have the time or energy to contribute writing, yak shaves abound! The result is your classic, inscrutable handmade static site generator with a heavy dose of Unix philosophy. I doubt you’ll be wanting to adopt it, but you may want to consider some of the fine tools that make it possible.
The site generator’s basic (simplified) compilation loop is:
for page in pages; do
shsub "$page" | pandoc --from djot --to html
done
Shsub
If the site has a secret weapon, it’s Dong Yuxuan’s Shsub—think PHP but for shell. Shsub is a criminally obscure tool. It’s a marvel of simple, brutal power. I use it to turn any plaintext format into a template—it’s particularly well-suited to configuration files. You can grok it in five minutes. Check it out!
Djot
I’ve found John MacFarlane’s Djot markup language to be near-perfect as an HTML authoring format. A few improvements over Markdown that I particularly enjoy:
- Smart punctuation for pleasant typography with the typing convenience of ASCII. The conversion heuristics are the best I’ve ever used—it “just works”.
- Symbolic footnote references that convert to reasonable, navigable HTML with automatic numbering. Brilliant.
- Automatic heading links.
Pandoc
Also from John MacFarlane, Pandoc is the Swiss Army knife of document conversion tools. My usage is pedestrian—convert Djot to HTML. It works beautifully.
Oils
Andy Chu’s Oils is my shell language/runtime of choice. All the various components and activities of site generation are composed in a YSH taskfile. It’s good glue—very sticky.
I restrict myself to the POSIX shell-compatible OSH within Shsub templates. Initially, I extended Shsub to support YSH, but wasn’t pleased with the required architectural changes. I’ve found that it’s better to keep it simple—POSIX shell is sharp enough for a template language, and it keeps Shsub focused and lean.