<?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>raisul.xyz</title>
    <link>https://raisul.xyz</link>
    <description>Notes on tech, craft, and what comes next.</description>
    <language>en</language>
    <atom:link href="https://raisul.xyz/rss.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>The Counterfactual Dilemma</title>
      <link>https://raisul.xyz/blog/2026/counterfactual</link>
      <guid isPermaLink="true">https://raisul.xyz/blog/2026/counterfactual</guid>
      <pubDate>Sun, 22 Mar 2026 00:00:00 GMT</pubDate>
      <description>On picking the right comparison.</description>
      <content:encoded><![CDATA[<h2>The invisible half</h2>
<p>Every experiment rests on a question you can&#39;t answer: what would have happened if we hadn&#39;t done the thing?</p>
<p>This hypothetical – the outcome in the world without intervention – is called the counterfactual. It&#39;s the invisible half of every experiment. You can never observe it, only construct it. And how you construct it determines whether your conclusions are sound or fiction.</p>
<p>Getting it wrong is easy. A recurring part of my work is finding where someone built the wrong counterfactual and showing why their conclusions collapse.</p>
<p>The same error runs outside data too, into decisions where no one audits the comparison.</p>
<h2>A confident wrong answer</h2>
<p>A company runs an ad campaign. Budget constraints mean only 40% of the eligible audience actually sees it. The other 60% are in the experiment pool but never get the ad.</p>
<p>When measuring whether it worked, the tempting shortcut: compare the exposed group against all of control. Treatment on the left, control on the right. The exposed group bought more. Campaign worked.</p>
<p>Except the exposed 40% didn&#39;t get there randomly. They&#39;re systematically different from the unreached majority: more active, more likely to be in-market, more likely to convert regardless. Comparing them against an unfiltered control doesn&#39;t measure the campaign&#39;s effect. It measures self-selection wearing the campaign&#39;s name.</p>
<p>The fix is precise: if it&#39;s not like for like, it&#39;s not a valid comparison. Everything else is just a mirror angled to confirm what you already believed.</p>
<p>A bad counterfactual gives you a confident wrong answer. That&#39;s worse than no answer at all.</p>
<h2>The Silicon Valley trap</h2>
<p>The tech mythology runs like this: the dropout who built a billion-dollar company at 19, the engineer who turned down Google at 22 and made something from scratch. These stories are real. They&#39;re also a broken counterfactual for anyone who uses them as a benchmark.</p>
<p>The reason isn&#39;t talent – it might be equal, might not be, and you can&#39;t measure it cleanly enough to know. What you can measure is starting position. And starting position is what you inherited before the gun went off, not when you entered the race.</p>
<p>There&#39;s a tailwind that accumulates invisibly when you grow up inside an ecosystem: the university network that quietly routes opportunities your way, the childhood friend who joined a fund, the professor who makes an introduction, the cultural literacy that means you know how rooms work before you ever enter one. Nobody earned these things. They&#39;re interest that compounds on being born in the right place. The safety net that makes failure survivable is capital, not courage.</p>
<p>When you arrive mid-life from somewhere else, you&#39;re not starting at zero. You&#39;re starting negative, working to close a gap that others never had to think about. The skills travel. The tailwind doesn&#39;t come with them.</p>
<p>Which means the comparison group you&#39;ve been measuring against was never valid.</p>
<h2>A sample size of one</h2>
<p>Counterfactual reasoning works when you can find a valid comparison group: random assignment, similar distributions, comparable starting conditions. The more your conditions diverge, the less any external benchmark tells you.</p>
<p>Stack enough divergent variables and the pool of valid comparisons shrinks.</p>
<p>At some point it reaches one.</p>
<p>When n=1, there is no control group. There never was. Every comparison you&#39;ve been running – every time you measured yourself against the mythology – was already invalid. Not directionally off, but structurally broken. The number was never measuring what you thought it was.</p>
<p>The method that holds is pre-post: measuring against your own prior state. Not <em>am I where they are?</em> but <em>am I further than I was?</em> It strips away the noise of incomparable starting conditions and measures the only quantity you have a clean read on: your own trajectory.</p>
<p>From where you actually started, are you gaining?</p>
]]></content:encoded>
    </item>
    <item>
      <title>Hello World</title>
      <link>https://raisul.xyz/blog/2026/hello-world</link>
      <guid isPermaLink="true">https://raisul.xyz/blog/2026/hello-world</guid>
      <pubDate>Thu, 19 Feb 2026 00:00:00 GMT</pubDate>
      <description>Deciding to write anyway.</description>
      <content:encoded><![CDATA[<p>I&#39;ve started this blog three times in my head before actually starting it. Each time, I talked myself out of it. Too busy. Not ready. What would I even say? Let&#39;s wait until I have something worth saying.</p>
<p>But I think that&#39;s a trap. You wait until your ideas are polished enough to share, and in the meantime they&#39;re just there, circulating, nagging in your mind. Taking up space without going anywhere.</p>
<p>So this is me deciding to write anyway. Not to build an audience. Not to position myself. Just to think better.</p>
<p>I don&#39;t know what this blog will become. I have a few threads I&#39;m pulling on about AI, about building, about what it means to come from somewhere (nowhere?) and try to make something. Those will show up here eventually.</p>
<p>But for now, I&#39;m here. I&#39;m writing. And I&#39;m doing it mostly for myself.</p>
<p>If something resonates with you, great. If not, that&#39;s fine too.</p>
<p>More soon.</p>
]]></content:encoded>
    </item>
  </channel>
</rss>
