Aws The Curious Case of CloudFront Origin Custom Headers Long origin custom headers can lead to 403 errors for S3 static website origins. Are there implicit restrictions in place?
Visual studio code Native VS Code Spell Checking on macOS Fond of VS Code on macOS but missing a proper spell checker? Here's how to leverage the macOS system dictionary.
Chrome os Installing Community-Built VS Code on a Chromebook Like VS Code but not the official one? Got a Chromebook capable of running Linux Apps? Here's how to get the best of both.
Youtube2audiobook Introducing WebP Thumbnail Support Struggling with the new WebP thumbnail format on YouTube? The improved YouTube2Audiobook has all you need!
Youtube2audiobook Introducing Anti-Throttling Support Struggling with throttling when downloading multiple YouTube videos? The improved YouTube2Audiobook has you covered!
Youtube2audiobook Introducing Playlist Support Need to download all videos in a playlist from YouTube? Then the improved YouTube2Audiobook has all you need!
Photography Batch Renaming Google Camera App Portraits Got countless directories after taking portraits with the Google Camera App? Here's how to batch rename the files into a single directory.
Chrome os Securely Exchange Files over HTTP Need to exchange sensitive files between two machines over HTTP? Here's how to do it securely!
Chrome os Installing VS Code on a Chromebook Like VS Code? Got a Chromebook capable of running Linux Apps? Here's how to get the best of both.
Thoughts Dates and Times for Truly Everyone Why 01/06/2020 is neither in June nor in January. But just wrong. Why it's rather 2020-06-01. And everyone benefits.
Thoughts WiFi Names with a Clear Message Looking for a new WiFi name? Unhappy with "ISP Ad Here-123" or freeloaders? Here are some WiFi names that send a clear message.
Thoughts Prove me Wrong and I'll Buy You a Pint! Why I put a bug bounty on my personal errors. How actively looking for disconfirming evidence allows me to learn cheap. And why you should too.
Thoughts Building Software for the Modern Era The not-too-serious but absolutely foolproof missing manual for modern engineering practices: From understanding the problem to declaring success in eleven (not so) easy steps.
Youtube2audiobook Listen to YouTube Want to listen to YouTube on your phone? Offline. With the screen turned off. Then the improved Youtube2Audiobook has all you need.
Thoughts A Homage to a Mentor Who Never Knew He Was One Numerous people have shaped my life. Only very few as much as a key mentor of mine. Who never knew he was one. This is for him.
Thoughts The Power of Mentoring and You Always wondered what mentoring is all about? Here's what a mentor does and where to find one. And why you should have a mentor too.
Bash A Basic Directories Diff Need to find out if two directories contain the same files? Here's how to do it in a basic fashion. As a Github Gist.
Ghost Getting All Draft Posts from Ghost Mirroring your glorious Ghost blog but missing out on those drafts you don't want the world to see just yet? Here's how to download them using the Admin API.
Macos Batch Rotating Images on macOS Need to rotate a bunch of images on macOS but don't want to use Preview? Here's how to do it in Terminal using native tools.
Cybersecurity Keeping cURL's Hands Out of the Cookie Jar Using cURL and having to store cookies between requests but don't want to save them to file? Here's how to keep them purely in memory.
Thoughts My Reading List Want to know what makes me tick? Then a selection of books I've read in the past should give you an insight into what has shaped and influenced my thinking.
Cybersecurity Ready to Use OpenVPN Servers in AWS For Everyone Reclaim some lost privacy and security by using a fully automated OpenVPN server solution in AWS! Readily available as a one-stop Terraform module on GitHub.
Youtube2audiobook Continuously Listen to YouTube Audiobooks on Your Phone An end-to-end solution for downloading any YouTube video as an audiobook and listening to it on your phone. While keeping track of playback positions. Even during app restarts and system reboots. Readily available as a Bash script on GitHub.
Bash Transfer Files to Your Mobile By Scanning a QR Code Easily transfer the contents of any directory from your Mac to your mobile using Python and an automatically generated QR code. Readily available as a Bash script on GitHub.
Gke When GKE Tells Your Terraform Service Account to Go Away GKE tells you 'Error 400/403: Missing edit permissions on account' but actually something else is off. More fundamental. But easy to fix.
Thoughts Why I Focus on Not Building Things (as an Architect) Stop building. Start Reusing. Get some Sellotape and get going. Because the best system I've ever built is the system I've never built!
Kubernetes Build Your Own Helm Chart Repository in S3 — With Auto-Generated User Documentation! Helm chart repositories for everyone. With auto-generated clear instructions on how to add, search, and remove the repository. Right from the repository. Because user documentation matters. Readily available as a Terraform module on GitHub.
Post2ghost Introducing Post2Ghost and "Articles as Code" for a GitOps Workflow in Ghost A GitOps inspired workflow for "articles as code"! From your favourite editor and Git straight to the API. Stop the copy and paste madness and start using Post2Ghost. Readily available as a Python3 CLI app on GitHub.
Photography QNAP Glacier IAM User An AWS IAM User (including access keys and secret access keys) with a minimum set of permissions that seamlessly works with the QNAP Glacier app. Readily available as a Terraform module on GitHub.
Aws AWS Logging Buckets AWS S3 logging buckets that can be used with EC2, VPC, S3, ELB, CloudTrail, CloudFront, CloudWatch, ECS, SNS, and OpsWorks. Readily available as a Terraform module on GitHub.