A love letter to Raycast ❤️
"What are the must-have apps to install on my new Mac?"… "Which tool makes you the most productive?"… "Do you still use Alfred?"…
All these questions and more—and the answer to all of them is Raycast!
"What are the must-have apps to install on my new Mac?"… "Which tool makes you the most productive?"… "Do you still use Alfred?"…
All these questions and more—and the answer to all of them is Raycast!
Well it’s that time of year already! Whilst munching on a mince pie, enjoy the final Interesting Links for 2025.
It’s been a busy twelve months for me; this time last year I was signing off from my last company, which went on to be acquired—and last week I found out that my current company (Confluent) is to be acquired by IBM. Despite my reaction against any kind of cheese moving, I figure this is going to be an interesting development and a whole new experience for me :)
Reddit is one of the longer-standing platforms on the internet, bringing together folk to discuss, rant, grumble, and troll others on all sorts of topics, from Kafka to data engineering to nerding out over really bright torches to grumbling about the state of the country—and a whole lot more.
As a social network it’s a prime candidate for using graph analysis to examine how people interact—and in today’s post, hunt down some sneaky shills ;-)
Welcome to the 10th edition of Interesting Links. I’ve got over a hundred links for you this month—all of them, IMHO, interesting :)
As part of compiling the monthly interesting links posts, I go through a ton of RSS feeds, sourced from specific blogs that I follow as well as general aggregators. These aggregators include quality sources like InfoQ, and certain tags on lobste.rs. Here I’ll often find some good articles that I missed in my general travels around the social media feeds in the previous month. I also, so you don’t have to, dive into the AI slop-pit that is Medium and various categories feeds. In amongst the detritus and sewage of LLMs left to ramble unchecked are the occasional proverbial diamonds in the rough, which make the sifting worth the effort.
I thought it might be interesting—and a useful vent to preserve my sanity—to note down some of the “smells” I’ve noticed.
Ever tried to hammer a nail in with a potato?
Nor me, but that’s what I’ve felt like I’ve been attempting to do when trying to really understand agents, as well as to come up with an example agent to build.
As I wrote about previously, citing Simon Willison, an LLM agent runs tools in a loop to achieve a goal. Unlike building ETL/ELT pipelines, these were some new concepts that I was struggling to fit to an even semi-plausible real world example.
That’s because I was thinking about it all wrong.
At Current 2025 in New Orleans this year we built a demo for the Day 2 keynote that would automagically summarise what was happening in the room, as reported by members of the audience. Here’s how we did it!
The latest Thoughtworks TechRadar is out. Here are some of the more data-related ‘blips’ (as they’re called on the radar) that I noticed.
What with Current NOLA 2025 happening this week, and some very last minute preparations for the demo at the keynote on day 2, this month’s links roundup is pushing it right up to the wire :) The demo was pretty cool, and finally I have a good example of how this AI stuff actually fits into a workflow ;) I’ll write it up as a blog post (or two, probably)—stay tuned!
A presentation about effective blog writing for developers, covering why to blog, what to write about, and how to structure your content.
A short series of notes for myself as I learn more about the AI ecosystem as of Autumn [Fall] 2025. The driver for all this is understanding more about Apache Flink’s Flink Agents project, and Confluent’s Streaming Agents.
I started off this series—somewhat randomly, with hindsight—looking at Model Context Protocol (MCP). It’s a helper technology to make things easier to use and provide a richer experience. Next I tried to wrap my head around Models—mostly LLMs, but also with an addendum discussing other types of model too. Along the lines of MCP, Retrieval Augmented Generation (RAG) is another helper technology that on its own doesn’t do anything but combined with an LLM gives it added smarts. I took a brief moment in part 4 to try and build a clearer understanding of the difference between ML and AI.
So whilst RAG and MCP combined make for a bunch of nice capabilities beyond models such as LLMs alone, what I’m really circling around here is what we can do when we combine all these things: Agents! But…what is an Agent, both conceptually and in practice? Let’s try and figure it out.
Sneaking it in just before the end of the month!
It’s a bumper set of links this month—I started with an original backlog of 125 links to get through. Some fell by the wayside, but plenty of others (78, to be precise) made the cut. With no further ado, let’s get cracking!
A short series of notes for myself as I learn more about the AI ecosystem as of September 2025. The driver for all this is understanding more about Apache Flink’s Flink Agents project, and Confluent’s Streaming Agents.
Having poked around MCP and Models, next up is RAG.
RAG has been one of the buzzwords of the last couple of years, with any vendor worth its salt finding a way to crowbar it into their product. I’d been sufficiently put off it by the hype to steer away from actually understanding what it is. In this blog post, let’s fix that—because if I’ve understood it correctly, it’s a pattern that’s not scary at all.
A short series of notes for myself as I learn more about the AI ecosystem as of September 2025. The driver for all this is understanding more about Apache Flink’s Flink Agents project, and Confluent’s Streaming Agents.
Having poked around MCP and got a broad idea of what it is, I want to next look at Models. What used to be as simple as "I used AI" actually boils down into several discrete areas, particularly when one starts looking at using LLMs beyond writing a rap about Apache Kafka in the style of Monty Python and using it to build agents (like the Flink Agents that prompted this exploration in the first place).
A short series of notes for myself as I learn more about the AI ecosystem as of September 2025. The driver for all this is understanding more about Apache Flink’s Flink Agents project, and Confluent’s Streaming Agents.
The first thing I want to understand better is MCP.
You can find previous editions of Interesting Links here.
You’ve got data in Apache Kafka.
You want to get that data into Apache Iceberg.
What’s the best way to do it?
Perhaps invariably, the answer is: IT DEPENDS. But fear not: here is a guide to help you navigate your way to choosing the best solution for you 🫵.
This is a quick blog post to remind me how to connect Apache Flink to a Kafka topic on Confluent Cloud. You may wonder why you’d want to do this, given that Confluent Cloud for Apache Flink is a much easier way to run Flink SQL. But, for whatever reason, you’re here and you want to understand the necessary incantations to get this connectivity to work.
First up, allow me a shameless plug for my blog posts this month: