Blog
Automatically update Arch Linux mirrors
Arch Linux is still my favorite Linux distro for desktop use and once you get it set up (which may take you a few tries, if it's your first foray) it tends to be pretty solid. That is, until you…
Delete all files in an S3 bucket
Last year I had sunset a project that was using both AWS' S3 and Linode's S3-compatible object storage offering. After pulling down some final snapshots, I wanted to delete the buckets on both services. Similar to the error you receive…
VPS Showdown - March 2021 - DigitalOcean vs. Lightsail vs. Linode vs. UpCloud vs. Vultr
Hot on the heels of Linode offering up AMD EPYC processors, DigitalOcean has started to offer "premium" CPUs as part of their Shared CPU Basic plans. Unfortunately, this new offering comes with a slightly elevated price, clocking in at $6…
Phoning it in
I pride myself on never phoning it in. I'm a passionate individual and I try to always bring that fire into whatever I'm doing. I'm a big believer in Extreme Ownership and giving 110%, cranking it 11, or whatever other…
Overengineering Challenge: Is Number Even or Odd in JavaScript
Code golfing is fun, and makes for great blog posts. The problem is, the world is flooded with posts attempting to show you how to write the best / most concise code imaginable. With that, I decided that it would…
GNOME screen locking not working
I love Linux, but every so often something happens that makes me question whether or not my love affair since the mid-1990s is true love or just Stockholm syndrome. One such instance happened recently when, for no explicable reason, my…
VPS Showdown - February 2021 - DigitalOcean vs. Lightsail vs. Linode vs. UpCloud vs. Vultr
It was just last month that I had added a bit more information about the CPUs that each provider was reporting. Wouldn't you know it, this month the Linode instances tested were reporting AMD EPYC 7542 32 Core Processors, same…
Search and replace filenames
Recently, while working with a bunch of files, I came to realize that I needed to rename every single file. Not just that, I only needed to rename a small bit of the filename. If I was working with a…
Recursively create directories with Node.js
Recently, while working on a new project, I needed to create a series of nested directories. From the command-line, it's easy enough, just pass -p to mkdir and it will create all of the parent directories automatically. With modern versions…
Broken icons on OpenWeather GNOME Extension
I don't use many GNOME Extensions. Nothing against them, but less extensions means less crap to break when the latest GNOME release drops. For the most part, I opt for extensions that well maintained and not prone to breaking between…