2026  4

March  1

I Failed, But I Feel Good: GenAI, Blogging For Fun and Touching Grass

March 2, 2026 · 11 min · Peter Souter

February  3

CfgMgmtCamp 2026 Trip Report

February 17, 2026 · 24 min · Peter Souter

My 2026 Blogging Plans

February 16, 2026 · 6 min · Peter Souter

Back on the Horse: Refocusing on What Matters in 2026

February 12, 2026 · 2 min · Peter Souter

2024  2

April  2

Testing CLI apps with Aruba (Ruby or Not)

April 9, 2024 · 9 min · Peter Souter

Bootstrapping a new OSX device: A Brief History and Current Approach

April 4, 2024 · 18 min · Peter Souter

2020  3

September  1

Adding my Provider to the Terraform Provider Registry

September 17, 2020 · 11 min · Peter Souter

April  1

Making Käsespätzle

April 13, 2020 · 3 min · Peter Souter

February  1

Vault Caching with Auto-Auth and Puppet

February 12, 2020 · 6 min · Peter Souter

2019  2

March  1

S3 Download Progress Bar in Golang

March 7, 2019 · 6 min · Peter Souter

January  1

Testing and mocking stdin in Golang

January 13, 2019 · 11 min · Peter Souter

2018  7

December  1

Fixing common spelling errors with misspell

December 22, 2018 · 4 min · Peter Souter

August  1

Demonstrating the GCE Auth method for Vault

August 12, 2018 · 10 min · Peter Souter

July  1

Writing and playing with custom Terraform Providers

July 1, 2018 · 8 min · Peter Souter

March  2

How to use Vault with Hiera 5 for secret management with Puppet

March 19, 2018 · 5 min · Peter Souter

Migrating my blog from Ghost to Hugo

March 2, 2018 · 2 min · Peter Souter

February  1

An End of an Era and New Opportunities

February 19, 2018 · 2 min · Peter Souter

January  1

An Eventful 2017

January 1, 2018 · 1 min · Peter Souter

2016  37

November  30

Day 30 vdm30in30 is over!

November 30, 2016 · 2 min · Peter Souter

A Puppet pattern for version specific config settings

November 29, 2016 · 3 min · Peter Souter

Dealing with /var/run in systemd unit files

November 28, 2016 · 2 min · Peter Souter

Sublime Plugins

November 27, 2016 · 3 min · Peter Souter

Quickly testing with dply.co

November 26, 2016 · 2 min · Peter Souter

The Puppet Resource Abstraction Layer (RAL) Explained: Part 4

November 25, 2016 · 5 min · Peter Souter

The Puppet Resource Abstraction Layer (RAL) Explained: Part 3

November 24, 2016 · 2 min · Peter Souter

The Puppet Resource Abstraction Layer (RAL) Explained: Part 2

November 23, 2016 · 7 min · Peter Souter

The Puppet Resource Abstraction Layer (RAL) Explained: Part 1

November 22, 2016 · 5 min · Peter Souter

FOSDEM Survival Guide

November 21, 2016 · 5 min · Peter Souter

Keyboard Geekery

November 20, 2016 · 4 min · Peter Souter

Making Docs fun with Dash

November 19, 2016 · 3 min · Peter Souter

Travelling Consultant Hardware Essentials

November 18, 2016 · 6 min · Peter Souter

Drying up rspec with shared_examples

November 17, 2016 · 11 min · Peter Souter

GUI’s for a Puppet estate

November 16, 2016 · 2 min · Peter Souter

JMX puppetserver metrics vagrant stack

November 15, 2016 · 2 min · Peter Souter

The Story of Errata for CentOS

November 14, 2016 · 5 min · Peter Souter

Triggering a daemonized puppet agent with SIGUSR1

November 13, 2016 · 3 min · Peter Souter

jmxtrans: What is it and how to configure it

November 12, 2016 · 4 min · Peter Souter

puppetserver caching

November 11, 2016 · 3 min · Peter Souter

An example metrics stack with Collectd, Graphite and Grafana

November 10, 2016 · 4 min · Peter Souter

Compressing images in Ghost blog

November 9, 2016 · 5 min · Peter Souter

Debugging Puppet Issues

November 8, 2016 · 7 min · Peter Souter

Musical Tastes

November 7, 2016 · 2 min · Peter Souter

SysOps: Welcome to the Club

November 6, 2016 · 9 min · Peter Souter

System Administration with Cockpit

November 5, 2016 · 2 min · Peter Souter

Running Puppet acceptance tests in Docker in Travis

November 4, 2016 · 13 min · Peter Souter

How I accidentally helped find a showstopper bug in Ruby

November 3, 2016 · 3 min · Peter Souter

Some thoughts on maintaining OSS that has an official “competitor”

November 2, 2016 · 4 min · Peter Souter

An Omnibus package for hiera_explain

November 1, 2016 · 5 min · Peter Souter

October  1

Day 0: #vDM30in30

October 31, 2016 · 1 min · Peter Souter

August  1

90 Fitness Challenge - Conclusion and Starting again

August 30, 2016 · 2 min · Peter Souter

July  1

90 Day Fitness Challenge - Week 4 - 33% Check-in

July 4, 2016 · 2 min · Peter Souter

June  3

90 Day Fitness Challenge - Week 1 - First check-in

June 16, 2016 · 4 min · Peter Souter

Testing Windows with Beaker without Cygwin

June 9, 2016 · 13 min · Peter Souter

Getting fitter and healthier in 90 days…with data!

June 6, 2016 · 4 min · Peter Souter

February  1

FOSDEM 2016

February 7, 2016 · 1 min · Peter Souter

2015  3

December  1

Switching to hosting my blog on Docker

December 13, 2015 · 3 min · Peter Souter

February  2

Migrating my blog to new Ghost and enabling HTTPS

February 27, 2015 · 3 min · Peter Souter

TDD/BDD with Puppet code using rspec-puppet

February 18, 2015 · 10 min · Peter Souter

2014  5

June  1

Triage-a-thons and Fixing Puppet

June 2, 2014 · 2 min · Peter Souter

March  3

Ansible: Keep it Simple!

March 8, 2014 · 4 min · Peter Souter

CfgMgmtCamp 2014

March 4, 2014 · 1 min · Peter Souter

FOSDEM 2014

March 1, 2014 · 2 min · Peter Souter

February  1

Irssi, Mosh and Kafo: An awesome IRC combo

February 8, 2014 · 4 min · Peter Souter

2013  3

November  2

Capybara Smoketests: Not just for Ruby!

November 28, 2013 · 4 min · Peter Souter

Dublin Web Summit 2013

November 14, 2013 · 11 min · Peter Souter

October  1

London Web Performance Group meetup - October 2013

October 15, 2013 · 6 min · Peter Souter