<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
    <id>https://cherifyaya.space/</id>
    <title>Cherif Yaya</title>
    <updated>2026-06-17T13:01:53.557Z</updated>
    <generator>https://github.com/jpmonette/feed</generator>
    <author>
        <name>Cherif Yaya</name>
        <email>hi@cherifyaya.space</email>
        <uri>https://cherifyaya.space</uri>
    </author>
    <link rel="alternate" href="https://cherifyaya.space/"/>
    <subtitle>How do you eat an elephant? One bite at a time!</subtitle>
    <icon>https://cherifyaya.space/favicon.svg</icon>
    <rights>All rights reserved 2026, Cherif Yaya</rights>
    <entry>
        <title type="html"><![CDATA[What I’m reading this week : Making complexity legible📚]]></title>
        <id>https://cherifyaya.space/weekly-reads-April-25</id>
        <link href="https://cherifyaya.space/weekly-reads-April-25"/>
        <updated>2026-04-24T07:00:00.000Z</updated>
        <summary type="html"><![CDATA[This week’s reading list is about making complexity legible.

Stage points toward a future where code review has to become more structured because AI will make code production cheaper than code comprehension. Milanović’s Laws of Software Engineering is a reminder that org charts and incentives shape systems more than we admit. And Shri Khalpada’s GPS explainer turns the blue dot on your phone back into physics, geometry, and clock precision.

Three very different reads, one shared question: what happens when the hard part is no longer making more, but understanding what we have made?]]></summary>
        <content type="html"><![CDATA[<main class="notion light-mode notion-page notion-block-34d34af1fc79800686adedc8abf0cace"><div class="notion-viewport"></div><div class="notion-collection-page-properties"><div class="notion-collection-row"><div class="notion-collection-row-body"><div class="notion-collection-row-property"><div class="notion-collection-column-title"><svg viewBox="0 0 14 14" class="notion-collection-column-title-icon"><path d="M10.889 5.5H3.11v1.556h7.778V5.5zm1.555-4.444h-.777V0H10.11v1.056H3.89V0H2.333v1.056h-.777c-.864 0-1.548.7-1.548 1.555L0 12.5c0 .856.692 1.5 1.556 1.5h10.888C13.3 14 14 13.356 14 12.5V2.611c0-.855-.7-1.555-1.556-1.555zm0 11.444H1.556V3.944h10.888V12.5zM8.556 8.611H3.11v1.556h5.445V8.61z"></path></svg><div class="notion-collection-column-title-body">date</div></div><div class="notion-collection-row-value"><span class="notion-property notion-property-date">Apr 24, 2026</span></div></div><div class="notion-collection-row-property"><div class="notion-collection-column-title"><svg viewBox="0 0 14 14" class="notion-collection-column-title-icon"><path d="M7 4.568a.5.5 0 00-.5-.5h-6a.5.5 0 00-.5.5v1.046a.5.5 0 00.5.5h6a.5.5 0 00.5-.5V4.568zM.5 1a.5.5 0 00-.5.5v1.045a.5.5 0 00.5.5h12a.5.5 0 00.5-.5V1.5a.5.5 0 00-.5-.5H.5zM0 8.682a.5.5 0 00.5.5h11a.5.5 0 00.5-.5V7.636a.5.5 0 00-.5-.5H.5a.5.5 0 00-.5.5v1.046zm0 3.068a.5.5 0 00.5.5h9a.5.5 0 00.5-.5v-1.045a.5.5 0 00-.5-.5h-9a.5.5 0 00-.5.5v1.045z"></path></svg><div class="notion-collection-column-title-body">slug</div></div><div class="notion-collection-row-value"><span class="notion-property notion-property-text">weekly-reads-April-25</span></div></div><div class="notion-collection-row-property"><div class="notion-collection-column-title"><svg viewBox="0 0 14 14" class="notion-collection-column-title-icon"><path d="M7 13A6 6 0 107 1a6 6 0 000 12zM3.751 5.323A.2.2 0 013.909 5h6.182a.2.2 0 01.158.323L7.158 9.297a.2.2 0 01-.316 0L3.751 5.323z"></path></svg><div class="notion-collection-column-title-body">status</div></div><div class="notion-collection-row-value"><span class="notion-property notion-property-select"><div class="notion-property-select-item notion-item-red">Published</div></span></div></div><div class="notion-collection-row-property"><div class="notion-collection-column-title"><svg viewBox="0 0 14 14" class="notion-collection-column-title-icon"><path d="M4 3a1 1 0 011-1h7a1 1 0 110 2H5a1 1 0 01-1-1zm0 4a1 1 0 011-1h7a1 1 0 110 2H5a1 1 0 01-1-1zm0 4a1 1 0 011-1h7a1 1 0 110 2H5a1 1 0 01-1-1zM2 4a1 1 0 110-2 1 1 0 010 2zm0 4a1 1 0 110-2 1 1 0 010 2zm0 4a1 1 0 110-2 1 1 0 010 2z"></path></svg><div class="notion-collection-column-title-body">tags</div></div><div class="notion-collection-row-value"><span class="notion-property notion-property-multi_select"><div class="notion-property-multi_select-item notion-item-green">Quote</div></span></div></div><div class="notion-collection-row-property"><div class="notion-collection-column-title"><svg viewBox="0 0 14 14" class="notion-collection-column-title-icon"><path d="M7 4.568a.5.5 0 00-.5-.5h-6a.5.5 0 00-.5.5v1.046a.5.5 0 00.5.5h6a.5.5 0 00.5-.5V4.568zM.5 1a.5.5 0 00-.5.5v1.045a.5.5 0 00.5.5h12a.5.5 0 00.5-.5V1.5a.5.5 0 00-.5-.5H.5zM0 8.682a.5.5 0 00.5.5h11a.5.5 0 00.5-.5V7.636a.5.5 0 00-.5-.5H.5a.5.5 0 00-.5.5v1.046zm0 3.068a.5.5 0 00.5.5h9a.5.5 0 00.5-.5v-1.045a.5.5 0 00-.5-.5h-9a.5.5 0 00-.5.5v1.045z"></path></svg><div class="notion-collection-column-title-body">summary</div></div><div class="notion-collection-row-value"><span class="notion-property notion-property-text">This week’s reading list is about making complexity legible.

Stage points toward a future where code review has to become more structured because AI will make code production cheaper than code comprehension. Milanović’s Laws of Software Engineering is a reminder that org charts and incentives shape systems more than we admit. And Shri Khalpada’s GPS explainer turns the blue dot on your phone back into physics, geometry, and clock precision.

Three very different reads, one shared question: what happens when the hard part is no longer making more, but understanding what we have made?</span></div></div><div class="notion-collection-row-property"><div class="notion-collection-column-title"><svg viewBox="0 0 14 14" class="notion-collection-column-title-icon"><path d="M7 13A6 6 0 107 1a6 6 0 000 12zM3.751 5.323A.2.2 0 013.909 5h6.182a.2.2 0 01.158.323L7.158 9.297a.2.2 0 01-.316 0L3.751 5.323z"></path></svg><div class="notion-collection-column-title-body">type</div></div><div class="notion-collection-row-value"><span class="notion-property notion-property-select"><div class="notion-property-select-item notion-item-purple">Post</div></span></div></div></div></div></div><h2 class="notion-h notion-h1 notion-h-indent-0 notion-block-34d34af1fc79809fa002e42012cada91" data-id="34d34af1fc79809fa002e42012cada91"><span><div id="34d34af1fc79809fa002e42012cada91" class="notion-header-anchor"></div><a class="notion-hash-link" href="#34d34af1fc79809fa002e42012cada91" title="📚 What I’m Reading This Week: Making Complexity Legible"><svg viewBox="0 0 16 16" width="16" height="16"><path fill-rule="evenodd" d="M7.775 3.275a.75.75 0 001.06 1.06l1.25-1.25a2 2 0 112.83 2.83l-2.5 2.5a2 2 0 01-2.83 0 .75.75 0 00-1.06 1.06 3.5 3.5 0 004.95 0l2.5-2.5a3.5 3.5 0 00-4.95-4.95l-1.25 1.25zm-4.69 9.64a2 2 0 010-2.83l2.5-2.5a2 2 0 012.83 0 .75.75 0 001.06-1.06 3.5 3.5 0 00-4.95 0l-2.5 2.5a3.5 3.5 0 004.95 4.95l1.25-1.25a.75.75 0 00-1.06-1.06l-1.25 1.25a2 2 0 01-2.83 0z"></path></svg></a><span class="notion-h-title">📚 What I’m Reading This Week: Making Complexity Legible</span></span></h2><div class="notion-text notion-block-34d34af1fc79806b806bcd7c3a4ee289">The three pieces I kept thinking about this week are all about legibility.</div><div class="notion-text notion-block-34d34af1fc7980928074c30b9b54e72c">One is about making code review easier to digest. One is a catalog of the organizational laws that quietly shape software teams. One explains GPS from first principles, taking something we use every day and rebuilding it from time, distance, geometry, and relativity.</div><div class="notion-text notion-block-34d34af1fc798039ae05cd05c469db76">That feels like the common thread: progress often depends less on producing more information and more on making existing complexity consumable by the people who need to reason about it.</div><h3 class="notion-h notion-h2 notion-h-indent-1 notion-block-34d34af1fc79803aa66eed21bfb463d8" data-id="34d34af1fc79803aa66eed21bfb463d8"><span><div id="34d34af1fc79803aa66eed21bfb463d8" class="notion-header-anchor"></div><a class="notion-hash-link" href="#34d34af1fc79803aa66eed21bfb463d8" title="Code review as the next bottleneck"><svg viewBox="0 0 16 16" width="16" height="16"><path fill-rule="evenodd" d="M7.775 3.275a.75.75 0 001.06 1.06l1.25-1.25a2 2 0 112.83 2.83l-2.5 2.5a2 2 0 01-2.83 0 .75.75 0 00-1.06 1.06 3.5 3.5 0 004.95 0l2.5-2.5a3.5 3.5 0 00-4.95-4.95l-1.25 1.25zm-4.69 9.64a2 2 0 010-2.83l2.5-2.5a2 2 0 012.83 0 .75.75 0 001.06-1.06 3.5 3.5 0 00-4.95 0l-2.5 2.5a3.5 3.5 0 004.95 4.95l1.25-1.25a.75.75 0 00-1.06-1.06l-1.25 1.25a2 2 0 01-2.83 0z"></path></svg></a><span class="notion-h-title">Code review as the next bottleneck</span></span></h3><div class="notion-text notion-block-34d34af1fc79808c9854e29da36d1b39"><a class="notion-link" href="https://stagereview.app/">Stage</a> is an interesting attempt at making code review easier to digest. The product frames itself around a simple idea: pull requests should be organized into logical chapters so reviewers can understand changes faster.</div><div class="notion-text notion-block-34d34af1fc7980828552d5c3385633c2">I think this is pointing in the right direction.</div><div class="notion-text notion-block-34d34af1fc7980478dffdeee5bd9189e">If AI makes it possible to ship far more software, code review becomes one of the obvious constraints. Not because humans are bad at reviewing code, but because the shape of the work changes. A reviewer is not just checking syntax. They are trying to reconstruct intent, understand risk, map implementation back to product requirements, notice architectural drift, and decide whether the change is safe to approve.</div><div class="notion-text notion-block-34d34af1fc7980f09126db3ba77c6304">That is hard when the unit of review is a giant diff.</div><div class="notion-text notion-block-34d34af1fc7980c2a85eeef71496ebd8">The answer is not simply faster reviewers or more rubber stamping. The answer is better packaging of software changes. Big pieces of code need to become easier to consume. Reviewers need narrative structure, smaller conceptual chunks, and clearer boundaries around what changed and why.</div><div class="notion-text notion-block-34d34af1fc7980f88896cbe46b5c7961">This is why I also think stacked PRs matter. GitHub&#x27;s newer support for stacked changes is part of the same broader movement. The future of code review probably looks less like staring at one massive patch and more like walking through a sequence of focused changes where each step has a coherent reason to exist.</div><div class="notion-text notion-block-34d34af1fc7980bfa8f8d4cfd7ba8fbc">The deeper point is that the bottleneck in software may move from writing to understanding. If machines increase code production, teams will need much better tools for comprehension, trust, and approval. The winners will not just generate code. They will make generated work reviewable.</div><h3 class="notion-h notion-h2 notion-h-indent-1 notion-block-34d34af1fc79809aae41d1ae98a02dcb" data-id="34d34af1fc79809aae41d1ae98a02dcb"><span><div id="34d34af1fc79809aae41d1ae98a02dcb" class="notion-header-anchor"></div><a class="notion-hash-link" href="#34d34af1fc79809aae41d1ae98a02dcb" title="The laws underneath the meetings"><svg viewBox="0 0 16 16" width="16" height="16"><path fill-rule="evenodd" d="M7.775 3.275a.75.75 0 001.06 1.06l1.25-1.25a2 2 0 112.83 2.83l-2.5 2.5a2 2 0 01-2.83 0 .75.75 0 00-1.06 1.06 3.5 3.5 0 004.95 0l2.5-2.5a3.5 3.5 0 00-4.95-4.95l-1.25 1.25zm-4.69 9.64a2 2 0 010-2.83l2.5-2.5a2 2 0 012.83 0 .75.75 0 001.06-1.06 3.5 3.5 0 00-4.95 0l-2.5 2.5a3.5 3.5 0 004.95 4.95l1.25-1.25a.75.75 0 00-1.06-1.06l-1.25 1.25a2 2 0 01-2.83 0z"></path></svg></a><span class="notion-h-title">The laws underneath the meetings</span></span></h3><figure class="notion-asset-wrapper notion-asset-wrapper-image notion-block-34d34af1fc7980d0bf84f119c137b464"><div style="position:relative;display:flex;justify-content:center;align-self:center;width:100%;max-width:100%;flex-direction:column;height:100%"><img style="object-fit:cover" src="https://www.notion.so/image/attachment%3Af2acb872-7513-45fe-afcd-ae64664b0033%3AIMG_6969.png?table=block&amp;id=34d34af1-fc79-80d0-bf84-f119c137b464&amp;cache=v2" alt="notion image" loading="lazy" decoding="async"/></div></figure><div class="notion-blank notion-block-34d34af1fc7980ecbddac48c91e11bbd"> </div><div class="notion-text notion-block-34d34af1fc79803190ecc74aeb25f599"><a class="notion-link" href="https://lawsofsoftwareengineering.com/">Dr. Milan Milanović&#x27;s Laws of Software Engineering</a> is a useful collection because it names patterns engineers repeatedly rediscover the hard way. The site gathers 56 laws across architecture, teams, planning, quality, scale, design, and decision-making.</div><div class="notion-text notion-block-34d34af1fc798087a79cdcb71e85849b">The two that stand out to me are Conway&#x27;s Law and Goodhart&#x27;s Law.</div><div class="notion-text notion-block-34d34af1fc798063a58dca02d4378ab2">Conway&#x27;s Law says that organizations design systems that mirror their own communication structure. This sounds abstract until you have worked inside enough companies. A fragmented org produces fragmented systems. A team split by platform boundaries often creates product seams that users can feel. A company that cannot coordinate well internally usually ships software that cannot coordinate well technically.</div><div class="notion-text notion-block-34d34af1fc7980da9e0bcb94455ec5f2">This is why architecture is rarely just architecture. It is a residue of how people talk, who owns what, which teams trust each other, and where coordination is expensive. You can sometimes refactor the code, but if the org chart and incentives stay the same, the system often grows back into the same shape.</div><div class="notion-text notion-block-34d34af1fc798063b8bcfe16f917650a">Goodhart&#x27;s Law is the other one I see everywhere: when a measure becomes a target, it ceases to be a good measure. This is especially relevant in engineering organizations because we love dashboards. Velocity, commits, PR count, story points, incidents, test coverage, operational metrics, AI generated code volume. All of these can be useful signals. All of them can become distorted the moment people are rewarded for moving the number instead of improving the underlying reality.</div><div class="notion-text notion-block-34d34af1fc7980bfb54bdbab3524cba0">The lesson is not to avoid metrics. It is to treat them as instruments, not gods. Good metrics should invite better judgment. Bad metrics replace judgment with theater.</div><div class="notion-text notion-block-34d34af1fc7980699e28d66278bdcf50">The best engineering leaders I have worked with understand both laws intuitively. They know that system design follows social design, and they know that incentives quietly rewrite behavior.</div><h3 class="notion-h notion-h2 notion-h-indent-1 notion-block-34d34af1fc798025bf2ff157e6a9bbfb" data-id="34d34af1fc798025bf2ff157e6a9bbfb"><span><div id="34d34af1fc798025bf2ff157e6a9bbfb" class="notion-header-anchor"></div><a class="notion-hash-link" href="#34d34af1fc798025bf2ff157e6a9bbfb" title="GPS and the pleasure of first principles"><svg viewBox="0 0 16 16" width="16" height="16"><path fill-rule="evenodd" d="M7.775 3.275a.75.75 0 001.06 1.06l1.25-1.25a2 2 0 112.83 2.83l-2.5 2.5a2 2 0 01-2.83 0 .75.75 0 00-1.06 1.06 3.5 3.5 0 004.95 0l2.5-2.5a3.5 3.5 0 00-4.95-4.95l-1.25 1.25zm-4.69 9.64a2 2 0 010-2.83l2.5-2.5a2 2 0 012.83 0 .75.75 0 001.06-1.06 3.5 3.5 0 00-4.95 0l-2.5 2.5a3.5 3.5 0 004.95 4.95l1.25-1.25a.75.75 0 00-1.06-1.06l-1.25 1.25a2 2 0 01-2.83 0z"></path></svg></a><span class="notion-h-title">GPS and the pleasure of first principles</span></span></h3><figure class="notion-asset-wrapper notion-asset-wrapper-image notion-block-34d34af1fc79802cb7f9db173215a677"><div style="position:relative;display:flex;justify-content:center;align-self:center;width:100%;max-width:100%;flex-direction:column;height:100%"><img style="object-fit:cover" src="https://www.notion.so/image/attachment%3A22602606-986c-416a-9107-c9a76f042358%3AIMG_6970.jpeg?table=block&amp;id=34d34af1-fc79-802c-b7f9-db173215a677&amp;cache=v2" alt="notion image" loading="lazy" decoding="async"/></div></figure><div class="notion-blank notion-block-34d34af1fc798056884ce63502f739ca"> </div><div class="notion-text notion-block-34d34af1fc798067b731cd93157f6749">Shri Khalpada&#x27;s <a class="notion-link" href="https://perthirtysix.com/how-the-heck-does-gps-work">How The Heck Does GPS Work?</a> is the kind of explanation I always enjoy: take a technology everyone uses, strip away the magic, and rebuild it from first principles.</div><div class="notion-text notion-block-34d34af1fc798088b318e48cc735766d">GPS is easy to take for granted. You open your phone, see a blue dot, and move on with your day. But underneath that blue dot is an absurdly elegant chain of ideas.</div><div class="notion-text notion-block-34d34af1fc7980b18894e4a72619d270">The piece starts with the simplest version: GPS turns time into distance. A satellite sends a radio signal. Your phone receives it. If you know how long the signal took to arrive, and you know the speed of light, you can estimate how far away the satellite is.</div><div class="notion-text notion-block-34d34af1fc7980939681ed1f25d6e344">One satellite gives you a distance, not a location. You could be anywhere along a ring. Add more satellites and the rings intersect. That gets you closer to a point. Then the explanation adds the messier parts: your phone has a cheap clock, satellites have precise clocks, signal timing errors create huge distance errors, and relativity matters because satellite clocks experience time differently than clocks on Earth.</div><div class="notion-text notion-block-34d34af1fc798000b64ef00220667966">That is what makes the essay satisfying. It does not just say GPS uses satellites. It shows the stack of assumptions required to make the system work. Geometry gives you a framework. Time gives you distance. Better clocks reduce error. Relativity corrections keep the whole thing from drifting.</div><div class="notion-text notion-block-34d34af1fc7980618103e4a3f59499b5">I like learning how things work because it changes how you see the world. A mundane object becomes a bundle of solved problems. The blue dot on a map becomes physics, engineering, incentives, infrastructure, and decades of accumulated precision.</div><h3 class="notion-h notion-h2 notion-h-indent-1 notion-block-34d34af1fc79806095e3c284ac8cd5de" data-id="34d34af1fc79806095e3c284ac8cd5de"><span><div id="34d34af1fc79806095e3c284ac8cd5de" class="notion-header-anchor"></div><a class="notion-hash-link" href="#34d34af1fc79806095e3c284ac8cd5de" title="In Conclusion"><svg viewBox="0 0 16 16" width="16" height="16"><path fill-rule="evenodd" d="M7.775 3.275a.75.75 0 001.06 1.06l1.25-1.25a2 2 0 112.83 2.83l-2.5 2.5a2 2 0 01-2.83 0 .75.75 0 00-1.06 1.06 3.5 3.5 0 004.95 0l2.5-2.5a3.5 3.5 0 00-4.95-4.95l-1.25 1.25zm-4.69 9.64a2 2 0 010-2.83l2.5-2.5a2 2 0 012.83 0 .75.75 0 001.06-1.06 3.5 3.5 0 00-4.95 0l-2.5 2.5a3.5 3.5 0 004.95 4.95l1.25-1.25a.75.75 0 00-1.06-1.06l-1.25 1.25a2 2 0 01-2.83 0z"></path></svg></a><span class="notion-h-title">In Conclusion</span></span></h3><div class="notion-text notion-block-34d34af1fc798066a76ce3e0016b8a7c">This week&#x27;s readings all point to the same idea: modern life is full of systems whose main challenge is not only creation, but comprehension.</div><div class="notion-text notion-block-34d34af1fc7980b4bfa0f2f43582a092">Code review needs to make large changes legible to humans. Engineering laws make repeated organizational patterns easier to recognize. GPS becomes less magical, and more impressive, when you understand the mechanics beneath it.</div><div class="notion-text notion-block-34d34af1fc79807a8c0beda6d7ec416d">The questions I am sitting with:</div><div class="notion-text notion-block-34d34af1fc7980b18c38d929b7e3a6cc">What parts of software development are about to become bottlenecked by comprehension rather than production?</div><div class="notion-text notion-block-34d34af1fc79807d92f5c30d922fbe7f">Which metrics in our organizations are still useful signals, and which have become targets people game?</div><div class="notion-text notion-block-34d34af1fc79805baa49c55000ab6391">And what other everyday technologies deserve a first-principles explanation so we can stop treating them like magic?</div></main>]]></content>
    </entry>
    <entry>
        <title type="html"><![CDATA[AI, Agents and Outcomes]]></title>
        <id>https://cherifyaya.space/ai-agents-outcomes</id>
        <link href="https://cherifyaya.space/ai-agents-outcomes"/>
        <updated>2025-11-11T08:00:00.000Z</updated>
        <summary type="html"><![CDATA[From Process to Outcomes.
The shift happening now is clear: we’re moving from hiring for process to hiring for results. AI accelerates this transformation through what Karpathy calls the autonomy dial, your ability to set how independent AI agents are in driving real business impact.]]></summary>
        <content type="html"><![CDATA[<main class="notion light-mode notion-page notion-block-2a834af1fc798050b0abc7d83a66e30f"><div class="notion-viewport"></div><div class="notion-collection-page-properties"><div class="notion-collection-row"><div class="notion-collection-row-body"><div class="notion-collection-row-property"><div class="notion-collection-column-title"><svg viewBox="0 0 14 14" class="notion-collection-column-title-icon"><path d="M10.889 5.5H3.11v1.556h7.778V5.5zm1.555-4.444h-.777V0H10.11v1.056H3.89V0H2.333v1.056h-.777c-.864 0-1.548.7-1.548 1.555L0 12.5c0 .856.692 1.5 1.556 1.5h10.888C13.3 14 14 13.356 14 12.5V2.611c0-.855-.7-1.555-1.556-1.555zm0 11.444H1.556V3.944h10.888V12.5zM8.556 8.611H3.11v1.556h5.445V8.61z"></path></svg><div class="notion-collection-column-title-body">date</div></div><div class="notion-collection-row-value"><span class="notion-property notion-property-date">Nov 11, 2025</span></div></div><div class="notion-collection-row-property"><div class="notion-collection-column-title"><svg viewBox="0 0 14 14" class="notion-collection-column-title-icon"><path d="M7 4.568a.5.5 0 00-.5-.5h-6a.5.5 0 00-.5.5v1.046a.5.5 0 00.5.5h6a.5.5 0 00.5-.5V4.568zM.5 1a.5.5 0 00-.5.5v1.045a.5.5 0 00.5.5h12a.5.5 0 00.5-.5V1.5a.5.5 0 00-.5-.5H.5zM0 8.682a.5.5 0 00.5.5h11a.5.5 0 00.5-.5V7.636a.5.5 0 00-.5-.5H.5a.5.5 0 00-.5.5v1.046zm0 3.068a.5.5 0 00.5.5h9a.5.5 0 00.5-.5v-1.045a.5.5 0 00-.5-.5h-9a.5.5 0 00-.5.5v1.045z"></path></svg><div class="notion-collection-column-title-body">slug</div></div><div class="notion-collection-row-value"><span class="notion-property notion-property-text">ai-agents-outcomes</span></div></div><div class="notion-collection-row-property"><div class="notion-collection-column-title"><svg viewBox="0 0 14 14" class="notion-collection-column-title-icon"><path d="M7 13A6 6 0 107 1a6 6 0 000 12zM3.751 5.323A.2.2 0 013.909 5h6.182a.2.2 0 01.158.323L7.158 9.297a.2.2 0 01-.316 0L3.751 5.323z"></path></svg><div class="notion-collection-column-title-body">status</div></div><div class="notion-collection-row-value"><span class="notion-property notion-property-select"><div class="notion-property-select-item notion-item-red">Published</div></span></div></div><div class="notion-collection-row-property"><div class="notion-collection-column-title"><svg viewBox="0 0 14 14" class="notion-collection-column-title-icon"><path d="M4 3a1 1 0 011-1h7a1 1 0 110 2H5a1 1 0 01-1-1zm0 4a1 1 0 011-1h7a1 1 0 110 2H5a1 1 0 01-1-1zm0 4a1 1 0 011-1h7a1 1 0 110 2H5a1 1 0 01-1-1zM2 4a1 1 0 110-2 1 1 0 010 2zm0 4a1 1 0 110-2 1 1 0 010 2zm0 4a1 1 0 110-2 1 1 0 010 2z"></path></svg><div class="notion-collection-column-title-body">tags</div></div><div class="notion-collection-row-value"><span class="notion-property notion-property-multi_select"><div class="notion-property-multi_select-item notion-item-brown">Principle</div><div class="notion-property-multi_select-item notion-item-pink">AI</div></span></div></div><div class="notion-collection-row-property"><div class="notion-collection-column-title"><svg viewBox="0 0 14 14" class="notion-collection-column-title-icon"><path d="M7 4.568a.5.5 0 00-.5-.5h-6a.5.5 0 00-.5.5v1.046a.5.5 0 00.5.5h6a.5.5 0 00.5-.5V4.568zM.5 1a.5.5 0 00-.5.5v1.045a.5.5 0 00.5.5h12a.5.5 0 00.5-.5V1.5a.5.5 0 00-.5-.5H.5zM0 8.682a.5.5 0 00.5.5h11a.5.5 0 00.5-.5V7.636a.5.5 0 00-.5-.5H.5a.5.5 0 00-.5.5v1.046zm0 3.068a.5.5 0 00.5.5h9a.5.5 0 00.5-.5v-1.045a.5.5 0 00-.5-.5h-9a.5.5 0 00-.5.5v1.045z"></path></svg><div class="notion-collection-column-title-body">summary</div></div><div class="notion-collection-row-value"><span class="notion-property notion-property-text"><b>From Process to Outcomes.</b>
<b>The shift happening now</b> is clear: <b>we’re moving</b> from hiring for process to <b>hiring for results</b>. AI accelerates this transformation through what Karpathy calls the <b>autonomy dial, </b>your ability to set how independent AI agents are in driving real business impact.</span></div></div><div class="notion-collection-row-property"><div class="notion-collection-column-title"><svg viewBox="0 0 14 14" class="notion-collection-column-title-icon"><path d="M7 13A6 6 0 107 1a6 6 0 000 12zM3.751 5.323A.2.2 0 013.909 5h6.182a.2.2 0 01.158.323L7.158 9.297a.2.2 0 01-.316 0L3.751 5.323z"></path></svg><div class="notion-collection-column-title-body">type</div></div><div class="notion-collection-row-value"><span class="notion-property notion-property-select"><div class="notion-property-select-item notion-item-purple">Post</div></span></div></div></div></div></div><div class="notion-text notion-block-2a834af1fc798015b8eed0ac41352d0d">Here&#x27;s a surprisingly misunderstood truth I&#x27;ve seen again and again: <b>outcomes matter way more than enablement</b>.</div><div class="notion-text notion-block-2a834af1fc7980c589a6e63a13011825">For example, I&#x27;ve watched teams spend months building &quot;comprehensive testing enablement platforms&quot;. Beautiful, horizontal, cross-platform solutions with detailed timelines and impressive technicals. But none of that matters unless it delivers concrete outcomes: more tests implemented, bugs caught earlier, improved code quality. Meaning what will drive the bottom line for the business is engineers actually using those platforms and catching bugs.</div><div class="notion-text notion-block-2a834af1fc7980ef8579da7ee2d1b869">Technology  untethered to business outcomes is like cherry without the cake. The most successful operators focus on driving existing top line metrics with measurable impact rather than simply adding new tools for the sake of it. Or put another way, they focus on impact.</div><div class="notion-text notion-block-2a834af1fc79809d8cb8d5e611845b08">This is the shift from hiring for process to <b>hiring for outcomes</b>. Just like you hire an engineer to deliver customer value, not to follow a specific coding methodology or implement the latest architectures patterns.</div><h4 class="notion-h notion-h3 notion-h-indent-0 notion-block-2a834af1fc79801e8ac0c4eaf6b0b6a1" data-id="2a834af1fc79801e8ac0c4eaf6b0b6a1"><span><div id="2a834af1fc79801e8ac0c4eaf6b0b6a1" class="notion-header-anchor"></div><a class="notion-hash-link" href="#2a834af1fc79801e8ac0c4eaf6b0b6a1" title="The Autonomy Dial: Your New Superpower"><svg viewBox="0 0 16 16" width="16" height="16"><path fill-rule="evenodd" d="M7.775 3.275a.75.75 0 001.06 1.06l1.25-1.25a2 2 0 112.83 2.83l-2.5 2.5a2 2 0 01-2.83 0 .75.75 0 00-1.06 1.06 3.5 3.5 0 004.95 0l2.5-2.5a3.5 3.5 0 00-4.95-4.95l-1.25 1.25zm-4.69 9.64a2 2 0 010-2.83l2.5-2.5a2 2 0 012.83 0 .75.75 0 001.06-1.06 3.5 3.5 0 00-4.95 0l-2.5 2.5a3.5 3.5 0 004.95 4.95l1.25-1.25a.75.75 0 00-1.06-1.06l-1.25 1.25a2 2 0 01-2.83 0z"></path></svg></a><span class="notion-h-title"><b>The Autonomy Dial: Your New Superpower</b></span></span></h4><div class="notion-text notion-block-2a834af1fc798035a091ebfcb3603051">Agentic workflows represent AI-driven processes where autonomous agents make decisions, take actions, and coordinate tasks with minimal human intervention, adapting to real-time data and unexpected conditions.</div><div class="notion-text notion-block-2a834af1fc7980898b6bdae6e56ae7c9">The autonomy dial is a <b>mental model for the future of work</b>. Instead of micromanaging AI tools, you&#x27;ll set the level of independence appropriate for each task. For example, applied to coding:</div><ul class="notion-list notion-list-disc notion-block-2a834af1fc7980e1b462d232f63729d0"><li><b>Dial at 20%</b>: AI suggests improvements to your existing code</li></ul><ul class="notion-list notion-list-disc notion-block-2a834af1fc7980e28256c4ff1345a9ac"><li><b>Dial at 60%</b>: AI writes entire functions based on your specifications</li></ul><ul class="notion-list notion-list-disc notion-block-2a834af1fc7980be9742d82f9419e0ca"><li><b>Dial at 90%</b>: AI agents autonomously implement features from high-level requirements</li></ul><div class="notion-text notion-block-2a834af1fc7980618057c6deac1f01c9">Modern agentic AI systems are structured around four components: Perception (data collection), Decision-Making (algorithmic guidance), Learning (continuous improvement), and Action (real-world execution).</div><div class="notion-text notion-block-2a834af1fc798019809bcb0d05eecf57">Notice 90% not 100%. For now, we’ll always need humans in the loop (at least until AGI, but that’s another topic).</div><h4 class="notion-h notion-h3 notion-h-indent-0 notion-block-2a834af1fc7980aa8246feffc48ac070" data-id="2a834af1fc7980aa8246feffc48ac070"><span><div id="2a834af1fc7980aa8246feffc48ac070" class="notion-header-anchor"></div><a class="notion-hash-link" href="#2a834af1fc7980aa8246feffc48ac070" title="What This Means for You"><svg viewBox="0 0 16 16" width="16" height="16"><path fill-rule="evenodd" d="M7.775 3.275a.75.75 0 001.06 1.06l1.25-1.25a2 2 0 112.83 2.83l-2.5 2.5a2 2 0 01-2.83 0 .75.75 0 00-1.06 1.06 3.5 3.5 0 004.95 0l2.5-2.5a3.5 3.5 0 00-4.95-4.95l-1.25 1.25zm-4.69 9.64a2 2 0 010-2.83l2.5-2.5a2 2 0 012.83 0 .75.75 0 001.06-1.06 3.5 3.5 0 00-4.95 0l-2.5 2.5a3.5 3.5 0 004.95 4.95l1.25-1.25a.75.75 0 00-1.06-1.06l-1.25 1.25a2 2 0 01-2.83 0z"></path></svg></a><span class="notion-h-title"><b>What This Means for You</b></span></span></h4><div class="notion-text notion-block-2a834af1fc79803385cde4ed5d9ea2cc">The agentic revolution isn&#x27;t coming, <b>it&#x27;s here</b>. 93% of IT executives are highly interested in agentic AI for business, with the global AI market projected to reach $267 billion by 2027.</div><div class="notion-text notion-block-2a834af1fc798060b4f5c80f831efe88">We&#x27;re at the cusp of autonomous outcomes, where AI agents will work at the layer of results rather than processes. The companies that understand this shift, that focus on outcomes, that embrace the autonomy dial, that treat LLMs as infrastructure rather than novelty, those are the ones that will thrive.</div><div class="notion-text notion-block-2a834af1fc7980c594dbc660e9f2f779">The future isn&#x27;t about replacing humans with AI. It&#x27;s about <b>humans working with AI agents to achieve outcomes that were previously impossible</b>. The question isn&#x27;t whether this will happen, but how quickly you&#x27;ll adapt your mental models to this new reality.</div></main>]]></content>
    </entry>
    <entry>
        <title type="html"><![CDATA[How this blog works]]></title>
        <id>https://cherifyaya.space/how-blog-works-no-self-hosting</id>
        <link href="https://cherifyaya.space/how-blog-works-no-self-hosting"/>
        <updated>2025-11-02T07:00:00.000Z</updated>
        <summary type="html"><![CDATA[How I migrated this blog from a DIY stack to a new setup using Nobelium, a Notion-based starter that pairs Notion with Next.js. This new setup, deployed on Vercel, automates many tasks, including SSL certificate renewal and site deployment, allowing me  to focus on writing. ]]></summary>
        <content type="html"><![CDATA[<main class="notion light-mode notion-page notion-block-29f34af1fc7980d3b32dcf6b7ca323fb"><div class="notion-viewport"></div><div class="notion-collection-page-properties"></div><div class="notion-text notion-block-29f34af1fc798038a3dac59dfcd2b0d0">For years I ran this site on a DIY stack: a VPS, a weblog engine, and a recurring calendar reminder to log in and renew the TLS certificate before it lapsed. It felt empowering at first, but the maintenance treadmill, especially chasing expiring SSL certs, slowly drained the fun out of posting. I wanted the control of self-hosting without the stress of playing midnight sysadmin and the speed of Next.js static pages.  I’ve been looking a solution for years. Then I stumbled upon <b>Nobelium</b>.</div><h3 class="notion-h notion-h2 notion-h-indent-0 notion-block-29f34af1fc7980aba3ecf4a1f419037c" data-id="29f34af1fc7980aba3ecf4a1f419037c"><span><div id="29f34af1fc7980aba3ecf4a1f419037c" class="notion-header-anchor"></div><a class="notion-hash-link" href="#29f34af1fc7980aba3ecf4a1f419037c" title="From Servers to a Notion Page"><svg viewBox="0 0 16 16" width="16" height="16"><path fill-rule="evenodd" d="M7.775 3.275a.75.75 0 001.06 1.06l1.25-1.25a2 2 0 112.83 2.83l-2.5 2.5a2 2 0 01-2.83 0 .75.75 0 00-1.06 1.06 3.5 3.5 0 004.95 0l2.5-2.5a3.5 3.5 0 00-4.95-4.95l-1.25 1.25zm-4.69 9.64a2 2 0 010-2.83l2.5-2.5a2 2 0 012.83 0 .75.75 0 001.06-1.06 3.5 3.5 0 00-4.95 0l-2.5 2.5a3.5 3.5 0 004.95 4.95l1.25-1.25a.75.75 0 00-1.06-1.06l-1.25 1.25a2 2 0 01-2.83 0z"></path></svg></a><span class="notion-h-title">From Servers to a Notion Page</span></span></h3><div class="notion-text notion-block-29f34af1fc79808486a1cb72e012897d">These days every post on the site starts as a simple Notion page. I duplicated the <a class="notion-link" href="https://github.com/craigary/nobelium">Nobelium template</a>, dropped
it into my workspace, and pointed the project at that shared database. Notion gives me the writing environment I already live in, plus tags, drafts, and filters with zero configuration. When I press “Publish” in Notion, the content is already structured for the site, no markdown exports or front‑matter required. And the refresh is fast.
</div><figure class="notion-asset-wrapper notion-asset-wrapper-image notion-block-29f34af1fc79808fb4b9e3526d7d71f2"><div style="position:relative;display:flex;justify-content:center;align-self:center;width:50px;max-width:100%;flex-direction:column"><img style="object-fit:cover" src="https://www.notion.so/image/attachment%3Ac91ded44-8374-488a-be5c-6769e3a3d733%3Aimage.png?table=block&amp;id=29f34af1-fc79-808f-b4b9-e3526d7d71f2&amp;cache=v2" alt="notion image" loading="lazy" decoding="async"/></div></figure><h3 class="notion-h notion-h2 notion-h-indent-0 notion-block-29f34af1fc7980569b5cc8e50eb3846b" data-id="29f34af1fc7980569b5cc8e50eb3846b"><span><div id="29f34af1fc7980569b5cc8e50eb3846b" class="notion-header-anchor"></div><a class="notion-hash-link" href="#29f34af1fc7980569b5cc8e50eb3846b" title="Meet the Stack"><svg viewBox="0 0 16 16" width="16" height="16"><path fill-rule="evenodd" d="M7.775 3.275a.75.75 0 001.06 1.06l1.25-1.25a2 2 0 112.83 2.83l-2.5 2.5a2 2 0 01-2.83 0 .75.75 0 00-1.06 1.06 3.5 3.5 0 004.95 0l2.5-2.5a3.5 3.5 0 00-4.95-4.95l-1.25 1.25zm-4.69 9.64a2 2 0 010-2.83l2.5-2.5a2 2 0 012.83 0 .75.75 0 001.06-1.06 3.5 3.5 0 00-4.95 0l-2.5 2.5a3.5 3.5 0 004.95 4.95l1.25-1.25a.75.75 0 00-1.06-1.06l-1.25 1.25a2 2 0 01-2.83 0z"></path></svg></a><span class="notion-h-title">Meet the Stack</span></span></h3><div class="notion-text notion-block-29f34af1fc79801aba7ee02dc322b9b0">The front end is built with <a class="notion-link" href="https://github.com/craigary/nobelium">Nobelium</a>, an open-source starter that pairs Notion with Next.js. Nobelium pulls new content through Notion’s API, renders it with <code class="notion-inline-code">react-notion-x</code>, and bakes the whole thing into static pages. That means the site is fast, accessible, and easy to theme with Tailwind CSS.</div><div class="notion-text notion-block-29f34af1fc7980d28954fff51bf4cbf4">Deployment now lives on Vercel. A fresh build kicks off automatically the moment I update content in Notion, thanks to incremental static regeneration. I no longer SSH into a server or babysit Docker containers; Vercel
handles the infrastructure, global CDN, and uptime monitoring behind the scenes.</div><h3 class="notion-h notion-h2 notion-h-indent-0 notion-block-29f34af1fc7980b28a90f98af769841c" data-id="29f34af1fc7980b28a90f98af769841c"><span><div id="29f34af1fc7980b28a90f98af769841c" class="notion-header-anchor"></div><a class="notion-hash-link" href="#29f34af1fc7980b28a90f98af769841c" title="The End of Certificate Churn"><svg viewBox="0 0 16 16" width="16" height="16"><path fill-rule="evenodd" d="M7.775 3.275a.75.75 0 001.06 1.06l1.25-1.25a2 2 0 112.83 2.83l-2.5 2.5a2 2 0 01-2.83 0 .75.75 0 00-1.06 1.06 3.5 3.5 0 004.95 0l2.5-2.5a3.5 3.5 0 00-4.95-4.95l-1.25 1.25zm-4.69 9.64a2 2 0 010-2.83l2.5-2.5a2 2 0 012.83 0 .75.75 0 001.06-1.06 3.5 3.5 0 00-4.95 0l-2.5 2.5a3.5 3.5 0 004.95 4.95l1.25-1.25a.75.75 0 00-1.06-1.06l-1.25 1.25a2 2 0 01-2.83 0z"></path></svg></a><span class="notion-h-title">The End of Certificate Churn</span></span></h3><div class="notion-text notion-block-29f34af1fc7980ae91bbfac7e3564a0c">The biggest quality-of-life win: I never think about TLS certificates anymore. Vercel provisions and renews SSL
for the custom domain automatically. No more surprise downtime when Let’s Encrypt runs out, no more messing with <code class="notion-inline-code">certbot</code>, and no more calendar reminders. </div><h3 class="notion-h notion-h2 notion-h-indent-0 notion-block-29f34af1fc79805abfcffe8abaacd168" data-id="29f34af1fc79805abfcffe8abaacd168"><span><div id="29f34af1fc79805abfcffe8abaacd168" class="notion-header-anchor"></div><a class="notion-hash-link" href="#29f34af1fc79805abfcffe8abaacd168" title="Publishing from My Phone"><svg viewBox="0 0 16 16" width="16" height="16"><path fill-rule="evenodd" d="M7.775 3.275a.75.75 0 001.06 1.06l1.25-1.25a2 2 0 112.83 2.83l-2.5 2.5a2 2 0 01-2.83 0 .75.75 0 00-1.06 1.06 3.5 3.5 0 004.95 0l2.5-2.5a3.5 3.5 0 00-4.95-4.95l-1.25 1.25zm-4.69 9.64a2 2 0 010-2.83l2.5-2.5a2 2 0 012.83 0 .75.75 0 001.06-1.06 3.5 3.5 0 00-4.95 0l-2.5 2.5a3.5 3.5 0 004.95 4.95l1.25-1.25a.75.75 0 00-1.06-1.06l-1.25 1.25a2 2 0 01-2.83 0z"></path></svg></a><span class="notion-h-title">Publishing from My Phone</span></span></h3><div class="notion-text notion-block-29f34af1fc7980fc8d9dc4b39698e2a7">One unexpected bonus: I can publish from anywhere using the Notion mobile app. Whether I&#x27;m commuting, waiting in line, or inspiration strikes while I&#x27;m away from my desk, I can draft, edit, and hit publish right from my phone. The post goes live within seconds, no laptop required. Loving it.</div><h3 class="notion-h notion-h2 notion-h-indent-0 notion-block-29f34af1fc79806c9bd8c0d95e5dc2ff" data-id="29f34af1fc79806c9bd8c0d95e5dc2ff"><span><div id="29f34af1fc79806c9bd8c0d95e5dc2ff" class="notion-header-anchor"></div><a class="notion-hash-link" href="#29f34af1fc79806c9bd8c0d95e5dc2ff" title="Publishing Is Finally Fun Again"><svg viewBox="0 0 16 16" width="16" height="16"><path fill-rule="evenodd" d="M7.775 3.275a.75.75 0 001.06 1.06l1.25-1.25a2 2 0 112.83 2.83l-2.5 2.5a2 2 0 01-2.83 0 .75.75 0 00-1.06 1.06 3.5 3.5 0 004.95 0l2.5-2.5a3.5 3.5 0 00-4.95-4.95l-1.25 1.25zm-4.69 9.64a2 2 0 010-2.83l2.5-2.5a2 2 0 012.83 0 .75.75 0 001.06-1.06 3.5 3.5 0 00-4.95 0l-2.5 2.5a3.5 3.5 0 004.95 4.95l1.25-1.25a.75.75 0 00-1.06-1.06l-1.25 1.25a2 2 0 01-2.83 0z"></path></svg></a><span class="notion-h-title">Publishing Is Finally Fun Again</span></span></h3><div class="notion-text notion-block-29f34af1fc79807b914bf5e5cf9f229a">Today’s workflow is simple:</div><ol start="1" class="notion-list notion-list-numbered notion-block-29f34af1fc7980098075e925c95df698"><li>Draft and polish in Notion.</li></ol><ol start="2" class="notion-list notion-list-numbered notion-block-29f34af1fc798029bc35cf0a07bbf394"><li>Hit publish.</li></ol><ol start="3" class="notion-list notion-list-numbered notion-block-29f34af1fc798054956fd60075d62c89"><li>Let Vercel rebuild and refresh the static site a minute later.</li></ol><div class="notion-text notion-block-29f34af1fc7980959c1debde014654fd">If I want to tweak the look or add features, I still have the full Next.js project in the repo, so the door to
customization stays open. But the routine friction that kept me from writing is gone.</div><div class="notion-text notion-block-29f34af1fc798076afccfd2ff940ab18">If you’ve been clinging to a self-hosted blog out of principle while dreading the maintenance, consider stealing this setup. Less time wrangling servers, more time sharing learnings, that’s a trade I’ll take every time.</div></main>]]></content>
    </entry>
    <entry>
        <title type="html"><![CDATA[From LLMs as OS to Outcomes]]></title>
        <id>https://cherifyaya.space/llms-as-os-outcomes</id>
        <link href="https://cherifyaya.space/llms-as-os-outcomes"/>
        <updated>2025-07-05T07:00:00.000Z</updated>
        <summary type="html"><![CDATA[LLMs as operating systems for computational intelligence, with prompts serving as the new system calls. This Software 3.0 approach allows for free-at-the-margin intelligence, with coding emerging as the first killer application due to its repeatable and verifiable nature.]]></summary>
        <content type="html"><![CDATA[<main class="notion light-mode notion-page notion-block-29f34af1fc7980ad8eded95595af99be"><div class="notion-viewport"></div><div class="notion-collection-page-properties"></div><div class="notion-text notion-block-29f34af1fc798061be55f4eb0a93373a">Andrej Karpathy&#x27;s talk is a great watch. One idea from his presentation keeps echoing in my head: <b>LLMs as the operating system for computational intelligence</b>, and the <b>autonomy dial</b>. These are already flipping our approach to work.</div><figure class="notion-asset-wrapper notion-asset-wrapper-image notion-block-29f34af1fc7980d8b345f9a435985be1"><div style="position:relative;display:flex;justify-content:center;align-self:center;width:100%;max-width:100%;flex-direction:column;height:100%"><img style="object-fit:cover" src="https://www.notion.so/image/attachment%3Aa8d2da7f-36dc-4755-b37a-ae554e4fdf1f%3Aclassical_computer.png?table=block&amp;id=29f34af1-fc79-80d8-b345-f9a435985be1&amp;cache=v2" alt="notion image" loading="lazy" decoding="async"/></div></figure><div class="notion-text notion-block-29f34af1fc79800a8a51d8651df8a663"><b>The Operating System of Intelligence</b></div><div class="notion-text notion-block-29f34af1fc79806992ddf87b4f3002a9">What if we think of LLMs not as smarter autocompletes but as the abstraction layer for computational intelligence? Just as traditional operating systems provide a clean interface that hides the messy complexity of hardware from applications, LLMs hide the incomprehensible complexity of those transformer weights and neural networks behind a simple, shared, natural interface: <b>human language</b>. Brilliant.</div><div class="notion-text notion-block-29f34af1fc7980c5a628f7740f60058e">This is what Karpathy calls Software 3.0. Where instead of writing explicit code, we access raw computational intelligence through natural language. The transformer architecture and those billions of trained weights? They&#x27;re the &quot;hardware&quot;—the actual computational substrate where intelligence lives. The LLM is the OS that makes this intelligence accessible.</div><div class="notion-text notion-block-29f34af1fc7980c9b996c83cd27f41e7">And <b>prompts are the modern syscalls of this new operating system</b>. Instead of calling functions like malloc() or read(), we make requests in English. &quot;Analyze this data,&quot; &quot;write this function,&quot; &quot;deepsearch this problem&quot;—these are our new system calls to the intelligence layer underneath.</div><div class="notion-text notion-block-29f34af1fc7980338ad2c2ce911536c7"><b>We now have almost free-at-the-margin intelligence</b>. And the exciting thing? We&#x27;re at the same stage with LLM as OS as we were with mainframe computers eras of the early 70s where we accessed computers through timeshares.</div><div class="notion-text notion-block-29f34af1fc7980e399d6d277438af480">We have the infrastructure—now we&#x27;re hunting for the killer apps. And the first one? It&#x27;s already here.</div><div class="notion-text notion-block-29f34af1fc7980d49759d3d178f2c9b8"><b>Coding: The First Killer App</b></div><div class="notion-text notion-block-29f34af1fc7980d39355d8c304f05657">Arguably, the first breakout application for GenAI isn&#x27;t customer service chatbots or content generation (even though those are moderately successful), it&#x27;s <b>agentic coding</b>. The Product Market Fit is highest for this category (as demonstrated by the sky high valuations of startups such as AnySphere/Windsurf).</div><div class="notion-text notion-block-29f34af1fc7980faaa44f01047671179">AI agents are particularly effective in software development because code follows defined patterns and is ultimately very repeatable and trainable. It&#x27;s also verifiable. Through automated tests, agents can iterate using test results as feedback, and output quality can be measured objectively.</div><div class="notion-text notion-block-29f34af1fc798020b56ef4dcebe11452">This is where Karpathy&#x27;s <b>autonomy dial</b> concept fits nicely. The progression:</div><ul class="notion-list notion-list-disc notion-block-29f34af1fc798046958df195a9780f80"><li><b>Low autonomy</b>: AI-powered autocomplete (like GitHub Copilot)</li></ul><ul class="notion-list notion-list-disc notion-block-29f34af1fc7980d29dd0ebe6fd914839"><li><b>Medium autonomy</b>: Chat-based code generation and debugging</li></ul><ul class="notion-list notion-list-disc notion-block-29f34af1fc7980eaba4de78078b49020"><li><b>High autonomy</b>: AI agents that understand requirements and implement complete solutions</li></ul><div class="notion-text notion-block-29f34af1fc79801da670c1037d59e810">We&#x27;re already seeing AI agents resolve real GitHub issues and generate complete workflows from simple prompts. It&#x27;s clear the future of software engineering will include AI agents in one shape or another.</div><div class="notion-text notion-block-29f34af1fc798013be3df3c6f465bdba"><b>What&#x27;s Next? The Excel and Photoshop Moments</b></div><div class="notion-text notion-block-29f34af1fc7980969d22e56bed862041">But coding is just the beginning. Think about the PC revolution: first came the operating system (DOS, then Windows), then the killer app that proved the concept (VisiCalc, then Excel), and finally the creative applications that expanded what was possible (Photoshop, PageMaker).</div><div class="notion-text notion-block-29f34af1fc79809f9c2af79c675bc50a">We&#x27;re living through that exact sequence right now, just compressed into a much faster timeline.</div><div class="notion-text notion-block-29f34af1fc7980339242ee2edcd804fd"><b>The infrastructure is live. The first killer app is proven. Now we&#x27;re racing toward the applications that will define the next decade of work.</b></div><div class="notion-text notion-block-29f34af1fc7980a09d92ffe32cecab85">And honestly? I can&#x27;t wait to see what we build.</div></main>]]></content>
    </entry>
    <entry>
        <title type="html"><![CDATA[Simple, Right, Complex]]></title>
        <id>https://cherifyaya.space/simple-right-complex-engineering</id>
        <link href="https://cherifyaya.space/simple-right-complex-engineering"/>
        <updated>2025-03-15T07:00:00.000Z</updated>
        <summary type="html"><![CDATA[Engineers often follow a pattern of approaching problem-solving in three ways: minimalist, maximalist, and pragmatic. The minimalist approach favors simplicity, while the maximalist approach embraces complexity. The pragmatic approach strikes a balance, using complexity only when necessary to deliver value.]]></summary>
        <content type="html"><![CDATA[<main class="notion light-mode notion-page notion-block-29f34af1fc7980f48db6e689e6cecae1"><div class="notion-viewport"></div><div class="notion-collection-page-properties"></div><figure class="notion-asset-wrapper notion-asset-wrapper-image notion-block-29f34af1fc7980be9c1afa5dcb2cd30c"><div style="position:relative;display:flex;justify-content:center;align-self:center;width:100%;max-width:100%;flex-direction:column;height:100%"><img style="object-fit:cover" src="https://www.notion.so/image/attachment%3Ab47fdaaf-9423-47a8-b664-d94a7ac3b5af%3ANOOOO_you_have_to_have_complex_reasons_for_what.png?table=block&amp;id=29f34af1-fc79-80be-9c1a-fa5dcb2cd30c&amp;cache=v2" alt="notion image" loading="lazy" decoding="async"/></div></figure><div class="notion-text notion-block-29f34af1fc7980f7a953ca1ff870ba52">I’ve been thinking about this pattern I’ve noticed over years of building software. It’s fascinating how engineers naturally gravitate toward three distinct approaches when solving problems.</div><h3 class="notion-h notion-h2 notion-h-indent-0 notion-block-29f34af1fc79809b9b43d5213a23b707" data-id="29f34af1fc79809b9b43d5213a23b707"><span><div id="29f34af1fc79809b9b43d5213a23b707" class="notion-header-anchor"></div><a class="notion-hash-link" href="#29f34af1fc79809b9b43d5213a23b707" title="The Minimalist Approach"><svg viewBox="0 0 16 16" width="16" height="16"><path fill-rule="evenodd" d="M7.775 3.275a.75.75 0 001.06 1.06l1.25-1.25a2 2 0 112.83 2.83l-2.5 2.5a2 2 0 01-2.83 0 .75.75 0 00-1.06 1.06 3.5 3.5 0 004.95 0l2.5-2.5a3.5 3.5 0 00-4.95-4.95l-1.25 1.25zm-4.69 9.64a2 2 0 010-2.83l2.5-2.5a2 2 0 012.83 0 .75.75 0 001.06-1.06 3.5 3.5 0 00-4.95 0l-2.5 2.5a3.5 3.5 0 004.95 4.95l1.25-1.25a.75.75 0 00-1.06-1.06l-1.25 1.25a2 2 0 01-2.83 0z"></path></svg></a><span class="notion-h-title"><b>The Minimalist Approach</b></span></span></h3><div class="notion-text notion-block-29f34af1fc7980178c2eefa006f4eb5e">These are your “if it works, ship it” folks. Love how they keep things dead simple - one function, minimal dependencies, quick deploys. Sure, some might call it too basic, but I’ve seen these solutions outlast many overengineered alternatives. They just work.</div><h3 class="notion-h notion-h2 notion-h-indent-0 notion-block-29f34af1fc798017accfcce2f9e1bb46" data-id="29f34af1fc798017accfcce2f9e1bb46"><span><div id="29f34af1fc798017accfcce2f9e1bb46" class="notion-header-anchor"></div><a class="notion-hash-link" href="#29f34af1fc798017accfcce2f9e1bb46" title="The Maximalist Zone"><svg viewBox="0 0 16 16" width="16" height="16"><path fill-rule="evenodd" d="M7.775 3.275a.75.75 0 001.06 1.06l1.25-1.25a2 2 0 112.83 2.83l-2.5 2.5a2 2 0 01-2.83 0 .75.75 0 00-1.06 1.06 3.5 3.5 0 004.95 0l2.5-2.5a3.5 3.5 0 00-4.95-4.95l-1.25 1.25zm-4.69 9.64a2 2 0 010-2.83l2.5-2.5a2 2 0 012.83 0 .75.75 0 001.06-1.06 3.5 3.5 0 00-4.95 0l-2.5 2.5a3.5 3.5 0 004.95 4.95l1.25-1.25a.75.75 0 00-1.06-1.06l-1.25 1.25a2 2 0 01-2.83 0z"></path></svg></a><span class="notion-h-title"><b>The Maximalist Zone</b></span></span></h3><div class="notion-text notion-block-29f34af1fc798067b360e45546f11921">This is where most of us land at some point (guilty as charged). You know the type - implementing every design pattern they’ve just learned, breaking a simple app into 15 microservices, adding Redis to cache a static page. Classic architecture astronaut stuff. We’ve all been there, turning a simple form submission into an event-sourced distributed system.</div><h3 class="notion-h notion-h2 notion-h-indent-0 notion-block-29f34af1fc79801d91a2da61c471c479" data-id="29f34af1fc79801d91a2da61c471c479"><span><div id="29f34af1fc79801d91a2da61c471c479" class="notion-header-anchor"></div><a class="notion-hash-link" href="#29f34af1fc79801d91a2da61c471c479" title="The Pragmatic Sweet Spot"><svg viewBox="0 0 16 16" width="16" height="16"><path fill-rule="evenodd" d="M7.775 3.275a.75.75 0 001.06 1.06l1.25-1.25a2 2 0 112.83 2.83l-2.5 2.5a2 2 0 01-2.83 0 .75.75 0 00-1.06 1.06 3.5 3.5 0 004.95 0l2.5-2.5a3.5 3.5 0 00-4.95-4.95l-1.25 1.25zm-4.69 9.64a2 2 0 010-2.83l2.5-2.5a2 2 0 012.83 0 .75.75 0 001.06-1.06 3.5 3.5 0 00-4.95 0l-2.5 2.5a3.5 3.5 0 004.95 4.95l1.25-1.25a.75.75 0 00-1.06-1.06l-1.25 1.25a2 2 0 01-2.83 0z"></path></svg></a><span class="notion-h-title"><b>The Pragmatic Sweet Spot</b></span></span></h3><div class="notion-text notion-block-29f34af1fc7980a5b8b2f02b915c88fa">This is where it gets interesting. After years of swinging between too simple and too complex, you start developing this sixth sense. You pick the right tool because you’ve used the wrong ones. You know when to grab something off the shelf versus building custom. It’s not about showing off your technical chops - it’s about delivering value.</div><div class="notion-text notion-block-29f34af1fc7980fb931be11490228aea">This mirrors most developers’ natural journeys. We start simple because we don’t know any better. Then we learn all these patterns and frameworks and go nuts applying them everywhere. Finally, if we’re lucky, we figure out when complexity is actually worth it.</div><div class="notion-text notion-block-29f34af1fc7980b8a39beeb56c66a830">Here a few things I’ve learned along the way:</div><ul class="notion-list notion-list-disc notion-block-29f34af1fc7980e6bb28cae47fa77c2a"><li><em>Simple doesn’t mean simplistic</em> - choosing simplicity is different from being limited by it</li></ul><ul class="notion-list notion-list-disc notion-block-29f34af1fc7980549fa6dbfbf5c161fd"><li><em>Make complexity prove its worth</em> - every abstraction should fight for its place in your system</li></ul><ul class="notion-list notion-list-disc notion-block-29f34af1fc7980fe9ecbd325d385e553"><li>The best engineers aren’t the ones who know the most patterns, but the ones who know when to use them and (perhaps) more importantly when NOT to use them</li></ul><div class="notion-text notion-block-29f34af1fc798050adc5fc267236d186">Next time you’re designing something, try this mental check: Does this really need to be complex? Am I solving the actual problem or just showing off? Will this scale with real needs (not imagined ones)?</div><div class="notion-text notion-block-29f34af1fc79802a85ffe977c889c00f">The goal isn’t to impress at tech talks. It’s to solve real problems in ways that won’t make future-you curse past-you.</div><div class="notion-text notion-block-29f34af1fc798086804bfa8ab1e9aaba">Would love to hear your experiences with this. Where do you find yourself on this curve?</div><div class="notion-text notion-block-29f34af1fc79809ab616d78ae436dda0">Drop your thoughts below.</div></main>]]></content>
    </entry>
    <entry>
        <title type="html"><![CDATA[The Power of Incremental Progress]]></title>
        <id>https://cherifyaya.space/power-of-incremental-progress</id>
        <link href="https://cherifyaya.space/power-of-incremental-progress"/>
        <updated>2024-07-28T07:00:00.000Z</updated>
        <summary type="html"><![CDATA[In software engineering, perfection is often the enemy of progress. We chase grand rewrites and sweeping overhauls, only to get trapped by dependencies, shifting priorities, and endless delays. The real superpower of high-performing teams isn’t bold reinvention — it’s incrementality. ]]></summary>
        <content type="html"><![CDATA[<main class="notion light-mode notion-page notion-block-29f34af1fc798030a668e4c369eecdec"><div class="notion-viewport"></div><div class="notion-collection-page-properties"></div><div class="notion-text notion-block-29f34af1fc79801baef2d3a9fb222fa7">In the fast-paced world of software development, we often fall into the trap of grand, sweeping changes. We dream of complete overhauls, ground-up rewrites, and revolutionary new systems. But here’s a hard truth: these all-or-nothing propositions are often a recipe for disaster.</div><div class="notion-text notion-block-29f34af1fc798022b892d7c3f028275a">Let’s talk about <b>incrementality</b>. It’s not glamorous. It doesn’t make for exciting presentations or bold mission statements. But it’s the secret weapon of successful engineering teams everywhere.</div><div class="notion-text notion-block-29f34af1fc7980229850dc281a38bb69">Consider a recent example from my time at Airbnb. We aimed to add a critical feature to our device testing lab for end-to-end testing, promising faster and more comprehensive test runs. The project hinged on the edge networking team developing a safe VPN tunneling solution, initially estimated to take one quarter. However, this dependency stretched to nine months due to unforeseen complexities, security challenges, and competing priorities, leaving our e2e testing project in limbo and causing cascading delays across multiple teams.</div><div class="notion-text notion-block-29f34af1fc79800382bbc6783238d37b">This experience starkly illustrates the pitfalls of all-or-nothing thinking in software engineering. Complex systems are prone to unexpected challenges and shifting priorities. Our mistake wasn’t in trusting the edge networking team, but in failing to plan for contingencies and interim solutions. It underscores the critical need for incremental progress and flexible planning, breaking large projects into smaller, independently valuable pieces that can deliver benefits even when other components face delays.</div><div class="notion-text notion-block-29f34af1fc7980ad8f90cf42890357f3">This isn’t just an Airbnb problem. It’s an industry-wide issue. We get caught up in the allure of the perfect solution, the comprehensive fix. We convince ourselves that if we just wait a little longer, we’ll have everything we need to do it “right.”</div><div class="notion-text notion-block-29f34af1fc7980b4b104f2574d12af07">But software doesn’t work that way. Neither does business.</div><div class="notion-text notion-block-29f34af1fc79806594a0f4f694e2cd41">Instead of waiting for the perfect solution, we should have broken the project into smaller, manageable pieces. We could have implemented an interim solution, something that got us 80% of the way there without the network dependency. Then, we could have iterated, improved, and adapted as new capabilities became available.</div><div class="notion-text notion-block-29f34af1fc7980dfbc40dd84a1b2b0fb">This approach does more than just deliver results faster. It de-risks the entire project. By shipping incremental improvements, we get real-world feedback earlier. We catch issues before they become critical. We build momentum and maintain team morale.</div><div class="notion-text notion-block-29f34af1fc79801d91a0ccafa745196c">Incrementality isn’t about lowering our standards or settling for less. It’s about recognizing that progress is better than perfection. It’s about understanding that in the real world, requirements change, technologies evolve, and businesses pivot. By working incrementally, we stay flexible and responsive to these changes.</div><div class="notion-text notion-block-29f34af1fc7980cda316f3534ba450f5">So how do we put this into practice?</div><ol start="1" class="notion-list notion-list-numbered notion-block-29f34af1fc798015869ce1781cac5907"><li>Break big projects into smaller, independently valuable pieces.</li></ol><ol start="2" class="notion-list notion-list-numbered notion-block-29f34af1fc798088bc45f7622a2598e9"><li>Prioritize these pieces based on immediate value and feasibility.</li></ol><ol start="3" class="notion-list notion-list-numbered notion-block-29f34af1fc7980679056fece219e4c18"><li>Ship early and often, even if it means using temporary solutions.</li></ol><ol start="4" class="notion-list notion-list-numbered notion-block-29f34af1fc7980169e02d831a30cc645"><li>Gather feedback and iterate rapidly.</li></ol><ol start="5" class="notion-list notion-list-numbered notion-block-29f34af1fc79803a8040e3a17ff51707"><li>Be transparent about the incremental nature of the work to set proper expectations.</li></ol><div class="notion-text notion-block-29f34af1fc79801a93cae4d1454ea350">Remember, every line of code you ship is a line of code that’s providing value, being tested, and moving you closer to your ultimate goal. Every feature you roll out is an opportunity to learn and improve.</div><div class="notion-text notion-block-29f34af1fc798092a862f0c8c13d6b18">The next time you’re faced with a big project or a daunting dependency, resist the urge to wait for everything to be perfect. Instead, ask yourself: “What can we do right now, with what we have, to move in the right direction?”</div><div class="notion-text notion-block-29f34af1fc7980029072d029d264d5df">Incrementality isn’t just a development strategy. It’s a mindset. Embrace it, and watch as your projects start delivering value sooner, adapting to change more easily, and ultimately succeeding more often.</div><div class="notion-text notion-block-29f34af1fc7980918c09d0eb8e29894c">In software engineering, as in life, the journey of a thousand miles begins with a single step. So take that step. Then take another. Before you know it, you’ll have traveled further than you ever thought possible.</div></main>]]></content>
    </entry>
    <entry>
        <title type="html"><![CDATA[Hello]]></title>
        <id>https://cherifyaya.space/hello</id>
        <link href="https://cherifyaya.space/hello"/>
        <updated>2020-04-10T07:00:00.000Z</updated>
        <summary type="html"><![CDATA[Welcome to my space.]]></summary>
        <content type="html"><![CDATA[<main class="notion light-mode notion-page notion-block-29f34af1fc7980e5b96bf8fb38b8c566"><div class="notion-viewport"></div><div class="notion-collection-page-properties"></div><div class="notion-text notion-block-29f34af1fc79807fb298ca20fcdcc2e8">Welcome! I am a Javascript, iOS and Technology enthusiast. I did iPhone stuff at Apple for a while. Now at Facebook where I tech lead teams.</div><div class="notion-text notion-block-29f34af1fc79804ea7a8c2f29a53bd83">I constantly share relevant iOS, JS, and Node.js tips and tricks. This is the place!</div><div class="notion-blank notion-block-29f34af1fc79800bbd96e271634092cc"> </div></main>]]></content>
    </entry>
</feed>