56,966 blogs · [ { "id": "01a08753-8472-713b-aa4b-126c62c8d625", "title": "Animal Verbs", "url": "https://blog.scubbo.org/posts/animal-verbs/", "published_at": "2026-05-24T01:56:28+00:00" }, { "id": "01a08753-8473-708a-ae6a-427d79a05ab7", "title": "Weeknotes 2026-05-10", "url": "https://blog.scubbo.org/posts/weeknotes-2026-05-10/", "published_at": "2026-05-11T03:55:40+00:00" }, { "id": "01a08753-8473-708a-ae6a-427d79a940a3", "title": "Weeknotes 2026-04-12", "url": "https://blog.scubbo.org/posts/weeknotes-2026-04-12/", "published_at": "2026-04-13T05:39:55+00:00" }, { "id": "01a08753-8473-708a-ae6a-427d7a788fbf", "title": "Giving My Kubernetes Cluster Its Own DNS Identity", "url": "https://blog.scubbo.org/posts/k8s-coredns-adguard-attribution/", "published_at": "2026-04-13T05:35:00+00:00" }, { "id": "01a08753-8473-708a-ae6a-427d7ab51bab", "title": "Weeknotes 2026-04-05", "url": "https://blog.scubbo.org/posts/weeknotes-2026-04-05/", "published_at": "2026-04-05T19:26:59+00:00" }, { "id": "01a08753-8473-708a-ae6a-427d7b0819f6", "title": "Accessing Homelab Services Over Tailscale", "url": "https://blog.scubbo.org/posts/dns-over-tailscale/", "published_at": "2026-03-30T19:00:00+00:00" }, { "id": "01a08753-8473-708a-ae6a-427d7b96560b", "title": "Snowboarding Philosophy", "url": "https://blog.scubbo.org/posts/snowboarding-philosophy/", "published_at": "2026-02-22T20:36:30+00:00" }, { "id": "01a08753-8474-7215-8fd3-b1269e662a4d", "title": "2025 Wrap Up Articles", "url": "https://blog.scubbo.org/posts/2025-wrap-up-articles/", "published_at": "2026-01-02T01:50:55+00:00" }, { "id": "01a08753-8474-7215-8fd3-b1269f656a93", "title": "Switching from Keycloak to Authentik", "url": "https://blog.scubbo.org/posts/switching-to-authentik/", "published_at": "2025-12-31T23:39:00+00:00" }, { "id": "01a08753-8474-7215-8fd3-b126a02cce7d", "title": "2025 Wrap Up Books", "url": "https://blog.scubbo.org/posts/2025-wrap-up-books/", "published_at": "2025-12-31T19:06:18+00:00" }, { "id": "01a08753-8474-7215-8fd3-b126a064cb96", "title": "Weeknotes 2025-11-30", "url": "https://blog.scubbo.org/posts/weeknotes-2025-11-30/", "published_at": "2025-12-01T04:50:14+00:00" }, { "id": "01a08753-8474-7215-8fd3-b126a0ff7002", "title": "Weeknotes 2025-11-24", "url": "https://blog.scubbo.org/posts/weeknotes-2025-11-24/", "published_at": "2025-11-25T04:02:46+00:00" }, { "id": "01a08753-8474-7215-8fd3-b126a13f0a7f", "title": "Weeknotes 2025-11-16", "url": "https://blog.scubbo.org/posts/weeknotes-2025-11-16/", "published_at": "2025-11-17T04:50:23+00:00" }, { "id": "01a08753-8474-7215-8fd3-b126a1c4a78f", "title": "Weeknotes 2025-11-09", "url": "https://blog.scubbo.org/posts/weeknotes-2025-11-09/", "published_at": "2025-11-09T23:52:42+00:00" }, { "id": "01a08753-8474-7215-8fd3-b126a292397c", "title": "MTG MCP 2", "url": "https://blog.scubbo.org/posts/mtg-mcp-2/", "published_at": "2025-10-08T05:01:56+00:00" }, { "id": "01a08753-8474-7215-8fd3-b126a366690c", "title": "MTG MCP", "url": "https://blog.scubbo.org/posts/mtg-mcp/", "published_at": "2025-07-31T03:41:59+00:00" }, { "id": "01a08753-8474-7215-8fd3-b126a3bcd49b", "title": "Authentication in the New World", "url": "https://blog.scubbo.org/posts/authentication-in-the-new-world/", "published_at": "2025-07-17T05:30:17+00:00" }, { "id": "01a08753-8474-7215-8fd3-b126a4248bb5", "title": "A New Start", "url": "https://blog.scubbo.org/posts/a-new-start/", "published_at": "2025-07-05T00:21:42+00:00" }, { "id": "01a08753-8474-7215-8fd3-b126a4c84098", "title": "Weeknotes: 2025-05-31", "url": "https://blog.scubbo.org/posts/weeknotes-2025-05-31/", "published_at": "2025-05-31T19:25:33+00:00" }, { "id": "01a08753-8474-7215-8fd3-b126a57224a1", "title": "Weeknotes: 2025-05-18", "url": "https://blog.scubbo.org/posts/weeknotes-2025-05-18/", "published_at": "2025-05-18T23:02:14+00:00" }, { "id": "01a08753-8474-7215-8fd3-b126a64dbd9c", "title": "Weeknotes: 2025-04-18", "url": "https://blog.scubbo.org/posts/weeknotes-2025-04-18/", "published_at": "2025-04-19T05:12:55+00:00" }, { "id": "01a08753-8474-7215-8fd3-b126a74571a1", "title": "Write With Sudo", "url": "https://blog.scubbo.org/posts/write-with-sudo/", "published_at": "2025-04-19T05:06:20+00:00" }, { "id": "01a08753-8474-7215-8fd3-b126a7738567", "title": "Snowboarding Philosophy, and A Linguistic Tangent", "url": "https://blog.scubbo.org/posts/snowboarding-philosophy-and-a-linguistic-tangent/", "published_at": "2025-04-10T00:54:09+00:00" }, { "id": "01a08753-8474-7215-8fd3-b126a7c05c85", "title": "Weeknotes: 2025-04-06", "url": "https://blog.scubbo.org/posts/weeknotes-2025-04-06/", "published_at": "2025-04-07T04:50:46+00:00" }, { "id": "01a08753-8474-7215-8fd3-b126a864ce7c", "title": "Excluding Weeknotes From Main Page", "url": "https://blog.scubbo.org/posts/excluding-weeknotes-from-main-page/", "published_at": "2025-04-07T04:18:49+00:00" }, { "id": "01a08753-8474-7215-8fd3-b126a9041350", "title": "Weeknotes the Third", "url": "https://blog.scubbo.org/posts/weeknotes-the-third/", "published_at": "2025-03-17T06:41:15+00:00" }, { "id": "01a08753-8474-7215-8fd3-b126a906bae4", "title": "Weeknotes the Second: Month Notes", "url": "https://blog.scubbo.org/posts/weeknotes-the-second-month-notes/", "published_at": "2025-03-03T05:39:00+00:00" }, { "id": "01a08753-8474-7215-8fd3-b126a916a9ef", "title": "Gitea Actions", "url": "https://blog.scubbo.org/posts/gitea-actions/", "published_at": "2025-02-28T05:25:00+00:00" }, { "id": "01a08753-8474-7215-8fd3-b126a984213c", "title": "Weeknotes: The First", "url": "https://blog.scubbo.org/posts/weeknotes-the-first/", "published_at": "2025-02-24T07:43:20+00:00" }, { "id": "01a08753-8474-7215-8fd3-b126aa00210b", "title": "Jellyfin Over Tailscale", "url": "https://blog.scubbo.org/posts/jellyfin-over-tailscale/", "published_at": "2025-02-22T05:18:31+00:00" }, { "id": "01a08753-8474-7215-8fd3-b126aa71da55", "title": "2024 Wrap Up Books", "url": "https://blog.scubbo.org/posts/2024-wrap-up-books/", "published_at": "2025-01-01T22:40:11+00:00" }, { "id": "01a08753-8474-7215-8fd3-b126ab0be4df", "title": "Zig Zig Zag, as Fast as You Can", "url": "https://blog.scubbo.org/posts/zig-zig-zag-as-fast-as-you-can/", "published_at": "2024-12-28T20:09:20+00:00" }, { "id": "01a08753-8474-7215-8fd3-b126ab23798c", "title": "Upsert in Postgres", "url": "https://blog.scubbo.org/posts/upsert-in-postgres/", "published_at": "2024-12-27T00:35:42+00:00" }, { "id": "01a08753-8474-7215-8fd3-b126ab3bc40a", "title": "Attribution on Mastodon", "url": "https://blog.scubbo.org/posts/attribution-on-mastodon/", "published_at": "2024-10-14T16:44:25+00:00" }, { "id": "01a08753-8474-7215-8fd3-b126abdbb6d7", "title": "Uses Page", "url": "https://blog.scubbo.org/posts/uses-page/", "published_at": "2024-09-14T22:14:35+00:00" }, { "id": "01a08753-8474-7215-8fd3-b126ac35b6cb", "title": "Auto Announce on Mastodon", "url": "https://blog.scubbo.org/posts/auto-announce-on-mastodon/", "published_at": "2024-06-07T13:46:00+00:00" }, { "id": "01a08753-8474-7215-8fd3-b126ac9abce3", "title": "Base App Infrastructure", "url": "https://blog.scubbo.org/posts/base-app-infrastructure/", "published_at": "2024-05-10T10:00:23+00:00" }, { "id": "01a08753-8474-7215-8fd3-b126ad811433", "title": "Conditional Cleanups in Pytest", "url": "https://blog.scubbo.org/posts/conditional-cleanups-in-pytest/", "published_at": "2024-04-28T23:55:37+00:00" }, { "id": "01a08753-8474-7215-8fd3-b126ae35c27d", "title": "Vault Secrets Into K8s", "url": "https://blog.scubbo.org/posts/vault-secrets-into-k8s/", "published_at": "2024-04-22T02:51:06+00:00" }, { "id": "01a08753-8475-7332-82e0-bd76edd5f020", "title": "Keycloak Backup", "url": "https://blog.scubbo.org/posts/keycloak-backup/", "published_at": "2024-04-07T00:34:34+00:00" }, { "id": "01a08753-8475-7332-82e0-bd76ede37eac", "title": "OIDC on K8s", "url": "https://blog.scubbo.org/posts/oidc-on-k8s/", "published_at": "2024-04-02T03:36:32+00:00" }, { "id": "01a08753-8476-710d-8fb0-d7a4a16f26b7", "title": "PVC Debug Pod", "url": "https://blog.scubbo.org/posts/pvc-debug-pod/", "published_at": "2024-03-05T06:05:41+00:00" }, { "id": "01a08753-8476-710d-8fb0-d7a4a2163067", "title": "Project Management and Async Functions", "url": "https://blog.scubbo.org/posts/project-management-and-async-functions/", "published_at": "2024-02-21T05:32:49+00:00" }, { "id": "01a08753-8476-710d-8fb0-d7a4a2fe5344", "title": "Backups and Updates and Dependencies and Resiliency", "url": "https://blog.scubbo.org/posts/backups-and-updates-and-dependencies-and-resiliency/", "published_at": "2024-02-19T00:00:00+00:00" }, { "id": "01a08753-8476-710d-8fb0-d7a4a3cce054", "title": "Automatic Merging", "url": "https://blog.scubbo.org/posts/automatic-merging/", "published_at": "2024-02-15T06:46:08+00:00" }, { "id": "01a08753-8476-710d-8fb0-d7a4a3fccd5d", "title": "Adding RSS", "url": "https://blog.scubbo.org/posts/adding-rss/", "published_at": "2024-01-15T21:31:03+00:00" }, { "id": "01a08753-8476-710d-8fb0-d7a4a4996f27", "title": "2023 Wrap Up - Articles", "url": "https://blog.scubbo.org/posts/2023-wrap-up-articles/", "published_at": "2024-01-01T23:31:18+00:00" }, { "id": "01a08753-8476-710d-8fb0-d7a4a57ba701", "title": "2023 Wrap Up - Books", "url": "https://blog.scubbo.org/posts/2023-wrap-up-books/", "published_at": "2023-12-26T20:02:15+00:00" }, { "id": "01a08753-8476-710d-8fb0-d7a4a64b02ca", "title": "Work in a Post Scarcity Utopia", "url": "https://blog.scubbo.org/posts/work-in-a-post-scarcity-utopia/", "published_at": "2023-12-18T11:05:19+00:00" }, { "id": "01a08753-8476-710d-8fb0-d7a4a6ec00b4", "title": "Almost All Numbers Are Normal", "url": "https://blog.scubbo.org/posts/almost-all-numbers-are-normal/", "published_at": "2023-12-17T17:23:09+00:00" }, { "id": "01a08753-8476-710d-8fb0-d7a4a79d632c", "title": "Books as Vehicles", "url": "https://blog.scubbo.org/posts/books-as-vehicles/", "published_at": "2023-12-12T04:19:13+00:00" }, { "id": "01a08753-8476-710d-8fb0-d7a4a7c5e543", "title": "2023 Advent of Code", "url": "https://blog.scubbo.org/posts/2023-advent-of-code/", "published_at": "2023-12-02T02:43:13+00:00" }, { "id": "01a08753-8476-710d-8fb0-d7a4a88764de", "title": "Pre-Pipeline Verification, and the Push-And-Pray Problem", "url": "https://blog.scubbo.org/posts/pre-pipeline-verification-and-the-push-and-pray-problem/", "published_at": "2023-11-24T00:26:06+00:00" }, { "id": "01a08753-8476-710d-8fb0-d7a4a89a6e4a", "title": "Raspberry Pi Temperature Monitoring", "url": "https://blog.scubbo.org/posts/raspberry-pi-temperature-monitoring/", "published_at": "2023-03-09T03:44:07+00:00" }, { "id": "01a08753-8476-710d-8fb0-d7a4a9921fa2", "title": "T​K Block", "url": "https://blog.scubbo.org/posts/tk-block/", "published_at": "2023-03-06T05:45:00+00:00" }, { "id": "01a08753-8476-710d-8fb0-d7a4aa2fc510", "title": "Short Thoughts 2022-03-05", "url": "https://blog.scubbo.org/posts/short-thoughts-2023-03-05/", "published_at": "2023-03-06T03:49:27+00:00" }, { "id": "01a08753-8476-710d-8fb0-d7a4ab25e29f", "title": "Consistency in 2023", "url": "https://blog.scubbo.org/posts/consistency-in-2023/", "published_at": "2023-02-26T23:23:00+00:00" }, { "id": "01a08753-8476-710d-8fb0-d7a4abb2ca5b", "title": "Rebuild From Scratch", "url": "https://blog.scubbo.org/posts/rebuild-from-scratch/", "published_at": "2023-02-08T03:52:44+00:00" }, { "id": "01a08753-8476-710d-8fb0-d7a4ac08d343", "title": "2022 Wrap Up", "url": "https://blog.scubbo.org/posts/2022-wrap-up/", "published_at": "2022-12-31T20:47:00+00:00" }, { "id": "01a08753-8476-710d-8fb0-d7a4ac7b5d61", "title": "VPN on Kubernetes", "url": "https://blog.scubbo.org/posts/vpn-on-kubernetes/", "published_at": "2022-12-16T06:28:24+00:00" }, { "id": "01a08753-8476-710d-8fb0-d7a4acb7e78e", "title": "Communication Urgency", "url": "https://blog.scubbo.org/posts/communication-urgency/", "published_at": "2022-11-13T21:49:15+00:00" }, { "id": "01a08753-8476-710d-8fb0-d7a4ada716f9", "title": "Code Review on Paper", "url": "https://blog.scubbo.org/posts/code-review-on-paper/", "published_at": "2022-10-29T20:00:36+00:00" }, { "id": "01a08753-8476-710d-8fb0-d7a4ae37ccdc", "title": "CI/CD/CD, Oh My!", "url": "https://blog.scubbo.org/posts/ci-cd-cd-oh-my/", "published_at": "2022-10-14T22:51:00+00:00" }, { "id": "01a08753-8476-710d-8fb0-d7a4aea0c23e", "title": "Grafana Oncall", "url": "https://blog.scubbo.org/posts/grafana-oncall/", "published_at": "2022-09-13T17:52:53+00:00" }, { "id": "01a08753-8476-710d-8fb0-d7a4aece53f0", "title": "Writing Poetry", "url": "https://blog.scubbo.org/posts/writing-poetry/", "published_at": "2022-08-22T23:49:18+00:00" }, { "id": "01a08753-8476-710d-8fb0-d7a4afbca55c", "title": "Cloudflare Tunnel DNS", "url": "https://blog.scubbo.org/posts/cloudflare-tunnel-dns/", "published_at": "2022-08-22T23:05:39+00:00" }, { "id": "01a08753-8476-710d-8fb0-d7a4afca7e75", "title": "Being a Seagull", "url": "https://blog.scubbo.org/posts/being-a-seagull/", "published_at": "2022-08-10T21:02:50+00:00" }, { "id": "01a08753-8476-710d-8fb0-d7a4b039c25c", "title": "The Land of Infinite Fun", "url": "https://blog.scubbo.org/posts/the-land-of-infinite-fun/", "published_at": "2022-08-04T19:04:45+00:00" }, { "id": "01a08753-8476-710d-8fb0-d7a4b133a4d6", "title": "Treating People as Things", "url": "https://blog.scubbo.org/posts/treating-people-as-things/", "published_at": "2022-08-04T00:18:48+00:00" }, { "id": "01a08753-8476-710d-8fb0-d7a4b1462772", "title": "Self-Hosted Analytics", "url": "https://blog.scubbo.org/posts/self-hosted-analytics/", "published_at": "2022-08-03T03:23:48+00:00" }, { "id": "01a08753-8476-710d-8fb0-d7a4b18411b9", "title": "SSH to Idle Screen Window", "url": "https://blog.scubbo.org/posts/ssh-to-idle-screen-window/", "published_at": "2022-07-19T22:42:31+00:00" }, { "id": "01a08753-8476-710d-8fb0-d7a4b24c1499", "title": "Edit Command Line in Zsh", "url": "https://blog.scubbo.org/posts/edit-command-line-in-zsh/", "published_at": "2022-07-10T07:25:21+00:00" }, { "id": "01a08753-8476-710d-8fb0-d7a4b3331686", "title": "Tags in Archetype", "url": "https://blog.scubbo.org/posts/tags-in-archetype/", "published_at": "2022-07-03T00:16:43+00:00" }, { "id": "01a08753-8476-710d-8fb0-d7a4b3b6288f", "title": "Secure Docker Registry", "url": "https://blog.scubbo.org/posts/secure-docker-registry/", "published_at": "2022-07-02T04:26:32+00:00" }, { "id": "01a08753-8476-710d-8fb0-d7a4b497d05c", "title": "A Dark Day for America", "url": "https://blog.scubbo.org/posts/a-dark-day-for-america/", "published_at": "2022-06-29T18:00:09+00:00" }, { "id": "01a08753-8476-710d-8fb0-d7a4b4f4b509", "title": "Criticisms of Web3", "url": "https://blog.scubbo.org/posts/criticisms-of-web3/", "published_at": "2022-06-15T20:05:45+00:00" }, { "id": "01a08753-8476-710d-8fb0-d7a4b5073914", "title": "Leave of Absence", "url": "https://blog.scubbo.org/posts/leave-of-absence.md/", "published_at": "2022-06-06T20:04:23+00:00" }, { "id": "01a08753-8476-710d-8fb0-d7a4b532d765", "title": "Page Source Link", "url": "https://blog.scubbo.org/posts/page-source-link/", "published_at": "2022-05-31T04:22:04+00:00" }, { "id": "01a08753-8476-710d-8fb0-d7a4b573beb5", "title": "Meditation", "url": "https://blog.scubbo.org/posts/meditation/", "published_at": "2022-05-30T20:00:39+00:00" }, { "id": "01a08753-8476-710d-8fb0-d7a4b605c824", "title": "Auto Screen", "url": "https://blog.scubbo.org/posts/auto-screen/", "published_at": "2022-05-17T00:42:11+00:00" }, { "id": "01a08753-8476-710d-8fb0-d7a4b651bed6", "title": "Write Only Mode for Twitter", "url": "https://blog.scubbo.org/posts/write-only-mode-for-twitter/", "published_at": "2022-05-08T19:45:44+00:00" }, { "id": "01a08753-8476-710d-8fb0-d7a4b6b641c4", "title": "Self Hosting Blog", "url": "https://blog.scubbo.org/posts/self-hosting-blog/", "published_at": "2022-05-03T02:01:33+00:00" }, { "id": "01a08753-8476-710d-8fb0-d7a4b702047b", "title": "The CrAbs Fallacy", "url": "https://blog.scubbo.org/posts/the-crabs-fallacy/", "published_at": "2022-04-03T19:25:57+00:00" }, { "id": "01a08753-8476-710d-8fb0-d7a4b7ef0aa2", "title": "Grafana Backup", "url": "https://blog.scubbo.org/posts/grafana-backup/", "published_at": "2022-01-23T19:02:55+00:00" }, { "id": "01a08753-8476-710d-8fb0-d7a4b8258add", "title": "Cheating at Word Games: Part 3", "url": "https://blog.scubbo.org/posts/cheating-at-word-games-part-3/", "published_at": "2022-01-05T15:50:29+00:00" }, { "id": "01a08753-8476-710d-8fb0-d7a4b9075be2", "title": "2021 in Books", "url": "https://blog.scubbo.org/posts/2021-in-books/", "published_at": "2021-12-30T16:29:09+00:00" }, { "id": "01a08753-8476-710d-8fb0-d7a4b9e1c4cb", "title": "Commenting Enabled", "url": "https://blog.scubbo.org/posts/commenting-enabled/", "published_at": "2021-12-30T14:31:00+00:00" }, { "id": "01a08753-8476-710d-8fb0-d7a4babd5d65", "title": "Cheating at Word Games: Part 2", "url": "https://blog.scubbo.org/posts/cheating-at-word-games-part-2/", "published_at": "2021-12-29T16:53:32+00:00" }, { "id": "01a08753-8476-710d-8fb0-d7a4bb1b93f2", "title": "Cheating at Word Games", "url": "https://blog.scubbo.org/posts/cheating-at-word-games/", "published_at": "2021-12-28T15:18:24+00:00" }, { "id": "01a08753-8476-710d-8fb0-d7a4bc0cf387", "title": "Intentoinal Errors", "url": "https://blog.scubbo.org/posts/intentoinal-errors/", "published_at": "2021-12-14T05:36:09+00:00" }, { "id": "01a08753-8476-710d-8fb0-d7a4bd0505bd", "title": "Check Your Backups", "url": "https://blog.scubbo.org/posts/check-your-backups/", "published_at": "2021-12-05T20:18:43+00:00" }, { "id": "01a08753-8476-710d-8fb0-d7a4bd39dd11", "title": "My First Post", "url": "https://blog.scubbo.org/posts/my-first-post/", "published_at": "2021-12-04T19:21:26+00:00" }, { "id": "01a08753-8476-710d-8fb0-d7a4be1daabc", "title": "Hills", "url": "https://blog.scubbo.org/hills/", "published_at": null }, { "id": "01a08753-8476-710d-8fb0-d7a4bf032e62", "title": "Tracking Info", "url": "https://blog.scubbo.org/tracking_info/", "published_at": null } ] posts Claim your blog
Back to blog.scubbo.org
Blog · corpus.blog/blogs/blog.scubbo.org/posts

blog.scubbo.org

blog.scubbo.org

2026

2025

2024

2023

2022

2021

Undated