Update for the week ending on Friday, Jul 17, 2026
mtlynch.io
- Published June 2026 retro
- Dropped all twitter embeds
- Twitter is now blocking requests from CI, and I don’t want to bother with them anymore
- Upgraded to Hugo 0.163.3
- I did this hoping the Twitter thing was just relying on deprecated URLs, but Twitter was indeed blocking the build
- Resurrected my Oracle Cloud VM instructions
- I thought they were obsolete, but a reader pointed out that they still worked through an interface I couldn’t find before.
- Tried switching from htmlproofer to lychee
- Still lots of failures, trying to integrate Common Crawl
Refactoring English
- Worked on a new blog post called “Why I Stopped ‘Creating Content’”
- Made a few small improvements based on reader feedback
- Added a manual discount for Taiwan
- A reader emailed to say that PPP didn’t accurately match book pricing in Taiwan, where ebooks are typically more like $10 than $30
- Improved formatting of my “new customer” alert emails to make it easier to copy/paste the customer name+email into a manually-written welcome email
- Update layout for article cards to be wider on desktop
Feedback app
- Added a user list visible to admin
- Disabled feedback on the Table of Contents page
- Make it easier to review reader feedback
- Tweaked UI for thread replies
- Refactored the admin threads and reader threads views to share more code
- Fixed a spacing bug when the reader comments on code snippets
- Added handling for comments entirely on hyperlinks
- Clicking the comment highlight would also activate the link, so I added a little button after the text that shows the comment but doens’t click the link
Little Moments
Little Moments is an open-source web app I’m working on to replace the current family photo sharing app (TinyBeans) I used (which I strongly dislike).
- Added a NixCI badge
- Added support for video video uploads
- Starting with a half-working implementation
- Re-do semantics so the code uses the term “images” and the UI uses “photos”
- Added a unit test for unsupported image uploads
- Upgraded Bootstrap to 5.3.8
- Switched media variant widths to use uint32 instead of
int - Switch convert package to be in terms of
iostreams instead of ever exposing file paths - Simplified the semantics for creating thumbnails
- Make sure relative media paths can’t contain absolute paths
- And checked for other tricky path characters in other path types
- Removed the
imagepipepackage, as it was a pointless layer of abstraction
go-app-starter
- Backported a bunch of improvements from Little Moments and Refactoring English Feedback
- Add JavaScript test runner
- Add NixCI cache build scripts
- Cache SQL lint builds by SQL inputs
- Deploy Nix-built images to Fly from NixCI
- Disable static asset caching in dev builds
- Exec docker entrypoint foreground processes
- Export Litestream path when downloading prod DB
- Lint tracked JavaScript files
- Remove Docker helper workflow
- Resolve Go lint tools from GOBIN
- Serve explicit HTTP handler
- Stamp Nix-built Go binaries with VCS metadata
- Upgrade Bootstrap to 5.3.8
- Use contextual HTTP error messages
- Use generic About page heading
- Watch JavaScript changes in Air
aw-web-ng
- Added a basic web frontend
mikeville
- I started messing around with vibe coding a simple Stardew Valley-esque multiplayer game.
- The single-player version worked fine, but everything started falling apart when I added multiplayer.
- I initially tried implementing multiplayer with Phoenix/Elixir, but it was super buggy, and I couldn’t read the code to figure out why
- I tried a re-do with Go, but it was also buggy and it was too much code to understand
Misc
- Joined The TMPDIR podcast as a guest to talk about writing
- Emailed an old co-worker
- Worked with NixCI to find a solution to using NixCI as a binary cache
- This way, the AI agent can run the nix build before handing control back to me, and the result automatically gets pushed to NixCI so I don’t have to re-do the same tests in CI that I already did locally in Nix.
- Retired the website for AllYourTexts
- It’s a Windows app I created 15 years ago and haven’t updated in about 12 years