41554 blogs · [ { "id": "01a0878a-c00c-71dd-9919-a34897729818", "title": "Beyond SBOMs: making license data actionable with ClearlyDefined", "url": "https://jamiemagee.co.uk/blog/beyond-sboms-making-license-data-actionable/", "published_at": "2026-06-03T00:00:00+00:00" }, { "id": "01a0878a-c00c-71dd-9919-a348982698da", "title": "A new way to catch a vulnerable .NET SDK", "url": "https://jamiemagee.co.uk/blog/a-new-way-to-catch-a-vulnerable-dotnet-sdk/", "published_at": "2026-05-22T00:00:00+00:00" }, { "id": "01a0878a-c00c-71dd-9919-a348982fc3f8", "title": "Specialized Turbo e-bikes in Home Assistant", "url": "https://jamiemagee.co.uk/blog/specialized-turbo-in-home-assistant/", "published_at": "2026-02-16T00:00:00+00:00" }, { "id": "01a0878a-c00c-71dd-9919-a348989cfa15", "title": "Wombat Dressing Room meets its match", "url": "https://jamiemagee.co.uk/blog/wombat-dressing-room-meets-its-match/", "published_at": "2025-11-10T00:00:00+00:00" }, { "id": "01a0878a-c00c-71dd-9919-a34898f465d0", "title": "Understanding .NET Base Class Library Vulnerabilities", "url": "https://jamiemagee.co.uk/blog/understanding-dotnet-base-class-library-vulnerabilities/", "published_at": "2025-07-17T00:00:00+00:00" }, { "id": "01a0878a-c00c-71dd-9919-a34898f7f287", "title": "Honey, I shrunk the npm package", "url": "https://jamiemagee.co.uk/blog/honey-i-shrunk-the-npm-package/", "published_at": "2023-09-27T00:00:00+00:00" }, { "id": "01a0878a-c00d-703d-8484-5e08a98b5cad", "title": "Container Plumbing Days 2023—Windows containers: The forgotten stepchild", "url": "https://jamiemagee.co.uk/blog/container-plumbing-days-2023-windows-containers/", "published_at": "2023-05-05T00:00:00+00:00" }, { "id": "01a0878a-c00d-703d-8484-5e08aa2eceef", "title": "Your Jest tests might be wrong", "url": "https://jamiemagee.co.uk/blog/your-jest-tests-might-be-wrong/", "published_at": "2023-05-04T00:00:00+00:00" }, { "id": "01a0878a-c00d-703d-8484-5e08ab1fbe92", "title": "Maintaining AUR packages with Renovate", "url": "https://jamiemagee.co.uk/blog/maintaining-aur-packages-with-renovate/", "published_at": "2023-03-16T00:00:00+00:00" }, { "id": "01a0878a-c00d-703d-8484-5e08ab89e163", "title": "Scanning Windows container images is (surprisingly) easy!", "url": "https://jamiemagee.co.uk/blog/scanning-windows-container-images-is-surprisingly-easy/", "published_at": "2023-01-02T00:00:00+00:00" }, { "id": "01a0878a-c00d-703d-8484-5e08abe4cb36", "title": "Making the most of GitHub rate limits", "url": "https://jamiemagee.co.uk/blog/making-the-most-of-github-rate-limits/", "published_at": "2022-07-26T08:19:08+00:00" }, { "id": "01a0878a-c00d-703d-8484-5e08ac6c8a1d", "title": "Writing GitHub bots in .NET", "url": "https://jamiemagee.co.uk/blog/writing-github-bots-in-net/", "published_at": "2022-03-04T05:40:46+00:00" }, { "id": "01a0878a-c00d-703d-8484-5e08ad5988d6", "title": "Netlify billing Denial-of-Service", "url": "https://jamiemagee.co.uk/blog/netlify-billing-denial-of-service/", "published_at": "2021-04-11T00:00:00+00:00" }, { "id": "01a0878a-c00d-703d-8484-5e08adbd6356", "title": "Tech stack #10YearChallenge", "url": "https://jamiemagee.co.uk/blog/tech-stack-10-year-challenge/", "published_at": "2020-12-21T00:00:00+00:00" }, { "id": "01a0878a-c00d-703d-8484-5e08adfc11dd", "title": "Common async pitfalls—part two", "url": "https://jamiemagee.co.uk/blog/common-async-pitfalls-part-two/", "published_at": "2020-11-28T00:00:00+00:00" }, { "id": "01a0878a-c00d-703d-8484-5e08ae08e91b", "title": "Common async pitfalls—part one", "url": "https://jamiemagee.co.uk/blog/common-async-pitfalls-part-one/", "published_at": "2020-11-17T00:00:00+00:00" }, { "id": "01a0878a-c00d-703d-8484-5e08ae4d4e6d", "title": "Zwift on Linux", "url": "https://jamiemagee.co.uk/blog/zwift-on-linux/", "published_at": "2020-04-07T00:00:00+00:00" }, { "id": "01a0878a-c00d-703d-8484-5e08af413baa", "title": "How to host your Helm chart repository on GitHub", "url": "https://jamiemagee.co.uk/blog/how-to-host-your-helm-chart-repository-on-github/", "published_at": "2020-04-02T00:00:00+00:00" }, { "id": "01a0878a-c00d-703d-8484-5e08b0314143", "title": "7 tips for converting C# code to async/await", "url": "https://jamiemagee.co.uk/blog/7-tips-for-converting-csharp-code-to-async-await/", "published_at": "2020-03-16T00:00:00+00:00" }, { "id": "01a0878a-c00d-703d-8484-5e08b0b3bff3", "title": "Automated Dependency Updates", "url": "https://jamiemagee.co.uk/blog/automated-dependency-updates/", "published_at": "2019-10-23T13:51:01+00:00" }, { "id": "01a0878a-c00d-703d-8484-5e08b11f7cd6", "title": "Access: Hack The Box writeup", "url": "https://jamiemagee.co.uk/blog/access-htb-writeup/", "published_at": "2019-03-02T00:00:00+00:00" }, { "id": "01a0878a-c00d-703d-8484-5e08b17408a8", "title": "Twitter Hashflags (_Hash-what?_)", "url": "https://jamiemagee.co.uk/blog/twitter-hashflags/", "published_at": "2018-03-28T00:00:00+00:00" }, { "id": "01a0878a-c00d-703d-8484-5e08b1b908de", "title": "A survey of robots.txt - part two", "url": "https://jamiemagee.co.uk/blog/a-survey-of-robots-txt-part-two/", "published_at": "2018-03-22T00:00:00+00:00" }, { "id": "01a0878a-c00d-703d-8484-5e08b1cc62a0", "title": "A survey of robots.txt - part one", "url": "https://jamiemagee.co.uk/blog/a-survey-of-robots-txt-part-one/", "published_at": "2017-09-19T00:00:00+00:00" }, { "id": "01a0878a-c00d-703d-8484-5e08b2b8faa1", "title": "Setting up nginx reverse proxy with Let's Encrypt on unRAID", "url": "https://jamiemagee.co.uk/blog/setting-up-nginx-reverse-proxy-with-lets-encrypt-on-unraid/", "published_at": "2016-03-28T00:00:00+00:00" }, { "id": "01a0878a-c00d-703d-8484-5e08b34b1a17", "title": "Do you really want \"bank grade\" security in your SSL? Danish edition", "url": "https://jamiemagee.co.uk/blog/do-you-want-bank-grade-ssl-danish-edition/", "published_at": "2015-05-06T00:00:00+00:00" }, { "id": "01a0878a-c00d-703d-8484-5e08b3d5b5b8", "title": "Continuously deploy Jekyll to Azure Web Apps", "url": "https://jamiemagee.co.uk/blog/continuous-deployment-jekyll-to-azure/", "published_at": "2015-03-31T00:00:00+00:00" }, { "id": "01a0878a-c00d-703d-8484-5e08b3ffdc67", "title": "About", "url": "https://jamiemagee.co.uk/about/", "published_at": null } ] posts Claim your blog
Back to Jamie Magee · Programmer, Engineer, Problem Solver
Blog · corpus.blog/blogs/jamiemagee.co.uk/posts

Jamie Magee · Programmer, Engineer, Problem Solver

jamiemagee.co.uk

2026

2025

2023

2022

2021

2020

2019

2018

2017

2016

2015

Undated