RSSAmplifier

Blog

Random Errata

My ramblings about technology, programming, and whatever pops into my head

randomerrata.comRSS feed ↗10 posts

Latest posts

Piranhas is no more

Due to circumstances beyond my control, Piranhas has unfortunately been discontinued. Over the years, running this service has become increasingly difficult. First of all, over the years Piranhas has lost access to some Amazon alternatives. Book Depository was first purchased by Amazon and then shut down entirely . Wordery summarily shut down their affiliate programme and API access and is in fact…

Once more unto the breach

I’m pretty sure that after every conference that I’ve ever organised, I’ve loudly proclaimed that my organising days were behind me. Yet here we are. Hope to see you at tiny ruby #{conf} in November.

DJI drone videos and Apple Photos

If you own a DJI drone and have imported videos from it to your Apple Photos library, you may have noticed that the GPS coordinates are not recognised in Apple’s software. This is because DJI writes the GPS data to a different metadata field than what Photos.app expects. I don’t know if this is a bug on DJI’s or Apple’s side, but it’s annoying nonetheless. Luckily, we can use exiftool to extract…

Beer Styles 3.0

Beer Styles 3.0.0 3.3. seems like the perfect date on which to launch version 3 of my Beer Styles app. Eight years since the last major update, this new version is a complete rewrite of the app. It’s faster, more responsive, and easier to use than ever. Headline features: The app has been entirely rebuilt with SwiftUI and is snappier and sleeker than ever Now includes the 2021 BJCP beer…

Taffy image

Just a quick experiment trying to use the Taffy layout library and image-builder crates to layout and build images in Rust. This worked well enough to satiate my curiosity and could, for example, generate social share images à la @vercel/og . Note: image-builder currently has a bug that causes text rendering to look a bit mushy. The code below references this super pretty logo and IBM Plex Sans…

GitHub stars are not an invitation to send me spam

Starring your repo on GitHub doesn’t mean that I ever want to receive your spammy emails. I’m well aware that finding my email address through GitHub is not only possible but even trivial, but that still doesn’t make it okay for you to be a dick about it. ⭐️ I considered whether I should redact the name of the project from the email, but bad behaviour deserves to be called out.

A very rough guide to notarizing CLI apps for macOS

I just added code signing and notarization for PaperAge macOS binaries using GitHub Actions, so here’s a very rough guide to how I did it. Background I use GitHub actions for the PaperAge release process, as documented in a previous blog post . The tl;dr process looks something like this: A new release is tagged using cargo-release A draft release is created on GitHub PaperAge is built for all…

On-demand image resizing with Bridgetown

As I recently migrated this blog from Middleman to Bridgetown , I thought I could document one of my Bridgetown customizations: on-demand or build-time image resizing. Notes In this approach, the originals are stored in the frontend/ directory and should therefore be also accessible via the Bridgetown built-in asset_path helper or through esbuild imports. The resized images are stored in…

Non-scientific hash benchmarks

Which Ruby hash or message digest algorithm is the speediest in Ruby? My cursory Googling didn’t surface an up-to-date benchmark from anyone else so here are some rough results of my own. Note: These algorithms are not all equivalent so don’t just blindly pick the fastest one! CRC32, MurmurHash, xxHash, and CityHash are all non-cryptographic. Ruby stdlib: MD5 SHA1 / SHA256 / SHA512 Zlib CRC32…

Simple syrup calculator

Simple syrup is an extremely common ingredient in cocktails and, as the name implies, very simple to make: it’s just sugar and water in a 1:1 ratio. What’s slightly less easy is knowing how much water and sugar to measure out to get a given volume of syrup. My calculator uses the densities of water (1g/ml) and crystalline sucrose ( 1.5862g/ml ) to do a fairly naïve estimation of the final volume.…