Author: Josh Sherman
-
VPS Showdown – November 2024 – DigitalOcean vs. Linode vs. Vultr
After a little detour last month, comparing some higher priced plans, I brought it back down to the $5-ish range. Vultr nearly didn’t make the cut, as their site and login started to puke errors at the same time that I was starting to spin instances up. Fortunately it recovered after a few minutes, and…
-
Client-side environment variables with Next.js
Next.js does a great job with environment variables. Out of the box, it supports loading up environment variables in next.config.js as well as using a .env file. Both of which are made available inside of server components. For client-side components though, you don’t get direct access to environment variables from both locations. The Next.js config…
-
Switching to Alacritty: A Fast and Efficient Terminal
I finally went all in on switching to Alacritty. For the longest time, I’ve been a bit reluctant, sticking it out with the default terminal of my operating system du jour. On Linux, running GNOME, the GNOME Terminal was more than sufficient. Terminal.app on macOS irks me due to how the window based on the…
-
ModuleNotFoundError: No module named ‘trimage’ on Arch Linux
It’s been a minute since I’ve last used Trimage. I probably installed it when I had initially setup Arch Linux on this system. Curious about whether or not an image that was part of a pull request I was reviewing could be improved, I launched the app. Much to my dismay, nothing happened. No flash…
-
VPS Showdown – October 2024 – DigitalOcean vs. Linode vs. Vultr
Time for the spooky season edition of the VPS Showdown. The last few months have been a lot of the same, so I decided to take another crack at trying to do an apples to apples comparison, focusing on price. Even though DigitalOcean lacks a $5 plan, as the plans increase, they eventually offer a…
-
Including Dev Dependencies in a DigitalOcean App Platform Build
When working with dependencies in a DigitalOcean App Platform build, there are time when you may need to include development dependencies. Such instances arise when you’re using something like TypeScript, which you’d typically have listed in your devDependencies because it’s not a necessary dependency once you’ve transpiled your code and shipped it to production. Out…
-
How to Delete from a Table with Foreign Key Constraints in MySQL
I hate foreign keys. They are rarely implemented properly, often times failing to implement cascading deletes and updates. Sure, the concept is sound, and relationships are the first letter in RDBMS, I personally avoid using foreign keys as I find the potential for orphaned data to be way more manageable. While I don’t use foreign…
-
Quick Guide to Boss Materials in Diablo IV
Updated for Season 6 and Vessel of Hatred Similar to my quick guide to mythic uniques (which aged like milk when they made things purple) I have memory problems when it comes to which bosses need which materials, and how many. Sure, I could look at the items to see where they are supposed to…
-
Targeting the Home Page with Google Tag Manager
Recently I was adding a code snippet to a website, with the explicit requirement to not include the code on the home page. This was being done via Google Tag Manager, and we already had some triggers in place to target the home page, great! Until I went to test, and it turns out the…
-
VPS Showdown – September 2024 – DigitalOcean vs. Linode vs. Vultr
Labor Day weekend, and I’m trying to drum up the inspiration to run some VPS benchmarks. I’m sticking to the theme of comparing like processors, of the AMD variety. I spun up 3 (or 4, more on that later) instances with each provider, all running Ubuntu 24.04 LTS. The results have been averaged, when applicable.…