RSS.Social

VADOSWARE

follow: @[email protected]

Posts

Stop Using Merge Commits

Fixing Pinentry With Emacs

Yet Another IPC in Rust Experiment

From Zellij to Tmux Back to Zellij

Starting locally installed Postgres instances in 2024

Getting Features to Show Up in Your Rust Docs

A Year Hiatus with Rust and Webassembly

Building Custom Kernels for Kata Containers

Fixing GPGME Error on Arch

Makefile Tips: help text and preambles

Software Sessions: Yak-shaving interview (2022)

Faster CI builds for Rust with pre-baked builder images and sccache

PSA: Email Submission should be on port 465

Tooling spotlight: direnv

PSA: Getting __dirname and Package Information with ES Modules

Introducing the Awesome F/OSS Newsletter

The Preamble to Crypto might have just ended

TIL: How to Import or Open .ics Files in the Calendar App (iOS)

Remember the Firefox Phone?

App Runner finally works on Apex domains

Introducing pg_idkit: A Postgres extension for generating UUIDs

Self-Hosted email is the hardest it's ever been, but also the easiest.

Even Amazon SES Has IPs blocked by Spamhaus sometimes

Was Service Catalog Redundant After All?

Slonik is Awesome

Why don't more people use Throat Mics?

Building an interface (even if there's only one implementation) is unquestionably right

Learning to Love the Plus Addresses

Cool CLI: lstopo

Installing Fluent Bit and Loki for lightweight logs

A script for copying PVC data across StorageClassses

cert-manager moved from Bazel to Make

A Pattern for ENV in Sveltekit

Lets call pre-launch market-validation pages 'prospecting' pages

Thunderbird Autoconfig for your self-hosted email server with MTA-STS

The Future of Free and Open Source is AGPL

Upgrading a k0s cluster in-place from single-master to HA

How to Install newer versions and bleeding edge ZFS

How I Built LoginWithHN

Starting 2022 with a Bang: Ceph on ZFS

Infra Fun: Prometheus Broke My Haraka Installation

Everything I've seen on optimizing Postgres on ZFS

New node who dis? DNS Issues and Calico Failures on a resurrected Node

Handling your first dead Hetzner hard drive

Using Baserow to power the landing page for NimbusWS

Bare metal k8s storage: OpenEBS ZFS LocalPV + Rancher Longhorn

How and why Haskell is better (than your favorite $LANGUAGE)

Ansible tip: Variables from inventory file

Automating k0s cluster backup with Ansible and SystemD

Sometimes the problem is DNS (on Hetzner)

So you need to wait for some Kubernetes resources?

The Deployment Spectrum

Wicked Landing Gear

Novice Arch Pitfall: watch out for kernel mismatches (after system updates)

Level 1 Automated K8S Deployments With GitLab CI

Postgres Tip: Covering with primary key indices

Paxosmon 2: The Paxos Journey Continues

Years later, REST-ish Services in Haskell Part 4

Setting Up SES With Pulumi

Stuffing both SSH and HTTPS on port 443 with stunnel, sslh, and Traefik

K8s storage provider benchmarks round 2, part 5

K8s storage provider benchmarks round 2, part 4

K8s storage provider benchmarks round 2, part 3

K8s storage provider benchmarks round 2, part 2

Automatically closing issues is violence

K8s storage provider benchmarks round 2, part 1

K8s Upgrade Sunday 03-21-21

Serving a single file over HTTP with Rust and Go

Ingress Controller considerations in early 2021

Adding to the NodeJS Package Heap: async-wait-for-promise

SADE: a pattern for Services as DOM Elements

Stale kubeconfig breaking service to service communication with kube-router

Back to Docker After Issues With Podman

Right Sizing PM2 Clusters

Protect Your Eyes From Strain on Arch

INCOMPLETE: Getting Started With Vue 2 (An Onion Guide), Part 1

Improving security easily with Traefik and Kubernetes

Downgrading to Kernel 5.8.9 to fix Bluetooth on Arch (2020-10)

Cookie Authentication Without Nuxt Auth

Bits and Bobs With Podman

Rootless Containers in 2020 on Arch Linux

A recipe for running containers in your Tape tests

Upgrading Cert Manager From 0.4.0 to 0.16

A Safer Price Type in Postgres

Running containers for dependencies at will on Gitlab CI

Announcing redis-bootleg-backup (rbb)

A Servant API Testing Example From the Wild

Updating From Traefik V1 to V2.2

Setting Up Mailtrain on K8s

Haskell exceptionfree-readfile library released

2019-12 K8s certificate expiration outage

Python E2E Test Config on Circle CI

Running Zulip on Kubernetes

Announcing Maille 0.1.1

Starting my journey with the System76 Oryx Pro and Arch

An Emacs Indentation setup for Java

I don't (fully) trust the CNCF

Kubernetes 1.15 upgrade (from 1.13.0)

A couple talks on Postgres and Gitlab (June 2019)

Count-Min Sketch in Haskell

What is a Backend? A selective guided tour through terminology, approaches, and technology

Comparing OpenEBS and Hostpath

Ops Pearl: Managing Git Personas

A Quick introduction to manual OpenAPI V3

Setting Up Statping

A Galaxy Scale Addressing Scheme for Compute Availability

Ops Pearl: fast-forwarding a Git clone without a full pull

Mithril SystemJS and ParcelJS Getting Started Guide

Component Styling with CSS Variables, BEM-like class selectors, and some Tachyons

Kicking the Tires on OpenEBS for Cluster Storage

Paxosmon: Gotta Consensus Them All

Rest-ish Services in Haskell Part 3

A small collection of Day 2 Vue Patterns

How to get off Yahoo! mail

Rhymote: a Remote for Rhythmbox

REST-ish Services in Haskell: Part 2

REST-ish Services in Haskell: Part 1

Disassembling Raid on Hetzner Without Rescue Mode

Using Gitlab Deploy Tokens With k8s

Up and Running With Linkerd v1

Running Untrusted Workloads K8s Container Linux Part 3

Running Untrusted Workloads K8s Container Linux Part 2

Running Untrusted Workloads K8s Container Linux Part 1

Kicking The Tires On Fathom

Hetzner fresh Ubuntu (18.04 LTS) install to single node Kubernetes cluster with ansible

A Pattern For Component Based Program Architecture In Rust

Trying (and failing) to get LXD running on Container Linux

Securing Your Kubernetes Cluster

Using Makefiles And Envsubst As An Alternative To Helm And Ksonnet

Even faster rust builds in Gitlab CI

k8s Container Linux ignition with rkt and kube-router

SQLite Is threadsafe, parallel access safe, but I still want to extend it.

Yet another cluster re-install after switching back to Container Linux

Minimal effort build improvements and a GHC 8.2.2 upgrade

The cure for impostor syndrome is knowing things

Dedicated server rescue (RAID + Grub2 issues)

Better k8s monitoring part 3: Adding request tracing with OpenTracing (powered by Jaeger)

Switching From kube-lego To cert-manager

Awesome Dev Tool: MailCatcher

Better k8s Monitoring Part 2: Adding logging management with the EFKK stack

Better K8s Monitoring Part 1: Adding Prometheus

Fun with Gitlab CI

Using Both Integrated And Discrete Graphics Cards

A reliable fix to Docker not keeping it's IPV4 address on Arch

Adding (naive) email templating to my servant-powered haskell web application

Custom registries in JSPM from CI

Haskell build issues on Arch Linux (tinfo6)

Adding a very naive in-memory cache to my Haskell web app

Continuous Integration To Continous Delivery Haskell Project With Gitlab

Zero To Continuous Integrated Testing A Haskell Project With Gitlab

Switch From ployst/docker-letsencrypt to Jetstack's kube-lego

Adding Sqlite Powered Fts Search To A Servant Powered Haskell App

Update JSPM (SystemJS) + JSDOM + Vue testing integration

Moving From Server Side Sessions To Client Side Session Tokens with Servant

SSH tunneling using an intermediary computer

Docker on Arch Linux - docker0 just doesn't seem to want it's IPv4 address

Setting Up Piwik on Kubernetes

Gandi 2017 Redesign

Serving email on Kubernetes with Mailu

Within seconds of using Pingdom I got email spam

Kicking The Tires On Rancher 2.0

Serving a HTTPS enabled application on Kubernetes

Setting Up SSL Certs on Kubernetes

Running a Database on Kubernetes

Serving HTTP Applications on Kubernetes with Ingress

Fresh Dedicated Server to Single Node Kubernetes Cluster on CoreOS, Part 3: Setting up essential Kubernetes addons

Fresh Dedicated Server to Single Node Kubernetes Cluster on CoreOS, Part 2: Getting Kubernetes Running

Fresh Dedicated Server to Single Node Kubernetes cluster on CoreOS, Part 1

Static Binaries for Haskell: A Convoluted Approach

Graylog as a hslogger backend in Haskell

Ansible Is Awesome

Stop Using React

Revisiting E2E Testing With Tape (on a new project)

End To End Testing With Hspec (Almost)

Adding A Merge Patch Content Type To Servant

Installing Python On CoreOS with Ansible (to enable Ansible)

Quick And Dirty Forward-Only DB Migrations

An easy fix for the diversity "problem" in tech: A 4-step plan starting with fully anonymized interviews

Research Idea: Maintaining A Write Ahead Log For Application Runtime State

Case Study: Building A URL Bouncer

Trying And Failing To Expand Servant Cookie-Based Auth With Roles

Stop Worrying And Use Gitlab

LetsEncrypt Systemd Recipes

Useful Boilerplate For PureCSS

Adding Cookie Based Auth To Servant

JS component-centric libraries and my rationale for considering MithrilJS

Working with PDFs on Arch linux

Getting started with servant, Part 2

Getting started with servant (Part 1)

Three month (coding) bootcamps are not enough

Spotify's 2017 web app redesign

Switching from Mocha to Tape and testing E2E

Testing DOM with Mocha, part 3

Using dockerized Ghost with local SMTP

Issues with Thunderbird and Dovecot

more testing with jspm mocha and vuejs

Unit testing with JSPM (SystemJS), mocha and vue.js

Using jspm, systemjs, and vuejs together

Default docker settings on arch

Moving from catalyst/fglrx to amdgpu

Moving to Hugo from Wordpress

EZ Wordpress instance with docker compose

systemd service that runs docker

docker nginx firewall postgres random setup notes

From zero to kvm docker application

I moved all my projects to Gitlab, and you should too

Arch Adventures: Changing the volume with the buttons on a Logitech G930 Headset

Fx0 FirefoxOS device goes on sale!

Using Mocha with JSPM

Arch Adventures: Installing Steam on Arch Linux

Fixing emoji display in Firegraph

A case for using Pure over Skeleton

Building B2G (FirefoxOS) for a Nexus 5

Rooting the Huawei (Softbank) 201HW/U9201L

Absurdly useful tooling: entr + make (+ find)

Arch Adventures: Hibernating to swap file

Fun with Arch Linux

Why is there a debate about ad-blockers at all?

Using JSPM, ES6 React, and React-Router

Who still fiddles with Samba in 2015?

Emacs in daemon mode is awesome, when it properly loads your init config

Firegraph v0.1.0

WebAssembly, and the rise of transpilation

Cache busting with SystemJS/Aurelia

Bringing a “native” Instagram client to FirefoxOS

VCFPorter v1.2 Release!

A pattern for organizing *DD tests in golang

Small fix to the R2D2B2G extension

Go’s default testing package is not enough

Keep calm and watch Javascript churn

Announcing VCFPorter v1.1

VCFPorter, an open-source cross-platform Ember app for importing contacts (vCard) on FirefoxOS

Handling UTF-8 Quoted Printable strings

Meteor Patterns

Using mozrepl and emacs to live-reload Firefox

Working with EmberJS and EmberData

Merry Go Form

Developing a web application/API in Go? Use Gin

Building Apps for FirefoxOS

Device Storage API Quirk in FirefoxOS

Automatically creating RethinkDB instances,databases, and tables for testing fixtures

Getting pycrypto and NodeJS crypto package to play together

Introducing Loltrove

minor ursa + node-gyp issue

Debugging issues with Piwik

Usering in a new age of inter-program communication, with JSON?

Powerline, Konsole, and Tmux

Pretty terminals for all

Some small tips on WPA wifi setup on Linux

Inserting users on a branch in RethinkDB

Using my own product

Breaking stuff in production

Configr.io v0.1 Update

Launch of Configr.io

Building a small webapp on Iniz servers with nginx, nodejs, and postgresql

First Foray into web chat

VAIPR

Voice Recognition

TideSDK is awesome.

Working with TideSDK

Some minor updates made to Konvention

Starting a new side project

Konvention is a go?

Progress on Konvention

Konvention’s almost ready for an alpha

Projects

Hello world!