With Blue Ink

Tales of surfing the Cloud

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

Learnings from real-world experience with IPFS, and the curious stack that powers this website


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

An open source static site generator for a fully-trustless digital legacy box


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

Never heard of Unicode normalization? You’re not alone. But it will save you a lot of trouble.


Node.js web apps in Ubuntu, production-ready

Step-by-step instructions for running Node.js in production with systemd


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

Static website development for the "Web 3.0", and optional CI/CD with Azure DevOps


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

A world of apps and tools finally working with Azure Storage, in just 5 minutes!


Solving FreeNAS jails on a dedicated NIC

A simple, working solution for jails in different VLANs, or just with dedicated IPs


Getting started with ZFS on FreeBSD on Azure

Enterprise-class storage for your data disks, with optional encryption


Adding a NuGet package source on macOS and Linux

How to unblock MyGet and other custom feeds


Stop SSH brute force attempts

Three effective tips to stop bots that won't harm you in the process