Tom Elliott
banner
telliott.me
Tom Elliott
@telliott.me
Building @ocuroot.com, open source, distributed CI/CD with no YAML! Posts bi-weekly on https://thefridaydeploy.substack.com/, occasional public speaker.
Over the years, I got into a narrow routine when using Git for day-to-day development. Now I'm building tools around Git, I'm discovering all kinds of features I'd never noticed before. Here are my favorite three.

www.ocuroot.com/blog/things-...
Blog | Three things I've learned about Git while building a CI/CD tool
Over the years, I got into a narrow routine when using Git for day-to-day development. Now I'm building tools around Git, I'm discovering all kinds of features I'd never noticed before. Here are my…
www.ocuroot.com
November 13, 2025 at 3:04 PM
After a few dead ends, tangents and experiments, I've got the worker model in a decent shape. It's making me realize I need a better way of configuring the list of source repos.

Methinks v0.4 will include some breaking changes.

#buildinpublic #openstandup
November 13, 2025 at 2:54 PM
Ok, I'm really starting to like this style.

#buildinpublic
November 11, 2025 at 7:17 PM
Took a detour last night to experiment with pixel art for icons. Watched some videos, got the Aesprite trial and threw together a few ideas.

There's something really satisfying about the precision you can get at 32x32. Now to pay for the full version and build some UIs!

#buildinpublic
November 11, 2025 at 2:14 PM
Had a low social media week or so while visiting family in the UK. Somewhat refreshed and moderately jetlagged. Back to work!
November 10, 2025 at 3:35 PM
Queueing theory can be incredibly useful, but potentially dense for those of us who aren't mathematically inclined (myself included), so let's look at the basics in as simple a form as we can muster.

open.substack.com/pub/thefrida...
A Shallow Introduction to Queueing Theory
Queueing theory can be incredibly useful, but potentially dense for those of us who aren't mathematically inclined (myself included), so let's look at the basics in their simplest form.
open.substack.com
November 7, 2025 at 3:15 PM
At first, it might be tempting to put all your infrastructure into a single Terraform module for simplicity. But as you scale, this approach will start slowing you down in various ways.

Here's what can do wrong and how you can address it.

www.ocuroot.com/blog/big-ter...
Blog | How Big Terraform Modules Slow You Down
It might be tempting to put all your infrastructure into a single Terraform module for simplicity. But as you scale, this approach will start slowing you down. Here's what can do wrong and how you…
www.ocuroot.com
October 30, 2025 at 2:03 PM
I just realized that planes "land" because they touch the land. I'm 41.
October 28, 2025 at 3:17 PM
The real impact of AI: phishing messages that look like Bootstrap sites.
October 27, 2025 at 3:13 PM
We went out to vote this afternoon and two hours later we’d voted, got coffee, sat in a public garden, saw two free concerts and spied two red tailed hawks sitting on a church. I love living in the East Village!
October 25, 2025 at 7:26 PM
Now the dust has settled from Monday's AWS outage, Amazon have released their summary document. It's a heavy read, with long, detailed, technical paragraphs. I went through it and picked out the key parts for a read that's only 20% as long!

open.substack.com/pub/thefrida...
Demystifying the postmortem from Monday's AWS outage
Amazon put out a postmortem for the recent us-east-1 disruption, and it is dense to say the least. Here's my interpretation. Hint: it wasn't a "kill switch" or rogue AI.
open.substack.com
October 24, 2025 at 2:02 PM
Discovered some concurrency issues with the worker model. Possibly some bad logic in determining the work that actually needed doing, and definitely a problem with handling git interactions.

Today shall be a testing and debugging day!

#buildinpublic #openstandup
October 22, 2025 at 3:14 PM
Hot take: there's nothing wrong with hosting a CI runner on a spare box under a desk.

Did this for years at varying degrees at different companies. People complained it didn't feel right and made jokes about it but it rarely failed.
October 21, 2025 at 4:43 PM
I'm working on a new short-form video site to specialize in clips that make you angry and sports highlights.

Ragebait & Tackle.
October 21, 2025 at 4:19 PM
Tested the worker loop against my new mock cloud tool and made some tweaks to select the right branch and poll more frequently in dev mode.

Started setting up monitoring for intent changes and need to do some deep thinking on error handling.

#buildinpublic #openstandup
October 21, 2025 at 2:34 PM
On Saturday, I put together a lightweight git repo poller and a simple worker loop. Today I'll be expanding the config for multiple repos and maybe webhooks.

Distributed CI/CD, here we come!

#buildinpublic #openstandup
October 20, 2025 at 3:14 PM
Promised myself a day off, and ended up coding for fun. Having a nice time messing with Cytoscape, seeing what I can do with styling and animations.
October 20, 2025 at 1:25 AM
If you think about it, political canvasing is like trick or treating for adults.
October 20, 2025 at 1:23 AM
`Panther Moderns,' he said to the Hosaka, removing the trodes. `Five minute precis.'
`Ready,' the computer said.

Been thinking about this a lot. Gibson predicted AI search.
October 18, 2025 at 3:09 PM
This morning I was reminded that stargazy pie exists. I promise I will never defend British cuisine again.
October 18, 2025 at 2:24 PM
Had more fun with the Ocuroot REPL this afternoon. I've added some prettier rendering to return values, with highlighting and a tree view for more complex structures.

It even prints function docs for you!

#buildinpublic
October 17, 2025 at 8:01 PM
CI/CD pipelines are code too. In this post we'll explore some testing strategies so you're not always left waiting for feedback. We'll also look at what Ocuroot is doing to make it even easier!

www.ocuroot.com/blog/how-do-...
Blog | How do I test my CI code?
CI/CD pipelines are code too. In this post we'll explore some testing strategies so you're not always left waiting for feedback. We'll also look at what Ocuroot is doing to make it even easier!
www.ocuroot.com
October 16, 2025 at 2:26 PM
Just discovered that Zoom's screen sharing allows you to share just a portion of your screen. Game changing for those of us with ultrawides.
October 15, 2025 at 5:18 PM
The only thing funnier to someone with basic French than a bakery called “Pain D’Avignon” would be a hat store called the “Jaunty Alouette”.
October 15, 2025 at 2:37 AM
Anyone else noticed how many LinkedIn posts include the word "chaos" this past year?
October 14, 2025 at 3:54 PM