41554 blogs · [ { "id": "01a087bd-85e8-71d0-9ecd-caa51b97abab", "title": "Open invite: play chess with me", "url": "https://patrickod.com/2026/01/05/open-invite-play-chess-with-me/", "published_at": "2026-01-05T00:00:00+00:00" }, { "id": "01a087bd-85ea-70f1-949d-f4fba8e25459", "title": "It's going to happen", "url": "https://patrickod.com/2026/01/03/its-going-to-happen/", "published_at": "2026-01-03T16:08:00+00:00" }, { "id": "01a087bd-85ea-70f1-949d-f4fba9494dbe", "title": "til: FaceTime has built-in screen share and remote control", "url": "https://patrickod.com/2025/12/14/til-facetime-has-built-in-screen-share-and-remote-control/", "published_at": "2025-12-14T19:00:33+00:00" }, { "id": "01a087bd-85ea-70f1-949d-f4fbaa31880b", "title": "til: Using `virt-customize` to modify VM images", "url": "https://patrickod.com/2025/11/22/til-using-virt-customize-to-modify-vm-images/", "published_at": "2025-11-22T18:08:40+00:00" }, { "id": "01a087bd-85ea-70f1-949d-f4fbaaa83796", "title": "Game recommendation: Spilled!", "url": "https://patrickod.com/2025/11/02/game-recommendation-spilled/", "published_at": "2025-11-02T22:07:45+00:00" }, { "id": "01a087bd-85ea-70f1-949d-f4fbab2e631b", "title": "til: Adding Tailscale to OpenWrt backups", "url": "https://patrickod.com/2025/05/18/til-adding-tailscale-to-openwrt-backups/", "published_at": "2025-05-18T00:00:00+00:00" }, { "id": "01a087bd-85ea-70f1-949d-f4fbabdfe28b", "title": "til: Making self-contained Python executables using PyInstaller", "url": "https://patrickod.com/2025/05/11/til-making-self-contained-python-executables-using-pyinstaller/", "published_at": "2025-05-11T19:24:38+00:00" }, { "id": "01a087bd-85ea-70f1-949d-f4fbac0b1869", "title": "til: You can `git clone` Github gists", "url": "https://patrickod.com/2025/04/07/til-you-can-git-clone-github-gists/", "published_at": "2025-04-08T01:26:06+00:00" }, { "id": "01a087bd-85ea-70f1-949d-f4fbac4af7c8", "title": "til: NVIDIA DLSS 4 Multi Frame Generation requires HAGS", "url": "https://patrickod.com/2025/03/28/til-nvidia-dlss-4-multi-frame-generation-requires-hags/", "published_at": "2025-03-29T04:55:43+00:00" }, { "id": "01a087bd-85ea-70f1-949d-f4fbac8b2c9e", "title": "til: Using htmltest to find broken links in your blog", "url": "https://patrickod.com/2023/05/06/til-using-htmltest-to-find-broken-links-in-your-blog/", "published_at": "2023-05-06T18:30:14+00:00" }, { "id": "01a087bd-85ea-70f1-949d-f4fbacd81e88", "title": "til: Addressing S3 URIs with Pandas using s3fs", "url": "https://patrickod.com/2023/05/05/til-addressing-s3-uris-with-pandas-using-s3fs/", "published_at": "2023-05-06T02:47:07+00:00" }, { "id": "01a087bd-85ea-70f1-949d-f4fbad3997c8", "title": "til: About the `/.well-known/change-password` URI", "url": "https://patrickod.com/2023/05/04/til-about-the-well-known-change-password-uri/", "published_at": "2023-05-05T02:42:42+00:00" }, { "id": "01a087bd-85ea-70f1-949d-f4fbadd908b4", "title": "My Favourite Pen and Paper", "url": "https://patrickod.com/2022/12/17/my-favourite-pen-and-paper/", "published_at": "2022-12-18T02:07:10+00:00" }, { "id": "01a087bd-85eb-73f6-8b00-5db4d7d919e4", "title": "til: A simple ETL task in Airflow using PostgresHook", "url": "https://patrickod.com/2022/11/29/til-a-simple-etl-task-in-airflow-using-postgreshook/", "published_at": "2022-11-30T04:20:58+00:00" }, { "id": "01a087bd-85eb-73f6-8b00-5db4d81e7142", "title": "Secure Developer Podcast EP 111 - Alignment, Agility, and Security", "url": "https://patrickod.com/2022/02/13/secure-developer-podcast-ep-111-alignment-agility-and-security/", "published_at": "2022-02-13T22:35:43+00:00" }, { "id": "01a087bd-85eb-73f6-8b00-5db4d853d7b3", "title": "Share early, share often", "url": "https://patrickod.com/2020/02/11/share-early-share-often/", "published_at": "2020-02-12T01:00:00+00:00" }, { "id": "01a087bd-85eb-73f6-8b00-5db4d8f60323", "title": "Making a More Accessible Web", "url": "https://patrickod.com/2019/01/26/making-a-more-accessible-web/", "published_at": "2019-01-27T03:31:33+00:00" }, { "id": "01a087bd-85eb-73f6-8b00-5db4d9a0a582", "title": "Current projects", "url": "https://patrickod.com/projects/", "published_at": "2019-01-26T18:00:00+00:00" }, { "id": "01a087bd-85eb-73f6-8b00-5db4da8b855a", "title": "Making again", "url": "https://patrickod.com/2019/01/24/making-again/", "published_at": "2019-01-24T20:00:00+00:00" }, { "id": "01a087bd-85eb-73f6-8b00-5db4db7a6b55", "title": "A brief musical journey", "url": "https://patrickod.com/2019/01/24/a-brief-musical-journey/", "published_at": "2019-01-24T18:00:00+00:00" }, { "id": "01a087bd-85eb-73f6-8b00-5db4dc5f608b", "title": "About Me", "url": "https://patrickod.com/about/", "published_at": "2019-01-24T18:00:00+00:00" }, { "id": "01a087bd-85eb-73f6-8b00-5db4dcec7095", "title": "Hugo", "url": "https://patrickod.com/2016/10/23/hugo/", "published_at": "2016-10-23T15:26:00+00:00" }, { "id": "01a087bd-85eb-73f6-8b00-5db4ddc0d8f1", "title": "No more snowflakes", "url": "https://patrickod.com/2016/01/30/no-more-snowflakes/", "published_at": "2016-01-30T15:17:17+00:00" }, { "id": "01a087bd-85eb-73f6-8b00-5db4deb8b3d7", "title": "Running, reading, blue hair, and orbital mechanics", "url": "https://patrickod.com/2015/06/14/running-reading-blue-hair-and-orbital-mechanics/", "published_at": "2015-06-14T15:18:47+00:00" }, { "id": "01a087bd-85eb-73f6-8b00-5db4df7cae09", "title": "Rust barcode scanner v0.1, Freecon, and exercise", "url": "https://patrickod.com/2015/05/30/rust-barcode-scanner-v0-dot-1-freecon-and-exercise/", "published_at": "2015-05-30T15:16:03+00:00" }, { "id": "01a087bd-85eb-73f6-8b00-5db4e032367b", "title": "Breaking radio silence", "url": "https://patrickod.com/2015/05/17/breaking-radio-silence/", "published_at": "2015-05-17T23:50:17+00:00" }, { "id": "01a087bd-85eb-73f6-8b00-5db4e0499b14", "title": "Linux Fest North West & Hackers on a Train recap", "url": "https://patrickod.com/2015/04/26/linux-fest-north-west-and-hackers-on-a-train-recap/", "published_at": "2015-04-26T20:10:11+00:00" }, { "id": "01a087bd-85eb-73f6-8b00-5db4e0ae3a20", "title": "Thoughts on teaching crypto to journalists", "url": "https://patrickod.com/2015/04/05/thoughts-on-teaching-crypto-to-journalists/", "published_at": "2015-04-05T17:34:28+00:00" }, { "id": "01a087bd-85eb-73f6-8b00-5db4e140b4a6", "title": "Cycling bikes is fun", "url": "https://patrickod.com/2015/03/25/cycling-bikes-is-fun/", "published_at": "2015-03-25T20:50:14+00:00" }, { "id": "01a087bd-85eb-73f6-8b00-5db4e1472cab", "title": "Anti-pattern checkin week #3", "url": "https://patrickod.com/2015/03/22/anti-pattern-checkin-week-number-3/", "published_at": "2015-03-22T23:05:14+00:00" }, { "id": "01a087bd-85ec-7063-9554-b8b13590f11c", "title": "Don't lock your data in proprietary products: Or, why I'm replacing my Drobo with a FreeNAS box", "url": "https://patrickod.com/2015/03/15/dont-lock-your-data-in-proprietary-products/", "published_at": "2015-03-15T21:47:19+00:00" }, { "id": "01a087bd-85ec-7063-9554-b8b13601fd78", "title": "Iron Blogger: It begins", "url": "https://patrickod.com/2015/03/08/iron-blogger-it-begins/", "published_at": "2015-03-08T22:59:51+00:00" }, { "id": "01a087bd-85ec-7063-9554-b8b136f6b68e", "title": "Linux Fest North West - Hackers on a train", "url": "https://patrickod.com/2015/02/14/linux-fest-north-west-hackers-on-a-train/", "published_at": "2015-02-14T22:00:22+00:00" }, { "id": "01a087bd-85ec-7063-9554-b8b1372fdd86", "title": "2015: Resolutions", "url": "https://patrickod.com/2015/01/01/2015-resolutions/", "published_at": "2015-01-01T14:38:57+00:00" }, { "id": "01a087bd-85ec-7063-9554-b8b1373a53d1", "title": "Reading mailing list archives with Python: Noisechain Pt. 1", "url": "https://patrickod.com/2014/11/23/reading-mailing-list-archives-with-python/", "published_at": "2014-11-23T23:12:20+00:00" } ] posts Claim your blog
Back to patrickod.com
Blog · corpus.blog/blogs/patrickod.com/posts

patrickod.com

patrickod.com

2026

2025

2023

2022

2020

2019

2016

23 Oct 2016

2015

2014