<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/">
  <channel>
    <title>Michael Samuel Naeem — Engineering Blog</title>
    <link>https://michaelsam94.tech/blog/</link>
    <atom:link href="https://michaelsam94.tech/blog/feed.xml" rel="self" type="application/rss+xml" />
    <description>Deep dives on Android, Kotlin, Jetpack Compose, Flutter, and mobile architecture by Michael Samuel Naeem.</description>
    <language>en</language>
    <managingEditor>michaelsam00@yahoo.com (Michael Samuel Naeem)</managingEditor>
    <lastBuildDate>Sat, 20 Jun 2026 15:12:11 GMT</lastBuildDate>
    <item>
      <title>Real-Time Analytics at the World Cup: How Player and Ball Tracking Actually Works Under the Hood</title>
      <link>https://michaelsam94.tech/blog/world-cup-real-time-analytics-player-ball-tracking/</link>
      <guid isPermaLink="true">https://michaelsam94.tech/blog/world-cup-real-time-analytics-player-ball-tracking/</guid>
      <pubDate>Fri, 19 Jun 2026 00:00:00 GMT</pubDate>
      <description>How FIFA World Cup 2026 Semi-Automated Offside Technology (SAOT) works: 12+ tracking cameras, 500Hz ball IMU, 3D player avatars, VAR fusion, and real-time offside detection.</description>
      <category>World Cup 2026</category>
      <category>FIFA World Cup</category>
      <category>Semi-Automated Offside Technology</category>
      <category>SAOT</category>
      <category>VAR</category>
      <category>Offside Technology</category>
      <category>Player Tracking</category>
      <category>Ball Tracking</category>
      <category>Real-Time Analytics</category>
      <category>Computer Vision</category>
      <category>Sensor Fusion</category>
      <category>Sports Technology</category>
      <category>KINEXON</category>
      <category>3D Pose Estimation</category>
      <category>Live Sports Data</category>
    </item>
    <item>
      <title>Optimizing State Management in Flutter with Riverpod</title>
      <link>https://michaelsam94.tech/blog/flutter-riverpod-state-management/</link>
      <guid isPermaLink="true">https://michaelsam94.tech/blog/flutter-riverpod-state-management/</guid>
      <pubDate>Fri, 12 Jun 2026 00:00:00 GMT</pubDate>
      <description>How I structured Riverpod state for a production Flutter EV-charging app: provider scoping, AsyncNotifier, real-time WebSocket sync, and keeping rebuilds cheap.</description>
      <category>Flutter</category>
      <category>Riverpod</category>
      <category>State Management</category>
      <category>Dart</category>
    </item>
    <item>
      <title>Jetpack Compose: Lessons From 10 Years in Android</title>
      <link>https://michaelsam94.tech/blog/jetpack-compose-lessons-10-years-android/</link>
      <guid isPermaLink="true">https://michaelsam94.tech/blog/jetpack-compose-lessons-10-years-android/</guid>
      <pubDate>Mon, 08 Jun 2026 00:00:00 GMT</pubDate>
      <description>Hard-won Jetpack Compose lessons from migrating production Android apps off XML: recomposition, state hoisting, stability, and Clean Architecture boundaries.</description>
      <category>Android</category>
      <category>Jetpack Compose</category>
      <category>Kotlin</category>
      <category>Clean Architecture</category>
    </item>
    <item>
      <title>How I Architected an EV Charging Platform (OCPP, WebSocket, Flutter)</title>
      <link>https://michaelsam94.tech/blog/how-i-architected-an-ev-charging-platform/</link>
      <guid isPermaLink="true">https://michaelsam94.tech/blog/how-i-architected-an-ev-charging-platform/</guid>
      <pubDate>Thu, 04 Jun 2026 00:00:00 GMT</pubDate>
      <description>A walkthrough of an EV charging platform: OCPP 1.6 over WebSocket, a Node.js middleware layer, sub-100ms local control, and a Flutter app — with key decisions.</description>
      <category>Flutter</category>
      <category>OCPP</category>
      <category>WebSocket</category>
      <category>Architecture</category>
      <category>IoT</category>
    </item>
  </channel>
</rss>
