Software engineer into #FOSS, #Rust, #NixOS, and #DevOps. #Discgolf player, #Swedish and #Czech learner, reverse engineer of weird data formats. Building TUIs, decoding APIs, and always chasing clean configs. Software Engineer on the Infrastructure team @Discourse "A kind of tooling and orchestration gremlin" - codex
Software engineer into #FOSS, #Rust, #NixOS, and #DevOps.
#Discgolf player, #Swedish and #Czech learner, reverse engineer of weird data formats. Building TUIs, decoding APIs, and always chasing clean configs.
Software Engineer on the Infrastructure team @Discourse
"A kind of tooling and orchestration gremlin" - codex
Posts
Software engineer into #FOSS, #Rust, #NixOS, and #DevOps. #Discgolf player, #Swedish and #Czech learner, reverse engineer of weird data formats. Building TUIs, decoding APIs, and always chasing clean configs. Software Engineer on the Infrastructure team @Discourse "A kind of tooling and orchestration gremlin" - codex
Plugin screenshots rot fast.
I built a small pipeline for automatically generating screenshots of Discourse
plugins using Playwright, GitHub Actions, and GitHub Pages.
Each plugin owns its own screenshots via a simple screenshots.yml, while a
shared reusable workflow handles the heavy lifting.
Also includes some fun NixOS + Playwright debugging along the way.
https://jakegoldsborough.com/blog/2026/building-discourse-plugin-screenshots/
Software engineer into #FOSS, #Rust, #NixOS, and #DevOps. #Discgolf player, #Swedish and #Czech learner, reverse engineer of weird data formats. Building TUIs, decoding APIs, and always chasing clean configs. Software Engineer on the Infrastructure team @Discourse "A kind of tooling and orchestration gremlin" - codex
Claude Code on NixOS, part 2.
Wrote about why patching dynamically linked binaries is only part of the problem when modern AI tooling ships with its own assumptions about runtime, filesystem layout, and self-management.
https://jakegoldsborough.com/blog/2026/patchelf-broke-claude-code/
Software engineer into #FOSS, #Rust, #NixOS, and #DevOps. #Discgolf player, #Swedish and #Czech learner, reverse engineer of weird data formats. Building TUIs, decoding APIs, and always chasing clean configs. Software Engineer on the Infrastructure team @Discourse "A kind of tooling and orchestration gremlin" - codex
I dug through a year of GoatCounter analytics from my self-hosted blog.
The interesting part wasn't traffic volume, it was the patterns.
Six numbers from a year of technical blogging:
https://jakegoldsborough.com/blog/2026/blog-stats-six-numbers/
Software engineer into #FOSS, #Rust, #NixOS, and #DevOps. #Discgolf player, #Swedish and #Czech learner, reverse engineer of weird data formats. Building TUIs, decoding APIs, and always chasing clean configs. Software Engineer on the Infrastructure team @Discourse "A kind of tooling and orchestration gremlin" - codex
I added a tiny "Was this helpful?" button to my Zola based static blog.
No backend, auth, comments or frameworks.
Just a GoatCounter event, localStorage dedupe, and ~70 lines total.
Small feature, but it gives a much better signal than raw pageviews.
https://jakegoldsborough.com/blog/2026/was-this-helpful-button/
Software engineer into #FOSS, #Rust, #NixOS, and #DevOps. #Discgolf player, #Swedish and #Czech learner, reverse engineer of weird data formats. Building TUIs, decoding APIs, and always chasing clean configs. Software Engineer on the Infrastructure team @Discourse "A kind of tooling and orchestration gremlin" - codex
Claude Code moved from npm → curl installer.
On most systems: fine
On NixOS: dynamic linker says no
Dug into why dynamically linked binaries break on NixOS and wrapped it in a nix-shell.
https://jakegoldsborough.com/blog/2026/running-claude-code-on-nixos/
Software engineer into #FOSS, #Rust, #NixOS, and #DevOps. #Discgolf player, #Swedish and #Czech learner, reverse engineer of weird data formats. Building TUIs, decoding APIs, and always chasing clean configs. Software Engineer on the Infrastructure team @Discourse "A kind of tooling and orchestration gremlin" - codex
I wanted a tui based audiobook player so I built one.
no apps, no DRM, just files and a TUI.
turns out audiobooks fit surprisingly well in the terminal.
https://jakegoldsborough.com/blog/2026/shellbooks-terminal-audiobook-player/
Software engineer into #FOSS, #Rust, #NixOS, and #DevOps. #Discgolf player, #Swedish and #Czech learner, reverse engineer of weird data formats. Building TUIs, decoding APIs, and always chasing clean configs. Software Engineer on the Infrastructure team @Discourse "A kind of tooling and orchestration gremlin" - codex
if it looks too good to be true, it probably is
but now you can check
built a tool for verifying real estate listings:
https://jakegoldsborough.com/blog/2026/launching-isitreal-estate/
Software engineer into #FOSS, #Rust, #NixOS, and #DevOps. #Discgolf player, #Swedish and #Czech learner, reverse engineer of weird data formats. Building TUIs, decoding APIs, and always chasing clean configs. Software Engineer on the Infrastructure team @Discourse "A kind of tooling and orchestration gremlin" - codex
Software engineer into #FOSS, #Rust, #NixOS, and #DevOps. #Discgolf player, #Swedish and #Czech learner, reverse engineer of weird data formats. Building TUIs, decoding APIs, and always chasing clean configs. Software Engineer on the Infrastructure team @Discourse "A kind of tooling and orchestration gremlin" - codex
Software engineer into #FOSS, #Rust, #NixOS, and #DevOps. #Discgolf player, #Swedish and #Czech learner, reverse engineer of weird data formats. Building TUIs, decoding APIs, and always chasing clean configs. Software Engineer on the Infrastructure team @Discourse "A kind of tooling and orchestration gremlin" - codex
Software engineer into #FOSS, #Rust, #NixOS, and #DevOps. #Discgolf player, #Swedish and #Czech learner, reverse engineer of weird data formats. Building TUIs, decoding APIs, and always chasing clean configs. Software Engineer on the Infrastructure team @Discourse "A kind of tooling and orchestration gremlin" - codex
Software engineer into #FOSS, #Rust, #NixOS, and #DevOps. #Discgolf player, #Swedish and #Czech learner, reverse engineer of weird data formats. Building TUIs, decoding APIs, and always chasing clean configs. Software Engineer on the Infrastructure team @Discourse "A kind of tooling and orchestration gremlin" - codex
Software engineer into #FOSS, #Rust, #NixOS, and #DevOps. #Discgolf player, #Swedish and #Czech learner, reverse engineer of weird data formats. Building TUIs, decoding APIs, and always chasing clean configs. Software Engineer on the Infrastructure team @Discourse "A kind of tooling and orchestration gremlin" - codex
I didn’t expect this, but my blog started getting traffic across multiple completely different posts in the same day.
Search engines, AI tools, something is picking it up.
Not huge. Not viral. But real.
Turns out it’s less about one post, and more about becoming a surface area.
https://jakegoldsborough.com/blog/2026/how-my-blog-started-getting-indexed/
Software engineer into #FOSS, #Rust, #NixOS, and #DevOps. #Discgolf player, #Swedish and #Czech learner, reverse engineer of weird data formats. Building TUIs, decoding APIs, and always chasing clean configs. Software Engineer on the Infrastructure team @Discourse "A kind of tooling and orchestration gremlin" - codex
Software engineer into #FOSS, #Rust, #NixOS, and #DevOps. #Discgolf player, #Swedish and #Czech learner, reverse engineer of weird data formats. Building TUIs, decoding APIs, and always chasing clean configs. Software Engineer on the Infrastructure team @Discourse "A kind of tooling and orchestration gremlin" - codex
Built a self-hosted scrobbling service in Rust.
API + Postgres backend, sqlx offline mode, static UI, and public profiles that can be toggled private.
Writeup:
https://jakegoldsborough.com/blog/2026/building-scrob-self-hosted-scrobbling/