<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:media="http://search.yahoo.com/mrss/">
  <channel>
    <title>Omar Doucouré, writing</title>
    <link>https://www.omardoucoure.com/</link>
    <atom:link href="https://www.omardoucoure.com/feed.xml" rel="self" type="application/rss+xml"/>
    <description>Technical writing on iOS, SwiftUI, AI-generated UI and developer tooling by Omar Doucouré, Senior iOS Developer in Montreal.</description>
    <language>en</language>
    <lastBuildDate>Wed, 23 Sep 2026 12:00:00 -0400</lastBuildDate>
    <item>
      <title>How FUT HyperVision works</title>
      <link>https://www.omardoucoure.com/posts/how-hypervision-works</link>
      <guid isPermaLink="true">https://www.omardoucoure.com/posts/how-hypervision-works</guid>
      <pubDate>Wed, 23 Sep 2026 12:00:00 -0400</pubDate>
      <description>A computer-vision pipeline for recorded FC matches: YOLO player and ball detection, homography pitch registration, camera-motion compensation, event reconstruction and an evaluation gate.</description>
      <category>Computer vision</category>
      <category>YOLO</category>
      <category>Evals</category>
      <media:content url="https://www.omardoucoure.com/post-assets/how-hypervision-works/hero-og.jpg" medium="image" width="1200" height="675"/>
    </item>
    <item>
      <title>Pre-push challenging: you cannot push what you cannot explain</title>
      <link>https://www.omardoucoure.com/posts/pre-push-challenging</link>
      <guid isPermaLink="true">https://www.omardoucoure.com/posts/pre-push-challenging</guid>
      <pubDate>Sun, 20 Sep 2026 12:00:00 -0400</pubDate>
      <description>AI writes the code, you approve it, and a week later you cannot explain it. A git pre-push hook that quizzes you on your commits to fight comprehension debt.</description>
      <category>Comprehension debt</category>
      <category>Git hooks</category>
      <category>AI-generated code</category>
      <media:content url="https://www.omardoucoure.com/post-assets/pre-push-challenging/cover.png" medium="image" width="1536" height="1024"/>
    </item>
    <item>
      <title>The model does not reply. It renders.</title>
      <link>https://www.omardoucoure.com/posts/ai-composed-ui</link>
      <guid isPermaLink="true">https://www.omardoucoure.com/posts/ai-composed-ui</guid>
      <pubDate>Fri, 28 Aug 2026 12:00:00 -0400</pubDate>
      <description>Generative UI in production: an LLM coach that answers with cards, charts and comparisons, built on tool calling, one JSON schema and a repair layer.</description>
      <category>Generative UI</category>
      <category>LLM</category>
      <category>Tool calling</category>
      <media:content url="https://www.omardoucoure.com/post-assets/ai-composed-ui/coach-comparison-real.png" medium="image" width="1294" height="924"/>
    </item>
    <item>
      <title>FigDiff: the eval that keeps AI-generated UI pixel perfect</title>
      <link>https://www.omardoucoure.com/posts/ai-generated-design-system</link>
      <guid isPermaLink="true">https://www.omardoucoure.com/posts/ai-generated-design-system</guid>
      <pubDate>Wed, 26 Aug 2026 12:00:00 -0400</pubDate>
      <description>How we AI-generate a SwiftUI design system from Figma for 8 iOS apps: contracts, a custom MCP server, design tokens, and FigDiff, a pixel-perfect UI eval.</description>
      <category>SwiftUI</category>
      <category>Design system</category>
      <category>Figma</category>
      <media:content url="https://www.omardoucoure.com/post-assets/ai-generated-design-system/pipeline-cover.png" medium="image" width="1536" height="1024"/>
    </item>
    <item>
      <title>FUT Evolution: building an AI coach for Ultimate Team</title>
      <link>https://www.omardoucoure.com/fut-evolution</link>
      <guid isPermaLink="true">https://www.omardoucoure.com/fut-evolution</guid>
      <pubDate>Tue, 31 Mar 2026 12:00:00 -0400</pubDate>
      <description>FUT Evolution, a solo-built EA SPORTS FC Ultimate Team app: an LLM coach grounded in a real player database, computer vision squad scans, KMP and SwiftUI.</description>
      <category>AI coach</category>
      <category>Computer vision</category>
      <media:content url="https://www.omardoucoure.com/project-futevo.png" medium="image" width="1280" height="800"/>
    </item>
  </channel>
</rss>
