Categories

Tags

All Articles

How to kill a query on Amazon Relational Database Service (RDS)

Coming from MySQL / MariaDB, I was surprised that I couldn’t kill a query on an Amazon’s Relational Database Service or Amazon Aurora with the kill command. Fortunately, the functionality isn’t omitted, it’ just buried under some AWS RDS specific command. Before we go over that, let’s go over how […]

Setting an authorization header when using file_get_contents with PHP

Going through some of my old lists of blog post ideas this weekend. While it’s not something I’ve needed for a minute, it’s still something worth taking about. How to set an authorization header when using PHP’s wonderful file_get_contents() method. Similar to an old post of mine talking about specifying […]

How to push an empty git commit

We’ve all been there. We need to trigger something from a commit to a git repository, and instead of triggering the build directly, we end up tweaking something in a file, committing it, and pushing it. It’s usually just adding a blank line (and subsequently removing it, depending on where […]

VPS Showdown - July 2021 - DigitalOcean vs. Lightsail vs. Linode vs. UpCloud vs. Vultr

I got a few bits of feedback recently that I took into consideration before doing this month’s benchmarks. The first bit was to include some additional price points and plan types instead of just the $5 plan. The other (opposing) bit of feedback was to start including some content that […]

Migrating from aws ecr get-login to aws ecr get-login-password

I’m not entirely sure when the change happens, but recently as I was upgrading AWS CodeBuilds to use a newer version of Ubuntu, I ran into some problems with aws ecr get-login. Without making any code changes, my build started to fail with the following: [Container] 2021/06/21 20:44:19 Running command […]

Get original URL from Bitly link

It’s been a while since I’ve actively engaged with a URL shortener, but recently I started to receive some text messages that contained Bitly links. The messages were phishing scams related to Coinbase, with a Bitly URL attached. Presumably, the link would take you to their site so you can […]

Using `find` with symbolic links

Symbolic links, or symlinks come in handy when you need to share directories with multiple directories and not have to worry about keeping each linked instance in sync. The problem with symlinks is that not every command-line utility supports them, and often times, they do support them, but it’s not […]

yay: error while loading shared libraries: libalpm.so.12

One of my favorite things about Arch Linux is the Arch User Repository (AUR). It’s a community maintained collection of packages for just about every damn thing you may want or need. One of my least favorite things about Arch Linux is that the Arch package manager, pacman doesn’t install […]

VPS Showdown - June 2021 - DigitalOcean vs. Lightsail vs. Linode vs. UpCloud vs. Vultr

Have had some requests for some comparisons of different plans (like the dedicated CPU offerings) and different price points, but considering it’s the last month of the quarter, I figured I would just stay the course and stick to the same comparisons as I’ve done the past few months. Next […]

Unlock user after too many failed sudo attempts

As many of you may already know, I tend to blog about the real-life problems that I’ve run into in the previous week or so. This makes it easy to come up with blog content, but also gives me a dedicated resource to reference if/when one of these problems pops […]

How to push to multiple git repos at once

A while back I fell in love with GitLab, specifically their GitLab Runners. This was at a time before GitHub had GitHub Actions, so I decided to move the majority of my git repositories over to GitLab. Fast forward a few years, GitHub has Actions, and more importantly, it seems […]

How to install Node.js 16 on Ubuntu 20.04 LTS

Ubuntu tends to drop a new version of their April release shortly after a new version of Node.js drops. Every other year, this Ubuntu release is a long-term support release, which has a longer shelf life in terms of support and maintenance compared to their interim releases. True to form […]

VPS Showdown - May 2021 - DigitalOcean vs. Lightsail vs. Linode vs. UpCloud vs. Vultr

Switching things up a small bit this month. Last month, I had introduced a “$6 VPS Showdown” as a separate post alongside my existing $5 post. This was all well and good, but best as I can figure, there’s no reason to have them split out, as most folks probably […]

Find unused `npm` dependencies

As much as I love to sling code, I love that we live in a world where you can stand on the shoulders of giants and easily leverage other people’s hard work by way of Open Source libraries. Simply referred to as “dependencies”, these little code gems can save a […]

Run command instead of alias

Recently, a buddy of mine was having some issues with Homebrew after upgrading to Big Sur. After doing the Googling he could have done on his own, I came to realize that he needed to manually upgrade to the latest version, that was compatible with Big Sur. He said he […]

Case statements in shell script

While I do love the command-line, and will throw shell script at most problems if it’s the right tool for the job, it’s actually fairly rare that I write case statements. Generally speaking, my shell scripts will usually interrogate a variable or two, never too crazy or anything. With that, […]

$6 VPS Showdown - April 2021 - DigitalOcean - Premium Intel vs. DigitalOcean - Premium AMD vs. Vultr - High Frequency

By popular demand, I am now doing a $6 VPS Showdown to compare the “premium” offerings from both DigitalOcean (which are fairly new) and Vultr (which have been around for a while). In the past, I did include Vultr’s High Frequency plan in my $5 VPS Showdowns, but it always […]

$5 VPS Showdown - April 2021 - DigitalOcean vs. Lightsail vs. Linode vs. UpCloud vs. Vultr

This month is some what of a special one. First, DigitalOcean recently had their IPO, which helps further legitimizes them as a company. Also, this marks the first month where I’m doing both a $5 and $6 VPS Showdown. I know some of you probably want to see a comparison […]

Repeating Strings in JavaScript

While cleaning up some of my old notes today, specifically stuff I jotted down that would make for a good blog topic, I happened upon the topic of repeating strings in JavaScript. Things are really easy in ES6+, but if you happen to still support Internet Explorer for some crazy […]

Uninstalling dev dependencies with npm

While looking into some deployment issues recently, I ran into some logic that was in dire need of being refactored. The logic in the build process was installing all dependencies with npm, then removing the node_modules directory, just to install the production dependencies again. Yes, you read that right, the […]

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 start seeing 404 error messages when you run pacman, yay, […]

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 when you attempt to rmdir a directory with files in […]

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 per month instead of $5. This new product offering lines […]

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 euphemism you can throw in to describe the situation. That […]

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 be a fun challenge to attempt to take a simple […]