56,966 blogs · [ { "id": "01a0878e-bf20-7310-9143-bfb8e66ec6a1", "title": "Succeeding with remote software engineers in Asia", "url": "https://joeblu.com/blog/2026_08_succeeding-with-remote-software-engineers-in-asia/", "published_at": "2026-08-08T23:45:14+00:00" }, { "id": "01a0878e-bf20-7310-9143-bfb8e769d05e", "title": "We lost the ability to write online", "url": "https://joeblu.com/blog/2026_08_we-lost-the-ability-to-write-online/", "published_at": "2026-08-04T20:40:39+00:00" }, { "id": "01a0878e-bf20-7310-9143-bfb8e7dabb12", "title": "DICOM is a disaster for patients", "url": "https://joeblu.com/blog/2026_08_dicom-is-a-disaster-for-patients/", "published_at": "2026-08-04T13:35:07+00:00" }, { "id": "01a0878e-bf20-7310-9143-bfb8e874d9d6", "title": "My AI coding setup today", "url": "https://joeblu.com/blog/2026_04_my-ai-coding-setup-today/", "published_at": "2026-04-16T04:38:34+00:00" }, { "id": "01a0878e-bf20-7310-9143-bfb8e9519dc4", "title": "Zen: A Browser You Can Love", "url": "https://joeblu.com/blog/2026_02_zen-a-browser-you-can-love/", "published_at": "2026-02-07T01:17:18+00:00" }, { "id": "01a0878e-bf20-7310-9143-bfb8e99db4cd", "title": "Multi-agent coding and the resurgence of the terminal", "url": "https://joeblu.com/blog/2026_02_multi-agent-coding-and-the-resurgence-of-the-terminal/", "published_at": "2026-02-05T15:23:52+00:00" }, { "id": "01a0878e-bf20-7310-9143-bfb8ea5bc208", "title": "Introducing nvim-beads: Manage beads in neovim", "url": "https://joeblu.com/blog/2026_01_introducing-nvim-beads-manage-beads-in-neovim/", "published_at": "2026-01-14T06:29:35+00:00" }, { "id": "01a0878e-bf20-7310-9143-bfb8ea6c4899", "title": "Podcasting is dominated by warm applesauce", "url": "https://joeblu.com/blog/2026_01_podcasting-is-dominated-by-warm-applesauce/", "published_at": "2026-01-13T11:37:44+00:00" }, { "id": "01a0878e-bf20-7310-9143-bfb8ead6223b", "title": "All the data had nowhere to go", "url": "https://joeblu.com/blog/2026_01_all-the-data-had-nowhere-to-go/", "published_at": "2026-01-06T12:24:03+00:00" }, { "id": "01a0878e-bf20-7310-9143-bfb8eb686bae", "title": "Finding \"Just Fine\"", "url": "https://joeblu.com/blog/2025_12_finding-just-fine/", "published_at": "2025-12-04T06:01:17+00:00" }, { "id": "01a0878e-bf20-7310-9143-bfb8ebf67735", "title": "LLMs are great at box diagrams", "url": "https://joeblu.com/blog/2025_12_llms-are-great-at-box-diagrams/", "published_at": "2025-12-02T12:26:16+00:00" }, { "id": "01a0878e-bf20-7310-9143-bfb8ec913ecb", "title": "Ten years of joeblu.com", "url": "https://joeblu.com/blog/2025_10_ten-years-of-joeblucom/", "published_at": "2025-10-28T03:37:40+00:00" }, { "id": "01a0878e-bf20-7310-9143-bfb8ecc322fe", "title": "What was *WTF with Marc Maron*?", "url": "https://joeblu.com/blog/2025_10_what-was-wtf-with-marc-maron/", "published_at": "2025-10-28T00:00:00+00:00" }, { "id": "01a0878e-bf20-7310-9143-bfb8ece63b82", "title": "hugo-editor: A Claude experiment", "url": "https://joeblu.com/blog/2025_08_hugo-editor-a-claude-experiment/", "published_at": "2025-08-26T02:52:59+00:00" }, { "id": "01a0878e-bf20-7310-9143-bfb8ed65578f", "title": "Why would you use .gitkeep?", "url": "https://joeblu.com/blog/2025_06_gitkeep/", "published_at": "2025-06-30T00:00:00+00:00" }, { "id": "01a0878e-bf20-7310-9143-bfb8ed6cad44", "title": "Think big, build small", "url": "https://joeblu.com/blog/2025_06_think_big_build_small/", "published_at": "2025-06-26T00:00:00+00:00" }, { "id": "01a0878e-bf20-7310-9143-bfb8ed8d3044", "title": "Our Furtive Encrypted Future", "url": "https://joeblu.com/blog/2025_06_our_furtive_encrypted_future/", "published_at": "2025-06-04T00:00:00+00:00" }, { "id": "01a0878e-bf20-7310-9143-bfb8eda7c885", "title": "American schools should all have uniforms", "url": "https://joeblu.com/blog/2025_06_uniforms/", "published_at": "2025-06-01T00:00:00+00:00" }, { "id": "01a0878e-bf20-7310-9143-bfb8ee69053e", "title": "Loog Piano: My review", "url": "https://joeblu.com/blog/2024_12_loog/", "published_at": "2024-12-16T00:00:00+00:00" }, { "id": "01a0878e-bf20-7310-9143-bfb8eebe92ce", "title": "What's a \"thunk\"?", "url": "https://joeblu.com/blog/2024_12_thunks/", "published_at": "2024-12-04T00:00:00+00:00" }, { "id": "01a0878e-bf20-7310-9143-bfb8ef8ac3cf", "title": "jq -n \\-\\-argjson", "url": "https://joeblu.com/blog/2024_12_jq_tip/", "published_at": "2024-12-02T00:00:00+00:00" }, { "id": "01a0878e-bf20-7310-9143-bfb8f053ba6a", "title": "Don't use mocks", "url": "https://joeblu.com/blog/2023_06_mocks/", "published_at": "2023-06-20T00:00:00+00:00" }, { "id": "01a0878e-bf20-7310-9143-bfb8f0f4feca", "title": "Supreme Court DoS attack", "url": "https://joeblu.com/blog/2023_02_supreme_court_dos/", "published_at": "2023-02-22T00:00:00+00:00" }, { "id": "01a0878e-bf20-7310-9143-bfb8f10d5a5f", "title": "Looking in Go's Mirror: How and When to use `reflect`", "url": "https://joeblu.com/blog/2023_01_reflection/", "published_at": "2023-01-16T00:00:00+00:00" }, { "id": "01a0878e-bf20-7310-9143-bfb8f19b87ab", "title": "What is software for?", "url": "https://joeblu.com/blog/2023_01_software_for/", "published_at": "2023-01-13T00:00:00+00:00" }, { "id": "01a0878e-bf20-7310-9143-bfb8f2354ee5", "title": "Code is not Prose", "url": "https://joeblu.com/blog/2023_01_code_prose/", "published_at": "2023-01-12T00:00:00+00:00" }, { "id": "01a0878e-bf20-7310-9143-bfb8f28f670e", "title": "Nasty refactorings with go.mod replace", "url": "https://joeblu.com/blog/2023_01_go_mod_replace/", "published_at": "2023-01-11T00:00:00+00:00" }, { "id": "01a0878e-bf20-7310-9143-bfb8f2d2912f", "title": "Caroline Ellison is not a sympathetic figure", "url": "https://joeblu.com/blog/2023_01_ellison/", "published_at": "2023-01-04T00:00:00+00:00" }, { "id": "01a0878e-bf20-7310-9143-bfb8f301fc79", "title": "Unmarshaling JSON in Go: The weird parts", "url": "https://joeblu.com/blog/2022_12_unmarshal/", "published_at": "2022-12-15T00:00:00+00:00" }, { "id": "01a0878e-bf20-7310-9143-bfb8f31e41e7", "title": "Evaluating New Tools", "url": "https://joeblu.com/blog/2022_09_tech_choices/", "published_at": "2022-09-27T00:00:00+00:00" }, { "id": "01a0878e-bf20-7310-9143-bfb8f3304fe6", "title": "Podcasts At the End of the Indie Web", "url": "https://joeblu.com/blog/2022_09_podcasts/", "published_at": "2022-09-25T00:00:00+00:00" }, { "id": "01a0878e-bf20-7310-9143-bfb8f4112729", "title": "GitHub Squash Merges are a Menace", "url": "https://joeblu.com/blog/2022_github_is_a_menace/", "published_at": "2022-09-16T00:00:00+00:00" }, { "id": "01a0878e-bf20-7310-9143-bfb8f46f858a", "title": "How We Do Our Best Work", "url": "https://joeblu.com/blog/2022_09_best_work/", "published_at": "2022-08-31T00:00:00+00:00" }, { "id": "01a0878e-bf20-7310-9143-bfb8f4a2b1bf", "title": "Thoughts on OKRs", "url": "https://joeblu.com/blog/2022_05_okrs/", "published_at": "2022-05-18T00:00:00+00:00" }, { "id": "01a0878e-bf20-7310-9143-bfb8f502a1c2", "title": "You Should Squash Merge to main", "url": "https://joeblu.com/blog/2022_02_squash_merge/", "published_at": "2022-02-10T00:00:00+00:00" }, { "id": "01a0878e-bf20-7310-9143-bfb8f52a0f1b", "title": "Why I (Still) Use Vim", "url": "https://joeblu.com/blog/2021_12_why_i_vim/", "published_at": "2021-12-15T00:00:00+00:00" }, { "id": "01a0878e-bf20-7310-9143-bfb8f60a5004", "title": "My Country, Tis of Thee", "url": "https://joeblu.com/blog/202007-my-country/", "published_at": "2020-07-21T00:00:00+00:00" }, { "id": "01a0878e-bf20-7310-9143-bfb8f67578c4", "title": "Font Measurements", "url": "https://joeblu.com/blog/202007-font-measures/", "published_at": "2020-07-06T00:00:00+00:00" }, { "id": "01a0878e-bf20-7310-9143-bfb8f6d48927", "title": "Influence", "url": "https://joeblu.com/blog/202005-influence-politics/", "published_at": "2020-05-30T00:00:00+00:00" }, { "id": "01a0878e-bf20-7310-9143-bfb8f700800b", "title": "Lucky", "url": "https://joeblu.com/blog/luck/", "published_at": "2020-05-22T00:00:00+00:00" }, { "id": "01a0878e-bf20-7310-9143-bfb8f7e9ae6e", "title": "Fast is a Feature", "url": "https://joeblu.com/blog/slow_software_destroys_flow/", "published_at": "2020-05-19T00:00:00+00:00" }, { "id": "01a0878e-bf20-7310-9143-bfb8f81324bb", "title": "Beef Barley Mushroom Soup", "url": "https://joeblu.com/blog/beefbarley/", "published_at": "2018-01-15T22:57:58+00:00" }, { "id": "01a0878e-bf20-7310-9143-bfb8f8afafaf", "title": "Ricotta Chicken", "url": "https://joeblu.com/blog/ricottachicken/", "published_at": "2018-01-15T22:57:33+00:00" }, { "id": "01a0878e-bf20-7310-9143-bfb8f8fd53ab", "title": "Pressure Cooker Red Beans and Rice", "url": "https://joeblu.com/blog/redbeansandrice/", "published_at": "2018-01-15T22:38:51+00:00" }, { "id": "01a0878e-bf20-7310-9143-bfb8f9cb0114", "title": "Michelada", "url": "https://joeblu.com/blog/michelada/", "published_at": "2017-12-11T02:52:49+00:00" }, { "id": "01a0878e-bf20-7310-9143-bfb8f9eb3954", "title": "Roberta's Pizza Dough", "url": "https://joeblu.com/blog/pizzadough/", "published_at": "2017-12-11T02:52:38+00:00" }, { "id": "01a0878e-bf20-7310-9143-bfb8f9f85990", "title": "Persimmon Roses", "url": "https://joeblu.com/blog/persimmonrose/", "published_at": "2017-12-05T03:58:51+00:00" }, { "id": "01a0878e-bf20-7310-9143-bfb8faca8cf0", "title": "Garage Shelves", "url": "https://joeblu.com/blog/garageshelves/", "published_at": "2017-10-16T06:18:16+00:00" }, { "id": "01a0878e-bf20-7310-9143-bfb8faf64f33", "title": "Guitar Shelf", "url": "https://joeblu.com/blog/guitarshelf/", "published_at": "2017-08-14T06:39:34+00:00" }, { "id": "01a0878e-bf20-7310-9143-bfb8fb111449", "title": "Workbench", "url": "https://joeblu.com/blog/workbench/", "published_at": "2015-11-04T06:13:59+00:00" }, { "id": "01a0878e-bf20-7310-9143-bfb8fb94513f", "title": "Cardsharp", "url": "https://joeblu.com/blog/cardsharp/", "published_at": "2015-09-03T22:57:04+00:00" }, { "id": "01a0878e-bf20-7310-9143-bfb8fc3d123c", "title": "About Me", "url": "https://joeblu.com/about/", "published_at": null }, { "id": "01a0878e-bf20-7310-9143-bfb8fc64eb70", "title": "Working With Me", "url": "https://joeblu.com/professional/", "published_at": null } ] posts Claim your blog
Back to joeblu.com
Blog · corpus.blog/blogs/joeblu.com/posts

joeblu.com

joeblu.com

2026

2025

2024

2023

2022

2021

2020

2018

2017

2015

Undated