Jamie's Blog

Lessons from a life of startups, coding, countryside, and kids

Implementing Impersonation

Podia impersonation

The ability to log in as one of your users is one of the highest value features you can develop to support your customers.

The ability to log in as one of your users is one of the most dangerous features you can develop to support your customers.

Restoring my Humanscale Liberty

Humanscale liberty hedgehog armrest

Sidenote: I ❤️ my Liberty chair

I love my Humanscale Liberty chair for it’s comfort and unrivalled simplicity. I’ve used ridiculously complex chairs like the Herman Miller Aeron but the Liberty has by far the best sit-and-play experience. No faffing...

Add Deprecation Warnings to your Rails App

Deprecations header

You’ve probably seen deprecation warnings in Rails, especially if you made the jump to 5.2 recently, but did you know you can use them in your own app?

I suspected so but hadn’t done it before. Here’s a Rails model with a url attribute.

# == Schema...

Security Threats Introduced By GDPR

GDPR is supposed to protect the privacy of individuals but it also opens up new security threats which can threaten a company.

I’m not a lawyer, or any sort of GDPR expert, but like lots of people I’m becoming very interested in the GDPR rules as...

Rails Testing with Headless Chrome on Heroku CI

Heroku ci

I recently started setting up a Rails app on Heroku CI . It was mostly pretty painless but there were a few tricks to getting our Capybara specs running.

Heroku don’t fully support running browser tests yet; I mean, it works but it took a little finagling...

The one thing


I reached the end of the pool, finishing another 200m interval, and was taking a quick breather and a drink, before setting off again.

“Hi”, said the girl in the other lane. “Do you mind if I ask you a question?”


“What’s the one thing someone...

Does your backpack come with an instructional video?


Well, does it?

I mean, that would be pretty ridiculous, right? Who needs a video to learn how to use a backpack? How bad would a backpack need to be that it needs you to sit through a 30min —thirty minute— video to figure out how to use it.


Querying CSV files in SQL

I had a need to query a CSV file this morning. It was an export of users in Intercom and I wanted to find all the users with duplicate email addresses.


You can kinda do this in Numbers by creating a new column with the formula


Moving from Wordpress to Middleman

I’ve been unhappy running Wordpress for a few years, particularly the effort required to keep the server, the Wordpress instances, plugins, and themes updated. Of course, you don’t have to do this, and most of the internet doesn’t, which is why we...

I saved a man from drowning


But that’s not really the point I want to make. The important point is that I very nearly didn’t save him.

I swim a few times a week at a local hotel pool doing about 100 lengths. I recognise a lot of the other swimmers, mostly retirees getting some...

Page 1 of 92