A Generative Postgres Digest: From Noise to Signal
Why do we still waste time browsing YouTube and news sites looking for interesting content? Why rely on someone else's algorithm — when Claude, for instance, retains conversation history in one form or another and can therefore assess our actual interests? Maybe it's time to take control of shaping our own "information bubble"?
In systems programming, reliability, maintainability, and extensibility usually matter more than new features. That makes AI agents genuinely hard to apply well. If I'm being honest, I can't claim the technology has meaningfully moved the needle on our productivity — the bottleneck still sits squarely in review and QA. So when frontend colleagues share their excitement and start planning which industry to pick up next, I can only look on with envy.
That said, research, analysis, and internet scanning have become dramatically easier — I can now read Chinese colleagues' work without friction. Exploring the source code of adjacent OSS projects is where it genuinely shines: in five minutes, in a language I barely know, without any prior knowledge of the project structure, I can get answers to real questions, steal a few useful patterns, and learn from both the smart and the questionable architectural decisions. The pity is that work like this isn't my main job.
There is, though, one area where AI has become genuinely indispensable — saving me time and sanity every day: news filtering.
The technical infosphere — Planet PostgreSQL being a prime example — has increasingly filled with two kinds of content: posts that re-explain familiar database concepts for the thousandth time, and thinly veiled marketing whose real goal is to put a product in front of you. I have nothing against good marketing, but those of us who are here for the technology rather than the buying decisions find that it generates a persistent low-level background noise.
There is another dimension: pgsql-hackers has quietly started accumulating AI-assisted content. I’ve seen review feedback containing arguments that felt suspiciously familiar — the kind of well-structured points that turn up when someone asks a language model to review a patch, and that I had already seen in Claude's review and set aside at the development stage. Nobody can read everything; what you actually want is to surface the interesting threads, the unexpected turns in a discussion, the non-obvious solutions.
So the obvious question arose: why not hand this filtering work to something actually built for text analysis?
Take YouTube, which curates your video feed and serves up what its algorithm thinks you want. Or dev.to and similar aggregators, which persistently recommend things that don't quite match your interests. With an AI agent, you can write your own prompt and build a genuinely personal feed — without depending on someone else's black-box algorithm. You can even have separate work and personal flavours.
No sooner said than done.
Claude is now instructed to crawl the Internet for technical blogs covering Postgres, SQL Server, and other relational databases, check each author's profile, and keep only engineers with a verifiable track record — committers, core contributors, and recognised community members. From those sources, scan new posts and surface only those that contain genuinely new ideas (or challenge known techniques), novel database techniques, concrete production experience, or real debugging stories. Fact-checking and author-topic consistency checks are built in. A separate prompt watches for hidden commercial intent — is the article's real goal to sell the reader something?
Claude also scans non-English sources and summarises in English — Chinese content in particular has been a pleasant surprise. Teaching Claude to search non-English websites isn't entirely straightforward, though: the built-in web_search tool returns near-empty results for non-Latin queries. The workaround was to use Chrome MCP to locate RSS feeds, then parse and translate them.
Another valuable input: tracking changes on CommitFest and the mailing lists. Here, I let Claude use its own judgment about what might interest me and what counts as a "meaningful turn" in the discussion of a given feature. The history of our communication underpins this part - I think, Claude knows me better than anyone else ;).
Collecting CFP announcements and upcoming talk previews for relevant conferences and meetups turned out to be surprisingly useful, too — you never know when time and budget will align to catch an interesting speaker. And as a cherry on top, I asked Claude to scan academic paper aggregators and put together a weekly selection of research relevant to my work.
The output is an auto-generated weekly digest, tuned to one person's interests. The prompts and all supporting files live on GitHub — Claude has full write access. GitHub Pages hosts the digest in a readable format, with an RSS feed for mobile devices. The whole thing is driven by an auto-run routine in the Claude Desktop App: when you open the project, it checks whether a fresh issue is due and, if so, generates it and pushes the changes.
Here's what a typical entry from the latest issue looks like:
[hackers] Conflict log history table for Logical Replication
— A PG20-targeted patch that lets a subscription write apply-worker conflicts to a system-managed table instead of the server log hit a real bug: a concurrent ALTER SUBSCRIPTION changing the log destination drops the table while the apply worker still holds a cached OID — the worker crashes, and the conflict record disappears entirely. (vignesh C, Amit Kapila et al.)
After four weeks, the material has been genuinely useful. The occasional irrelevant item slips through — that's unavoidable if you want to keep the risk of missing something important low. But the signal-to-noise ratio is dramatically better than raw Planet PostgreSQL or a generic news aggregator.
This experiment raises a bigger question: what happens if personalised content filtering like this becomes common? Not long ago, we all shared the same TV channels, music, magazines, books, and a few must-read blogs. That overlap made conversations easier: you could cite a film and expect others to catch the context. If everyone now uses their own custom filter, what happens to our shared context? How can we have productive debates or build consensus when each of us is reading a different part of the same world?
I don't have an answer. But I think it's worth asking.
THE END
June 25, 2026 · Madrid.

