from/prod
← All companies

THE COMPANY INDEX TRACKED BLOG

Rob Allen

Ideas, decisions, and lessons from the team.

akrabat.com (opens on the source site)
11Posts tracked
6 days agoLatest publication
0.8Posts / month over the last 12 months

Latest writing

11 of 11 posts

Apidays London 2026 (opens on the source site)

Last week I attended FOST London 2026, mostly I was there for apidays and the OpenAPI Initiative track. As ever, there was a set of excellent talks and I particularly liked Abby Bangser's opening keynote, Steven Willmott's talk on how to think about software systems as AI is added to them, and Kristof Van Tomme's thoughts on where developer portals fit into today's AI world. The OpenAPI track was excellent. We started with Frank Kilcommins… continue reading.

Read at the source

Opening Sublime Text from the command line (opens on the source site)

I nearly always open Sublime Text from the command line using subl and have specific requirements for when it should open a new window or re-use one. If I'm opening a directory, then I would like it to re-use the same window if I have previously opened that directory. However if I open a random file, I never want that file in the last directory window as it's unrelated. To do this I wrote a… continue reading.

Read at the source

Fixing two minor git irritations in my OSS fork workflow (opens on the source site)

For OSS work, I work with two git remotes: upstream: the canonical OSS project repository, where main is the default branch and is what gets released. origin: a personal fork. All my feature branches live here. I set up locally like this: Fork the project repo to my account. Clone my fork locally, so the origin remote is my fork. Set an upstream remote using git remote add upstream . and then when working on… continue reading.

Read at the source

Create an HTML version of an OpenAPI spec (opens on the source site)

I have a new project where we will be integrating with a third party API that is currently being written. Due to Conway's Law, we are being sent new versions of the OpenAPI spec as a set of JSON files via email. I quite like seeing the HTML rendering of an OpenAPI spec when reading it and understanding it, so I knocked up a simple shell script that takes an OpenAPI spec file and outputs… continue reading.

Read at the source

PHPStan custom rules (opens on the source site)

Recently I discovered that this code passed our PHPStan level 10 checks: use http\Exception\InvalidArgumentException; // ... throw new InvalidArgumentException; I was surprised as http\Exception\InvalidArgumentException is not a class in our system. While cooling, I discovered that there's an http PHP extension and it appears that PHPStan has a stub for this which means that it accepts it as existing even if it doesn't. What we think happened is that I wrote throw new InvalidArgumentException; and… continue reading.

Read at the source

Feelings (opens on the source site)

Today has been a struggle entirely due to my own internal negative thoughts and feelings about impacting events that are outside my control. Navigating this to come out stronger rather than letting it consume my self-belief and confidence isn’t easy, especially at the time. I’m not worse at my job and my abilities haven’t diminished, but sometimes it’s hard to remember this. I need to give myself space to remember who I am and internalise… continue reading.

Read at the source

Dad (opens on the source site)

I don't often post personal things here, however last weekend my dad died peacefully in his sleep and it feels important to acknowledge this. I have no words.

Read at the source

2025 in pictures (opens on the source site)

As we reach the end of 2025, I take this opportunity to look back over the photos that I have taken and thing about the year. This year I published 1,064 photos to Flickr with, of course, at least one photo every day as part of my Project 365. The lovely thing is that my photos remind me what happened during my year and I remember many good times through them as I've seen friends… continue reading.

Read at the source

IPTC export changed in Photos for macOS 26 Tahoe (opens on the source site)

I've recently upgraded my MacBook Air to macOS 26 Tahoe and one thing I noticed was that Rodeo's rules were no longer working. With the help of exiftool, I worked out that when exporting to JPEG from Photos for macOS 26 Tahoe, the Object Name, Caption-Abstract and Keywords IPRC properties were no longer being populated. This is a regression from macOS 15 Sequoia. This is the data from exiftool. Output from macOS 15 Sequoia: $… continue reading.

Read at the source

Appending text to Obsidan via Shortcuts (opens on the source site)

Sometimes it's helpful to add some text to my current Obsidian daily note without having to switch to Obsidian, find the daily note and then type my text. To do this, we can use the magic of Obsidian's obsidian:// URI schema and automate the text capture in Apple Shortcuts, with an assigned keyboard shortcut to activate it. This is the Shortcut: There's a number of steps in the Shortcut. Firstly we Ask For some text… continue reading.

Read at the source

mac-volume: A CLI to control device volume (opens on the source site)

I've set my Mac up such that video calls such as Zoom use the microphone and earphones attached to my Behringer UMC204HD, which all other audio plays through the my normal speakers which are the default. One issue I have with this is that it's quite hard to change the volume when a call as the volume buttons on the Mac are connected to the default output. This finally annoyed me enough that I looked… continue reading.

Read at the source

Privacy choices

Reading never requires analytics. These choices last 90 days on this browser.

Essential sign-in and security storage always stays on. Read the privacy notice.