Welcome to my software engineering blog! Here I'll share experiences, war stories, and reviews of software development books I've enjoyed over the course of my career.
At the moment I'm most interested in books that will help me work faster and better: covering culture ideas like devops and agile, or technology ideas related to the consulting work I do.
-
The contractor I want to hire, the contractor I want to be
My slides for my DevconfZA 2023 talk
-
On Feedback
Some thoughts on recent feedback-gathering experiences
-
In relentless pursuit of some parts of REST
If we want clients to create small controllers and use resources in their routes, it's a good idea to know why. This is a refresher of Derek Prior's advice from Railsconf 2017
-
solargraph-rails in 2022: LRUG Jan 2023 meeting
My slides for my LRUG January 2023 talk
-
In praise of verbosity
On the command line I often find myself running things I copied from somewhere on the web (I promise I read them first). Sometimes they don't work, and I need to unstick myself. Fortunately many commands have an option for verbose output.
-
LRUG Lightning Talk: solargraph-dead_end
I gave a lightning talk at LRUG on solargraph-dead_end, a gem that combines solargraph and dead_end to give you nice error feedback inside your editor.
-
Attending Rubyconf Virtually
I attended Rubyconf virtually last week. It spurred some reflections on the good and bad of virtual conferences.
-
Solargraph talk at LRUG October 2021
Slides from my talk on Solargraph at London Ruby User Group's October meeting
-
A conversation between your editor and a language server
When your editor provides intellisense with the help of an LSP Server, there's a constant conversation going on. It's really boring.
-
Life on M1, part 2: installing old builds of Ruby, aka fumbling in the dark
How I installed old builds of Ruby that were broken on my M1 Macbook
-
Life on M1, part 1: mostly just works
When thoughtbot gave me my choice work laptops (basically nice big Macbook Pro vs nice big Thinkpad), I chose "none of the above" and asked for one of the new M1 Macbook Pro 13" machines.
-
Moving continents and starting a new job at Thoughtbot
I just started a new job at Thoughtbot in London, which required twenty hours of flying and hotel quarantine. It also helped me reflect on what it means to be an old hand or new to the job.
-
Review: The Nature of Software Development by Ron Jeffries
If I were suddenly put in charge of a software organisation, the lessons from this book would underpin everything I did.
-
Engineering discipline is not for you, now
It's for the person who has to fix it a year after you leave, when they should be celebrating their partner's birthday party. What you are about to read is a true story...
-
Uncohesive data, four years later
I've recently had some realisations about how uncohesive data has affected us, and what drives us towards and away from cohesion
-
Review: The Cathedral and the Bazaar by Eric S. Raymond
The Cathedral and the Bazaar is a series of essays about what the linux kernel development taught the software world. They cover the unique (at the time) speed of development and quality of Linux, how to apply its important lessons elsewhere, why it worked, and where they will work best (and worst).
-
War story: 'just five times as long'
We had to run a batch process for 2000 users. Normally it was only a few hundred. 5x for computers? Trivial, right?
-
Review: Design Patterns in Ruby by Russ Olsen
This 2007 book on patterns covers what they are, how to write them in Ruby, why (or not) to use them, and where you can find common applications in the Ruby world.
-
October 2020 reading list and praise for O'Reilly Learning
The technical books I might read and the tool that enables my reading habit
-
Review: A History of Clojure by Rich Hickey
A paper describing Clojure's early history provoked some thought about how and why developers adopt technology
-
Editor-agnostic Rails code completion with LSP and Solargraph
My holiday coding: (WIP) decent code completion for Ruby/Rails with LSP and Solargraph...
-
Review: Continuous Delivery with Docker and Jenkins by Rafal Leszko
This book offers a worthwhile introduction to fundamental devops practices that relate to continuous delivery: continuous integration, automated testing, configuration management, clustering, and so on. It's like a good introductory university course, only with plain English...
-
Everything is new to someone
Meta-musings after hearing the origin story of an AWS trainer on the Screaming in the Cloud podcast...
-
Review: Exceptional Ruby by Avdi Grimm
Exceptional Ruby is an in-depth description of how errors work in Ruby with some good advice for when (and when not) to use them.
-
Review: Crucial Conversations by Patterson et al
Crucial Conversations introduced me to elements of communication whose existence I would never have dreamed of, and how to choose to use or react to them in useful ways.
-
Review: The Unicorn Project by Gene Kim
A modern-day sequel to The Phoenix Project that feels more relevant but has serious flaws that make it hard to extract the value...
-
RubyFuza 2020 - Safe, Flexible Tests
I gave a talk at RubyFuza 2020, here are my slides
-
The Opposite of Devops
An experience from before devops culture improved the lives of software developers immensely...
-
Review: The Phoenix Project by Gene Kim
A year after reading, lessons from The Phoenix Project have stuck with me, lessons that shed light on my early career as a software consultant and that have shaped how I work currently.
-
Review: 99 Bottles of OOP by Sandi Metz and Katrina Owen
99 Bottles of OOP is about changing code (because we almost never get to write anything from scratch) in a way that is as painless and predictable as possible...
-
Review: The Expert Beginner by Erik Dietrich
An enthusiastic software developer can easily learn enough to impress non-technical people, possibly enough to put them into a position of power. Unfortunately, 'enough to impress non-technical people' is not necessarily enough to do a good job of writing software...
-
Review: Efficient Rails Devops by Michael Trojanek
I’m pretty pleased with my purchase of ERDO. It’s a great resource for someone in the situation I was in a few years back: no devops experience, and suddenly I needed to do automated Rails deployments without tools like Heroku...
subscribe via RSS