56,966 blogs · [ { "id": "01a08790-e5dc-70ca-ba38-ece240a2b776", "title": "Did OpenAI hack Hugging Face or didn’t they?", "url": "https://josh.blog/2026/08/did-openai-hack-hugging-face-or-didnt-they", "published_at": "2026-08-01T20:06:45+00:00" }, { "id": "01a08790-e5dd-718e-8d63-50d618b1ff44", "title": "Josh Betz", "url": "https://josh.blog/2026/06/302067", "published_at": "2026-06-27T18:36:31+00:00" }, { "id": "01a08790-e5dd-718e-8d63-50d6196dd457", "title": "Social Media is Broken", "url": "https://josh.blog/2026/05/social-media-is-broken", "published_at": "2026-05-29T20:44:29+00:00" }, { "id": "01a08790-e5dd-718e-8d63-50d619cd00ca", "title": "Harrison Ford Lifetime Achievement Award", "url": "https://josh.blog/2026/03/harrison-ford-lifetime-achievement-award", "published_at": "2026-03-03T17:18:13+00:00" }, { "id": "01a08790-e5dd-718e-8d63-50d61a38f8a8", "title": "Happy Birthday Frank", "url": "https://josh.blog/2025/12/happy-birthday-frank-2", "published_at": "2025-12-08T16:00:00+00:00" }, { "id": "01a0bb44-457a-70c8-a6e9-779a1d3cdbcd", "title": "Latte Art of the Day", "url": "https://josh.blog/2025/12/latte-art-of-the-day", "published_at": "2025-12-03T16:19:57+00:00" }, { "id": "01a0bb44-457a-70c8-a6e9-779a1da412b7", "title": "Christmas Lights Plugin", "url": "https://josh.blog/2025/11/christmas-lights-plugin", "published_at": "2025-12-01T04:10:49+00:00" }, { "id": "01a0bb44-457a-70c8-a6e9-779a1e4b24f9", "title": "pflogsumm", "url": "https://josh.blog/2025/11/pflogsumm", "published_at": "2025-11-29T02:35:26+00:00" }, { "id": "01a0bb44-457a-70c8-a6e9-779a1e807163", "title": "Josh Betz", "url": "https://josh.blog/2025/10/188364", "published_at": "2025-10-09T12:51:35+00:00" }, { "id": "01a0bb44-457a-70c8-a6e9-779a1ec4b04a", "title": "Minimum Viable Blog", "url": "https://josh.blog/2025/05/minimum-viable-blog", "published_at": "2025-05-03T13:11:23+00:00" }, { "id": "01a0bb55-176c-7040-84bc-8ac84ab6648c", "title": "Mozilla’s CEO weighs in on U.S. v. Google", "url": "https://josh.blog/2025/04/mozillas-ceo-weighs-in-on-u-s-v-google", "published_at": "2025-04-21T22:55:39+00:00" }, { "id": "01a0bb55-176c-7040-84bc-8ac84b61ee6b", "title": "Josh Betz", "url": "https://josh.blog/2025/03/165595", "published_at": "2025-03-29T01:31:11+00:00" }, { "id": "01a0bb55-176c-7040-84bc-8ac84c0d1a03", "title": "Josh Betz", "url": "https://josh.blog/2025/03/165083", "published_at": "2025-03-09T21:37:20+00:00" }, { "id": "01a0bb55-176c-7040-84bc-8ac84c3381a9", "title": "CSS Verified Badge", "url": "https://josh.blog/2025/03/css-verified-badge", "published_at": "2025-03-08T02:09:59+00:00" }, { "id": "01a0bb55-176c-7040-84bc-8ac84d0f21c8", "title": "Josh Betz", "url": "https://josh.blog/2025/03/164981", "published_at": "2025-03-07T15:21:35+00:00" }, { "id": "01a0bb5a-b93c-7206-9510-b2703bcfeddc", "title": "WordPress Web Performance Optimization", "url": "https://josh.blog/2025/03/wordpress-web-performance-optimization", "published_at": "2025-03-04T23:27:31+00:00" }, { "id": "01a0bb5a-b93c-7206-9510-b2703bff055e", "title": "Lazy Load WordPress Images", "url": "https://josh.blog/2025/03/lazy-load-wordpress-images", "published_at": "2025-03-03T01:53:07+00:00" }, { "id": "01a0bb5a-b93c-7206-9510-b2703cb80a68", "title": "Mozilla Money Problems", "url": "https://josh.blog/2025/02/mozilla-money-problems", "published_at": "2025-02-24T13:17:17+00:00" }, { "id": "01a0bb5a-b93c-7206-9510-b2703d936afc", "title": "Provisional Authorization of User Notifications", "url": "https://josh.blog/2025/02/provisional-authorization-of-user-notifications", "published_at": "2025-02-17T14:46:05+00:00" }, { "id": "01a0bb5a-b93c-7206-9510-b2703e4cfbb7", "title": "Cloudflare as a Free CDN for WordPress Assets", "url": "https://josh.blog/2025/02/cloudflare-as-a-free-cdn-for-wordpress-assets", "published_at": "2025-02-16T16:55:11+00:00" }, { "id": "01a0bb62-c9b4-739e-ae66-5f230567ff2a", "title": "Josh Betz", "url": "https://josh.blog/2025/01/146075", "published_at": "2025-01-16T01:14:00+00:00" }, { "id": "01a0bb62-c9b4-739e-ae66-5f23058e8b9e", "title": "Simplicity First: Why Readable Code Is Better Code", "url": "https://josh.blog/2025/01/simplicity-first-why-readable-code-is-better-code", "published_at": "2025-01-10T20:37:52+00:00" }, { "id": "01a0bb62-c9b4-739e-ae66-5f2305a033c6", "title": "Josh Betz", "url": "https://josh.blog/2025/01/145997", "published_at": "2025-01-09T01:15:43+00:00" }, { "id": "01a0bb62-c9b4-739e-ae66-5f2305dbe031", "title": "Tailscale: How NAT Traversal Works", "url": "https://josh.blog/2025/01/tailscale-how-nat-traversal-works", "published_at": "2025-01-06T04:13:53+00:00" }, { "id": "01a0bb62-c9b4-739e-ae66-5f23063ea9c8", "title": "CoreData Debugging Options", "url": "https://josh.blog/2025/01/coredata-debugging-options", "published_at": "2025-01-04T23:16:03+00:00" }, { "id": "01a0bb68-e75f-7350-bf7c-4992c3cfb72c", "title": "Dynamic RSS Feed Generator", "url": "https://josh.blog/2024/12/dynamic-rss-feed-generator", "published_at": "2024-12-27T02:13:55+00:00" }, { "id": "01a0bb68-e75f-7350-bf7c-4992c4c11e90", "title": "Josh Betz", "url": "https://josh.blog/2024/07/144384", "published_at": "2024-07-07T20:44:53+00:00" }, { "id": "01a0bb68-e75f-7350-bf7c-4992c502d616", "title": "Dynamically Resize and Optimize WordPress Images with imgproxy", "url": "https://josh.blog/2024/07/dynamically-resize-and-optimize-wordpress-images-with-imgproxy", "published_at": "2024-07-07T19:35:25+00:00" }, { "id": "01a0bb68-e75f-7350-bf7c-4992c5737f2a", "title": null, "url": "https://josh.blog/2024/06/144266", "published_at": "2024-06-30T22:57:26+00:00" }, { "id": "01a0bb68-e75f-7350-bf7c-4992c5f15a06", "title": null, "url": "https://josh.blog/2024/06/144195", "published_at": "2024-06-22T03:19:35+00:00" }, { "id": "01a0bb6d-14b0-73be-aec5-a2782b870ad9", "title": "Butterfly in the Sky", "url": "https://josh.blog/2024/06/butterfly-in-the-sky", "published_at": "2024-06-13T01:14:50+00:00" }, { "id": "01a0bb6d-14b0-73be-aec5-a2782c10f78d", "title": "How We Do Architecture at Okta", "url": "https://josh.blog/2024/06/how-we-do-architecture-at-okta", "published_at": "2024-06-12T14:59:52+00:00" }, { "id": "01a0bb6d-14b0-73be-aec5-a2782c56df3e", "title": null, "url": "https://josh.blog/2024/06/144070", "published_at": "2024-06-11T01:45:33+00:00" }, { "id": "01a0bb6d-14b0-73be-aec5-a2782d4c54f5", "title": null, "url": "https://josh.blog/2024/06/144058", "published_at": "2024-06-09T20:19:33+00:00" }, { "id": "01a0bb6d-14b0-73be-aec5-a2782d7a23e7", "title": null, "url": "https://josh.blog/2024/06/144046", "published_at": "2024-06-09T17:06:53+00:00" }, { "id": "01a0bb70-e65d-71bb-be5f-4cb187206d25", "title": "Summer in Madison", "url": "https://josh.blog/2024/06/summer-in-madison", "published_at": "2024-06-08T19:08:29+00:00" }, { "id": "01a0bb70-e65d-71bb-be5f-4cb18809c216", "title": null, "url": "https://josh.blog/2024/06/143963", "published_at": "2024-06-06T02:22:05+00:00" }, { "id": "01a0bb70-e65d-71bb-be5f-4cb188aa17b2", "title": "Dog Park Saturday Mornings", "url": "https://josh.blog/2024/05/dog-park-saturday-mornings", "published_at": "2024-05-18T22:07:12+00:00" }, { "id": "01a0bb70-e65d-71bb-be5f-4cb1891f7658", "title": "Blogrolls", "url": "https://josh.blog/2024/05/blogrolls", "published_at": "2024-05-17T03:06:22+00:00" }, { "id": "01a0bb70-e65d-71bb-be5f-4cb18925e1e0", "title": null, "url": "https://josh.blog/2024/05/143607", "published_at": "2024-05-16T02:13:31+00:00" }, { "id": "01a0bb74-59bd-70c1-b8c6-ee30af730449", "title": null, "url": "https://josh.blog/2024/05/143586", "published_at": "2024-05-15T01:40:33+00:00" }, { "id": "01a0bb74-59bd-70c1-b8c6-ee30b0111af0", "title": null, "url": "https://josh.blog/2024/05/143563", "published_at": "2024-05-13T02:29:04+00:00" }, { "id": "01a0bb74-59bd-70c1-b8c6-ee30b0470733", "title": "Write Dumb Code", "url": "https://josh.blog/2024/02/write-dumb-code", "published_at": "2024-02-25T21:41:35+00:00" }, { "id": "01a0bb74-59bd-70c1-b8c6-ee30b11d423b", "title": "Default Apps 2023", "url": "https://josh.blog/2023/12/default-apps-2023", "published_at": "2023-12-12T02:04:32+00:00" }, { "id": "01a0bb74-59bd-70c1-b8c6-ee30b20e3f33", "title": "Bluesky", "url": "https://josh.blog/2023/11/bluesky", "published_at": "2023-12-01T02:06:22+00:00" }, { "id": "01a0bb77-8bd7-7123-b6bd-3cbd4edc9a5a", "title": null, "url": "https://josh.blog/2023/08/142495", "published_at": "2023-08-28T21:52:21+00:00" }, { "id": "01a0bb77-8bd7-7123-b6bd-3cbd4fc2f03d", "title": null, "url": "https://josh.blog/2023/04/142288", "published_at": "2023-04-30T17:38:05+00:00" }, { "id": "01a0bb77-8bd7-7123-b6bd-3cbd50885ce5", "title": "Hush WKWebView", "url": "https://josh.blog/2023/04/hush-wkwebview", "published_at": "2023-04-02T17:36:50+00:00" }, { "id": "01a0bb77-8bd7-7123-b6bd-3cbd5178e8c5", "title": "Wire Updates", "url": "https://josh.blog/2023/03/wire-updates", "published_at": "2023-03-31T23:36:58+00:00" }, { "id": "01a0bb77-8bd7-7123-b6bd-3cbd5236bd2d", "title": "Dark Mode", "url": "https://josh.blog/2023/01/dark-mode", "published_at": "2023-01-23T02:25:39+00:00" }, { "id": "01a0bb7a-d8d0-722f-874d-6adba93f219d", "title": null, "url": "https://josh.blog/2023/01/141694", "published_at": "2023-01-04T20:40:33+00:00" }, { "id": "01a0bb7a-d8d0-722f-874d-6adba95c7b4e", "title": null, "url": "https://josh.blog/2023/01/141623", "published_at": "2023-01-04T03:19:42+00:00" }, { "id": "01a0bb7a-d8d0-722f-874d-6adbaa20bff7", "title": "@josh@josh.blog", "url": "https://josh.blog/2022/11/joshjosh-blog", "published_at": "2022-11-16T01:54:17+00:00" }, { "id": "01a0bb7a-d8d0-722f-874d-6adbaa5f785e", "title": "Quick GitHub Code Search in Firefox", "url": "https://josh.blog/2022/08/quick-github-code-search-in-firefox", "published_at": "2022-08-31T13:50:09+00:00" }, { "id": "01a0bb7a-d8d0-722f-874d-6adbaaa857dd", "title": "Farewell Automattic", "url": "https://josh.blog/2022/08/farewell-automattic", "published_at": "2022-08-12T15:00:00+00:00" }, { "id": "01a0bb7e-e3bb-71ed-b442-1192ec26916f", "title": "Wire 2.0", "url": "https://josh.blog/2022/02/wire-2-0", "published_at": "2022-02-07T17:03:45+00:00" }, { "id": "01a0bb7e-e3bb-71ed-b442-1192ec4c1988", "title": "Strong Password Enforcement", "url": "https://josh.blog/2022/02/strong-password-enforcement", "published_at": "2022-02-01T19:58:47+00:00" }, { "id": "01a0bb7e-e3bb-71ed-b442-1192ec9710d2", "title": "Happy Birthday Frank", "url": "https://josh.blog/2021/12/happy-birthday-frank", "published_at": "2021-12-08T20:47:00+00:00" }, { "id": "01a0bb7e-e3bb-71ed-b442-1192ed696ba8", "title": "Automatically hide and show menu bar in full screen", "url": "https://josh.blog/2021/11/automatically-hide-and-show-menu-bar-in-full-screen", "published_at": "2021-11-23T03:15:43+00:00" }, { "id": "01a0bb7e-e3bb-71ed-b442-1192ee515ee1", "title": "Yet Another 14″ MacBook Pro Review", "url": "https://josh.blog/2021/11/yet-another-14-macbook-pro-review", "published_at": "2021-11-15T17:30:34+00:00" }, { "id": "01a0bb8b-b1ec-70eb-8987-cfbd8fec439d", "title": "Block Remote Content in MacOS 12 Mail.app", "url": "https://josh.blog/2021/10/block-remote-content-in-macos-12-mail-app", "published_at": "2021-10-25T19:31:15+00:00" }, { "id": "01a0bb8b-b1ec-70eb-8987-cfbd90ce9449", "title": "Home Office Setup", "url": "https://josh.blog/2021/10/home-office-setup", "published_at": "2021-10-18T16:15:21+00:00" }, { "id": "01a0bb8b-b1ec-70eb-8987-cfbd911343bf", "title": "git add -p", "url": "https://josh.blog/2021/10/git-add-p", "published_at": "2021-10-06T17:54:10+00:00" }, { "id": "01a0bb8b-b1ec-70eb-8987-cfbd91174488", "title": "Tips for Text-based Interviews", "url": "https://josh.blog/2021/04/tips-for-text-based-interviews", "published_at": "2021-04-21T15:21:47+00:00" }, { "id": "01a0bb8b-b1ec-70eb-8987-cfbd9212138f", "title": "Taylor Swift and Big Machine Records", "url": "https://josh.blog/2021/04/taylor-swift-and-big-machine-records", "published_at": "2021-04-12T01:53:55+00:00" }, { "id": "01a0bb8f-741c-731c-a126-33660ca09dbf", "title": "Current iPhone Home Screen", "url": "https://josh.blog/2021/01/current-iphone-home-screen", "published_at": "2021-01-05T14:56:27+00:00" }, { "id": "01a0bb8f-741c-731c-a126-33660d2e0a0d", "title": "Grandfather, Father, Son Rotation Script", "url": "https://josh.blog/2020/10/grandfather-father-son-rotation-script", "published_at": "2020-10-06T22:17:33+00:00" }, { "id": "01a0bb8f-741c-731c-a126-33660db7be1b", "title": "Grafana Overview Dashboard", "url": "https://josh.blog/2020/09/grafana-overview-dashboard", "published_at": "2020-09-22T02:15:38+00:00" }, { "id": "01a0bb8f-741c-731c-a126-33660e93e98a", "title": "Radio Milwaukee AppleScript", "url": "https://josh.blog/2020/09/radio-milwaukee-applescript", "published_at": "2020-09-10T14:12:43+00:00" }, { "id": "01a0bb8f-741c-731c-a126-33660f154129", "title": "The Day I Met Joe Biden", "url": "https://josh.blog/2020/09/the-day-i-met-joe-biden", "published_at": "2020-09-03T22:33:57+00:00" }, { "id": "01a0bb9c-463e-7070-9e59-87da4a330a9d", "title": "iOS 14 Smart Stack", "url": "https://josh.blog/2020/07/ios-14-smart-stack", "published_at": "2020-07-09T16:17:40+00:00" }, { "id": "01a0bb9c-463e-7070-9e59-87da4a903ee6", "title": "IPv6 PAC Support", "url": "https://josh.blog/2020/06/ipv6-pac-support", "published_at": "2020-06-26T15:52:36+00:00" }, { "id": "01a0bb9c-463e-7070-9e59-87da4a9a65b4", "title": "SwiftUI Webview with a Progress Bar", "url": "https://josh.blog/2020/02/swiftui-webview-with-a-progress-bar", "published_at": "2020-02-12T20:23:55+00:00" }, { "id": "01a0bb9c-463e-7070-9e59-87da4b7354ac", "title": "Highly Available Node", "url": "https://josh.blog/2020/01/highly-available-node", "published_at": "2020-01-23T23:41:26+00:00" }, { "id": "01a0bb9c-463e-7070-9e59-87da4c09ebdf", "title": "Wire 1.5", "url": "https://josh.blog/2020/01/wire-1-5", "published_at": "2020-01-07T21:19:56+00:00" }, { "id": "01a0bba2-201c-73bf-a068-16f98aca42c7", "title": "Spying TVs are getting cheaper", "url": "https://josh.blog/2019/12/spying-tvs-are-getting-cheaper", "published_at": "2019-12-20T19:48:50+00:00" }, { "id": "01a0bba2-201c-73bf-a068-16f98b6ad6dd", "title": "One Month of AirPods Pro", "url": "https://josh.blog/2019/12/airpods-pro", "published_at": "2019-12-06T21:58:11+00:00" }, { "id": "01a0bba2-201c-73bf-a068-16f98bb455d1", "title": "josh.blog 2.0", "url": "https://josh.blog/2019/04/josh-blog-2", "published_at": "2019-04-22T12:01:29+00:00" }, { "id": "01a0bba2-201c-73bf-a068-16f98c71cc04", "title": "Search & Replace PHP Serialized Strings", "url": "https://josh.blog/2019/03/search-replace-php-serialized-strings", "published_at": "2019-03-04T14:41:46+00:00" }, { "id": "01a0bba2-201c-73bf-a068-16f98cc65df8", "title": "Wire 1.2", "url": "https://josh.blog/2019/01/wire-1-2", "published_at": "2019-01-07T17:00:18+00:00" }, { "id": "01a0bba7-a77e-718d-b408-cd235f065246", "title": "Five Tips from Five Years of Remote Work", "url": "https://josh.blog/2019/01/five-tips-from-five-years-of-remote-work", "published_at": "2019-01-02T17:33:45+00:00" }, { "id": "01a0bba7-a77e-718d-b408-cd235ff99c54", "title": "Docker WordPress", "url": "https://josh.blog/2018/12/docker-wordpress", "published_at": "2018-12-24T18:30:07+00:00" }, { "id": "01a0bba7-a77e-718d-b408-cd23601d49fd", "title": "Wire", "url": "https://josh.blog/2018/12/wire", "published_at": "2018-12-14T21:25:47+00:00" }, { "id": "01a0bba7-a77e-718d-b408-cd2361048dc6", "title": "pb – MacOS CLI Trick", "url": "https://josh.blog/2018/11/pb-macos-cli-trick", "published_at": "2018-11-15T21:35:06+00:00" }, { "id": "01a0bba7-a77e-718d-b408-cd236184cd27", "title": "CSS Dark Mode", "url": "https://josh.blog/2018/10/css-dark-mode", "published_at": "2018-10-30T01:08:50+00:00" }, { "id": "01a0bbac-acda-71ea-94f5-a34b3e5ce07b", "title": "Core Data & Concurrency", "url": "https://josh.blog/2018/10/core-data-concurrency", "published_at": "2018-10-05T13:12:58+00:00" }, { "id": "01a0bbac-acda-71ea-94f5-a34b3e75151d", "title": "Eurotrip", "url": "https://josh.blog/2018/10/eurotrip", "published_at": "2018-10-02T17:56:28+00:00" }, { "id": "01a0bbac-acda-71ea-94f5-a34b3f0dfa79", "title": "Pi-hole", "url": "https://josh.blog/2018/10/pi-hole", "published_at": "2018-10-01T13:05:27+00:00" }, { "id": "01a0bbac-acda-71ea-94f5-a34b3fb51c47", "title": "5 Years", "url": "https://josh.blog/2018/05/5", "published_at": "2018-05-23T17:14:02+00:00" }, { "id": "01a0bbac-acda-71ea-94f5-a34b40341fd0", "title": "Automate git bisect", "url": "https://josh.blog/2018/05/automate-git-bisect", "published_at": "2018-05-22T19:48:42+00:00" }, { "id": "01a0bbb1-a61a-707e-aba3-ce9b65488a49", "title": "Astrophysics for People in a Hurry", "url": "https://josh.blog/2018/03/astrophysics-for-people-in-a-hurry", "published_at": "2018-03-31T16:24:17+00:00" }, { "id": "01a0bbb1-a61a-707e-aba3-ce9b660a5d69", "title": "Nginx Cache WordPress", "url": "https://josh.blog/2018/02/nginx-cache-wordpress", "published_at": "2018-02-17T18:20:01+00:00" }, { "id": "01a0bbb1-a61a-707e-aba3-ce9b66ebb5ae", "title": "Biased Algorithms", "url": "https://josh.blog/2017/10/biased-algorithms", "published_at": "2017-10-17T20:29:33+00:00" }, { "id": "01a0bbb1-a61a-707e-aba3-ce9b6746997f", "title": "Restless Dream", "url": "https://josh.blog/2017/09/restless-dream", "published_at": "2017-09-25T23:45:13+00:00" }, { "id": "01a0bbb1-a61a-707e-aba3-ce9b677122ed", "title": "New Hyper Key", "url": "https://josh.blog/2017/07/new-hyper-key", "published_at": "2017-07-12T00:44:48+00:00" }, { "id": "01a0bbb7-38fc-7275-a0ab-cec4305b9f3b", "title": "Go Configure", "url": "https://josh.blog/2017/04/go-configure", "published_at": "2017-04-27T20:51:48+00:00" }, { "id": "01a0bbb7-38fc-7275-a0ab-cec430cdc03c", "title": "Writing Mode in Vim", "url": "https://josh.blog/2017/04/writing-mode-vim", "published_at": "2017-04-02T18:22:40+00:00" }, { "id": "01a0bbb7-38fc-7275-a0ab-cec43129858d", "title": "josh.blog", "url": "https://josh.blog/2017/02/josh-blog", "published_at": "2017-02-27T01:24:46+00:00" }, { "id": "01a0bbb7-38fc-7275-a0ab-cec43217beaa", "title": "2017 Resolutions", "url": "https://josh.blog/2017/01/resolutions", "published_at": "2017-01-02T15:26:42+00:00" }, { "id": "01a0bbb7-38fc-7275-a0ab-cec43278b086", "title": "GPG & Git", "url": "https://josh.blog/2016/11/gpg-git", "published_at": "2016-11-05T19:04:44+00:00" } ] posts Claim your blog
Back to Josh Betz – Made with 🧀 in Madison
Blog · corpus.blog/blogs/josh.blog/posts

Josh Betz – Made with 🧀 in Madison

josh.blog

2026

2025

2024

2023

2022

2021

2020

2019

2018

2017

2016