Full Width [alt+shift+f] Shortcuts [alt+shift+k]
Sign Up [alt+shift+s] Log In [alt+shift+l]

Matt Blewitt

Matt Blewitt
7 Languages in 7 Weeks for 2025 It’s been over 14 years since the original 7 Languages in 7 Weeks was first published, giving a...
2 months ago
23
2 months ago
It’s been over 14 years since the original 7 Languages in 7 Weeks was first published, giving a hands on tour of Ruby, Clojure, Haskell, Io, Scala, Erlang and Prolog. Ruby achieved critical mass, to some degree so did Scala, with the others being popular within their specific...
Matt Blewitt
7 Databases in 7 Weeks for 2025 I’ve been running databases-as-a-service for a long time, and there are always new things to keep...
2 months ago
22
2 months ago
I’ve been running databases-as-a-service for a long time, and there are always new things to keep abreast of - new technologies, different ways of solving problems, not to mention all the research coming out of universities. In 2025, consider spending a week with each of these...
Matt Blewitt
Leadership Power Tools: SQL and Statistics A common pattern I’ve seen over the years have been folks in engineering leadership positions that...
2 months ago
21
2 months ago
A common pattern I’ve seen over the years have been folks in engineering leadership positions that are not super comfortable with extracting and interpreting data from stores, be it databases, CSV files in an object store, or even just a spreadsheet. We’re going to cover SQL &...
Matt Blewitt
Regular Restarts Are Good, Actually Anecdotally, one of the more maligned features of the Heroku platform are the 24-hour limits on...
3 months ago
20
3 months ago
Anecdotally, one of the more maligned features of the Heroku platform are the 24-hour limits on compute units, known as “dynos”. This is actually a good thing, but very misunderstood.
Matt Blewitt
What Is a Senior Engineer, Anyway? I’ve been having a bunch of conversations with my team about our career ladder, and what it means to...
3 months ago
19
3 months ago
I’ve been having a bunch of conversations with my team about our career ladder, and what it means to be “senior” in a software engineering context. It’s a little different in every company, but here is my view.
Matt Blewitt
Death, and Utsuge This post discusses topics some may wish to avoid: terminal illness, hospice care, death, and...
3 months ago
16
3 months ago
This post discusses topics some may wish to avoid: terminal illness, hospice care, death, and Japanese visual novels.
Matt Blewitt
On That Okta LDAP Bug A quick explanation of the Okta AD/LDAP DelAuth bug that was being shared around, and the importance...
3 months ago
16
3 months ago
A quick explanation of the Okta AD/LDAP DelAuth bug that was being shared around, and the importance of sensible defaults.
Matt Blewitt
Long Distance Relationships I’ve been managing a fully remote, fully distributed team, covering timezones from UTC-8 through...
4 months ago
14
4 months ago
I’ve been managing a fully remote, fully distributed team, covering timezones from UTC-8 through UTC+10, for the last couple of years. Through that time, I’ve learned a lot on organising work, interpersonal relationships, and ultimately how to overcome a lack of promximity to my...
Matt Blewitt
Sensibly Default There are two programming principles that I hold dear to my heart: the principle of least surprise...
4 months ago
14
4 months ago
There are two programming principles that I hold dear to my heart: the principle of least surprise and provide sensible defaults. I’ve recently been working within the GraphQL ecosystem, and the number of violations of both here has frustrated me. This will be a little bit ranty.
Matt Blewitt
Control Loops and Rice Cookers Rice cookers are fascinating machines. I’ve owned one for years, as rice is a significant part of my...
over a year ago
11
over a year ago
Rice cookers are fascinating machines. I’ve owned one for years, as rice is a significant part of my regular diet, and it completely removes the stress of preparing rice. They also operate on a simple principle that can help us operate cloud infrastructure – the control loop.
Matt Blewitt
Unreasonably Effective Patterns Much of my current job is maintaining and enhancing control planes for Heroku’s managed data...
over a year ago
11
over a year ago
Much of my current job is maintaining and enhancing control planes for Heroku’s managed data services. This post explores three patterns used to reduce operational burden and increase system safety and resiliency: state machines (and associated state-transition tables),...
Matt Blewitt
Shunn The Shunn manuscript format is a set of guidelines for writers to follow when submitting manuscripts...
8 months ago
10
8 months ago
The Shunn manuscript format is a set of guidelines for writers to follow when submitting manuscripts to publishers. It was created by author William Shunn and is widely used in the publishing industry. Here is a brief demonstration of a tool I wrote to facilitate generating...
Matt Blewitt
Software Sprezzatura Sprezzatura is “a certain nonchalance, so as to conceal all art and make whatever one does or says...
over a year ago
10
over a year ago
Sprezzatura is “a certain nonchalance, so as to conceal all art and make whatever one does or says appear to be without effort and almost without any thought about it”, coined by Castiglione in 1528’s The Book of the Courtier.
Matt Blewitt
So, You Want To Build A DBaaS So you’ve made the decision to build a Database-as-a-Service product (or something similar). As a...
a year ago
10
a year ago
So you’ve made the decision to build a Database-as-a-Service product (or something similar). As a result, you are making state and coordination your problem. Here are some things I’ve learned to keep in mind as you embark on this project, in no particular order (other than the...
Matt Blewitt
Thoughts on User Safety We need to move beyond mere security and towards safety for our customers and our users. This is how...
over a year ago
9
over a year ago
We need to move beyond mere security and towards safety for our customers and our users. This is how we can do that.
Matt Blewitt
Table Stakes This is a short post on what I see are table stakes for any new user-facing service, security-wise....
over a year ago
9
over a year ago
This is a short post on what I see are table stakes for any new user-facing service, security-wise. Mostly focused on user-focused, rather than intra-service, considerations.
Matt Blewitt
Thoughts on User Safety: 2 Following up from last time, let’s explore the internal and insider fronts when moving beyond...
over a year ago
9
over a year ago
Following up from last time, let’s explore the internal and insider fronts when moving beyond security towards safety for our users.
Matt Blewitt
Modifying pg_dump To Exclude Event Triggers At $WORK, we have a case where we have implemented an event trigger to prevent customers from...
7 months ago
8
7 months ago
At $WORK, we have a case where we have implemented an event trigger to prevent customers from dropping an extension. As this extension is part of contrib and normally installed by users, we can’t prevent them from dropping it normally. However, event triggers can only be created...
Matt Blewitt
Riding the Risk Railway When building and operating a user-facing system, especially one that is open to the public, it is...
over a year ago
8
over a year ago
When building and operating a user-facing system, especially one that is open to the public, it is important to consider the riskiness of a user, which can also be characterised as trustworthiness. These will typically be negatively correlated, with low trust indicating high risk...
Matt Blewitt
Everything I Know About Operations, I Learned From NHS 111 Ever heard someone say “It’s only software/money/<trivial thing>, not life or death”, in the context...
over a year ago
8
over a year ago
Ever heard someone say “It’s only software/money/<trivial thing>, not life or death”, in the context of incidents at your company? Although mostly true, I want to talk about a time in my career when sometimes, just sometimes, it was the latter, and how it shaped my approach to...
Matt Blewitt
Service Objects in Rails Let’s kick off 2016 with a whistle-stop tour of one of my favourite OO approaches, Service Objects,...
over a year ago
7
over a year ago
Let’s kick off 2016 with a whistle-stop tour of one of my favourite OO approaches, Service Objects, in the context of Rails.
Matt Blewitt
Lua: The Little Language That Could Lua is probably my favourite “little language” - a language designed to have low cognitive load, and...
a year ago
7
a year ago
Lua is probably my favourite “little language” - a language designed to have low cognitive load, and be easy to learn and use. It’s embedded in a lot of software, such as Redis, NGINX via OpenResty and Wireshark. It’s also used as a scripting language in games such as World of...
Matt Blewitt
Point and Call It’s 2AM. You’re paged to respond to a failing set of components that you are the Subject Matter...
over a year ago
7
over a year ago
It’s 2AM. You’re paged to respond to a failing set of components that you are the Subject Matter Expert (SME) for. Sleepy, you load up the playbook for when the SplineReticulatorBlocked alert has gone off, and start executing. The Incident Commander (IC) is vaguely aware of what...
Matt Blewitt
Corporate Legibility for Software Engineers Corporate legibility is the art of making tasks, and their outcomes, easier to understand for those...
over a year ago
6
over a year ago
Corporate legibility is the art of making tasks, and their outcomes, easier to understand for those not directly involved. I’ll help you understand why this is an important thing to be aware of and how to use it to help your career.
Matt Blewitt
Building a PostgreSQL Extension, Line by Line I’ve been working on a particular problem - how to offer logical replication for a very large number...
8 months ago
6
8 months ago
I’ve been working on a particular problem - how to offer logical replication for a very large number of Postgres databases, where I don’t have the ability (or capacity) to liaise with the users of the databases one-to-one. In order to mitigate some of the limitations, I wanted to...
Matt Blewitt
Logical Replication Guardrails I’ve been working with logical replication in PostgreSQL recently, and I wanted to share a few...
8 months ago
6
8 months ago
I’ve been working with logical replication in PostgreSQL recently, and I wanted to share a few thoughts on how to implement some guardrails to make things easier on operators.
Matt Blewitt
Movement for Engineers Until we get get to be chromed-up cyborgs, we’re stuck with our meat bodies, and like many things,...
a year ago
6
a year ago
Until we get get to be chromed-up cyborgs, we’re stuck with our meat bodies, and like many things, they need regular maintenance. Here is a brief introduction to keeping your body moving as someone who spends a lot of time sitting down.
Matt Blewitt
Tools for a Culture of Writing One of the hardest things we do, as humans, is try and communicate what is going on in our minds to...
over a year ago
6
over a year ago
One of the hardest things we do, as humans, is try and communicate what is going on in our minds to each other. With significant room for misunderstanding, biases, assumptions and cultural differences, communicating with other engineers (or to stakeholders) appears fraught....
Matt Blewitt
A Love Letter to Giant Robots Ah, giant robots. I grew up thinking they are the coolest things ever, and I still do. My first...
8 months ago
5
8 months ago
Ah, giant robots. I grew up thinking they are the coolest things ever, and I still do. My first exposure to them was probably through 1994’s BattleTech animated series, where Adam Steiner piloted an AXM-2N Axman, in its frankly ridiculous neon green and purple paint job. And from...
Matt Blewitt
So, You Want To Build A DBaaS Part 2: Technical Bits In my first post in this pseudo-series, we covered more of the theory and organisational practices...
a year ago
5
a year ago
In my first post in this pseudo-series, we covered more of the theory and organisational practices around building and operating a database-as-a-service platform. In this post, I’ll cover some of the more technical aspects of this that I think are worth considering, drawn from my...