This is my favourite part of creating content. Just being silly and entertaining myself. Spent the morning explaining OCP using a replicator from Star Trek 🖖 Any excuse for wee graphics and stuff like this. Loads of fun.
Andrew Cairns
@acairns.co.uk
Using metaphors and analogies to explain Software Engineering in fun ways: https://youtube.com/@metaphoricallyspeaking Staff Software Engineer. Passionate about DDD, CQRS, Event Sourcing and Distributed Systems. Kayaking, too.
Yey! It's been a goal of mine to reach the YouTube Partner milestone for a number of years now.
Meyer coined the OCP principle and presented inheritance as the OOP way to achieve it. This was in the 1980s, using Eiffel. Eiffel is a tower. So are inheritance hierarchies. If I just ruined Paris for you, then... you're welcome.
Incredible that 5k of you subscribe to my silly little channel explaining software things using metaphors and analogies. I hope you all know I have no idea how to make videos. I'm totally making it up and learning as I go. Having loads of fun, though!
When you write to two systems in the same process - what do you do when one fails? I was inspired by an old card game I used to play: www.youtube.com/watch?v=OfE_...
Stop writing to two systems. Write to one.
YouTube video by Metaphorically Speaking
youtube.com
Read about a few companies struggling with throughput now their output has dramatically increased. They say "code review has become a bottleneck". They are finding some creative solutions to the four-eyes principle while avoiding pair programming. I'll give them that.
Teaching Idempotency using my favourite card game while making a Silicon Valley "always blue" reference. Having fun like this is what keeps me making videos. Lord knows it's not the views! 🤣
This took me a while... all to add less than 10s to a video. But man, I loved this game!
Was just DM'ed with an Event Sourcing question. Always happy to help and, as much as I'd love to plug my own stuffs, I mostly redirect folks to Event Sourcery from @shawnmc.cool www.youtube.com/@EventSource...
Event Sourcery
Event Sourcery is a video course created by Shawn McCool that covers the fundamentals of reactive systems and event sourcing, both theoretical and practical. The course combines carefully produced vid...
youtube.com
Everything in your repo is part of the prompt. The loudest signal wins. Even if it's wrong: acairns.co.uk/posts/your-c...
Your Codebase is Your Prompt
Everything in your repo is part of the prompt. The loudest signal wins — even when it's wrong.
acairns.co.uk
this metaphor is spot on - sure this would help the penny to drop for a lot of people! also two of my favourite things in life - football and event sourcing
You can rebuild state from events. But you can't rebuild events from state. Think about football. If you see 2-1 on a scoreboard, you know the current score, but not how it got there. That's the problem Event Sourcing solves: www.youtube.com/watch?v=xPmQ...
You can rebuild state from events. But you can't rebuild events from state. Think about football. If you see 2-1 on a scoreboard, you know the current score, but not how it got there. That's the problem Event Sourcing solves: www.youtube.com/watch?v=xPmQ...
Event Sourcing Explained using Football ⚽
YouTube video by Metaphorically Speaking
youtube.com
I've been thinking about how Ideas used to be almost worthless without Execution. And now, the barrier to executing is at an all-time low. Got an idea? Get it done!
I'm really grateful to be in an IC role at the moment. It's an important time to be hands-on, develop new skills, explore new ways of working and form new mental models.
Laura Tacho: "The Venn Diagram of Developer Experience and Agent Experience is a circle"
I sat down with Claude Code to build a test analyser. Our DX survey keeps flagging test efficiency, and I had a hunch our test pyramid was off. Wrote it up with some interactive bits. acairns.co.uk/posts/evalua...
Evaluating our Test Pyramid
Our DX survey says the feedback loop is too slow. I had a hunch our test pyramid was off. So I built an analyser to find out — and the real problem wasn't what I expected.
acairns.co.uk
If my sit/stand desk and Oura ring were integrated and, when it was "time to stretch my legs" automatically raised... ... that would keep me on my toes. 🥁
First full draft of next video complete. Now time to goto bed, wake up, and hate everything all over again.
Took a big risk at work. It worked. Being the CEO of my own career! 💪
There is so much to like in this article. Very, very insightful at a time when insightfulness takes a backstage to productivity.
Cognitive Debt: acairns.co.uk/posts/cognit...
I've been exploring how agents demonstrate "implicit freshness". This is what I've been calling the assumption the code, dependencies, or documentation, is up-to-date. But I think I might have it wrong. I think what I'm needing is some sort of Occam's razor heuristic.
Each time I work on a new OG image for an article, I'm reminded the devlog series flow from one to the next. Utterly pointless, but makes me happy.
We really should be kinder to people. If someone achieved something, gained knowledge, or had some luck... please remember what it took to get there. Belittling people who are still trying, practicing, and improving says more about the critic than the criticised.