Writing
Articles are long and considered; the blog is shorter and quicker; the journal is fragments as they come.
Featured
Article ·
Prototyping a friendlier frontend for determinate computing
Making determinate computing friendly by building a modular frontend for Nix, Guix, and future reproducible systems.
Article ·
Lyceum: A New Ancient Greek Digital Library For A Post-LLM World
Building an AI-powered pipeline to generate the largest, richest corpus of Ancient Greek texts with interlinear translations, morphology, and treebank data from a single prompt.
Article ·
Fear to Attempt
Our doubts are traitors and make us lose the good we oft might win by fearing to attempt
Article ·
Payjoin for a Better Bitcoin Future
Payjoin is a protocol that uses a simple, clever trick in the way Bitcoin creates transactions to solve many of its problems at once.
Article ·
Micropayments and the Lightning Network
Content monetization on the internet is broken. Credit card fees prohibit the ability to make small payments for individual pieces of content. Creators have to choose between invading user privacy by selling their data,…
Articles · Blog · Journal · Quotes · Tags
2026
- Kai Devlog #7: Triumph of RocBlog
Apologies in advance for the brief post. More details to come soon.
- Kai Devlog #6: κατακλυσμός!Blog
Refactoring Kai's plugin schema while adding better errors, system management, deployment, ISO creation, SOPS secrets, and backend escape hatches.
- Kai Devlog #5: Conceptual Integrity and Being a Better ProgrammerBlog
Building Kai for the long term through conceptual integrity, better tools, deliberate practice, and dogfooding.
- Kai Devlog #4: Environment, Task, Build, WorkflowBlog
Expanding Kai with reusable environments, runnable tasks, composable workflows, portable builds, and overlays.
- Kai Devlog #3: Custom DSL & Plugin ModulesBlog
Replacing Kai's embedded Roc config with a custom DSL and making plugin modules simpler, reusable, and validated.
- Kai Devlog #2: ModularityBlog
Building Kai around replaceable commands, extensible plugins, and custom determinate backends.
- Kai Devlog #1: BoundariesBlog
Finding the right boundary between Kai's simple configuration and Nix's power.
- Packaging Roc Nightlies with a Nix Flake and OverlayBlog
Packaging official Roc nightly compiler binaries reproducibly with a Nix flake and overlay.
- Prototyping a friendlier frontend for determinate computingArticle
Making determinate computing friendly by building a modular frontend for Nix, Guix, and future reproducible systems.
- Lyceum: A New Ancient Greek Digital Library For A Post-LLM WorldArticle
Building an AI-powered pipeline to generate the largest, richest corpus of Ancient Greek texts with interlinear translations, morphology, and treebank data from a single prompt.
- Introducing Lyceum: A Modern Interface for Reading Ancient Greek TextsArticle
Lyceum is a modern interface for reading Ancient Greek works in their original language, with interlinear translations, morphology, and spaced-repetition vocabulary learning.
2025
- Fear to AttemptArticle
Our doubts are traitors and make us lose the good we oft might win by fearing to attempt
- <bitcoin-qr/> - A Zero-Dependency Web Component for Stylish BIP-21 PaymentsBlog
A QR code web component for Bitcoin on-chain, Lightning, and unified BIP-21 payments
- Automating Site Deployment for an `nb` -> Github -> VPS SetupBlog
As mentioned in the blog post on syncing my nb notebook across devices using Syncthing, I wanted a way to auto-publish to my site after finishing a piece of writing. What I ended up coming up with was…
- Hard Reset Asahi Linux After Boot Error and Data BackupBlog
dnf update may cause a boot into a black screen. Here's how you can reset your computer.
- File Synchronization For All Your Devices with SyncthingBlog
How to synchronize files across many devices automagically
2023
- Payjoin for a Better Bitcoin FutureArticle
Payjoin is a protocol that uses a simple, clever trick in the way Bitcoin creates transactions to solve many of its problems at once.
- Reading, Writing, and CivilizationBlog
Gibbon on the importance of reading and writing to civilization, and what distinguished the Romans from the 'barbarians', i.e. the Germans
- The First MonotheistBlog
Zoroaster founded the world's first monotheistic religion, thereby opening a new chapter in world history.
- Micropayments and the Lightning NetworkArticle
Content monetization on the internet is broken. Credit card fees prohibit the ability to make small payments for individual pieces of content. Creators have to choose between invading user privacy by selling their data, annoying them with a barrage of ads, or putting up paywalls and forcing them to sign up for subscriptions to continue. The Lightning Network offers a new, alternative monetization strategy in the form of micropayments.