<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Digital Life: From First Principles on Programmer.ie: Modern AI programming</title>
    <link>http://programmer.ie/books/digital-life/</link>
    <description>Recent content in Digital Life: From First Principles on Programmer.ie: Modern AI programming</description>
    <generator>Hugo</generator>
    <language>en-us</language>
    <lastBuildDate>Fri, 14 Aug 2026 00:21:00 +0100</lastBuildDate>
    <atom:link href="http://programmer.ie/books/digital-life/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>10: Properties of Digital Life</title>
      <link>http://programmer.ie/books/digital-life/10-properties-of-digital-life/</link>
      <pubDate>Tue, 11 Aug 2026 10:36:00 +0100</pubDate>
      <guid>http://programmer.ie/books/digital-life/10-properties-of-digital-life/</guid>
      <description>&lt;h1 id=&#34;properties-of-digital-life&#34;&gt;Properties of Digital Life&lt;/h1&gt;&#xA;&lt;p&gt;We have changed the question.&lt;/p&gt;&#xA;&lt;p&gt;For several chapters we asked how far simple computational systems could be pushed toward properties associated with life.&lt;/p&gt;&#xA;&lt;p&gt;That gave us useful concepts:&lt;/p&gt;&#xA;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;&#34;&gt;&lt;code class=&#34;language-text&#34; data-lang=&#34;text&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;persistence&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;identity&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;robustness&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;regeneration&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;reproduction&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;inheritance&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;evolution&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;But the previous chapter exposed the assumption underneath them.&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;&lt;strong&gt;We were still letting biology choose the architecture.&lt;/strong&gt;&lt;/p&gt;&lt;/blockquote&gt;&#xA;&lt;p&gt;A biological organism exists inside one particular substrate.&lt;br&gt;&#xA;It is made from matter.&lt;br&gt;&#xA;Its signals propagate physically.&lt;br&gt;&#xA;Its components decay.&lt;br&gt;&#xA;Its copying is expensive.&lt;br&gt;&#xA;Its memory is limited.&lt;br&gt;&#xA;Its body is finite.&lt;br&gt;&#xA;Its architecture has been shaped by those constraints.&lt;/p&gt;</description>
    </item>
    <item>
      <title>11: The Crystal</title>
      <link>http://programmer.ie/books/digital-life/11-the-crystal/</link>
      <pubDate>Tue, 11 Aug 2026 15:18:00 +0100</pubDate>
      <guid>http://programmer.ie/books/digital-life/11-the-crystal/</guid>
      <description>&lt;p&gt;We have spent ten chapters making the question harder.&lt;/p&gt;&#xA;&lt;p&gt;Then we made one important decision.&lt;/p&gt;&#xA;&lt;p&gt;We are not going to build an animal.&lt;/p&gt;&#xA;&lt;p&gt;We are not going to start with:&lt;/p&gt;&#xA;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;&#34;&gt;&lt;code class=&#34;language-text&#34; data-lang=&#34;text&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;body&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;energy&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;hunger&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;genome&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;reproduction&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;age&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;death&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;and hope that enough biological nouns eventually add up to life.&lt;/p&gt;&#xA;&lt;p&gt;Instead we are going to begin from the digital substrate.&lt;/p&gt;&#xA;&lt;p&gt;Remove almost everything.&lt;br&gt;&#xA;Introduce one capability.&lt;br&gt;&#xA;Then discover what becomes necessary.&lt;/p&gt;&#xA;&lt;p&gt;Our first capability is:&lt;/p&gt;</description>
    </item>
    <item>
      <title>12: The Closest Thing We Have</title>
      <link>http://programmer.ie/books/digital-life/12-the-closest-thing-we-have/</link>
      <pubDate>Tue, 11 Aug 2026 10:43:00 +0100</pubDate>
      <guid>http://programmer.ie/books/digital-life/12-the-closest-thing-we-have/</guid>
      <description>&lt;p&gt;Before building anything more complicated, we should steal everything we can.&lt;/p&gt;&#xA;&lt;p&gt;Not code.&lt;/p&gt;&#xA;&lt;p&gt;Ideas.&lt;br&gt;&#xA;Experiments.&lt;br&gt;&#xA;Failures.&lt;br&gt;&#xA;Mechanisms.&lt;/p&gt;&#xA;&lt;p&gt;So let&amp;rsquo;s ask an obvious question:&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;&lt;strong&gt;How far has computation already gone without us deliberately building the organism?&lt;/strong&gt;&lt;/p&gt;&lt;/blockquote&gt;&#xA;&lt;p&gt;There is no objective answer.&lt;/p&gt;&#xA;&lt;p&gt;Different Artificial Life systems demonstrate different properties.&lt;/p&gt;&#xA;&lt;p&gt;Evoloops demonstrated Darwinian evolution of self-reproducing structures inside a deterministic cellular automaton.[1]&lt;/p&gt;&#xA;&lt;p&gt;Flow-Lenia produces spatially localized continuous structures with complex behaviour, conserves mass, and allows parameters governing different pattern dynamics to become localized inside the world itself. Researchers have measured emergent evolutionary activity in the resulting system.[2]&lt;/p&gt;</description>
    </item>
    <item>
      <title>13: Is It Really Reproducing?</title>
      <link>http://programmer.ie/books/digital-life/13-is-it-really-reproducing/</link>
      <pubDate>Tue, 11 Aug 2026 12:48:00 +0100</pubDate>
      <guid>http://programmer.ie/books/digital-life/13-is-it-really-reproducing/</guid>
      <description>&lt;p&gt;Something strange happened while we were looking at Outlier.&lt;/p&gt;&#xA;&lt;p&gt;We had started with a question about reproduction.&lt;/p&gt;&#xA;&lt;p&gt;Then I watched the simulation.&lt;/p&gt;&#xA;&lt;p&gt;And I thought:&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;That looks like flocking.&lt;/p&gt;&lt;/blockquote&gt;&#xA;&lt;p&gt;That is exactly the kind of observation that can get us into trouble.&lt;/p&gt;&#xA;&lt;p&gt;Humans are extraordinarily good at seeing things in motion and assigning meaning to them.&lt;/p&gt;&#xA;&lt;p&gt;We see:&lt;/p&gt;&#xA;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;&#34;&gt;&lt;code class=&#34;language-text&#34; data-lang=&#34;text&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;a shape&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;another shape&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;movement&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;coordination&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;and very quickly turn that into:&lt;/p&gt;</description>
    </item>
    <item>
      <title>14: The Digital Crystal</title>
      <link>http://programmer.ie/books/digital-life/14-the-digital-crystal/</link>
      <pubDate>Tue, 11 Aug 2026 20:36:00 +0100</pubDate>
      <guid>http://programmer.ie/books/digital-life/14-the-digital-crystal/</guid>
      <description>&lt;p&gt;We are leaving Outlier.&lt;/p&gt;&#xA;&lt;p&gt;Not because it failed.&lt;/p&gt;&#xA;&lt;p&gt;Quite the opposite.&lt;/p&gt;&#xA;&lt;p&gt;Outlier did exactly what we needed an external reference system to do.&lt;/p&gt;&#xA;&lt;p&gt;It showed us that very simple digital physics can support structures that recur, move, interact and participate in measurable causal lineages.&lt;/p&gt;&#xA;&lt;p&gt;Then we attacked our own interpretations.&lt;/p&gt;&#xA;&lt;p&gt;Some survived.&lt;/p&gt;&#xA;&lt;p&gt;Some did not.&lt;/p&gt;&#xA;&lt;p&gt;The causal reproduction result survived.&lt;/p&gt;&#xA;&lt;p&gt;One of our strongest explanations for the apparent coordinated motion did not.&lt;/p&gt;</description>
    </item>
    <item>
      <title>15: The Crystal Gets a Past</title>
      <link>http://programmer.ie/books/digital-life/15-the-crystal-gets-a-past/</link>
      <pubDate>Tue, 11 Aug 2026 21:52:00 +0100</pubDate>
      <guid>http://programmer.ie/books/digital-life/15-the-crystal-gets-a-past/</guid>
      <description>&lt;p&gt;At the end of the last chapter, our Digital Crystal could tell us something about the world that formed it.&lt;/p&gt;&#xA;&lt;p&gt;But not enough.&lt;/p&gt;&#xA;&lt;p&gt;Different forcing processes produced different morphologies.&lt;/p&gt;&#xA;&lt;p&gt;We could hide the source and recover its family substantially better than chance.&lt;/p&gt;&#xA;&lt;p&gt;Then we asked a harder question:&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;What happened first?&lt;/p&gt;&lt;/blockquote&gt;&#xA;&lt;p&gt;We took exactly the same environmental values and rearranged them in time.&lt;/p&gt;&#xA;&lt;p&gt;Smooth.&lt;/p&gt;&#xA;&lt;p&gt;Bursting.&lt;/p&gt;&#xA;&lt;p&gt;Periodic.&lt;/p&gt;&#xA;&lt;p&gt;Alternating.&lt;/p&gt;&#xA;&lt;p&gt;Random.&lt;/p&gt;&#xA;&lt;p&gt;The final morphology could not reliably tell them apart.&lt;/p&gt;</description>
    </item>
    <item>
      <title>16: Before There Are Messages</title>
      <link>http://programmer.ie/books/digital-life/16-before-there-are-messages/</link>
      <pubDate>Wed, 12 Aug 2026 02:38:00 +0100</pubDate>
      <guid>http://programmer.ie/books/digital-life/16-before-there-are-messages/</guid>
      <description>&lt;p&gt;In the last chapter, the crystal acquired a past.  &#xA;Not memory in the biological sense.  &#xA;Not recollection.  &#xA;Not understanding.  &#xA;A recoverable past.&lt;/p&gt;&#xA;&lt;p&gt;We learned that a complete checkpoint could continue the process exactly, that an event history could reconstruct the route by which the present morphology had formed, and that the same checkpoint could be used as a branch point for controlled alternative futures.&lt;/p&gt;&#xA;&lt;p&gt;That gave us something new:&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;A present that could be resumed.&lt;/li&gt;&#xA;&lt;li&gt;A past that could be reconstructed.&lt;/li&gt;&#xA;&lt;li&gt;A future that could be forked.&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;The next temptation was obvious.  &#xA;If one Digital Crystal can preserve state and history, perhaps two crystals can communicate.&lt;/p&gt;</description>
    </item>
    <item>
      <title>17: How Does the Crystal Respond to Perturbation</title>
      <link>http://programmer.ie/books/digital-life/17-how-does-the-crystal-respond-to-perturbation/</link>
      <pubDate>Thu, 13 Aug 2026 12:38:00 +0100</pubDate>
      <guid>http://programmer.ie/books/digital-life/17-how-does-the-crystal-respond-to-perturbation/</guid>
      <description>&lt;p&gt;The crystal could hear a pulse.&lt;/p&gt;&#xA;&lt;p&gt;That much we already knew.&lt;/p&gt;&#xA;&lt;p&gt;In the previous experiment, a single received bit was inserted into the continuation of a Digital Crystal. Everything else was held as closely as possible to the same conditions.  &#xA;The resulting crystal changed.&lt;/p&gt;&#xA;&lt;p&gt;Not metaphorically.  &#xA;Not because a classifier happened to prefer one label.  &#xA;The intervention altered the subsequent growth of the receiver.&lt;/p&gt;&#xA;&lt;p&gt;That gave us one of the weakest but most useful forms of causality available to an experimental system:&lt;/p&gt;</description>
    </item>
    <item>
      <title>18: Can Experience Change the Material?</title>
      <link>http://programmer.ie/books/digital-life/18-persistent-material-state/</link>
      <pubDate>Wed, 12 Aug 2026 16:40:00 +0100</pubDate>
      <guid>http://programmer.ie/books/digital-life/18-persistent-material-state/</guid>
      <description>&lt;p&gt;The crystal had a past.&lt;/p&gt;&#xA;&lt;p&gt;But we had learned to be careful with that sentence.&lt;/p&gt;&#xA;&lt;p&gt;In the previous chapter, a perturbation changed the crystal&amp;rsquo;s future. Under a carefully controlled counterfactual comparison, the consequence of a pulse could remain locally visible for several updates.&lt;/p&gt;&#xA;&lt;p&gt;That was causality.&lt;/p&gt;&#xA;&lt;p&gt;It was not memory.&lt;/p&gt;&#xA;&lt;p&gt;The distinction left us with a smaller question.&lt;/p&gt;&#xA;&lt;p&gt;Not:&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;&lt;strong&gt;Can the crystal remember?&lt;/strong&gt;&lt;/p&gt;&lt;/blockquote&gt;&#xA;&lt;p&gt;But:&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;&lt;strong&gt;Can experience change the material?&lt;/strong&gt;&lt;/p&gt;</description>
    </item>
    <item>
      <title>19: Can the Crystal Tell Two Pasts Apart?</title>
      <link>http://programmer.ie/books/digital-life/19-two-pasts/</link>
      <pubDate>Wed, 12 Aug 2026 18:28:00 +0100</pubDate>
      <guid>http://programmer.ie/books/digital-life/19-two-pasts/</guid>
      <description>&lt;p&gt;The crystal could carry a mark from its past.&lt;/p&gt;&#xA;&lt;p&gt;Chapter 18 established that much.&lt;/p&gt;&#xA;&lt;p&gt;A local event could change the material.&lt;/p&gt;&#xA;&lt;p&gt;The change could persist.&lt;/p&gt;&#xA;&lt;p&gt;It could propagate.&lt;/p&gt;&#xA;&lt;p&gt;And, while it remained in contact with the moving growth frontier, it could alter later construction.&lt;/p&gt;&#xA;&lt;p&gt;But that still left a much harder question.&lt;/p&gt;&#xA;&lt;p&gt;Not:&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;&lt;strong&gt;Did something happen before?&lt;/strong&gt;&lt;/p&gt;&lt;/blockquote&gt;&#xA;&lt;p&gt;But:&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;&lt;strong&gt;What happened before?&lt;/strong&gt;&lt;/p&gt;&lt;/blockquote&gt;&#xA;&lt;p&gt;That distinction sounds small.&lt;/p&gt;&#xA;&lt;p&gt;It is not.&lt;/p&gt;</description>
    </item>
    <item>
      <title>20: What Happens When the Crystal Can Lose Material?</title>
      <link>http://programmer.ie/books/digital-life/20-material-loss/</link>
      <pubDate>Wed, 12 Aug 2026 18:49:00 +0100</pubDate>
      <guid>http://programmer.ie/books/digital-life/20-material-loss/</guid>
      <description>&lt;p&gt;Until now, the crystal had lived in an impossible world.&lt;/p&gt;&#xA;&lt;p&gt;Once a cell became occupied, it stayed occupied.&lt;/p&gt;&#xA;&lt;p&gt;Forever.&lt;/p&gt;&#xA;&lt;p&gt;The frontier moved outward.&lt;/p&gt;&#xA;&lt;p&gt;Old material accumulated behind it.&lt;/p&gt;&#xA;&lt;p&gt;Nothing eroded.&lt;/p&gt;&#xA;&lt;p&gt;Nothing vanished.&lt;/p&gt;&#xA;&lt;p&gt;Nothing exposed the interior again.&lt;/p&gt;&#xA;&lt;p&gt;That assumption had quietly shaped almost every result since Chapter 11.&lt;/p&gt;&#xA;&lt;p&gt;So Chapter 20 removed it.&lt;/p&gt;&#xA;&lt;p&gt;We added one rule:&lt;/p&gt;&#xA;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;&#34;&gt;&lt;code class=&#34;language-text&#34; data-lang=&#34;text&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;occupied&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;↓&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;empty&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;with some small probability.&lt;/p&gt;&#xA;&lt;p&gt;Nothing else.&lt;/p&gt;&#xA;&lt;p&gt;No repair mechanism.&lt;/p&gt;&#xA;&lt;p&gt;No resource system.&lt;/p&gt;</description>
    </item>
    <item>
      <title>21: What Does It Cost to Stay?</title>
      <link>http://programmer.ie/books/digital-life/21-what-does-it-cost-to-stay/</link>
      <pubDate>Wed, 12 Aug 2026 19:26:00 +0100</pubDate>
      <guid>http://programmer.ie/books/digital-life/21-what-does-it-cost-to-stay/</guid>
      <description>&lt;p&gt;Chapter 20 ended with an uncomfortable fact.&lt;/p&gt;&#xA;&lt;p&gt;The crystal could lose material.&lt;/p&gt;&#xA;&lt;p&gt;And yet most of that material came back.&lt;/p&gt;&#xA;&lt;p&gt;Not because we gave it a repair mechanism.&lt;/p&gt;&#xA;&lt;p&gt;Not because it knew what had been damaged.&lt;/p&gt;&#xA;&lt;p&gt;Not because it protected an intended shape.&lt;/p&gt;&#xA;&lt;p&gt;The ordinary growth rule simply saw the empty sites created by loss and treated them as new attachment opportunities.&lt;/p&gt;&#xA;&lt;p&gt;Under the tested exact-count conditions, more than ninety-three percent of lost sites were eventually reoccupied, usually within one or two updates.&lt;/p&gt;</description>
    </item>
    <item>
      <title>22: Is the Crystal a Thing or a Flow?</title>
      <link>http://programmer.ie/books/digital-life/22-is-the-crystal-a-thing-or-a-flow/</link>
      <pubDate>Wed, 12 Aug 2026 21:47:00 +0100</pubDate>
      <guid>http://programmer.ie/books/digital-life/22-is-the-crystal-a-thing-or-a-flow/</guid>
      <description>&lt;p&gt;Chapter 21 ended with a question that sounded obvious.&lt;/p&gt;&#xA;&lt;p&gt;Is there actually one thing here?&lt;/p&gt;&#xA;&lt;p&gt;For most of the book, we had spoken naturally about:&lt;/p&gt;&#xA;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;&#34;&gt;&lt;code class=&#34;language-text&#34; data-lang=&#34;text&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;the crystal&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;as though the noun had already been earned.&lt;/p&gt;&#xA;&lt;p&gt;There was a connected occupied structure.&lt;/p&gt;&#xA;&lt;p&gt;It grew.&lt;/p&gt;&#xA;&lt;p&gt;It could be perturbed.&lt;/p&gt;&#xA;&lt;p&gt;It could carry historical material.&lt;/p&gt;&#xA;&lt;p&gt;It could lose material.&lt;/p&gt;&#xA;&lt;p&gt;Lost sites could be reoccupied.&lt;/p&gt;&#xA;&lt;p&gt;Under finite computational opportunity, large amounts of material could turn over while the process continued.&lt;/p&gt;</description>
    </item>
    <item>
      <title>23: What Does One Attachment Cause?</title>
      <link>http://programmer.ie/books/digital-life/23-what-does-one-attachment-cause/</link>
      <pubDate>Thu, 13 Aug 2026 00:35:00 +0100</pubDate>
      <guid>http://programmer.ie/books/digital-life/23-what-does-one-attachment-cause/</guid>
      <description>&lt;p&gt;At the end of Chapter 22, the Digital Crystal had stopped looking like a simple bounded thing.&lt;/p&gt;&#xA;&lt;p&gt;We had looked for a privileged region whose future belonged especially to itself.&lt;br&gt;&#xA;We had not found one.&lt;/p&gt;&#xA;&lt;p&gt;What survived instead was locality.&lt;/p&gt;&#xA;&lt;p&gt;Change something here, and the consequences are stronger nearby than far away.&lt;/p&gt;&#xA;&lt;p&gt;That left a new possibility.&lt;/p&gt;&#xA;&lt;p&gt;Perhaps the important object was not the crystal as a body.&lt;/p&gt;&#xA;&lt;p&gt;Perhaps it was the process occurring across its changing interface.&lt;/p&gt;</description>
    </item>
    <item>
      <title>24: Where Is Causal Gain Created?</title>
      <link>http://programmer.ie/books/digital-life/24-where-is-causal-gain-created/</link>
      <pubDate>Thu, 13 Aug 2026 10:03:00 +0100</pubDate>
      <guid>http://programmer.ie/books/digital-life/24-where-is-causal-gain-created/</guid>
      <description>&lt;p&gt;Chapter 23 ended with a controlled causal effect.&lt;/p&gt;&#xA;&lt;p&gt;Take the same Digital Crystal checkpoint.&lt;br&gt;&#xA;Take the same eligible frontier cell.&lt;br&gt;&#xA;Give both futures the same environment and the same cell-keyed randomness.&lt;br&gt;&#xA;Then force the cell to attach in one future and prevent it from attaching in the other.&lt;/p&gt;&#xA;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;&#34;&gt;&lt;code class=&#34;language-text&#34; data-lang=&#34;text&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;SAME CHECKPOINT&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;SAME CELL&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;SAME FUTURE RANDOMNESS&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;FORCE x&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;vs&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;PREVENT x&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;↓&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;MEASURE DIFFERENCE&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;The intervention changed subsequent construction.&lt;/p&gt;</description>
    </item>
    <item>
      <title>25: How Does Finite Computation Create Non-Local Coupling?</title>
      <link>http://programmer.ie/books/digital-life/25-how-does-finite-computation-create-non-local-coupling/</link>
      <pubDate>Thu, 13 Aug 2026 10:49:00 +0100</pubDate>
      <guid>http://programmer.ie/books/digital-life/25-how-does-finite-computation-create-non-local-coupling/</guid>
      <description>&lt;p&gt;Chapter 24 ended somewhere we did not expect.&lt;/p&gt;&#xA;&lt;p&gt;We began by looking for a local causal-gain field.&lt;/p&gt;&#xA;&lt;p&gt;We found something else.&lt;/p&gt;&#xA;&lt;p&gt;A local intervention changed the frontier.&lt;/p&gt;&#xA;&lt;p&gt;The frontier changed which candidates entered a fixed global evaluation budget.&lt;/p&gt;&#xA;&lt;p&gt;And distant expected construction changed immediately, even though the local transition rule could not propagate influence that far in one update.&lt;/p&gt;&#xA;&lt;p&gt;That gave us a new candidate substrate law:&lt;/p&gt;&#xA;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;&#34;&gt;&lt;code class=&#34;language-text&#34; data-lang=&#34;text&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;LOCAL FRONTIER CHANGE&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;↓&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;FIXED GLOBAL EVALUATION BUDGET&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;↓&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;CANDIDATE SUBSTITUTION&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;↓&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;FAR-FIELD REDISTRIBUTION&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;The mechanism looked real.&lt;/p&gt;</description>
    </item>
    <item>
      <title>26: How Does Finite Selection Route Causality?</title>
      <link>http://programmer.ie/books/digital-life/26-does-candidate-subsampling-change-causal-amplification/</link>
      <pubDate>Thu, 13 Aug 2026 15:46:00 +0100</pubDate>
      <guid>http://programmer.ie/books/digital-life/26-does-candidate-subsampling-change-causal-amplification/</guid>
      <description>&lt;p&gt;Chapter 25 established a non-local effect in a system whose transition rule was local.&lt;/p&gt;&#xA;&lt;p&gt;A perturbation at one frontier site changed which distant candidates received evaluation slots.&lt;/p&gt;&#xA;&lt;p&gt;When candidate subsampling disappeared, the far-field effect disappeared with it.&lt;/p&gt;&#xA;&lt;p&gt;The mechanism was:&lt;/p&gt;&#xA;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;&#34;&gt;&lt;code class=&#34;language-text&#34; data-lang=&#34;text&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;LOCAL FRONTIER CHANGE&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;↓&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;FINITE EVALUATION SLOTS&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;↓&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;CANDIDATE SUBSTITUTION&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;↓&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;FAR-FIELD REDISTRIBUTION&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;That result answered one question.&lt;/p&gt;&#xA;&lt;p&gt;It created another.&lt;/p&gt;&#xA;&lt;p&gt;If finite selection changes &lt;strong&gt;where&lt;/strong&gt; causal opportunity is expressed, does it also change &lt;strong&gt;how much&lt;/strong&gt; causal consequence accumulates?&lt;/p&gt;</description>
    </item>
    <item>
      <title>27: Can Stored Material History Redirect the Future?</title>
      <link>http://programmer.ie/books/digital-life/27-can-stored-history-redirect-the-future/</link>
      <pubDate>Thu, 13 Aug 2026 20:38:00 +0100</pubDate>
      <guid>http://programmer.ie/books/digital-life/27-can-stored-history-redirect-the-future/</guid>
      <description>&lt;p&gt;By the end of the previous chapters, the Digital Crystal had become harder to describe with ordinary biological language.&lt;/p&gt;&#xA;&lt;p&gt;It could grow.&lt;br&gt;&#xA;It could lose material.&lt;br&gt;&#xA;It could rapidly reuse vacated sites.&lt;br&gt;&#xA;Finite computation could couple distant regions by redistributing evaluation slots.&lt;br&gt;&#xA;Local causal influence could be measured directly.&lt;/p&gt;&#xA;&lt;p&gt;But none of those results required an organism.&lt;br&gt;&#xA;None required an individual.&lt;br&gt;&#xA;And none required memory.&lt;/p&gt;&#xA;&lt;p&gt;That distinction mattered.&lt;/p&gt;&#xA;&lt;p&gt;It would have been easy to look at a persistent alteration inside the crystal and call it memory simply because the present depended on something that had happened before.&lt;/p&gt;</description>
    </item>
    <item>
      <title>28: Containment Is Not Individuation</title>
      <link>http://programmer.ie/books/digital-life/28-containment-is-not-individuation/</link>
      <pubDate>Thu, 13 Aug 2026 23:49:00 +0100</pubDate>
      <guid>http://programmer.ie/books/digital-life/28-containment-is-not-individuation/</guid>
      <description>&lt;p&gt;Chapter 27 ended with something that looked dangerously close to memory.&lt;/p&gt;&#xA;&lt;p&gt;Not memory itself.&lt;/p&gt;&#xA;&lt;p&gt;But something more primitive and harder to dismiss.&lt;/p&gt;&#xA;&lt;p&gt;Two Digital Crystal states could have the same visible occupancy geometry and still respond differently to the same perturbation because one contained a hidden decaying material state.&lt;/p&gt;&#xA;&lt;p&gt;That material changed immediate causal sensitivity.&lt;/p&gt;&#xA;&lt;p&gt;The changed sensitivity altered construction events.&lt;/p&gt;&#xA;&lt;p&gt;Those events redirected the later trajectory.&lt;/p&gt;&#xA;&lt;p&gt;And most of the downstream causal difference accumulated after the original material trace had already weakened substantially.&lt;/p&gt;</description>
    </item>
    <item>
      <title>29: How to Fail Correctly</title>
      <link>http://programmer.ie/books/digital-life/29-how-to-fail-correctly/</link>
      <pubDate>Fri, 14 Aug 2026 00:12:00 +0100</pubDate>
      <guid>http://programmer.ie/books/digital-life/29-how-to-fail-correctly/</guid>
      <description>&lt;p&gt;By the time we reached Chapter 28, the Digital Crystal had accumulated an uncomfortable history.&lt;/p&gt;&#xA;&lt;p&gt;Several experiments had looked convincing.&lt;/p&gt;&#xA;&lt;p&gt;Some had even produced large effects.&lt;/p&gt;&#xA;&lt;p&gt;Then a stronger control arrived.&lt;/p&gt;&#xA;&lt;p&gt;Or an implementation defect was discovered.&lt;/p&gt;&#xA;&lt;p&gt;Or the original question turned out to contain two different questions.&lt;/p&gt;&#xA;&lt;p&gt;Or a result remained directionally clear but failed the predeclared magnitude requirement.&lt;/p&gt;&#xA;&lt;p&gt;The easy response would have been to describe all of these as failures.&lt;/p&gt;</description>
    </item>
    <item>
      <title>30: What Is Digital Life?</title>
      <link>http://programmer.ie/books/digital-life/30-what-is-digital-life/</link>
      <pubDate>Fri, 14 Aug 2026 00:21:00 +0100</pubDate>
      <guid>http://programmer.ie/books/digital-life/30-what-is-digital-life/</guid>
      <description>&lt;p&gt;We began with a dangerous question.&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;&lt;strong&gt;Can we build digital life?&lt;/strong&gt;&lt;/p&gt;&lt;/blockquote&gt;&#xA;&lt;p&gt;It sounded simple.&lt;/p&gt;&#xA;&lt;p&gt;It was not.&lt;/p&gt;&#xA;&lt;p&gt;The word &lt;em&gt;life&lt;/em&gt; arrived already loaded with answers.&lt;/p&gt;&#xA;&lt;p&gt;Reproduction.&lt;br&gt;&#xA;Metabolism.&lt;br&gt;&#xA;Homeostasis.&lt;br&gt;&#xA;Memory.&lt;br&gt;&#xA;Repair.&lt;br&gt;&#xA;Evolution.&lt;br&gt;&#xA;Individuals.&lt;br&gt;&#xA;Organisms.&lt;br&gt;&#xA;Boundaries.&lt;br&gt;&#xA;Signals.&lt;/p&gt;&#xA;&lt;p&gt;We could have copied those words directly into software.&lt;/p&gt;&#xA;&lt;p&gt;We could have created classes called:&lt;/p&gt;&#xA;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;&#34;&gt;&lt;code class=&#34;language-text&#34; data-lang=&#34;text&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;Organism&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;Memory&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;Energy&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;Metabolism&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;Reproduction&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;Homeostasis&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;We could have built a simulation where those objects interacted.&lt;/p&gt;&#xA;&lt;p&gt;Then we could have watched it move.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Appendix: Phenomenon Ledger</title>
      <link>http://programmer.ie/books/digital-life/99-appendix/01-phenomenon/</link>
      <pubDate>Wed, 12 Aug 2026 22:01:00 +0100</pubDate>
      <guid>http://programmer.ie/books/digital-life/99-appendix/01-phenomenon/</guid>
      <description>&lt;h2 id=&#34;appendix-01-phenomenon-ledger&#34;&gt;Appendix 01: Phenomenon Ledger&lt;/h2&gt;&#xA;&lt;p&gt;This appendix records something different from the chapter-by-chapter claim ledger.&lt;/p&gt;&#xA;&lt;p&gt;The claim ledger asks:&lt;/p&gt;&#xA;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;&#34;&gt;&lt;code class=&#34;language-text&#34; data-lang=&#34;text&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;What did we predict?&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;Did the predeclared experiment pass?&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;What claim did the evidence earn?&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;The phenomenon ledger asks:&lt;/p&gt;&#xA;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;&#34;&gt;&lt;code class=&#34;language-text&#34; data-lang=&#34;text&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;What did the experiment reveal anyway?&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;Did the same pattern appear again elsewhere?&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;Is a substrate-level regularity beginning to emerge?&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Those are not the same questions.&lt;/p&gt;&#xA;&lt;p&gt;A primary hypothesis can fail while exposing a different phenomenon.&lt;/p&gt;</description>
    </item>
    <item>
      <title>09: Don&#39;t Build an Animal</title>
      <link>http://programmer.ie/books/digital-life/09-dont-build-an-animal/</link>
      <pubDate>Tue, 11 Aug 2026 14:58:00 +0100</pubDate>
      <guid>http://programmer.ie/books/digital-life/09-dont-build-an-animal/</guid>
      <description>&lt;h1 id=&#34;dont-build-an-animal&#34;&gt;Don&amp;rsquo;t Build an Animal&lt;/h1&gt;&#xA;&lt;p&gt;We almost made a serious mistake.&lt;/p&gt;&#xA;&lt;p&gt;After seven chapters of experiments, it would be very easy to write down a list like this:&lt;/p&gt;&#xA;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;&#34;&gt;&lt;code class=&#34;language-text&#34; data-lang=&#34;text&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;boundary&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;resources&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;self-maintenance&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;damage tolerance&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;regeneration&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;memory&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;reproduction&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;inheritance&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;variation&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;selection&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;learning&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;finite lifetime&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;lineage&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;evolution&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Then say:&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;Build all of those and we will have digital life.&lt;/p&gt;&lt;/blockquote&gt;&#xA;&lt;p&gt;It sounds rigorous.&lt;br&gt;&#xA;We could turn every property into a test.&lt;br&gt;&#xA;We could build a large simulation.&lt;br&gt;&#xA;We could create &lt;code&gt;class Organism&lt;/code&gt; and give it &lt;code&gt;energy&lt;/code&gt;, &lt;code&gt;memory&lt;/code&gt;, &lt;code&gt;genome&lt;/code&gt;, &lt;code&gt;age&lt;/code&gt;, &lt;code&gt;children&lt;/code&gt;.&lt;/p&gt;</description>
    </item>
    <item>
      <title>08: Now Prove It</title>
      <link>http://programmer.ie/books/digital-life/08-now-prove-it/</link>
      <pubDate>Tue, 11 Aug 2026 14:49:00 +0100</pubDate>
      <guid>http://programmer.ie/books/digital-life/08-now-prove-it/</guid>
      <description>&lt;p&gt;We have accumulated a dangerous number of impressive words.&lt;/p&gt;&#xA;&lt;p&gt;So far we have talked about:&lt;/p&gt;&#xA;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;&#34;&gt;&lt;code class=&#34;language-text&#34; data-lang=&#34;text&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;emergence&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;complexity&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;entity&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;persistence&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;movement&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;robustness&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;regeneration&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;reproduction&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;inheritance&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;selection&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;adaptation&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;evolution&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;open-endedness&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;progress&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Some of those words were earned carefully.&lt;br&gt;&#xA;Some were only provisional.&lt;br&gt;&#xA;Some described observations.&lt;br&gt;&#xA;Some described mechanisms.&lt;br&gt;&#xA;Some described measurements.&lt;br&gt;&#xA;Some described aspirations.&lt;br&gt;&#xA;And some may eventually turn out not to be useful at all.&lt;/p&gt;&#xA;&lt;p&gt;That is exactly how a project like this gets into trouble.&lt;/p&gt;</description>
    </item>
    <item>
      <title>07: Evolution Without Life?</title>
      <link>http://programmer.ie/books/digital-life/07-evolution-without-life/</link>
      <pubDate>Tue, 11 Aug 2026 09:48:00 +0100</pubDate>
      <guid>http://programmer.ie/books/digital-life/07-evolution-without-life/</guid>
      <description>&lt;p&gt;We ended the last chapter with three ingredients:&lt;/p&gt;&#xA;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;&#34;&gt;&lt;code class=&#34;language-text&#34; data-lang=&#34;text&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;variation&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;+&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;inheritance&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;+&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;differential reproductive success&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Allow those relationships to continue across generations and something familiar appears:&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;&lt;strong&gt;evolution&lt;/strong&gt;&lt;/p&gt;&lt;/blockquote&gt;&#xA;&lt;p&gt;But that word creates another trap.&lt;/p&gt;&#xA;&lt;p&gt;Once we say:&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;the system evolves&lt;/p&gt;&lt;/blockquote&gt;&#xA;&lt;p&gt;our minds immediately add things that were never demonstrated:&lt;/p&gt;&#xA;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;&#34;&gt;&lt;code class=&#34;language-text&#34; data-lang=&#34;text&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;better&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;smarter&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;more complex&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;more capable&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;more alive&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;None of those follows automatically.&lt;/p&gt;&#xA;&lt;p&gt;Evolution can occur without progress.&lt;br&gt;&#xA;Selection can occur without intelligence.&lt;br&gt;&#xA;Novelty can occur without usefulness.&lt;br&gt;&#xA;A population can change for a very long time without accumulating anything we care about.&lt;/p&gt;</description>
    </item>
    <item>
      <title>06: Can It Make Another One?</title>
      <link>http://programmer.ie/books/digital-life/06-can-it-make-another-one/</link>
      <pubDate>Tue, 11 Aug 2026 01:46:00 +0100</pubDate>
      <guid>http://programmer.ie/books/digital-life/06-can-it-make-another-one/</guid>
      <description>&lt;p&gt;In the last chapter, we damaged persistent patterns.&lt;/p&gt;&#xA;&lt;p&gt;That gave us:&lt;/p&gt;&#xA;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;&#34;&gt;&lt;code class=&#34;language-text&#34; data-lang=&#34;text&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;persistence&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;≠&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;robustness&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;≠&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;regeneration&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Now consider a different possibility.&lt;/p&gt;&#xA;&lt;p&gt;Instead of asking whether one organization can continue forever, ask:&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;&lt;strong&gt;Can one organization cause another recognizable organization to appear?&lt;/strong&gt;&lt;/p&gt;&lt;/blockquote&gt;&#xA;&lt;p&gt;That is reproduction in its weakest interesting form.&lt;/p&gt;&#xA;&lt;p&gt;But we should be careful immediately.&lt;/p&gt;&#xA;&lt;p&gt;Digital systems make copying cheap.&lt;/p&gt;&#xA;&lt;p&gt;So cheap, in fact, that:&lt;/p&gt;&#xA;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;&#34;&gt;&lt;code class=&#34;language-text&#34; data-lang=&#34;text&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;copying&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;by itself tells us almost nothing.&lt;/p&gt;</description>
    </item>
    <item>
      <title>05: Kill It</title>
      <link>http://programmer.ie/books/digital-life/05-kill-it/</link>
      <pubDate>Tue, 11 Aug 2026 01:34:00 +0100</pubDate>
      <guid>http://programmer.ie/books/digital-life/05-kill-it/</guid>
      <description>&lt;p&gt;We have been too kind to our systems.&lt;/p&gt;&#xA;&lt;p&gt;So far we have:&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;initialized them carefully,&lt;/li&gt;&#xA;&lt;li&gt;placed them in clean environments,&lt;/li&gt;&#xA;&lt;li&gt;watched them evolve,&lt;/li&gt;&#xA;&lt;li&gt;selected examples that behave interestingly,&lt;/li&gt;&#xA;&lt;li&gt;and mostly left them alone.&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;That is a dangerous way to understand a mechanism.&lt;/p&gt;&#xA;&lt;p&gt;A structure that persists under exactly the conditions that produce it tells us something.&lt;/p&gt;&#xA;&lt;p&gt;But not enough.&lt;/p&gt;&#xA;&lt;p&gt;If we want to know what is actually maintaining that structure, we need to interfere.&lt;/p&gt;</description>
    </item>
    <item>
      <title>04: When Does a Pattern Become a Thing?</title>
      <link>http://programmer.ie/books/digital-life/04-when-does-a-pattern-become-a-thing/</link>
      <pubDate>Tue, 11 Aug 2026 01:26:00 +0100</pubDate>
      <guid>http://programmer.ie/books/digital-life/04-when-does-a-pattern-become-a-thing/</guid>
      <description>&lt;p&gt;Rule 30 gave us structure.&lt;/p&gt;&#xA;&lt;p&gt;It gave us propagation.&lt;/p&gt;&#xA;&lt;p&gt;It gave us sensitivity to perturbation.&lt;/p&gt;&#xA;&lt;p&gt;But it did not obviously give us a &lt;strong&gt;thing&lt;/strong&gt;.&lt;/p&gt;&#xA;&lt;p&gt;The pattern expanded.&lt;br&gt;&#xA;Regions changed.&lt;br&gt;&#xA;Differences spread.&lt;/p&gt;&#xA;&lt;p&gt;Interesting global behavior appeared.&lt;/p&gt;&#xA;&lt;p&gt;But if I pointed at one region and asked:&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;Is that the same object ten generations later?&lt;/p&gt;&lt;/blockquote&gt;&#xA;&lt;p&gt;the answer was not obvious.&lt;/p&gt;&#xA;&lt;p&gt;So let&amp;rsquo;s change systems.&lt;/p&gt;&#xA;&lt;p&gt;Not because Conway&amp;rsquo;s Game of Life is more complicated.&lt;br&gt;&#xA;It isn&amp;rsquo;t.&lt;/p&gt;</description>
    </item>
    <item>
      <title>03: The First Surprise</title>
      <link>http://programmer.ie/books/digital-life/03-the-first-surprise/</link>
      <pubDate>Tue, 11 Aug 2026 01:19:00 +0100</pubDate>
      <guid>http://programmer.ie/books/digital-life/03-the-first-surprise/</guid>
      <description>&lt;p&gt;We ended the last chapter by changing one number.&lt;/p&gt;&#xA;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;&#34;&gt;&lt;code class=&#34;language-python&#34; data-lang=&#34;python&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;rule &lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#ae81ff&#34;&gt;22&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;became:&lt;/p&gt;&#xA;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;&#34;&gt;&lt;code class=&#34;language-python&#34; data-lang=&#34;python&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;rule &lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#ae81ff&#34;&gt;30&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Nothing else changed.&lt;/p&gt;&#xA;&lt;p&gt;Same world size.&lt;/p&gt;&#xA;&lt;p&gt;Same single active cell.&lt;/p&gt;&#xA;&lt;p&gt;Same three-cell neighborhood.&lt;/p&gt;&#xA;&lt;p&gt;Same synchronous update.&lt;/p&gt;&#xA;&lt;p&gt;Same periodic boundary.&lt;/p&gt;&#xA;&lt;p&gt;Same implementation.&lt;/p&gt;&#xA;&lt;p&gt;Only the eight-bit local rule changed.&lt;/p&gt;&#xA;&lt;p&gt;And the spacetime diagram changed dramatically.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;http://programmer.ie/images/books/digital-life/ch03-rule30-hero.png&#34; alt=&#34;Rule 30 from a single active cell&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;There is visible structure on the left.&lt;/p&gt;&#xA;&lt;p&gt;Irregularity on the right.&lt;/p&gt;&#xA;&lt;p&gt;Repeating fragments.&lt;/p&gt;&#xA;&lt;p&gt;Regions that look patterned for a while and then break apart.&lt;/p&gt;</description>
    </item>
    <item>
      <title>02: Remove Almost Everything</title>
      <link>http://programmer.ie/books/digital-life/02-remove-almost-everything/</link>
      <pubDate>Tue, 11 Aug 2026 01:08:00 +0100</pubDate>
      <guid>http://programmer.ie/books/digital-life/02-remove-almost-everything/</guid>
      <description>&lt;p&gt;In the previous chapter we started with something complicated.&lt;/p&gt;&#xA;&lt;p&gt;A continuous field.&lt;br&gt;&#xA;Smooth local interactions.&lt;br&gt;&#xA;Localized structures.&lt;br&gt;&#xA;Motion.&lt;br&gt;&#xA;Deformation.&lt;br&gt;&#xA;Patterns that looked disturbingly creature-like.&lt;/p&gt;&#xA;&lt;p&gt;That was useful because it gave us a mystery.&lt;/p&gt;&#xA;&lt;p&gt;Now we are going to attack the mystery.&lt;/p&gt;&#xA;&lt;p&gt;Not by adding more machinery.&lt;/p&gt;&#xA;&lt;p&gt;By removing it.&lt;/p&gt;&#xA;&lt;p&gt;Aggressively.&lt;/p&gt;&#xA;&lt;p&gt;The question is:&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;&lt;strong&gt;How little machinery can remain before our intuition stops seeing organization?&lt;/strong&gt;&lt;/p&gt;&lt;/blockquote&gt;&#xA;&lt;p&gt;Start with something like Lenia.&lt;/p&gt;</description>
    </item>
    <item>
      <title>01: Look at This Thing</title>
      <link>http://programmer.ie/books/digital-life/01-look-at-this-thing/</link>
      <pubDate>Tue, 11 Aug 2026 01:06:00 +0100</pubDate>
      <guid>http://programmer.ie/books/digital-life/01-look-at-this-thing/</guid>
      <description>&lt;p&gt;Don&amp;rsquo;t read anything yet.&lt;/p&gt;&#xA;&lt;p&gt;Watch this.&lt;/p&gt;&#xA;&lt;figure&gt;&lt;img src=&#34;http://programmer.ie/images/books/digital-life/ch01-lenia-organism.gif&#34;&#xA;    alt=&#34;A localized continuous cellular automaton pattern evolving and moving through time.&#34;&gt;&lt;figcaption&gt;&#xA;      &lt;p&gt;One state of a continuous cellular automaton evolving through time.&lt;/p&gt;&#xA;    &lt;/figcaption&gt;&#xA;&lt;/figure&gt;&#xA;&#xA;&lt;p&gt;Something is moving.&lt;/p&gt;&#xA;&lt;p&gt;It appears to have a boundary.&lt;/p&gt;&#xA;&lt;p&gt;Different parts of it seem to behave differently.&lt;/p&gt;&#xA;&lt;p&gt;Its shape changes as it travels, yet some larger organization survives those changes.&lt;/p&gt;&#xA;&lt;p&gt;If you watched it without context, you could easily reach for biological language.&lt;/p&gt;</description>
    </item>
    <item>
      <title>00: What Would Digital Life Mean?</title>
      <link>http://programmer.ie/books/digital-life/00-what-is-digital-life/</link>
      <pubDate>Tue, 11 Aug 2026 00:31:00 +0100</pubDate>
      <guid>http://programmer.ie/books/digital-life/00-what-is-digital-life/</guid>
      <description>&lt;p&gt;Suppose we wanted to build life in software.&lt;/p&gt;&#xA;&lt;p&gt;What would we actually build?&lt;/p&gt;&#xA;&lt;p&gt;A computational system in which some of the properties we associate with living things begin to arise from the operation of the system itself.&lt;/p&gt;&#xA;&lt;p&gt;The goal is not to construct a graphical creature, an animated agent, or a personality-driven assistant.&#xA;The goal is to create a computational system whose internal processes naturally give rise to behaviors and structures reminiscent of living systems.&lt;/p&gt;</description>
    </item>
  </channel>
</rss>
