Blog

Recently published articles on With Blue Ink

AI agents and the new economics of account takeover

May 20, 2026

Unlocking Encrypted ZFS Volumes with a Passkey

May 9, 2026

Business logic does not (usually) belong in the database

March 4, 2026

On Designing a Distributed Actor Framework

January 20, 2026

Building with Distributed Actors

November 19, 2025

High Availability over Tailscale with DNS-based Load Balancing

September 23, 2025

A new architecture for Hereditas v0.3

March 29, 2023

Essential Cryptography for JavaScript Developers

March 1, 2022

Why storing secrets and passwords in Git is a bad idea

May 7, 2021

Developing x86 apps on ARM with VS Code

March 11, 2021

Maybe we shouldn't want a fully decentralized web

November 12, 2020

Go, WebAssembly, HTTP requests and Promises

October 3, 2020

That time I accidentally built a spying app

September 24, 2020

Docker and Docker Compose on Raspberry Pi OS

June 24, 2020

Is this a dependency or devDependency?

June 7, 2020

How (and why) to sign Git commits

May 17, 2020

Please everyone, stop writing your own user authentication code

April 8, 2020

Watch: JavaScript apps going Inter-Planetary

January 21, 2020

Auto-mounting encrypted drives with a remote key on Linux

January 19, 2020

Your next app may not have a backend

November 16, 2019

Reinstalling pfSense and restoring from backup

September 14, 2019

How to pass variables in Azure Pipelines YAML tasks

August 5, 2019

Cloud native, container-ready PHP

July 24, 2019

Yes, you can run Docker on Raspbian

July 13, 2019

I loved jQuery, and still do

April 12, 2019

Getting TLS certificates from Azure Key Vault with Go

April 7, 2019

Hugo and IPFS: how this blog works (and scales to serve 5,000% spikes instantly!)

March 20, 2019

What happens to your digital life after you're gone? Introducing Hereditas

March 18, 2019

When "Zoë" !== "Zoë". Or why you need to normalize Unicode strings

March 11, 2019

Node.js web apps in Ubuntu, production-ready

December 2, 2018

Distributed Web: host your website with IPFS clusters, Cloudflare, and DevOps

November 14, 2018

How to use s3cmd and any other Amazon S3-compatible app with Azure Blob Storage

October 29, 2017

Solving FreeNAS jails on a dedicated NIC

September 17, 2017

Getting started with ZFS on FreeBSD on Azure

October 21, 2016

Adding a NuGet package source on macOS and Linux

September 25, 2016

Stop SSH brute force attempts

July 15, 2016

What I learnt from using WD Red disks to build a home NAS

July 15, 2016

Automation for MariaDB/Galera Cluster setup (Part 2)

May 12, 2016

Galera cluster, MariaDB, CoreOS and Docker (Part 1)

March 9, 2016

Create a RHEL 6 image for Microsoft Azure

January 9, 2016

Preparing a Red Hat Enterprise Linux 7 image for Azure using VirtualBox

December 22, 2015