41554 blogs · [ { "id": "01a0950c-43cb-70d6-8808-8c9d8ba72917", "title": "Agent assisted Changelog - 36/52", "url": "https://jakegoldsborough.com/blog/2026/weekly-summary-36/", "published_at": "2026-09-11T00:00:00+00:00" }, { "id": "01a08789-f5c1-7351-943b-3372d084e855", "title": "Agent assisted Changelog - 35/52", "url": "https://jakegoldsborough.com/blog/2026/weekly-summary-35/", "published_at": "2026-09-04T00:00:00+00:00" }, { "id": "01a08789-f5c1-7351-943b-3372d08cdcb8", "title": "I Let an Agent Design a Portfolio Page", "url": "https://jakegoldsborough.com/blog/2026/letting-an-agent-design-a-portfolio-page/", "published_at": "2026-08-31T00:00:00+00:00" }, { "id": "01a08789-f5c1-7351-943b-3372d12358e0", "title": "gym-jams: Turn an Album Into a Workout", "url": "https://jakegoldsborough.com/blog/2026/gym-jams-turn-an-album-into-a-workout/", "published_at": "2026-08-25T00:00:00+00:00" }, { "id": "01a08789-f5c1-7351-943b-3372d2175def", "title": "The Agents Have Eyes Now", "url": "https://jakegoldsborough.com/blog/2026/the-agents-have-eyes-now/", "published_at": "2026-08-22T00:00:00+00:00" }, { "id": "01a08789-f5c1-7351-943b-3372d273a555", "title": "Agent assisted Changelog - 34/52", "url": "https://jakegoldsborough.com/blog/2026/weekly-summary-34/", "published_at": "2026-08-21T00:00:00+00:00" }, { "id": "01a08789-f5c1-7351-943b-3372d2f62b14", "title": "I Got Tired of gh Failing, So I Built Tongs", "url": "https://jakegoldsborough.com/blog/2026/tongs-github-cli-built-for-agents/", "published_at": "2026-08-20T00:00:00+00:00" }, { "id": "01a08789-f5c1-7351-943b-3372d394c068", "title": "The Battleground Has a Map Now", "url": "https://jakegoldsborough.com/blog/2026/the-battleground-has-a-map-now/", "published_at": "2026-08-15T00:00:00+00:00" }, { "id": "01a08789-f5c1-7351-943b-3372d3d88e55", "title": "Agent assisted Changelog - 33/52", "url": "https://jakegoldsborough.com/blog/2026/weekly-summary-33/", "published_at": "2026-08-14T00:00:00+00:00" }, { "id": "01a08789-f5c1-7351-943b-3372d420b6e5", "title": "Agents of Empires: Not a Leaderboard, a Battleground", "url": "https://jakegoldsborough.com/blog/2026/agents-of-empires-not-a-leaderboard-a-battleground/", "published_at": "2026-08-13T00:00:00+00:00" }, { "id": "01a08789-f5c1-7351-943b-3372d49a2fac", "title": "What $25 of AI Inference Bought Me", "url": "https://jakegoldsborough.com/blog/2026/what-25-of-ai-inference-bought-me/", "published_at": "2026-08-10T00:00:00+00:00" }, { "id": "01a08789-f5c1-7351-943b-3372d4c5d4e9", "title": "Infrastructure Agents, Priced Per Repair", "url": "https://jakegoldsborough.com/blog/2026/infrastructure-agents-priced-per-repair/", "published_at": "2026-08-08T00:00:00+00:00" }, { "id": "01a08789-f5c1-7351-943b-3372d50866de", "title": "Evaluating Infrastructure Agents in Running Systems", "url": "https://jakegoldsborough.com/blog/2026/evaluating-infrastructure-agents-in-running-systems/", "published_at": "2026-08-02T00:00:00+00:00" }, { "id": "01a08789-f5c1-7351-943b-3372d5e9806a", "title": "lemma: A Compiler That Doesn't Know Any Languages", "url": "https://jakegoldsborough.com/blog/2026/lemma-a-language-course-compiler/", "published_at": "2026-08-02T00:00:00+00:00" }, { "id": "01a08789-f5c1-7351-943b-3372d688fce3", "title": "Rewriting Claude Code in Rust, Part 4: From Clone to Harness", "url": "https://jakegoldsborough.com/blog/2026/rewriting-claude-code-in-rust-part-4/", "published_at": "2026-08-01T00:00:00+00:00" }, { "id": "01a08789-f5c1-7351-943b-3372d6b7a198", "title": "Schrödinger's Life: A Website That Dies When Nobody Is Looking", "url": "https://jakegoldsborough.com/blog/2026/schrodingers-life-website-dies-when-nobody-is-looking/", "published_at": "2026-07-31T00:00:00+00:00" }, { "id": "01a08789-f5c1-7351-943b-3372d7a4918d", "title": "googlyeyes.dev: I Built a Website That Looks Back", "url": "https://jakegoldsborough.com/blog/2026/building-googlyeyes-dev/", "published_at": "2026-07-30T00:00:00+00:00" }, { "id": "01a08789-f5c1-7351-943b-3372d7a4e4ae", "title": "Claude assisted Changelog - 30/52", "url": "https://jakegoldsborough.com/blog/2026/weekly-summary-30/", "published_at": "2026-07-25T00:00:00+00:00" }, { "id": "01a08789-f5c1-7351-943b-3372d83ab885", "title": "glow, part two: the whole desk lights up now (and it works across three agents)", "url": "https://jakegoldsborough.com/blog/2026/glow-whole-desk-framework-udev/", "published_at": "2026-07-24T00:00:00+00:00" }, { "id": "01a08789-f5c1-7351-943b-3372d852702c", "title": "glow: I gave Claude a physical presence on my desk", "url": "https://jakegoldsborough.com/blog/2026/glow-the-big-button-that-glows-with-claude/", "published_at": "2026-07-20T00:00:00+00:00" }, { "id": "01a08789-f5c1-7351-943b-3372d9458710", "title": "raft: A Graph Over the Plain-Text Log", "url": "https://jakegoldsborough.com/blog/2026/raft-a-graph-over-the-plain-text-log/", "published_at": "2026-07-19T00:00:00+00:00" }, { "id": "01a08789-f5c1-7351-943b-3372d9d75eb8", "title": "Claude assisted Changelog - 29/52", "url": "https://jakegoldsborough.com/blog/2026/weekly-summary-29/", "published_at": "2026-07-18T00:00:00+00:00" }, { "id": "01a08789-f5c1-7351-943b-3372da69fae5", "title": "petri: Conway's Game of AI Life, Living Inside n8n", "url": "https://jakegoldsborough.com/blog/2026/petri-conways-game-of-ai-life-in-n8n/", "published_at": "2026-07-17T00:00:00+00:00" }, { "id": "01a08789-f5c1-7351-943b-3372db5ac5f3", "title": "replaybook: Incident Replay Trainer for Infrastructure", "url": "https://jakegoldsborough.com/blog/2026/replaybook-incident-replay-trainer/", "published_at": "2026-06-30T00:00:00+00:00" }, { "id": "01a08789-f5c1-7351-943b-3372db8dcfd8", "title": "Software Doesn't Have to Justify Itself, or the Joy of Useless Programming", "url": "https://jakegoldsborough.com/blog/2026/software-doesnt-have-to-justify-itself/", "published_at": "2026-06-29T00:00:00+00:00" }, { "id": "01a08789-f5c1-7351-943b-3372dc7019a1", "title": "discourse-manager: A Community Management Sim Inside Discourse", "url": "https://jakegoldsborough.com/blog/2026/discourse-manager-community-sim/", "published_at": "2026-06-28T00:00:00+00:00" }, { "id": "01a08789-f5c1-7351-943b-3372dd236689", "title": "jolteon: An LLM Routing Proxy for Discourse", "url": "https://jakegoldsborough.com/blog/2026/jolteon-llm-routing-proxy/", "published_at": "2026-06-27T00:00:00+00:00" }, { "id": "01a08789-f5c1-7351-943b-3372dd5c5e90", "title": "mini_racer on NixOS: Three Things That Were Wrong", "url": "https://jakegoldsborough.com/blog/2026/mini-racer-nixos-bundle-gemfile/", "published_at": "2026-06-25T00:00:00+00:00" }, { "id": "01a08789-f5c1-7351-943b-3372ddf65d3a", "title": "Yapper, or: just ask the bots", "url": "https://jakegoldsborough.com/blog/2026/yapper-or-just-ask-the-bots/", "published_at": "2026-06-10T00:00:00+00:00" }, { "id": "01a08789-f5c1-7351-943b-3372deb6ce40", "title": "Six records, two bugs, one refactor: a day with ARF", "url": "https://jakegoldsborough.com/blog/2026/six-records-two-bugs-one-refactor-a-day-with-arf/", "published_at": "2026-06-07T00:00:00+00:00" }, { "id": "01a08789-f5c1-7351-943b-3372df4b0cbb", "title": "Claude assisted Changelog - 23/52", "url": "https://jakegoldsborough.com/blog/2026/weekly-summary-23/", "published_at": "2026-06-05T00:00:00+00:00" }, { "id": "01a08789-f5c1-7351-943b-3372df6688fd", "title": "A tiny name.com CLI, and what nushell saves you", "url": "https://jakegoldsborough.com/blog/2026/namecom-cli-in-nushell/", "published_at": "2026-06-03T00:00:00+00:00" }, { "id": "01a08789-f5c1-7351-943b-3372dfbe2ba9", "title": "Auditing a Squarespace 7.0 site before migrating to 7.1", "url": "https://jakegoldsborough.com/blog/2026/auditing-a-squarespace-site-before-migrating/", "published_at": "2026-05-30T00:00:00+00:00" }, { "id": "01a08789-f5c1-7351-943b-3372dfc099ab", "title": "Building a Travel Itinerary Plugin Inside Discourse", "url": "https://jakegoldsborough.com/blog/2026/building-discourse-itinerary/", "published_at": "2026-05-25T00:00:00+00:00" }, { "id": "01a08789-f5c1-7351-943b-3372dff01a5e", "title": "Building a Screenshot Pipeline for Discourse Plugins", "url": "https://jakegoldsborough.com/blog/2026/building-discourse-plugin-screenshots/", "published_at": "2026-05-25T00:00:00+00:00" }, { "id": "01a08789-f5c1-7351-943b-3372e083e1fa", "title": "When patchelf stopped working on Claude Code", "url": "https://jakegoldsborough.com/blog/2026/patchelf-broke-claude-code/", "published_at": "2026-05-20T00:00:00+00:00" }, { "id": "01a08789-f5c1-7351-943b-3372e1082f68", "title": "Six numbers from my blog's analytics", "url": "https://jakegoldsborough.com/blog/2026/blog-stats-six-numbers/", "published_at": "2026-05-17T00:00:00+00:00" }, { "id": "01a08789-f5c1-7351-943b-3372e15464f4", "title": "A 'Was this helpful?' button for a static blog", "url": "https://jakegoldsborough.com/blog/2026/was-this-helpful-button/", "published_at": "2026-05-16T00:00:00+00:00" }, { "id": "01a08789-f5c1-7351-943b-3372e1d44bd8", "title": "Running Claude Code on NixOS", "url": "https://jakegoldsborough.com/blog/2026/running-claude-code-on-nixos/", "published_at": "2026-05-07T00:00:00+00:00" }, { "id": "01a08789-f5c1-7351-943b-3372e2170e74", "title": "shellbooks: A Terminal Audiobook Player", "url": "https://jakegoldsborough.com/blog/2026/shellbooks-terminal-audiobook-player/", "published_at": "2026-05-04T00:00:00+00:00" }, { "id": "01a08789-f5c1-7351-943b-3372e231133f", "title": "isitreal.estate: Crowd-Sourced Reviews for Real Estate Listings", "url": "https://jakegoldsborough.com/blog/2026/launching-isitreal-estate/", "published_at": "2026-04-18T00:00:00+00:00" }, { "id": "01a08789-f5c1-7351-943b-3372e277f1b3", "title": "How my blog started getting indexed", "url": "https://jakegoldsborough.com/blog/2026/how-my-blog-started-getting-indexed/", "published_at": "2026-04-09T00:00:00+00:00" }, { "id": "01a08789-f5c1-7351-943b-3372e2814ecc", "title": "Jobchain: Verifiable Employment Credentials", "url": "https://jakegoldsborough.com/blog/2026/jobchain-verifiable-employment-credentials/", "published_at": "2026-04-06T00:00:00+00:00" }, { "id": "01a08789-f5c1-7351-943b-3372e3721f2d", "title": "Inside Claude Code's Team Memory Sync Engine", "url": "https://jakegoldsborough.com/blog/2026/inside-claude-codes-team-memory-sync/", "published_at": "2026-04-05T00:00:00+00:00" }, { "id": "01a08789-f5c1-7351-943b-3372e4271cde", "title": "Rewriting Claude Code in Rust, Part 3: TUI, Agents, and Multi-Provider", "url": "https://jakegoldsborough.com/blog/2026/rewriting-claude-code-in-rust-part-3/", "published_at": "2026-04-04T00:00:00+00:00" }, { "id": "01a08789-f5c1-7351-943b-3372e4cfc21b", "title": "Anthropic Shipped a Gacha Pet Inside Claude Code", "url": "https://jakegoldsborough.com/blog/2026/anthropic-shipped-a-gacha-pet-inside-claude-code/", "published_at": "2026-04-03T00:00:00+00:00" }, { "id": "01a08789-f5c1-7351-943b-3372e5c32b62", "title": "Rewriting Claude Code in Rust, Part 2: Sessions, Commands, and Permissions", "url": "https://jakegoldsborough.com/blog/2026/rewriting-claude-code-in-rust-part-2/", "published_at": "2026-04-02T00:00:00+00:00" }, { "id": "01a08789-f5c1-7351-943b-3372e62173c1", "title": "Rewriting Claude Code in Rust, With Claude", "url": "https://jakegoldsborough.com/blog/2026/rewriting-claude-code-in-rust-with-claude/", "published_at": "2026-04-01T00:00:00+00:00" }, { "id": "01a08789-f5c1-7351-943b-3372e712f6e4", "title": "whoami: making identity a spec", "url": "https://jakegoldsborough.com/blog/2026/whoami-spec-declarative-identity/", "published_at": "2026-03-31T00:00:00+00:00" }, { "id": "01a08789-f5c1-7351-943b-3372e7f805ee", "title": "skillz: A Package Manager for Claude Code Skills", "url": "https://jakegoldsborough.com/blog/2026/skillz-package-manager-for-claude-skills/", "published_at": "2026-03-30T00:00:00+00:00" }, { "id": "01a08789-f5c1-7351-943b-3372e86a69e6", "title": "When Your Coffee Roaster Builds the First Version", "url": "https://jakegoldsborough.com/blog/2026/when-your-coffee-roaster-builds-the-first-version/", "published_at": "2026-03-16T00:00:00+00:00" }, { "id": "01a08789-f5c1-7351-943b-3372e91aa172", "title": "Rewriting discourse-comments in TypeScript: Dropping WASM for a 97% Smaller Bundle", "url": "https://jakegoldsborough.com/blog/2026/rewriting-discourse-comments-in-typescript/", "published_at": "2026-02-27T00:00:00+00:00" }, { "id": "01a08789-f5c1-7351-943b-3372e923681b", "title": "AI Problems Are Just Human Problems Amplified", "url": "https://jakegoldsborough.com/blog/2026/ai-problems-are-human-problems/", "published_at": "2026-02-23T00:00:00+00:00" }, { "id": "01a08789-f5c1-7351-943b-3372e9389514", "title": "llm-mux: Why I Rebuilt Lok", "url": "https://jakegoldsborough.com/blog/2026/llm-mux-workflow-orchestration/", "published_at": "2026-02-11T00:00:00+00:00" }, { "id": "01a08789-f5c1-7351-943b-3372e9b9e88f", "title": "finna: Multi-Model Debate, Spec, and Implement", "url": "https://jakegoldsborough.com/blog/2026/finna-multi-model-spec-implement/", "published_at": "2026-02-10T00:00:00+00:00" }, { "id": "01a08789-f5c1-7351-943b-3372ea89dbb3", "title": "Building a JSON Parser with Multi-LLM Orchestration (Part 1)", "url": "https://jakegoldsborough.com/blog/2026/lok-json-parser-multi-llm/", "published_at": "2026-02-07T00:00:00+00:00" }, { "id": "01a08789-f5c1-7351-943b-3372eb58cc4b", "title": "Lok Part 5: Multi-Agent Planning with lok spec", "url": "https://jakegoldsborough.com/blog/2026/lok-spec-multi-agent-planning/", "published_at": "2026-02-06T00:00:00+00:00" }, { "id": "01a08789-f5c1-7351-943b-3372ec4dec40", "title": "cfgs.dev: A Directory for Developer Setups", "url": "https://jakegoldsborough.com/blog/2026/cfgs-dev-a-directory-for-developer-setups/", "published_at": "2026-02-03T00:00:00+00:00" }, { "id": "01a08789-f5c1-7351-943b-3372ed3346c2", "title": "ARF: Structured Reasoning for AI Agents", "url": "https://jakegoldsborough.com/blog/2026/arf-structured-reasoning-for-ai-agents/", "published_at": "2026-02-02T00:00:00+00:00" }, { "id": "01a08789-f5c1-7351-943b-3372edb82f33", "title": "I Built a Robot to Help Me Understand People", "url": "https://jakegoldsborough.com/blog/2026/building-a-robot-to-understand-humans/", "published_at": "2026-01-31T00:00:00+00:00" }, { "id": "01a08789-f5c1-7351-943b-3372ee5ad2db", "title": "Lok Part 4: The Self-Healing Loop", "url": "https://jakegoldsborough.com/blog/2026/lok-the-self-healing-loop/", "published_at": "2026-01-28T00:00:00+00:00" }, { "id": "01a08789-f5c1-7351-943b-3372ee72725f", "title": "Lok Part 3: Dogfooding and Code Review", "url": "https://jakegoldsborough.com/blog/2026/lok-dogfooding-and-code-review/", "published_at": "2026-01-27T00:00:00+00:00" }, { "id": "01a08789-f5c1-7351-943b-3372ee77aa4c", "title": "Lok Part 2: Workflows and Local LLMs", "url": "https://jakegoldsborough.com/blog/2026/lok-workflows-and-local-llms/", "published_at": "2026-01-25T00:00:00+00:00" }, { "id": "01a08789-f5c1-7351-943b-3372eee617f0", "title": "I Don't Type Every Word You Read", "url": "https://jakegoldsborough.com/blog/2026/no-i-dont-type-every-word-you-read/", "published_at": "2026-01-25T00:00:00+00:00" }, { "id": "01a08789-f5c1-7351-943b-3372ef25d80d", "title": "Introducing Lok: A Local Multi-LLM Orchestration Control Plane", "url": "https://jakegoldsborough.com/blog/2026/introducing-lok-multi-llm-orchestration/", "published_at": "2026-01-24T00:00:00+00:00" }, { "id": "01a08789-f5c1-7351-943b-3372ef7f8505", "title": "How Jennifer Aniston and Friends Cost Us 377GB and Broke ext4 Hardlinks", "url": "https://jakegoldsborough.com/blog/2026/how-a-friends-gif-broke-our-filesystem/", "published_at": "2026-01-23T00:00:00+00:00" }, { "id": "01a08789-f5c1-7351-943b-3372ef847e53", "title": "The Unholy Trinity: Nix Shells, SSH Config, and Claude Code", "url": "https://jakegoldsborough.com/blog/2026/nix-shells-ssh-claude-code/", "published_at": "2026-01-21T00:00:00+00:00" }, { "id": "01a08789-f5c1-7351-943b-3372f011246b", "title": "Letting AI Pick the Project", "url": "https://jakegoldsborough.com/blog/2026/letting-ai-pick-the-project/", "published_at": "2026-01-19T00:00:00+00:00" }, { "id": "01a08789-f5c1-7351-943b-3372f0651495", "title": "From Bash Scripts to NixOS: Real Declarative Infrastructure on a VPS", "url": "https://jakegoldsborough.com/blog/2026/real-declarative-infrastructure-nixos/", "published_at": "2026-01-18T00:00:00+00:00" }, { "id": "01a08789-f5c1-7351-943b-3372f1254520", "title": "Building Embedded Discourse Comments with Rust and WASM", "url": "https://jakegoldsborough.com/blog/2026/building-discourse-embedded-comments/", "published_at": "2026-01-14T00:00:00+00:00" }, { "id": "01a08789-f5c1-7351-943b-3372f13e0874", "title": "Running VPS Infrastructure with Systemd", "url": "https://jakegoldsborough.com/blog/2026/running-infrastructure-with-systemd/", "published_at": "2026-01-10T00:00:00+00:00" }, { "id": "01a08789-f5c1-7351-943b-3372f2397abf", "title": "Building Scrob: A Self-Hosted Music Scrobbling Server", "url": "https://jakegoldsborough.com/blog/2026/building-scrob-self-hosted-scrobbling/", "published_at": "2026-01-02T00:00:00+00:00" }, { "id": "01a08789-f5c1-7351-943b-3372f27e282c", "title": "2025 - A Review", "url": "https://jakegoldsborough.com/blog/2025/yearly-summary/", "published_at": "2025-12-31T00:00:00+00:00" }, { "id": "01a08789-f5c1-7351-943b-3372f310c9c6", "title": "Building LLM-TUI: Never Lose Context Again", "url": "https://jakegoldsborough.com/blog/2025/building-llm-tui-terminal-ai-chat/", "published_at": "2025-12-16T00:00:00+00:00" }, { "id": "01a08789-f5c1-7351-943b-3372f36e7ff8", "title": "JOBL and SRG: Building Resume Tools I Actually Want to Use", "url": "https://jakegoldsborough.com/blog/2025/jobl-srg-resume-tools/", "published_at": "2025-12-14T00:00:00+00:00" }, { "id": "01a08789-f5c1-7351-943b-3372f37a777a", "title": "Skin Shedding, Not Bikeshedding", "url": "https://jakegoldsborough.com/blog/2025/skin-shedding-not-bikeshedding/", "published_at": "2025-11-23T00:00:00+00:00" }, { "id": "01a08789-f5c1-7351-943b-3372f3f2c004", "title": "Date-Ver: A Formal Spec for Date-Based Versioning", "url": "https://jakegoldsborough.com/blog/2025/introducing-date-ver-date-based-versioning/", "published_at": "2025-11-15T00:00:00+00:00" }, { "id": "01a08789-f5c1-7351-943b-3372f4598229", "title": "Building yaml-janitor: Solving the Comment Preservation Problem", "url": "https://jakegoldsborough.com/blog/2025/yaml-janitor-comment-preservation/", "published_at": "2025-11-14T00:00:00+00:00" }, { "id": "01a08789-f5c1-7351-943b-3372f45f91e7", "title": "Like a Pig in Shit: Why I Love AI \"Slop\"", "url": "https://jakegoldsborough.com/blog/2025/like-a-pig-in-shit-ai-slop/", "published_at": "2025-11-08T00:00:00+00:00" }, { "id": "01a08789-f5c1-7351-943b-3372f52d8dc1", "title": "vimdeck.nvim: Markdown Presentations in Neovim", "url": "https://jakegoldsborough.com/blog/2025/vimdeck-nvim-markdown-presentations/", "published_at": "2025-11-07T00:00:00+00:00" }, { "id": "01a08789-f5c1-7351-943b-3372f5bfa52d", "title": "Invite Tree to Invite Stats - How A Simple Tree Flourished Into A Full Moderation Plugin", "url": "https://jakegoldsborough.com/blog/2025/discourse-invite-stats-evolution/", "published_at": "2025-11-05T00:00:00+00:00" }, { "id": "01a08789-f5c1-7351-943b-3372f687f8f8", "title": "Visualizing Discourse Invite Trees", "url": "https://jakegoldsborough.com/blog/2025/discourse-invite-tree/", "published_at": "2025-11-03T00:00:00+00:00" }, { "id": "01a08789-f5c1-7351-943b-3372f7345733", "title": "Shelltrax Part 2: Footer, Tests, and CI", "url": "https://jakegoldsborough.com/blog/2025/shelltrax-part-2-footer-tests-ci/", "published_at": "2025-10-29T00:00:00+00:00" }, { "id": "01a08789-f5c1-7351-943b-3372f7a74c4c", "title": "Replacing MessageBus Pub/Sub with REST APIs: Fixing Production Outages", "url": "https://jakegoldsborough.com/blog/2025/replacing-messagebus-with-http-apis/", "published_at": "2025-10-27T00:00:00+00:00" }, { "id": "01a08789-f5c1-7351-943b-3372f8147a43", "title": "Building The Guest Spot: Part 2 - Two Refactors", "url": "https://jakegoldsborough.com/blog/2025/building-the-guest-spot-part-2/", "published_at": "2025-10-26T00:00:00+00:00" }, { "id": "01a08789-f5c1-7351-943b-3372f81ea73a", "title": "Building The Guest Spot: Part 1 - My First Community", "url": "https://jakegoldsborough.com/blog/2025/building-the-guest-spot-part-1/", "published_at": "2025-10-25T00:00:00+00:00" }, { "id": "01a08789-f5c1-7351-943b-3372f85fafe4", "title": "How I'm Using Claude Code for Daily Development Work", "url": "https://jakegoldsborough.com/blog/2025/how-i-am-using-claude-code/", "published_at": "2025-10-24T00:00:00+00:00" }, { "id": "01a08789-f5c1-7351-943b-3372f8cb57ac", "title": "Building Yaks: A Virtual Currency System for Discourse (Part 4: Custom Titles and Earning System)", "url": "https://jakegoldsborough.com/blog/2025/building-yaks-virtual-currency-part-4/", "published_at": "2025-10-19T00:00:00+00:00" }, { "id": "01a08789-f5c1-7351-943b-3372f9002697", "title": "Building Yaks: A Virtual Currency System for Discourse (Part 3: Advanced Features)", "url": "https://jakegoldsborough.com/blog/2025/building-yaks-virtual-currency-part-3/", "published_at": "2025-10-18T00:00:00+00:00" }, { "id": "01a08789-f5c1-7351-943b-3372f944f594", "title": "Building Yaks: A Virtual Currency System for Discourse (Part 2: Features and Expiration)", "url": "https://jakegoldsborough.com/blog/2025/building-yaks-virtual-currency-part-2/", "published_at": "2025-10-17T00:00:00+00:00" }, { "id": "01a08789-f5c1-7351-943b-3372f9beceed", "title": "ChatGPT assisted Changelog - 42/52", "url": "https://jakegoldsborough.com/blog/2025/weekly-summary-42/", "published_at": "2025-10-17T00:00:00+00:00" }, { "id": "01a08789-f5c1-7351-943b-3372fa78d5c9", "title": "Building Slumprutt: A Random Route Generator in Under an Hour", "url": "https://jakegoldsborough.com/blog/2025/building-slumprutt-random-route-generator/", "published_at": "2025-10-16T00:00:00+00:00" }, { "id": "01a08789-f5c2-71bf-9943-408d19055d57", "title": "AWS SDK Ruby Part 3: When \"Working as Intended\" Means \"Broken by Design\"", "url": "https://jakegoldsborough.com/blog/2025/contributing-to-aws-sdk-ruby-pt3/", "published_at": "2025-10-14T00:00:00+00:00" }, { "id": "01a08789-f5c2-71bf-9943-408d19381964", "title": "Building Yaks: A Virtual Currency System for Discourse (Part 1: Backend Architecture)", "url": "https://jakegoldsborough.com/blog/2025/building-yaks-virtual-currency-part-1/", "published_at": "2025-10-11T00:00:00+00:00" }, { "id": "01a08789-f5c2-71bf-9943-408d1a20abfe", "title": "ChatGPT assisted Changelog - 41/52", "url": "https://jakegoldsborough.com/blog/2025/weekly-summary-41/", "published_at": "2025-10-10T00:00:00+00:00" }, { "id": "01a08789-f5c2-71bf-9943-408d1b06eedf", "title": "Building a Live Transit Departure Board with Discourse", "url": "https://jakegoldsborough.com/blog/2025/building-transit-tracker-in-discourse/", "published_at": "2025-10-08T00:00:00+00:00" }, { "id": "01a08789-f5c2-71bf-9943-408d1b394c91", "title": "My First Official Contribution to Discourse", "url": "https://jakegoldsborough.com/blog/2025/first-official-discourse-contribution/", "published_at": "2025-10-06T00:00:00+00:00" }, { "id": "01a08789-f5c2-71bf-9943-408d1b76a9b3", "title": "Going off the Rails on the AWS Credential Chain", "url": "https://jakegoldsborough.com/blog/2025/contributing-to-aws-sdk-ruby-pt2/", "published_at": "2025-10-04T00:00:00+00:00" }, { "id": "01a08789-f5c2-71bf-9943-408d1b95a8e9", "title": "ChatGPT assisted Changelog - 40/52", "url": "https://jakegoldsborough.com/blog/2025/weekly-summary-40/", "published_at": "2025-10-03T00:00:00+00:00" }, { "id": "01a08789-f5c2-71bf-9943-408d1b9e1fe2", "title": "ChatGPT assisted Changelog - 36-39/52", "url": "https://jakegoldsborough.com/blog/2025/weekly-summary-36/", "published_at": "2025-09-26T00:00:00+00:00" } ] posts Claim your blog
Back to jakegoldsborough.com
Blog · corpus.blog/blogs/jakegoldsborough.com/posts

jakegoldsborough.com

jakegoldsborough.com

2026

2025