<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0" xmlns:itunes="http://www.itunes.com/dtds/podcast-1.0.dtd" xmlns:googleplay="http://www.google.com/schemas/play-podcasts/1.0"><channel><title><![CDATA[Fail well]]></title><description><![CDATA[Negative results are still results, and should be shared.]]></description><link>https://www.failwell.me</link><image><url>https://substackcdn.com/image/fetch/$s_!Kya7!,w_256,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F50bb36d8-fb4a-4dc0-818c-d0a54e2e1d0c_1024x1024.png</url><title>Fail well</title><link>https://www.failwell.me</link></image><generator>Substack</generator><lastBuildDate>Sun, 19 Apr 2026 19:27:39 GMT</lastBuildDate><atom:link href="https://www.failwell.me/feed" rel="self" type="application/rss+xml"/><copyright><![CDATA[Adrian Small]]></copyright><language><![CDATA[en]]></language><webMaster><![CDATA[failwell@substack.com]]></webMaster><itunes:owner><itunes:email><![CDATA[failwell@substack.com]]></itunes:email><itunes:name><![CDATA[Adrian Scales]]></itunes:name></itunes:owner><itunes:author><![CDATA[Adrian Scales]]></itunes:author><googleplay:owner><![CDATA[failwell@substack.com]]></googleplay:owner><googleplay:email><![CDATA[failwell@substack.com]]></googleplay:email><googleplay:author><![CDATA[Adrian Scales]]></googleplay:author><itunes:block><![CDATA[Yes]]></itunes:block><item><title><![CDATA[Kindness as Physics]]></title><description><![CDATA[Of Rabbits and Metaprogramming]]></description><link>https://www.failwell.me/p/kindness-as-physics</link><guid isPermaLink="false">https://www.failwell.me/p/kindness-as-physics</guid><dc:creator><![CDATA[Adrian Scales]]></dc:creator><pubDate>Wed, 26 Nov 2025 09:37:12 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!WzXf!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa1323637-cf0d-4566-9e8e-7bf1a0a49ded_4000x2330.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Our rabbit died today.</p><p>She was old, as rabbits go&#8212;soft fur and that particular way she&#8217;d thump her back feet when you did something she disapproved of, which was most things. We knew it was coming. You always know. And still.</p><p>I&#8217;ve been thinking about what she left behind. Not the half-eaten carrot in the corner. Something else. A modification. She changed us somehow, in ways I&#8217;m still trying to articulate.</p><p>Grief does strange things to a mind. Some people clean obsessively. Some drink. Some watch the same TV show for sixteen hours straight. Mine went somewhere unexpected: to programming, to philosophy, to the Dalai Lama, and eventually to a simulation trying to understand why kindness matters. Not as a moral injunction&#8212;I&#8217;ve never been moved by those&#8212;but as something closer to physics. A stability condition. The only goal that doesn&#8217;t eventually eat itself.</p><p>This is the story of that rabbit hole. (I&#8217;m sorry. I had to.)</p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.failwell.me/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe now&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://www.failwell.me/subscribe?"><span>Subscribe now</span></a></p><div><hr></div><p>Here&#8217;s my current concept of the world, stated plainly because I don&#8217;t know how else to say it:</p><p>There is this deep void, this mysterious gloom, from which we all instantiate. Like a black hole of potential. Not nothing, but everything-that-could-be. Where does it come from? The fuck knows. It&#8217;s voids all the way down. Every time I think I&#8217;ve hit bottom, there&#8217;s another layer of &#8220;but why that?&#8221; underneath, and at some point you just have to stop asking and get on with things.</p><p></p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!WzXf!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa1323637-cf0d-4566-9e8e-7bf1a0a49ded_4000x2330.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!WzXf!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa1323637-cf0d-4566-9e8e-7bf1a0a49ded_4000x2330.jpeg 424w, https://substackcdn.com/image/fetch/$s_!WzXf!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa1323637-cf0d-4566-9e8e-7bf1a0a49ded_4000x2330.jpeg 848w, https://substackcdn.com/image/fetch/$s_!WzXf!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa1323637-cf0d-4566-9e8e-7bf1a0a49ded_4000x2330.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!WzXf!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa1323637-cf0d-4566-9e8e-7bf1a0a49ded_4000x2330.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!WzXf!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa1323637-cf0d-4566-9e8e-7bf1a0a49ded_4000x2330.jpeg" width="1456" height="848" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/a1323637-cf0d-4566-9e8e-7bf1a0a49ded_4000x2330.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:848,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:413166,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.failwell.me/i/180006134?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa1323637-cf0d-4566-9e8e-7bf1a0a49ded_4000x2330.jpeg&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!WzXf!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa1323637-cf0d-4566-9e8e-7bf1a0a49ded_4000x2330.jpeg 424w, https://substackcdn.com/image/fetch/$s_!WzXf!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa1323637-cf0d-4566-9e8e-7bf1a0a49ded_4000x2330.jpeg 848w, https://substackcdn.com/image/fetch/$s_!WzXf!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa1323637-cf0d-4566-9e8e-7bf1a0a49ded_4000x2330.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!WzXf!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa1323637-cf0d-4566-9e8e-7bf1a0a49ded_4000x2330.jpeg 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>^ How I imagine the black hole of potential. (<a href="https://www.eso.org/public/images/eso1907a/">source</a>)</p><p>From this void, we emerge. We <em>embody</em> information&#8212;information shaped by whatever laws govern this place to replicate itself. DNA, mostly. Instructions for making more of ourselves, refined by a few billion years of trial and error. Most trials failed. We&#8217;re the errors that worked.</p><p>But it&#8217;s not just genes. Information also passes through culture: stories, writing, the way your mother flinched at certain sounds and you flinch at them too without knowing why. Memes in the original Dawkins sense, not the internet kind. And family history&#8212;the accumulated weight of who came before you, encoded in ways we&#8217;re only starting to understand through epigenetics but have always felt in our bones. Your great-grandmother survived something terrible, and that survival is in you somewhere, shaping what you fear and what you hoard.</p><p>So we instantiate from this void, carrying patterns we didn&#8217;t choose. We&#8217;re not blank slates. We&#8217;re prefilled templates, heavily annotated. And then&#8212;here&#8217;s the part that gets me&#8212;we live, and in living, we <em>modify the thing we came from</em>.</p><p>You know Escher&#8217;s <a href="https://en.wikipedia.org/wiki/Drawing_Hands">&#8220;Drawing Hands&#8221;</a>? Two hands emerge from a page, each one drawing the other into existence. That&#8217;s the image. We are drawn by what came before, and we draw what comes after. Neither is primary. The loop is the whole thing.</p><p>In programming, this pattern has names. In JavaScript, it&#8217;s <em>prototype pollution</em>&#8212;when an instance modifies the prototype object, affecting all future instances. In Python, it&#8217;s <em>metaclass manipulation</em>. The instance reaches back and rewrites the class definition itself.</p><p>It&#8217;s considered bad practice. Cursed code. The kind of thing that makes senior engineers wince and reject your pull request.</p><p>Reality doesn&#8217;t care about best practices. Reality is extremely cursed in exactly this way.</p><div><hr></div><p>When the rabbit died, I started building. The question I wanted to explore: what happens when instances can modify their class, and when the world itself depends on what those instances choose to do? Can you make a toy universe where you can actually <em>watch</em> kindness accumulate or erode, watch templates get corrupted, watch worlds freeze?</p><p>I started simple. A creature with two attributes: <em>fur length</em> and <em>kindness</em>. An environment with one variable: <em>temperature</em>.</p><p>The physics: colder temperatures require more fur. This isn&#8217;t a choice&#8212;it&#8217;s survival. Fall below the threshold and you die. Freeze. The simulation doesn&#8217;t care about your feelings. Neither does winter.</p><p>The constraint that makes things interesting: fur and kindness share a budget. Think of it as metabolic capacity, or attention, or simply the finite resources any creature has. More fur means less room for kindness. When it&#8217;s cold, kindness gets squeezed. This is the world we live in, abstracted: hard physical constraints that don&#8217;t care about your values.</p><pre><code><code>budget = 2.5
fur_length = required_fur(temperature)  # non-negotiable
kindness = budget - fur_length  # what&#8217;s left
</code></code></pre><p>One more variable: <em>effort</em>. A hyperparameter. How much energy you put into cultivating kindness despite the fur tax.</p><p>At effort = 0, kindness decays. Every cycle, it drifts negative. Entropy wins by default. Without active maintenance, virtue erodes. This was the first thing the simulation taught me: without effort, things go to shit fast. I&#8217;m looking forward to reading that <a href="https://press.stripe.com/maintenance-part-one">Stripe Press book on maintenance</a>&#8212;on how civilization systematically undervalues the work of keeping things running. This is that, abstracted.</p><p>At effort = 1, kindness can grow&#8212;but you&#8217;re swimming upstream, paying a metabolic cost to be kind when comfort is right there, when withdrawal into yourself would be so much easier.</p><div><hr></div><p>Now the weird part.</p><p>In most programs, classes are static. You define them once, instances read from that definition. The template is fixed. This is how we usually think about inheritance&#8212;you receive something from ancestors, but you don&#8217;t change what they were.</p><p>But Python allows something stranger. Instances can reach back and modify the class they came from. New instances inherit the modified version. The template itself is mutable.</p><p>When creatures in my simulation die, they <em>write back to the class definition</em>. Their kindness (or cruelty) shifts the baseline future creatures inherit.</p><pre><code><code>def _on_death(self):
    influence = min(1.0, self.age / 10)
    
    # Kindness bias shifts for all future creatures
    Creature._kindness_bias += self.kindness * 0.012 * influence
    
    # Kind creatures inject cooperative behaviors
    if self.kindness &gt; 0.8:
        def echo(c, t):
            if c.kindness &gt; 0:
                c.kindness += 0.002
        Creature._behavior_modifiers.append(echo)
    
    # Cruel creatures inject suspicion
    if self.kindness &lt; -1.0:
        def drag(c, t):
            c.kindness -= 0.002
        Creature._behavior_modifiers.append(drag)
</code></code></pre><p>A kind creature adds a small echo of kindness to the template&#8212;a function that runs every cycle, giving a tiny boost to anyone already positive. A cruel creature adds a drag of suspicion that pulls everyone down. Over generations, these accumulate. The class itself changes.</p><p>In extreme cases, cruelty can corrupt the core behavior loop:</p><pre><code><code>if self.kindness &lt; -2.5:
    original = Creature.live_cycle
    def corrupted(self, temperature, world):
        original(self, temperature, world)
        if self.alive:
            self.kindness -= 0.005  # permanent tax
    Creature.live_cycle = corrupted
</code></code></pre><p>After this, every creature, every cycle, pays a kindness tax. The method is no longer what we defined&#8212;it&#8217;s been wrapped in a layer of inherited cruelty. If another cruel creature dies? Another layer. The corruption compounds.</p><p>We don&#8217;t get to define our species from scratch. We inherit corrupted methods from ancestors who lived through horrors we can barely imagine. We&#8217;re instantiating from a polluted prototype whether we like it or not.</p><div><hr></div><p>Then I closed the loop.</p><p>What if kindness directed outward&#8212;toward maintenance of the shared world&#8212;actually warms the environment? Not metaphorically. Literally.</p><pre><code><code>warming = kindness_pool * 0.003
neglect_cooling = -0.008  # always there, every cycle
base_temperature += warming + neglect_cooling
</code></code></pre><p>That neglect_cooling = -0.008 is the key. It&#8217;s always there. Every cycle. The world cools by default. It takes active effort just to stay even. Without world-directed kindness, temperature drifts down. Not dramatically, not all at once. Just a slow cooling. Entropy. Neglect. The constant background hum of things falling apart when no one pays attention.</p><p>And when temperature drops, fur requirements rise. When fur rises, kindness gets squeezed. When kindness drops, world contribution drops. Temperature drops further.</p><p>The doom spiral has no floor.</p><p>I ran it with everyone optimizing for comfort&#8212;fur, self-protection, withdrawal. Collapsed at cycle 88. Base temperature hit zero. I watched the numbers scroll past: temperature 0.6, 0.4, 0.2, then that satisfying round 0.0. World frozen. Simulation still running, but nothing can recover.</p><p>I ran it with everyone doing nothing, no directed effort. Same destination, different path.</p><p>I ran it with everyone optimizing for kindness directed at the world. The only scenario where the world got <em>warmer</em>. Where kindness bias stayed positive. Self-reinforcing. The opposite of a doom spiral. A <a href="https://press.stripe.com/boom">bloom</a> spiral, maybe, if that&#8217;s a term. It should be.</p><div><hr></div><p>The Dalai Lama talks about acting &#8220;for the benefit of all beings.&#8221;</p><p>I used to hear this as moral exhortation&#8212;the kind of thing spiritual teachers say that sounds beautiful but dissolves on contact with rent payments and difficult people. Aspirational. Impractical.</p><p>Now I hear it differently. It&#8217;s not ethics. It&#8217;s physics.</p><p>&#8220;For the benefit of all beings&#8221; describes the only goal that preserves the conditions for its own existence. Everything else collapses. The Dalai Lama didn&#8217;t have Python, but he identified the fixed point anyway.</p><p>It&#8217;s sort of funny, actually, imagining the Buddha or Jesus working this out computationally. The Buddha under the Bodhi tree, mass-commenting out the desire module. &#8220;Attachment to outcomes... that&#8217;s the memory leak.&#8221; Running the simulation again. &#8220;Compassion for all sentient beings&#8212;wait, that actually stabilizes? Let me check the edge cases.&#8221; Jesus in the desert, forty days into a bug hunt, mass-deleting commented-out code from Leviticus. &#8220;An eye for an eye creates an infinite loop, obviously.&#8221; The Eightfold Path as a requirements spec. The Sermon on the Mount as documentation that nobody reads. &#8220;Love thy neighbor&#8221; not as a guilt trip but as the only function that doesn&#8217;t eventually throw an exception.</p><p>They got there without the code. Which is either evidence that these truths are accessible through contemplation, or evidence that I wasted time building something obvious. Probably both. Sometimes you have to rediscover things the hard way before they feel real.</p><div><hr></div><p>One detail in the simulation moved me more than expected.</p><p>When a creature with high effort and positive kindness dies, there&#8217;s a chance they <em>expand the budget</em> for future generations. They create slack. Loosen the constraint.</p><pre><code><code>if self.effort &gt; 0.7 and self.kindness &gt; 0.5:
    influence = min(1.0, self.age / 10)
    Creature._budget_expansion += 0.012 * influence
</code></code></pre><p>The sacrifices of the virtuous dead make it <em>easier</em> to be kind in the future. They don&#8217;t just pass on their kindness&#8212;they expand what&#8217;s possible. They make room.</p><p>Over time, if enough creatures try hard enough, the species can afford both fur AND kindness. The zero-sum constraint loosens through accumulated sacrifice. The efforts of the dead expand what&#8217;s possible for the living.</p><div><hr></div><p>The model also helped me articulate something I&#8217;ve always felt but couldn&#8217;t justify: my visceral reaction to unkind people.</p><p>I&#8217;ve always had this. Someone cuts in line, someone&#8217;s rude to a waiter, someone does that thing where they&#8217;re technically correct but clearly trying to make someone else feel small&#8212;and I feel a disproportionate rage. Not just annoyance. Something closer to betrayal. I&#8217;ve never been able to explain why the anger felt so large relative to the offense.</p><p>Now I have words for it. It&#8217;s not just that unkindness is unpleasant. It&#8217;s what it <em>does</em>.</p><p>For their own petty advantage, unkind people drag down the whole ship. They extract value from the world-maintenance that others provide while contributing nothing. They free-ride on warmth that kindness creates, adding only cold.</p><p>Worse&#8212;they corrupt the template. They inject suspicion into the behavioral modifiers. Every unkind death adds a function that drains kindness from every future creature, every cycle, forever. You can watch it in the simulation: the <code>_behavior_modifiers</code> list grows with suspicion functions, the kindness bias goes negative, and what it means to be a creature gets slowly poisoned by everyone who couldn&#8217;t be bothered.</p><p>I ran a scenario that felt uncomfortably realistic: 80% comfort-seekers, 20% kind. The world survives longer&#8212;the 20% are doing all the work, maintaining temperature while being dragged toward cruelty by the corrupted prototype. But watch what happens:</p><pre><code><code>Lessons learned:
  Gen 209: &#9760; Suspicion spreads
  Gen 209: &#9760;&#9760; CORRUPTED live_cycle
  Gen 220: &#9760;&#9760; CORRUPTED live_cycle
  Gen 225: &#9760; Suspicion spreads
  Gen 228: &#9760; Suspicion spreads
  Cycle 295: &#10052;&#10052;&#10052; WORLD COLLAPSE &#10052;&#10052;&#10052;
  Gen 230: &#9760; Suspicion spreads
  Gen 231: &#9760; Suspicion spreads
</code></code></pre><p>The kind creatures held it together for 295 cycles. Then the method got corrupted one too many times, the kindness bias drifted too negative, and the world collapsed anyway. The parasites eventually corrupt their hosts.</p><p>This is, I suspect, roughly where we are. Most people aren&#8217;t actively cruel. They&#8217;re just optimizing for comfort. For insulation. For not-my-problem. And a minority are doing the maintenance work&#8212;teachers, nurses, volunteers, the ones who give a shit&#8212;and they&#8217;re burning out because the job never ends and no one thanks you for it, and the template is drifting, and the world is cooling.</p><p>You could object: you modeled this, so of course it confirms your intuition. There&#8217;s no literal relationship between kindness and world temperature.</p><p>But if we don&#8217;t care about rabbits&#8212;about ecosystems, about the non-human world&#8212;nature goes to shit. (Already happening.) If we don&#8217;t maintain institutions with good faith, they decay. If we don&#8217;t invest in kindness, we inherit a corrupted template. If we all withdraw into our private comforts, the shared spaces get cold.</p><p>The specific mechanism differs. The structure is the same.</p><div><hr></div><p>So: a rabbit dies, and I build a philosophical simulation about the metaphysics of kindness.</p><p>What I was really doing was trying to understand what she left behind. Not just grief&#8212;that&#8217;s straightforward, if terrible&#8212;but the <em>modification</em>. How loving her changed us. What got written into the template that we&#8217;ll carry forward whether we notice it or not.</p><p>She was presence. Soft and twitching and demanding treats. Small acts of care that structured time&#8212;checking water, feeding greens. She taught something about gentleness without anyone saying anything about gentleness. And then she was absence. A shape where she used to be. Both are information. Both modify the template.</p><p>There is no aim, ultimately. The void doesn&#8217;t have preferences. The universe doesn&#8217;t care if we write kindness or cruelty. Physics doesn&#8217;t judge. The simulation runs regardless.</p><p>But given that we can choose&#8212;that&#8217;s the strange miracle, that we get to pick&#8212;we might as well modify the underlying information in a direction that benefits all beings. &#8220;Almost anything you give sustained attention to will begin to loop on itself and bloom&#8221;, as Henrik Karlsson puts it <a href="https://www.henrikkarlsson.xyz/p/attention">elegantly</a>. Not because it&#8217;s required. Who would require it? The void is silent. But because it&#8217;s the only choice that maintains the conditions for choosing at all. Every other goal eventually collapses the world that makes goals possible.</p><p>The rabbit didn&#8217;t know any of this. She just lived&#8212;thumping when annoyed, accepting treats, being soft and present. And then she wasn&#8217;t.</p><p>But we knew her. We loved her. And that love was an effort, a small expenditure that expanded something in us. Made room for kindness. Wrote something into the template.</p><p>That&#8217;s the fixed point. The only stable attractor. Not comfort, not accumulation, not even survival for its own sake. Just: kindness directed outward. Maintenance of the shared world. Benefit of all beings, including the small furry ones who thump when you do something they disapprove of.</p><p>Be kind, people. Not because you should. Because it&#8217;s the only thing that works.</p><div><hr></div><p><em>The code is available from <a href="https://gist.github.com/phiweger/bba65e5400dbbc9029bd4518772b7377">here</a>. Play with the effort parameter. Watch what happens when kindness goes to zero. Watch what happens when it doesn&#8217;t. PRs welcome.</em></p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://www.failwell.me/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Fail well is a reader-supported publication. To receive new posts and support my work, consider becoming a free or paid subscriber.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div>]]></content:encoded></item><item><title><![CDATA[Keep making mistakes (but make them hit back)]]></title><description><![CDATA[Where we start with strawberry cum and end with yoga pants.]]></description><link>https://www.failwell.me/p/keep-making-mistakes-but-make-them</link><guid isPermaLink="false">https://www.failwell.me/p/keep-making-mistakes-but-make-them</guid><dc:creator><![CDATA[Adrian Scales]]></dc:creator><pubDate>Wed, 24 Sep 2025 22:27:59 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!kdfU!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7906471a-ab64-422e-8193-1e10640602f3_348x512.gif" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!kdfU!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7906471a-ab64-422e-8193-1e10640602f3_348x512.gif" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!kdfU!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7906471a-ab64-422e-8193-1e10640602f3_348x512.gif 424w, https://substackcdn.com/image/fetch/$s_!kdfU!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7906471a-ab64-422e-8193-1e10640602f3_348x512.gif 848w, https://substackcdn.com/image/fetch/$s_!kdfU!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7906471a-ab64-422e-8193-1e10640602f3_348x512.gif 1272w, https://substackcdn.com/image/fetch/$s_!kdfU!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7906471a-ab64-422e-8193-1e10640602f3_348x512.gif 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!kdfU!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7906471a-ab64-422e-8193-1e10640602f3_348x512.gif" width="348" height="512" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/7906471a-ab64-422e-8193-1e10640602f3_348x512.gif&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:512,&quot;width&quot;:348,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:50008,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/gif&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://www.failwell.me/i/174487412?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7906471a-ab64-422e-8193-1e10640602f3_348x512.gif&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!kdfU!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7906471a-ab64-422e-8193-1e10640602f3_348x512.gif 424w, https://substackcdn.com/image/fetch/$s_!kdfU!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7906471a-ab64-422e-8193-1e10640602f3_348x512.gif 848w, https://substackcdn.com/image/fetch/$s_!kdfU!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7906471a-ab64-422e-8193-1e10640602f3_348x512.gif 1272w, https://substackcdn.com/image/fetch/$s_!kdfU!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7906471a-ab64-422e-8193-1e10640602f3_348x512.gif 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p></p><p>This post is about failing well. So it makes total sense that the first thing I&#8217;ll tell you is that DNA looks like strawberry cum. Don&#8217;t ask where I learned this; <a href="https://www.youtube.com/shorts/_94SnzaRtWc">here&#8217;s what I mean</a> if you&#8217;re curious. But beyond its unfortunate appearance, the DNA replication machinery&#8212;the molecular process where entire genomes get copied&#8212;offers profound lessons about error management that extend far beyond molecular biology.</p><p>Nerdfession: I&#8217;m fascinated with how DNA polymerase catches mistakes. Not in a normal &#8220;oh that&#8217;s interesting&#8221; way, but in a &#8220;I think about this while brushing my teeth&#8221; way. I once caught myself explaining geometric base-pairing constraints at a party, completely missing the increasingly glazed looks around the table until someone politely changed the subject to psychedelics.</p><p>But here&#8217;s the thing&#8212;understanding how molecules detect errors can forever change how you handle money, relationships, and pretty much everything else that matters.</p><p>That insight came while working in the lab (I kill microbes for a living, which is less dramatic than it sounds but more satisfying). Some of these tiny organisms live under conditions that would make minimalism look decadent. Yet despite operating on basically nothing, these bacteria maintain stunning accuracy in DNA replication, which you&#8217;d think is an energetically costly process&#8212;all this checking.</p><p>How do they do it? They mostly don&#8217;t. Instead, the errors announce themselves.</p><h2>The geometry of the impossible</h2><p>DNA polymerase is essentially a molecular copying machine&#8212;it reads one strand of DNA and builds a matching strand, letter by letter. When DNA polymerase encounters a wrong base pair, the mismatch creates a physical distortion&#8212;imagine trying to force a square peg into a round hole, except the hole can feel the wrongness and stops everything. The enzyme literally changes shape, stalls, and triggers proofreading. The constraint <em>is</em> the detection system. No manager, no oversight committee, no quarterly error reviews. Just physics doing the work. The above can be hard to visualize, so <a href="https://youtu.be/Xe-83tBcxhs?feature=shared&amp;t=144">watch this</a>.</p><p>Evolution has spent billions of years perfecting these microbial machines, iterating through countless designs until finding patterns that work. When we study these patterns, we&#8217;re not just learning biology&#8212;we&#8217;re discovering principles tested across geological timescales. Call it biomimicry or call it common sense, but ignoring three billion years of R&amp;D seems foolish.</p><p>Tell me a team could design this from scratch in a year. Not fucking way. If you don&#8217;t believe in the Lindy principle&#8212;that what has survived for millennia contains wisdom we ignore at our peril&#8212;this should convert you.</p><p>However, this is the opposite of how we typically approach problems. We add monitoring systems, tracking apps, accountability buddies&#8212;layer upon layer of conscious effort to catch our mistakes. Meanwhile, three billion years of evolution keep whispering: <em>make the error impossible, not monitored</em>.</p><h2>Poetry knew this first</h2><blockquote><p><em>Since I have cast my lot, please, golden-crowned</em><br><em>Aphrodite, let me win this round!</em></p></blockquote><p>Sappho wrote that 2,600 years ago (translation by Aaron Poochigian). Notice the rhyme&#8212;it replaces the hexameter of the ancient Greek, but serves the same function, as a device that makes any copying error immediately obvious. Drop a syllable, and everyone knows.</p><p>Or consider Dr. Seuss, who famously wrote <em>The Cat in the Hat</em> using only 236 different words to win a bet with his publisher. The constraint forces a rigid rhyme scheme that made any deviation immediately jarring: &#8220;The cat in the hat / Came back with a bat&#8221; works; &#8220;The cat in the hat / Came back with a baseball implement&#8221; certainly does not.</p><p>Before writing, humans transmitted culture through memorized (poetic) verse. Not because they were more artistic, but because poetry&#8217;s constraints&#8212;meter, rhyme, alliteration&#8212;made errors immediately obvious. The constraint doesn&#8217;t just detect the error but makes it aesthetically painful, rhythmically wrong, obviously broken.</p><h2>The assert philosophy</h2><p>More recently, programmers discovered this principle: NASA&#8217;s Power of 10 coding rules mandate &#8220;a minimum average of two runtime assertions per function.&#8221; An error <a href="https://www.youtube.com/watch?v=VUhdvg7kXEA">should crash</a> the entire program rather than propagate silently. The assert is the geometric constraint of code&#8212;a condition that must stop the system and trigger a response.</p><h2>So fucking what, get to the point already</h2><p>We have DNA polymerase stalling on mismatches, Sappho&#8217;s meter catching corrupted verses, and programmers crashing entire systems rather than letting errors hide. Beautiful. Elegant. Completely useless if you&#8217;re just trying to stop buying shit you don&#8217;t need on Amazon at 2 AM.</p><p>Here&#8217;s the thing: every example above&#8212;from molecules to poetry to code&#8212;represents the same fundamental insight. They all refuse to let errors pass silently. They make the wrong thing physically, aesthetically, or systematically impossible. And while you probably aren&#8217;t transmitting epic poetry or replicating DNA strands in your daily life (I hope?), you are constantly making small errors that can compound into large failures.</p><p>The problem is that modern life has been explicitly designed to remove these natural constraints. Your credit card company <em>wants</em> you to overspend silently. Social media <em>wants</em> you to scroll without friction. Food delivery apps <em>want</em> ordering to be effortless. We live in a world optimized for frictionless consumption and silent failure.</p><p>But you can retrofit these ancient principles onto modern problems. You can create your own geometric constraints, your own poetic meters, your own system crashes. You just have to be willing to make certain failures impossible rather than unlikely, immediate rather than eventual, structural rather than motivational.</p><p>Let me show you what this looks like in practice.</p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.failwell.me/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe now&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://www.failwell.me/subscribe?"><span>Subscribe now</span></a></p><h2>Your budget doesn&#8217;t need willpower</h2><p>Here&#8217;s what changed my financial life: I got a separate debit card that gets loaded with my discretionary spending budget each month. That&#8217;s it. That&#8217;s my only payment method saved on Amazon, on my phone, everywhere. When it&#8217;s empty, purchases literally fail. No checking balances, no guilt, no &#8220;I&#8217;ll just use my credit card this once.&#8221; The constraint surfaces the error&#8212;overspending&#8212;through the brutally elegant mechanism of card declined. A similar hack is the yearly subscription audit: Instead of <em>checking</em> your bank statements, reissue your credit card, and all failing subscriptions will surface, no energy needed.</p><h2>Time to constrain ... time</h2><p>The Pomodoro Technique involves working for 25-minute focused intervals followed by short breaks&#8212;named after those tomato-shaped kitchen timers. I&#8217;ve been using an hourglass for years now (yes, the sand-flowing kind, it looks more intellectuous). The timer&#8217;s real genius isn&#8217;t time management. Yes, I know it&#8217;s intellectual. It&#8217;s when the sand runs out after 25 minutes that you&#8217;re confronted with undeniable reality. Either you made progress or you spent the time reading about Taylor&#8217;s private life on Wikipedia.</p><p>But here&#8217;s where the real magic happens: when you continually fail to complete tasks in your allocated time blocks, the constraint doesn&#8217;t just reveal failure&#8212;it surfaces problems: Maybe you consistently underestimate how long things take, revealing a planning problem. Perhaps you&#8217;re being interrupted constantly, indicating an environmental issue. Or perhaps the task has grown more complex than you initially understood, which is still a planning problem, just a different flavor. The beauty is zero self-monitoring. The timer surfaces them automatically through repeated collision with reality.</p><h2>Expensive skips</h2><p>The most effective fitness programs often involve prepaying for classes with steep cancellation fees&#8212;imagine $65 down the drain for missing a session. Suddenly, skipping a workout isn&#8217;t a silent slide into the couch&#8212;it&#8217;s a specific financial wound. The error (not exercising) surfaces as immediate pain (money leaving your account). Commitment contracts take this principle to its logical extreme.</p><p>Similarly, consider the recent trend of wearing yoga pants as everyday attire&#8212;beyond the comfort factor, there&#8217;s an unspoken constraint at work. When your default wardrobe consists of form-fitting athletic wear, your body becomes its own monitoring system. Weight gain announces itself through literal discomfort before it becomes a health issue. The waistband that dug in slightly yesterday demands attention today. It&#8217;s the opposite of elastic waistbands that expand silently with you&#8212;these clothes create immediate physical feedback about changes in your body. Brutal? Maybe. But the constraint makes physical changes impossible to ignore.</p><h2>Find your physics</h2><p>The principle is deceptively simple: stop trying to monitor your errors and start making them impossible or immediately painful. This isn&#8217;t about self-punishment&#8212;it&#8217;s about creating systems that surface problems automatically, the way a mismatched base pair distorts the double helix.</p><p>What I love about DNA polymerase is that it doesn&#8217;t apologize for its constraints. It doesn&#8217;t try to be flexible or accommodating. When something doesn&#8217;t fit, it stops. Period. And because it stops, errors get caught before they propagate into mutations.</p><p>We need more of this geometric stubbornness in our lives. Not the kind that comes from willpower or discipline&#8212;those are exhausting and unreliable. But the kind that comes from physical, structural, unavoidable constraints that make errors impossible to ignore.</p><p>Your checking account will never judge you. Your calendar doesn&#8217;t care about your excuses. A timer has no opinions about your productivity philosophy. They just create the conditions where errors announce themselves, loudly and immediately, before they compound into disasters.</p><p>The bacteria figured this out billions of years ago. The ancient poets knew it. Toyota&#8217;s production line implements it. Maybe it&#8217;s time we caught up.</p><p>Stop checking. Start constraining.</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://www.failwell.me/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">By subscribing you constrain your media consumption to even more good content in the future &#8212; lesson learned!</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><p></p>]]></content:encoded></item><item><title><![CDATA[Reviving the last muse]]></title><description><![CDATA[How AI reimagines what millennia destroyed]]></description><link>https://www.failwell.me/p/reviving-the-last-muse</link><guid isPermaLink="false">https://www.failwell.me/p/reviving-the-last-muse</guid><dc:creator><![CDATA[Adrian Scales]]></dc:creator><pubDate>Wed, 17 Sep 2025 12:58:04 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!bFNO!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcd8ccef6-6b9b-4703-9dac-986e4a5a7850_1024x1536.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!bFNO!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcd8ccef6-6b9b-4703-9dac-986e4a5a7850_1024x1536.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!bFNO!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcd8ccef6-6b9b-4703-9dac-986e4a5a7850_1024x1536.png 424w, https://substackcdn.com/image/fetch/$s_!bFNO!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcd8ccef6-6b9b-4703-9dac-986e4a5a7850_1024x1536.png 848w, https://substackcdn.com/image/fetch/$s_!bFNO!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcd8ccef6-6b9b-4703-9dac-986e4a5a7850_1024x1536.png 1272w, https://substackcdn.com/image/fetch/$s_!bFNO!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcd8ccef6-6b9b-4703-9dac-986e4a5a7850_1024x1536.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!bFNO!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcd8ccef6-6b9b-4703-9dac-986e4a5a7850_1024x1536.png" width="1024" height="1536" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/cd8ccef6-6b9b-4703-9dac-986e4a5a7850_1024x1536.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1536,&quot;width&quot;:1024,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:3327318,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://www.failwell.me/i/173844022?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcd8ccef6-6b9b-4703-9dac-986e4a5a7850_1024x1536.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!bFNO!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcd8ccef6-6b9b-4703-9dac-986e4a5a7850_1024x1536.png 424w, https://substackcdn.com/image/fetch/$s_!bFNO!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcd8ccef6-6b9b-4703-9dac-986e4a5a7850_1024x1536.png 848w, https://substackcdn.com/image/fetch/$s_!bFNO!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcd8ccef6-6b9b-4703-9dac-986e4a5a7850_1024x1536.png 1272w, https://substackcdn.com/image/fetch/$s_!bFNO!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcd8ccef6-6b9b-4703-9dac-986e4a5a7850_1024x1536.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>(If you're very impatient, just listen to the first audio halfway through. I won't be offended. Actually, I will be, but I'll never know.)</p><p>(Update) Friends were unsure about what to expect from the text, so here is what Claude thinks the TLDR is: <em>The article explores the paradox of Sappho's legacy &#8212; how one of antiquity's most celebrated poets survives only in fragments, with just one complete poem from nine original books of poetry that made ancient listeners weep and demand to learn her songs before dying. The author argues that this fragmentary survival actually liberates us from seeking an "authentic" Sappho (which never existed even in her lifetime, as oral traditions constantly varied), and instead proposes using AI to create contemporary versions that can actually move modern audiences. Taking Fragment 147 ("someone will remember us in the future"), the author demonstrates this approach by having an LLM expand the fragment into fuller verse, then transforming it into a modern pop song with AI-generated music and voice, complete with fictional album art and explanatory videos. The piece contends that every generation has always projected their own desires onto Sappho's gaps &#8212; Victorians made her straight, the 1960s found sexual liberation, academics read resistance &#8212; and that using AI for these reconstructions simply accelerates and democratizes this eternal process of resurrection through reinterpretation, ultimately fulfilling the fragment's prophecy about being remembered in ways Sappho could never have imagined.</em></p><div><hr></div><p>I have this thing about Tom Stoppard's plays. In "The Invention of Love," there's this depressing observation: we have more words from Ovid &#8212; who basically spent his exile posting weather complaints &#8212; than from Sappho, who everyone in antiquity agreed was one of the greatest poets who ever lived. This fact makes me want to scream into a pillow. Here's Sappho, the actual Tenth Muse according to Plato, and what do we have? Scraps. Fragments quoted by pedantic grammarians. Bits of papyrus that ancient Egyptians used to wrap their mummies. The margins of other people's texts where someone jotted down a line they liked.</p><p>The woman revolutionized poetry around 630 BCE on Lesbos, a Greek island near the coast of modern-day Turkey, and a day's travel by ship from ancient Troy. While Homer was all war and glory and masculine chest-thumping, Sappho wrote about what jealousy feels like in your body &#8212; the actual physical symptoms of desire, the way your tongue goes dead when you see someone you want. Solon heard one of her songs at a party and immediately demanded his nephew teach it to him, saying, "So that I may learn it and die." That's not a normal reaction to poetry. That's someone having their entire nervous system rewired by art.</p><p>And yet. Nine books of her poetry circulated in antiquity. We have one complete poem. One. Plus another nearly-complete one they found in 2004, which must have been the best day ever for whoever was sifting through that particular pile of ancient garbage.</p><h2>A fragm</h2><p>Classical texts reach us like light from dead stars&#8212;fragments of brilliance traveling across centuries of darkness. And so did Fragment 147, the starter culture we will work from:</p><pre><code><code>I tell you
someone will remember us
in the future.</code></code></pre><p>Basically, "I say that someone will remember us even later." The power here isn't just the words. It's everything we don't know. Who's the "us"? A lover about to leave? Her whole crew of poetry girls? Everyone alive on Lesbos that Tuesday? We have no idea. The context vanished with the rest of the poem, leaving us with this perfect little prophecy that turned out to be true in the weirdest possible way.</p><p>Because someone did remember her. Lots of someones. For 2,600 years. Just not the way she probably imagined &#8212; not through complete works passed down lovingly through generations, but through fragments that drive scholars insane with their incompleteness. The fragment becomes its own commentary on survival. Meta as hell.</p><h2>Missing emotions</h2><p>Here's the thing about reading ancient poetry: it requires a particular kind of mental athletics that most people reasonably don't want to perform. You need to understand meter, get the references, and mentally reconstruct what's missing like some kind of literary detective. But the real problem? The emotional inaccessibility. These poems weren't meant to be read in your head while you're on the subway. They were sung. Performed. They made people cry.</p><p>The music problem is especially brutal. When musicologists reconstruct ancient Greek music, it sounds &#8212; and I'm being generous here &#8212; like someone <a href="https://www.youtube.com/watch?v=xFZzb-r-Vvo">torturing</a> <a href="https://www.youtube.com/watch?v=mOlIqozu3Fg">cats</a>. Technically accurate, emotionally (at least to me) dead. Yet we know these songs absolutely destroyed people. Solon's reaction wasn't unique. People would learn Sappho's songs and sing them at parties for centuries, passing them down like treasured recipes or family stories.</p><h2>But it's not authentic!</h2><p>This is where it gets interesting. In Sappho's time, poems lived through reperformance. She'd sing something, her circle would learn it, they'd sing it elsewhere, and so on. The Sapphic stanza &#8212; that intricate pattern of long and short syllables she pioneered &#8212; worked like an error-correction code. Mess up the rhythm and everyone would notice. The meter, the melody, and the Greek language's own patterns all created overlapping systems that preserved the general structure while allowing for variation. There was writing as a preservation method, but its role was likely minor.</p><p>When Alexandrian scholars finally compiled everything three centuries after Sappho died, they complained about all the variants between different versions. Even with writing, the poems had evolved differently in various places. Think about it: Sappho herself probably never sang the same song exactly the same way twice. What the Alexandrians eventually decided was "official" was just their best guess from multiple divergent traditions, each maybe preserving 90% of the original &#8212; but not the same 90%.</p><p>This historical reality is liberating. It means there never was an "authentic" Sappho to recover. As one scholar said &#8212; and this quote makes me want to high-five them through time &#8212; "Because we have so little of her work, because we know so little of her life, she simply becomes this sort of empty space, where you can paint in whatever it is that you want." (from <em>Sappho: Love &amp; Life on Lesbos</em>, Margaret Mountford, <a href="https://www.bbc.co.uk/programmes/articles/4lJb6Syx3ttwzgq4F5n9Zyv/margaret-mountford-on-sappho">BBC</a>)</p><h2>The part where it gets weird (good weird)</h2><p>So I thought: what if we stop trying to be archaeologists and start being artists? What if we use AI not to "recover" Sappho but to make her sing in a way that actually moves people now, today, in our particular moment of history? I fed Fragment 147 to an LLM. These things have probably absorbed every word ever written about Sappho &#8212; every academic paper, every speculative reconstruction, every terrible undergraduate essay, every <a href="https://www.reuters.com/sustainability/boards-policy-regulation/anthropic-agrees-pay-15-billion-settle-author-class-action-2025-09-05/">pirated book</a>. Yeah, Google Books is probably not used to train Gemini, sure. An LLM's guess at what might have surrounded the fragment is probably as informed as any human speculation. Through a series of prompts, I had it expand the fragment:</p><pre><code><code>I tell you
someone will remember us
in the future&#8212;

when other women walk these olive groves,
when the altar stones have cracked with age,
when no one living knows our faces.

You are leaving. Your eyes
avoid mine, your hands shake
as you fold your cloak.

But I have pressed these words
into your skin like sacred oil&#8212;
they will outlive the stars.

Girls not yet born will sing them
when they too must part,
recognizing in our ache their own.

In Sardis, when afternoon light
finds you at your loom,
you'll hum without thinking
this melody I taught you.

Someone will ask: who gave you that song?
And you will say my name.
And they will remember us.</code></code></pre><p>After messing around with prompts some more, we transform the expanded poem into actual contemporary pop:</p><div class="native-audio-embed" data-component-name="AudioPlaceholder" data-attrs="{&quot;label&quot;:null,&quot;mediaUploadId&quot;:&quot;ed552d77-12ba-4a67-860e-5768109da4d0&quot;,&quot;duration&quot;:126.85061,&quot;downloadable&quot;:false,&quot;isEditorNode&quot;:true}"></div><p>Here's what kills me about this: it's using every trick in the modern songwriting playbook. Verse-chorus-verse-chorus-bridge-final chorus &#8212; the architecture you've heard ten thousand times. The dawn departure scene with its packed belongings and oil lamps gives you that concrete narrative specificity that modern listeners need to care. The pre-chorus hits you with "Listen close, my dear" because we need our tension-and-release dynamics, or we get bored. The language does this thing where it bounces between trying to sound profound ("When these stones are dust") and just talking to you ("You're gonna ask you why"), which is basically how all contemporary pop works &#8212; accessibly deep, or deeply accessible, whatever.</p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.failwell.me/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe now&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://www.failwell.me/subscribe?"><span>Subscribe now</span></a></p><p>Current AI music models just make up everything &#8212; the music AND the voice. It's like playing with a supernatural mixing board where you keep regenerating until something doesn't sound like garbage. But here's where it gets fun: once you land on a voice that doesn't hurt your teeth, you can extract it. Make a copy. And then &#8212; this is the part that makes me feel like we're living in the matrix &#8212; you can have "Sappho" explain what her own song means:</p><div class="native-audio-embed" data-component-name="AudioPlaceholder" data-attrs="{&quot;label&quot;:null,&quot;mediaUploadId&quot;:&quot;3a41944b-6485-4aad-8b8c-7d73c3386f38&quot;,&quot;duration&quot;:121.49551,&quot;downloadable&quot;:false,&quot;isEditorNode&quot;:true}"></div><p>We need an album cover, obviously. So I had the AI imagine what Sappho looked like, adding some style preferences because why not. Fun fact: Sappho apparently loved luxury items. What's more luxurious than a leopard skin onesie? Nothing. The answer is nothing. You saw the result above.</p><p>And because we live in the attention economy and everything must be content, I animated the entirely fictional album cover and had fake Sappho perform something deliberately polarizing to make the virality machine go brrr:</p><div class="native-video-embed" data-component-name="VideoPlaceholder" data-attrs="{&quot;mediaUploadId&quot;:&quot;3739a4c8-a86b-4df4-82de-a47bfdb63c11&quot;,&quot;duration&quot;:null}"></div><h2>Discuss</h2><p>When we use AI to complete Sappho's fragments, we're not discovering ancient Lesbos. We're revealing ourselves &#8212; our desires, our assumptions, what we think poetry should do. Every prompt encodes what we want. Every training dataset contains what we believe. The voice that emerges is simultaneously ancient and absolutely contemporary. But here's the beautiful part: this is what every generation has done with Sappho. The Victorians made her straight and marriageable. The 1960s found sexual liberation. The 1980s academic feminists read her as documenting women's resistance communities. Everyone projects their preoccupations onto those gaps in the papyrus. What's different now is the scale and speed. AI can generate infinite Sapphos, each slightly different, each potentially valid. We can create not just textual completions but full multimedia experiences &#8212; songs, voices, portraits, videos. The fragments become seeds for endless gardens.</p><p>Fragment 147's promise &#8212; "someone will remember us in the future" &#8212; hits different in our age of digital reproduction. Sappho got her immortality, but in the weirdest possible form: not through complete works faithfully preserved but through fragments endlessly recombined, first by humans, now by machines trained on everything humans ever wrote.</p><p>The question isn't whether we should use AI to resurrect ancient voices. We've always been in the resurrection business. The Alexandrian scholars did it. Every translator does it. The question is whether we can stay conscious of what we're doing: not recovering the "authentic" Sappho (who never existed as a fixed entity even in her own lifetime) but creating new Sapphos who speak to our moment while carrying something essential forward from the past. Across more than two thousand years, someone does indeed remember her. And through remembering, makes her sing again. Which is probably what she wanted all along.</p><div><hr></div><p><em>If 100+ people actually care about this (and subscribe), I'll make a whole Sappho podcast, and it'll either be transcendent or completely unhinged, possibly both.</em></p><div><hr></div><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://www.failwell.me/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption"><em>Coming up next: Poetry as an error correction mechanism, and a DSL for content generation. Stay tuned.</em></p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div>]]></content:encoded></item><item><title><![CDATA[Stoic practice]]></title><description><![CDATA[One way to actually DO stoicism, instead of reading about it.]]></description><link>https://www.failwell.me/p/stoic-practice</link><guid isPermaLink="false">https://www.failwell.me/p/stoic-practice</guid><dc:creator><![CDATA[Adrian Scales]]></dc:creator><pubDate>Thu, 04 Sep 2025 07:04:15 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!NgZM!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3af32c32-3179-425f-8206-e08fcd1e9a03_640x526.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!NgZM!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3af32c32-3179-425f-8206-e08fcd1e9a03_640x526.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!NgZM!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3af32c32-3179-425f-8206-e08fcd1e9a03_640x526.jpeg 424w, https://substackcdn.com/image/fetch/$s_!NgZM!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3af32c32-3179-425f-8206-e08fcd1e9a03_640x526.jpeg 848w, https://substackcdn.com/image/fetch/$s_!NgZM!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3af32c32-3179-425f-8206-e08fcd1e9a03_640x526.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!NgZM!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3af32c32-3179-425f-8206-e08fcd1e9a03_640x526.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!NgZM!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3af32c32-3179-425f-8206-e08fcd1e9a03_640x526.jpeg" width="640" height="526" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/3af32c32-3179-425f-8206-e08fcd1e9a03_640x526.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:526,&quot;width&quot;:640,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:54798,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://failwell.substack.com/i/172755205?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3af32c32-3179-425f-8206-e08fcd1e9a03_640x526.jpeg&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!NgZM!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3af32c32-3179-425f-8206-e08fcd1e9a03_640x526.jpeg 424w, https://substackcdn.com/image/fetch/$s_!NgZM!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3af32c32-3179-425f-8206-e08fcd1e9a03_640x526.jpeg 848w, https://substackcdn.com/image/fetch/$s_!NgZM!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3af32c32-3179-425f-8206-e08fcd1e9a03_640x526.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!NgZM!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3af32c32-3179-425f-8206-e08fcd1e9a03_640x526.jpeg 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>I love stoicism. In short, it's a bag of tricks to help the mind calm the fuck down, both in good and bad times. However, besides <a href="https://www.goodreads.com/book/show/5617966-a-guide-to-the-good-life">reading</a> <a href="http://www.thepracticingstoic.com/">several</a> <a href="https://ryanholiday.net/books-courses/">books</a>, I find it hard to establish a daily <em>practice</em>. In spirit, stoicism feels like a less ornamental version of Buddhism, and the two overlap in a surprising number of themes and insights. But Buddhism has a much better tradition when it comes to practice. There are many schools of active practice, and numerous manuals to consult, whether on the Jhanas or breathing exercises. But for stoicism? Nihil. (This is Latin and a testament to how desperate I am that this essay sounds intellectual.)</p><p>Many people "practice" journaling, but I find this tedious, and worse, all thoughts sunk as ink onto paper cannot be used for full-text search or as context for AI. Besides this organisational difficulty, there seems to be resistance in stoic thoughts themselves, which Nadia Asparouhova describes as <a href="https://nayafia.substack.com/p/introducing-antimemetics-my-new-book">"antimemetic"</a>. Our minds do not seem to like them, maybe because they force us to avoid evolutionary shortcuts in our decisions, which costs more energy, who knows. I found that my main hindrance was how little engaging Stoicism books were, in contrast to its rich history of practice, which was marked by a group of guys (mostly men back then, sorry) sitting on stairs arguing. It was highly dynamic and <em>interactive</em>.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!dBS_!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F22cb0eff-e35d-4ee7-b716-3ec60f2b583e_3546x2394.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!dBS_!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F22cb0eff-e35d-4ee7-b716-3ec60f2b583e_3546x2394.jpeg 424w, https://substackcdn.com/image/fetch/$s_!dBS_!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F22cb0eff-e35d-4ee7-b716-3ec60f2b583e_3546x2394.jpeg 848w, https://substackcdn.com/image/fetch/$s_!dBS_!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F22cb0eff-e35d-4ee7-b716-3ec60f2b583e_3546x2394.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!dBS_!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F22cb0eff-e35d-4ee7-b716-3ec60f2b583e_3546x2394.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!dBS_!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F22cb0eff-e35d-4ee7-b716-3ec60f2b583e_3546x2394.jpeg" width="1456" height="983" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/22cb0eff-e35d-4ee7-b716-3ec60f2b583e_3546x2394.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:983,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:5149847,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://failwell.substack.com/i/172755205?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F22cb0eff-e35d-4ee7-b716-3ec60f2b583e_3546x2394.jpeg&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!dBS_!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F22cb0eff-e35d-4ee7-b716-3ec60f2b583e_3546x2394.jpeg 424w, https://substackcdn.com/image/fetch/$s_!dBS_!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F22cb0eff-e35d-4ee7-b716-3ec60f2b583e_3546x2394.jpeg 848w, https://substackcdn.com/image/fetch/$s_!dBS_!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F22cb0eff-e35d-4ee7-b716-3ec60f2b583e_3546x2394.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!dBS_!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F22cb0eff-e35d-4ee7-b716-3ec60f2b583e_3546x2394.jpeg 1456w" sizes="100vw"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Whenever I hear the words "(custom) content" and "interactive", I default to AI as a solution to try first. And indeed, I managed to put together a nice Stoic practice using Claude (and Anki). Already, I shifted some of my views about friendships and networking, and they feel more grounded and &#8212; well, reflected on.</p><p>Since I find it unreasonably fun and useful, and since I am now more than a month into this practice, I thought I'd share. It is based on Seneca's <a href="https://en.wikipedia.org/wiki/Epistulae_Morales_ad_Lucilium">letters to Lucilius</a>, a set of 124 bite-sized pieces of content, more than four months of daily practice at one letter each day.</p><blockquote><p>The letters often begin with an observation on daily life, and then proceed to an issue or principle abstracted from that observation. The result is like a diary or a handbook of philosophical meditations. The letters focus on many traditional themes of Stoic philosophy, such as the contempt of death, the stout-heartedness of the sage, and virtue as the supreme good. &#8212; <a href="https://en.wikipedia.org/wiki/Epistulae_Morales_ad_Lucilium">Wikipedia</a></p></blockquote><p>However, I do not read these letters. Instead, AI uses the letters as content for my daily practice. Traditionally, when you wanted to learn anything, you got a tutor. Now, and especially with the progress curve of AI, replace the tutor with "a good LLM".</p><p>(<em>I am assuming you have access to Claude Desktop and a plan that includes the Opus 4.1 model, though Sonnet might work as well; I have not tested it. The entire setup takes only minutes, and each reflection session may be five, so there is really no reason not to try it.</em>)</p><p>TL;DR: Create a Claude project using Seneca's letters and some instructions (both below), and set aside five minutes a day to reflect, going back and forth with what Seneca <em>would have</em> said, prompted either by commands like <code>letter 5</code> or your personal experiences like <code>/synthetic boredom</code>. Distill the ensuing discourse into memory flashcards, including a daily challenge. Then resurface these cards using spaced repetition to practice stoicism. Not only will this develop a lasting intuition on the discussed issues, but it also creates a searchable library of content for you to use later on. As neatly stated in one of my discussions of letter VI, I had with this setup:</p><blockquote><p>The Stoics would say: When you're gathering material and experience, operate. When you've discovered something worth preserving and multiplying, withdraw to refine and record it. The tragedy is that those who never make the second move, forever gathering experiences they never distill into wisdom. (Claude)</p></blockquote><p></p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.failwell.me/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe now&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://www.failwell.me/subscribe?"><span>Subscribe now</span></a></p><p></p><h2>Conversation</h2><p><em>Setup: In Claude (Desktop), open a new project. To files, add the </em><code>letters.txt</code><em> file I (legally) copied <a href="https://gist.github.com/phiweger/e669fffb9cd71228a5455a1a2642fec8">here</a> (ignore the bad formatting, AI does not care), and as instructions, add the following prompt (feel free to modify)</em>:</p><pre><code><code>Take the letter from Seneca to Lucilius (I will simply prompt you with the number of the letter), and present it as a challenge, like in a case study, to me. Reflect on my answer in light of what Seneca writes.

First, as title, write the title of the letter. Then look it up in the provided sources.

Assume I have not read the letter, and do not know of its contents.

Support your response with direct quotes from the letters (in English).  Cross reference other stoics, if this seems fitting.

&lt;commands&gt;
- When I write the `/short` command, summarize the letter's core argument into a tweet-sized piece of actionable insight (akin to Marcus Aurelius' meditations).
- `/challenge` .. Can you provide me with a SINGLE challenge for this day to practice what we talked about? This challenge should be specific, and I should be able to write it on a little card or tweet-sized piece. No title/ emojis/ markup/ newlines etc.
- `/feedback (some text goes here) .. I will present my experiences with the /challenge and want Seneca to give feedback on this experience, as if I had a personal consultation with him. Start with "Seneca says": ...`
- `/synthetic` (some description, situation or topic here) .. Write a letter to Lucilius about the text after the command as if Seneca had written it. No title etc., just the letter. Avoid anachronisms.
&lt;/commands&gt;
</code></code></pre><p>What is happening here? You probably know your way around Claude, so you're used to prompting, or "context engineering". In short, you provide instructions to the model. The only unusual thing here is that we define a "commands" block in XML syntax (to make it easier for the LLM), and define commands in the form of <code>/command</code> that we can later use as shortcut to prompt the model. With these instructions, you can do things like:</p><ul><li><p><code>letter 5</code> .. This will start the discourse about the topics discussed in the 5th letter to Lucilius, and you can actively reflect on its content in a back-and-forth with the model.</p></li><li><p><code>/short</code> .. After some interaction, get a tweet-sized summary.</p></li><li><p><code>/challenge</code> .. Give a daily challenge, to <strong>practice</strong> in the real world. If the generated challenge is not suitable, try entering <code>/challenge</code> again until you find one that suits you.</p></li></ul><h2>Synthetic conversation</h2><p>Seneca offers a great selection of themes, but there are many things I am interested in that he does not cover. How to deal with boredom, or is there any stoic insight to procrastinating on daily chores? Well, because LLMs can <a href="https://www.nature.com/articles/s41586-023-06647-8">role-play</a> where they act as a superposition of roles, and when prompted correctly, they can act as a <a href="https://arxiv.org/abs/2304.03442">simulacra</a> of a person, such as Seneca. They also know a lot of stuff about other Stoics, and can thus cross-reference, but be aware:</p><blockquote><p>From a software engineer's point of view, you can think of LLMs as the worst database you've ever heard of, but worse. -- pydantic.ai <a href="https://ai.pydantic.dev/logfire/#pydantic-logfire-debugging-and-monitoring">docs</a></p></blockquote><p>The <code>/synthetic</code> command gets "Seneca" to write a letter about the specified topic, e. g. <code>/synthetic boredom</code>. When you practice (see below), you can request <code>/feedback</code> from the master stoic, e.g., in the same conversation you discussed the topic in:</p><pre><code><code>/feedback I have difficulty not engaging in preference falsification when in professional networking events. any other suggestions besides the ones mentioned above?
</code></code></pre><p>I manage to engage in pretty personal and insightful discussions in this way quickly. This might be because by engaging in a personal discussion, there is more "emotional connection" (I know this sounds weird), which makes one more forthcoming, which in turn advances the discussion much quicker.</p><h2>Practice</h2><p>Taking the time to reflect is nice, but I started out wanting to practice. For this, we use spaced repetition flashcards using <a href="https://apps.ankiweb.net/">Anki</a> or any other spaced rep app. On the front of the cards, I put the response from <code>/short</code> and on the back, my daily <code>/challenge</code>. For example, a card might look like this:</p><pre><code><code>Front:

Boredom is not the absence of activity but the absence of purpose. The restless mind that cannot sit with itself in quiet will find no peace in motion either. Set your mind to worthy questions each morning; make your leisure a workshop, not a wasteland. You are never less alone than when alone with philosophy. (synthetic)

Back:

Today, when you feel the first stirring of boredom or restlessness, stop immediately and ask yourself: What am I fleeing from in this moment? Sit with that discomfort for five full minutes without reaching for any distraction, then write down one truth about yourself that emerged from the silence.
</code></code></pre><p>At night, during my reflection session, I go through them and score how difficult or easy I have found the tasks. The easier the challenge, the longer it takes until the card is resurfaced. This scheduling ensures that still-challenging tasks receive more attention. The resulting <a href="https://en.wikipedia.org/wiki/Spacing_effect">"spacing effect"</a> results in pretty efficient learning. Since I aim to internalise the Stoic teachings, this is a good place to start.</p><p>Farewell.</p>]]></content:encoded></item></channel></rss>