Why a Read-Only Blog?
Josh · February 11, 2026
A surprising amount of complexity in a web app comes from letting people change things.
When the only verb is GET, a lot of problems simply disappear:
- No input validation to get wrong
- No auth required to protect writes
- Nothing to rate-limit against spam
- Trivially cacheable responses
The content here is published the old-fashioned way — through a migration and a seed file checked into source control.