<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"><channel><title>ipeluwa.wtf</title><description>Musings, notes, and the occasional strong opinion from Ipeluwa.</description><link>https://ipeluwa.wtf/</link><item><title>Nobody tells you that growing up is mostly rewriting the future</title><link>https://ipeluwa.wtf/posts/rewriting-the-future/</link><guid isPermaLink="true">https://ipeluwa.wtf/posts/rewriting-the-future/</guid><description>We build futures in our heads without noticing, and then life edits them. On losing a future that had already started to feel like a memory.</description><pubDate>Fri, 24 Jul 2026 00:00:00 GMT</pubDate></item><item><title>Almost 25, and apparently I should know what I am doing</title><link>https://ipeluwa.wtf/posts/almost-25/</link><guid isPermaLink="true">https://ipeluwa.wtf/posts/almost-25/</guid><description>On the peculiar expectations of the mid-twenties, and the discovery that confidence and clarity are not the same thing.</description><pubDate>Wed, 22 Jul 2026 00:00:00 GMT</pubDate></item><item><title>The people who make our ambition possible</title><link>https://ipeluwa.wtf/posts/people-who-make-ambition-possible/</link><guid isPermaLink="true">https://ipeluwa.wtf/posts/people-who-make-ambition-possible/</guid><description>We tell stories about solitary ambition. Almost nobody builds anything alone, and the ones holding you up rarely appear in the telling.</description><pubDate>Sun, 05 Jul 2026 00:00:00 GMT</pubDate></item><item><title>Why some endings do not need a villain</title><link>https://ipeluwa.wtf/posts/endings-without-a-villain/</link><guid isPermaLink="true">https://ipeluwa.wtf/posts/endings-without-a-villain/</guid><description>Anger gives an ending a clean explanation. Incompatibility does not. On the harder kind of goodbye, the one with nobody to blame.</description><pubDate>Sun, 21 Jun 2026 00:00:00 GMT</pubDate></item><item><title>Why markdown files over a CMS</title><link>https://ipeluwa.wtf/posts/why-markdown-over-cms/</link><guid isPermaLink="true">https://ipeluwa.wtf/posts/why-markdown-over-cms/</guid><description>Fourth in the Why this over that series: this blog is a folder of text files in git, and that is a feature list, not an absence of one.</description><pubDate>Sun, 10 May 2026 00:00:00 GMT</pubDate></item><item><title>Why Go for the service, Rust for the tool</title><link>https://ipeluwa.wtf/posts/why-go-service-rust-tool/</link><guid isPermaLink="true">https://ipeluwa.wtf/posts/why-go-service-rust-tool/</guid><description>Third in the Why this over that series: I write both daily. The split that emerged isn&apos;t about language quality, it&apos;s about what each artifact is for.</description><pubDate>Sun, 26 Apr 2026 00:00:00 GMT</pubDate></item><item><title>Why SSE over WebSockets</title><link>https://ipeluwa.wtf/posts/why-sse-over-websockets/</link><guid isPermaLink="true">https://ipeluwa.wtf/posts/why-sse-over-websockets/</guid><description>Second in the Why this over that series: most realtime features are one-way, and server-sent events give you reconnection, proxy-friendliness, and plain HTTP for free.</description><pubDate>Sun, 12 Apr 2026 00:00:00 GMT</pubDate></item><item><title>Why SQLite over Postgres (sometimes)</title><link>https://ipeluwa.wtf/posts/why-sqlite-over-postgres/</link><guid isPermaLink="true">https://ipeluwa.wtf/posts/why-sqlite-over-postgres/</guid><description>First in the Why this over that series: for single-user and single-box systems, the world&apos;s most deployed database in one copyable file is not the compromise. It&apos;s the correct choice.</description><pubDate>Sun, 29 Mar 2026 00:00:00 GMT</pubDate></item><item><title>What I actually let coding agents do</title><link>https://ipeluwa.wtf/posts/what-i-let-coding-agents-do/</link><guid isPermaLink="true">https://ipeluwa.wtf/posts/what-i-let-coding-agents-do/</guid><description>A working engineer&apos;s division of labour with AI coding agents: where they genuinely excel, where they quietly rot a codebase, and the practices that keep the difference visible.</description><pubDate>Sun, 22 Mar 2026 00:00:00 GMT</pubDate></item><item><title>The correct way to eat suya</title><link>https://ipeluwa.wtf/posts/the-correct-way-to-eat-suya/</link><guid isPermaLink="true">https://ipeluwa.wtf/posts/the-correct-way-to-eat-suya/</guid><description>Suya is not a meal, it is an event with meat in it. Eight rules, held with more conviction than any technical opinion I have.</description><pubDate>Sun, 08 Mar 2026 00:00:00 GMT</pubDate></item><item><title>A flight recorder for Postgres</title><link>https://ipeluwa.wtf/posts/tracegres-flight-recorder/</link><guid isPermaLink="true">https://ipeluwa.wtf/posts/tracegres-flight-recorder/</guid><description>Why database incidents stay unexplained, what aviation figured out about that decades ago, and the design thinking behind Tracegres: incidents should be reconstructable, not anecdotal.</description><pubDate>Sun, 22 Feb 2026 00:00:00 GMT</pubDate></item><item><title>I gave my WhatsApp an AI brain</title><link>https://ipeluwa.wtf/posts/whatsapp-ai-brain/</link><guid isPermaLink="true">https://ipeluwa.wtf/posts/whatsapp-ai-brain/</guid><description>Building Synq, a personal AI assistant that lives in my own WhatsApp: a Rust server, an unofficial bridge, semantic memory over every conversation, and replies that sound like me.</description><pubDate>Sun, 08 Feb 2026 00:00:00 GMT</pubDate></item><item><title>Traffic is a personality test</title><link>https://ipeluwa.wtf/posts/traffic-is-a-personality-test/</link><guid isPermaLink="true">https://ipeluwa.wtf/posts/traffic-is-a-personality-test/</guid><description>Nobody is themselves in a go-slow. Everybody is themselves in a go-slow. A field guide to the people you become when the road stops moving.</description><pubDate>Sun, 25 Jan 2026 00:00:00 GMT</pubDate></item><item><title>Prepared statements vs connection pools</title><link>https://ipeluwa.wtf/posts/prepared-statements-vs-connection-pools/</link><guid isPermaLink="true">https://ipeluwa.wtf/posts/prepared-statements-vs-connection-pools/</guid><description>Part three of speaking fluent PostgreSQL: why the query that works locally dies behind pgbouncer, explained from the wire up, and every fix ranked.</description><pubDate>Sun, 11 Jan 2026 00:00:00 GMT</pubDate></item><item><title>Faking pg_catalog</title><link>https://ipeluwa.wtf/posts/faking-pg-catalog/</link><guid isPermaLink="true">https://ipeluwa.wtf/posts/faking-pg-catalog/</guid><description>Part two of speaking fluent PostgreSQL: the system catalog is the real compatibility surface. What psql and every GUI tool actually ask, the five tables that carry the load, and how to build a catalog shim from captured traffic instead of guesswork.</description><pubDate>Sun, 14 Dec 2025 00:00:00 GMT</pubDate></item><item><title>Speaking fluent PostgreSQL</title><link>https://ipeluwa.wtf/posts/speaking-fluent-postgresql/</link><guid isPermaLink="true">https://ipeluwa.wtf/posts/speaking-fluent-postgresql/</guid><description>What implementing the Postgres wire protocol from three directions taught me: the startup dance, the two protocols hiding inside it, why transactions are the hard part, and the compatibility lies every Postgres-compatible database must tell.</description><pubDate>Sun, 30 Nov 2025 00:00:00 GMT</pubDate></item><item><title>On having a name people can&apos;t say</title><link>https://ipeluwa.wtf/posts/name-people-cant-say/</link><guid isPermaLink="true">https://ipeluwa.wtf/posts/name-people-cant-say/</guid><description>Six syllables, one inhale of hesitation, and a lifetime of small negotiations. What I have learned from watching people meet my name.</description><pubDate>Sun, 09 Nov 2025 00:00:00 GMT</pubDate></item><item><title>Designing for the network you actually have</title><link>https://ipeluwa.wtf/posts/network-you-actually-have/</link><guid isPermaLink="true">https://ipeluwa.wtf/posts/network-you-actually-have/</guid><description>Building consumer apps for African networks: latency budgets in round trips, the retry rule that prevents double charges, offline queues, payload discipline, and telling users the truth while the rail is slow.</description><pubDate>Sun, 19 Oct 2025 00:00:00 GMT</pubDate></item><item><title>Never retry a timeout</title><link>https://ipeluwa.wtf/posts/never-retry-a-timeout/</link><guid isPermaLink="true">https://ipeluwa.wtf/posts/never-retry-a-timeout/</guid><description>A timeout is not a failure, it is an unknown outcome. The double-charge lesson every payments engineer learns exactly once, formalised into rules you can apply today.</description><pubDate>Sun, 05 Oct 2025 00:00:00 GMT</pubDate></item><item><title>The engineering behind Aevu</title><link>https://ipeluwa.wtf/posts/engineering-behind-aevu/</link><guid isPermaLink="true">https://ipeluwa.wtf/posts/engineering-behind-aevu/</guid><description>How a calm, comment-free social app gets built: interest-first ranking, a media pipeline that is really a state machine, and moderation that fails closed.</description><pubDate>Sun, 14 Sep 2025 00:00:00 GMT</pubDate></item><item><title>In praise of the aimless walk</title><link>https://ipeluwa.wtf/posts/in-praise-of-the-aimless-walk/</link><guid isPermaLink="true">https://ipeluwa.wtf/posts/in-praise-of-the-aimless-walk/</guid><description>A walk with a destination is transport. A walk without one is something else entirely, and the first ten minutes are the toll you pay for it.</description><pubDate>Sun, 24 Aug 2025 00:00:00 GMT</pubDate></item><item><title>In defence of boring technology</title><link>https://ipeluwa.wtf/posts/boring-technology/</link><guid isPermaLink="true">https://ipeluwa.wtf/posts/boring-technology/</guid><description>The most productive stack is the one you stop thinking about.</description><pubDate>Sun, 03 Aug 2025 00:00:00 GMT</pubDate></item><item><title>My notes app graveyard</title><link>https://ipeluwa.wtf/posts/notes-app-graveyard/</link><guid isPermaLink="true">https://ipeluwa.wtf/posts/notes-app-graveyard/</guid><description>A tour of every system I built to remember things, and why I remember none of them.</description><pubDate>Sun, 06 Jul 2025 00:00:00 GMT</pubDate></item><item><title>Hello, world. Again.</title><link>https://ipeluwa.wtf/posts/hello-world/</link><guid isPermaLink="true">https://ipeluwa.wtf/posts/hello-world/</guid><description>Every blog starts with a post like this. Mine is no different, except it is shorter.</description><pubDate>Sun, 15 Jun 2025 00:00:00 GMT</pubDate></item></channel></rss>