<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"><channel><title>Waldo Vanderhaeghen</title><description>PM, builder, and occasional thinker. Writing about AI tooling, side projects, and product work.</description><link>https://waldo.vanderlore.de/</link><item><title>The future of SaaS is tailored software</title><link>https://waldo.vanderlore.de/blog/software-factory-biztrix/</link><guid isPermaLink="true">https://waldo.vanderlore.de/blog/software-factory-biztrix/</guid><description>I built an NFC business card platform with a friend who runs a print shop. What we learned along the way says something about where software is going.</description><pubDate>Fri, 29 May 2026 00:00:00 GMT</pubDate></item><item><title>The ticket is the thinking</title><link>https://waldo.vanderlore.de/blog/spec-driven-development/</link><guid isPermaLink="true">https://waldo.vanderlore.de/blog/spec-driven-development/</guid><description>How I treat every task, bug, and finding as a spec — and why that turns a kanban board into a compounding knowledge system.</description><pubDate>Fri, 29 May 2026 00:00:00 GMT</pubDate></item><item><title>How we stopped hoping our AI was right and started knowing it</title><link>https://waldo.vanderlore.de/blog/the-model-doesnt-decide/</link><guid isPermaLink="true">https://waldo.vanderlore.de/blog/the-model-doesnt-decide/</guid><description>We built a fully automated campaign recommendation pipeline. The AI was fast, impressive, and wrong in ways we didn&apos;t notice for weeks. Here&apos;s what fixing that actually looked like.</description><pubDate>Mon, 11 May 2026 00:00:00 GMT</pubDate></item><item><title>My sync daemon wiped 28 tasks in two seconds. Here&apos;s what I learned.</title><link>https://waldo.vanderlore.de/blog/notion-obsidian-sync-war-story/</link><guid isPermaLink="true">https://waldo.vanderlore.de/blog/notion-obsidian-sync-war-story/</guid><description>A war story about building a Notion ↔ Obsidian sync daemon — what broke, why 28 tasks vanished, and the three simple fixes that made it resilient.</description><pubDate>Thu, 30 Apr 2026 00:00:00 GMT</pubDate></item><item><title>We can each build anything. So why can&apos;t we build together?</title><link>https://waldo.vanderlore.de/blog/ai-camp-berlin-2026/</link><guid isPermaLink="true">https://waldo.vanderlore.de/blog/ai-camp-berlin-2026/</guid><description>Notes from AI Bar Camp Berlin 2026 — my talk, what the room taught me, and the shared context problem nobody has solved yet.</description><pubDate>Tue, 28 Apr 2026 00:00:00 GMT</pubDate></item><item><title>The future of AI agents looks a lot like 2010.</title><link>https://waldo.vanderlore.de/blog/how-i-run-my-agent-team/</link><guid isPermaLink="true">https://waldo.vanderlore.de/blog/how-i-run-my-agent-team/</guid><description>The thing missing from most agent setups isn&apos;t model quality or tool use. It&apos;s project management. Old patterns, new actors.</description><pubDate>Tue, 28 Apr 2026 00:00:00 GMT</pubDate></item><item><title>You were never paying for the software.</title><link>https://waldo.vanderlore.de/blog/you-were-never-paying-for-the-software/</link><guid isPermaLink="true">https://waldo.vanderlore.de/blog/you-were-never-paying-for-the-software/</guid><description>The AI-kills-SaaS debate is asking the wrong question. SaaS was always a data product. AI doesn&apos;t change that — it makes it more true.</description><pubDate>Wed, 22 Apr 2026 00:00:00 GMT</pubDate></item><item><title>CTR is not the story. It&apos;s the first sentence.</title><link>https://waldo.vanderlore.de/blog/ctr-is-not-the-story/</link><guid isPermaLink="true">https://waldo.vanderlore.de/blog/ctr-is-not-the-story/</guid><description>Optimizing search ranking for a sponsored ads product taught me something about proxy metrics: CTR tells you one thing. It doesn&apos;t tell you everything — and the gap is where the interesting problems live.</description><pubDate>Thu, 16 Apr 2026 00:00:00 GMT</pubDate></item><item><title>Most AI-generated Jira tickets are useless. Here&apos;s the system that fixed mine.</title><link>https://waldo.vanderlore.de/blog/pm-workflow-ai-tickets/</link><guid isPermaLink="true">https://waldo.vanderlore.de/blog/pm-workflow-ai-tickets/</guid><description>A set of Claude Code skills that encode your team&apos;s ticket philosophy once — so every Jira output starts grounded, not generic.</description><pubDate>Thu, 09 Apr 2026 00:00:00 GMT</pubDate></item><item><title>We could only manually review a fraction of campaigns each week. Now every single one gets analysed every night.</title><link>https://waldo.vanderlore.de/blog/campaign-analysis-automation/</link><guid isPermaLink="true">https://waldo.vanderlore.de/blog/campaign-analysis-automation/</guid><description>How I automated campaign review for a large book of advertisers using Python, Bedrock, and GitHub Pages.</description><pubDate>Tue, 31 Mar 2026 00:00:00 GMT</pubDate></item><item><title>My tax script kept breaking. Claude Code read the whole thing and fixed it.</title><link>https://waldo.vanderlore.de/blog/tax-flow-claude-code/</link><guid isPermaLink="true">https://waldo.vanderlore.de/blog/tax-flow-claude-code/</guid><description>How switching from patch-by-chat to Claude Code&apos;s full-context collaboration changed the way I build and maintain automation scripts.</description><pubDate>Sun, 15 Mar 2026 00:00:00 GMT</pubDate></item><item><title>My daughter named it. I just had to build it.</title><link>https://waldo.vanderlore.de/blog/robot-cooks-drawings/</link><guid isPermaLink="true">https://waldo.vanderlore.de/blog/robot-cooks-drawings/</guid><description>Building a printable coloring page generator with Gemini, Supabase pgvector, and Puppeteer.</description><pubDate>Thu, 05 Mar 2026 00:00:00 GMT</pubDate></item><item><title>Education leave rocked my work</title><link>https://waldo.vanderlore.de/blog/bildungsurlaub-rocked-my-work/</link><guid isPermaLink="true">https://waldo.vanderlore.de/blog/bildungsurlaub-rocked-my-work/</guid><description>Five days at a remote Generative AI course. I went to learn Python and LLMs. I did not expect to ship.</description><pubDate>Sat, 28 Feb 2026 00:00:00 GMT</pubDate></item><item><title>AI Invoice Automation (Gemini)</title><link>https://waldo.vanderlore.de/blog/ai-invoice-automation/</link><guid isPermaLink="true">https://waldo.vanderlore.de/blog/ai-invoice-automation/</guid><description>A self-learning pipeline that processes German tax invoices from Google Drive using Gemini AI — zero cost, fully automated.</description><pubDate>Mon, 26 Jan 2026 00:00:00 GMT</pubDate></item><item><title>Smoobu → Google Sheets Automation</title><link>https://waldo.vanderlore.de/blog/smoobu-sheets/</link><guid isPermaLink="true">https://waldo.vanderlore.de/blog/smoobu-sheets/</guid><description>Automatically syncs Airbnb/Booking.com reservations from Smoobu into separate sheets for your cleaner, accountant, and yourself.</description><pubDate>Sat, 10 Jan 2026 00:00:00 GMT</pubDate></item><item><title>Interactive Portfolio — AI Recruiter Copilot</title><link>https://waldo.vanderlore.de/blog/interactive-portfolio/</link><guid isPermaLink="true">https://waldo.vanderlore.de/blog/interactive-portfolio/</guid><description>A dynamic portfolio that acts as my AI proxy — processes 10+ years of product leadership data to evaluate job fit and answer recruiter queries.</description><pubDate>Wed, 10 Dec 2025 00:00:00 GMT</pubDate></item></channel></rss>