The newest version of bash, every ones favourite default shell, was recently announced and while reading through the bash 5 release anouncement I noticed a couple of tiny but useful features and an annoyingly described but potentially awesome one. The tiny but immediately useful additions are a couple of new bash variables, $EPOCHSECONDS and $EPOCHREALTIME. Rather than scattering date commands through your scripts you can now use one of these and save the process execution and command running syntax. Read on →

One of the things I find myself occasionally missing from terraform are the native AWS specific parameter types you can use in CloudFormation. These are refinements to the usual template parameters that further limit the valid input, help describe what the value should actually be, and in some cases verify that the resource passed in actually exists. In CloudFormation you’d often start with a basic string parameter like this in your templates: "Parameters" : { "SubnetID" : { "Type" : "String", "MinLength": "5", "Description" : "The subnet ID for blah.", "AllowedPattern" : "subnet-[a-z0-9]*", "ConstraintDescription" : "Must be a valid subnet ID E.g. Read on →

I’ve been a basic but happy user of the syntastic syntax checking plugin for vim for a few years now but time and software wait for no one and after seeing a few posts mentioning the newer ALE - Asynchronous linting/fixing for Vim I’ve decided to give it a go for a month and see how it impacts my work flow. Installing it was much easier than expected. I use the vundle plugin manager so replacing one plugin with another and then triggering the install was all I needed to get up and running. Read on →

Once you have enough people each working in multiple accounts it becomes a waiting game until you’ll eventually get the dreaded “Your AWS account 666 is compromised.” email. As someone who’s been using AWS since S3 arrived this is the first time I’ve encountered this so I thought I’d write up some notes about what actually happens. First comes the easy, but not recommended, part of the whole experience; push some credentials to GitHub. Read on →

At $WORK I’m one of the people responsible for our SRE community and in addition to the day to day mechanics of ensuring everyone is willing and able to meaningfully contribute I’ve been looking at ways to gain a higher level, people focused, view of how they’re feeling about their role. With our move to quarterly missions now department wide it seemed like the perfect time to try our first “Quarterly SRE Health check”. Read on →

It all started with someone trying to show me an article on their mobile phone. As an adblock user I’d forgotten how bad the world was with all the screen space being stolen by pop-unders, pop overs and I was soon done. After mulling it over for a little while I decided to use it as a flimsy excuse to buy another Raspberry Pi and trial running Pi-hole - ‘A black hole for internet advertisements’. Read on →

For a number of years I’ve maintained what I call my Pragmatic Investment Plan (PiP). It’s a collection of things that ensure I have to invest at least a little time each quarter into my career and industry. While it’s always been somewhat aspirational, in that I don’t often complete everything, it does give me a little prod every now and again and stops me becoming too stagnant. My first few PiPs were done annually, but after I started seeing ever decreasing completed items I moved to quarterly and had a lot more success. Read on →

In the IT industry we are reputed to be serial job hoppers. While this may seem a little unfair, if it applies to you then you should consider where you’re spending your limited additional time and effort. First, a disclaimer: you need to invest enough time and effort into your current job to stay employed. Now that’s out of the way let’s look at our normal days. All those extra hours and hard work you put in everyday? Read on →

Despite using Linux on pretty much every computer I’ve owned for the last 20 years I’ve made an exception when it comes to tablet devices and adopted an iPad into my life as commute friendly “source of all books.” Overtime it’s been occasionally pressed into service as a camera and I recently realised I’ve never backed any of those photos up. “That’s something easy to remedy” I naively thought as I plugged my iPad into a laptop and watched as it didn’t appear as a block device. Read on →

A few jobs ago, as the number of daily meetings increased, I picked up a tiny meeting tweak that I’ve carried with me and deployed at each place I’ve worked since. End all meetings five minutes early. Instead of half past, end it at 25 and instead of on the hour (complex maths ahead) end at 55. My reasoning is simple and selfish, I hate being late for things. This approach gives people time to get to their next meeting.