<?xml version="1.0" encoding="UTF-8"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
    <title>mmc</title>
    <subtitle>Writing, reading, and things I build.</subtitle>
    <link rel="self" type="application/atom+xml" href="https://mmclinton.pages.dev/atom.xml"/>
    <link rel="alternate" type="text/html" href="https://mmclinton.pages.dev"/>
    <generator uri="https://www.getzola.org/">Zola</generator>
    <updated>2026-06-15T00:00:00+00:00</updated>
    <id>https://mmclinton.pages.dev/atom.xml</id>
    <entry xml:lang="en">
        <title>The Only Good Indians</title>
        <published>2026-06-15T00:00:00+00:00</published>
        <updated>2026-06-15T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://mmclinton.pages.dev/reading/the-only-good-indians/"/>
        <id>https://mmclinton.pages.dev/reading/the-only-good-indians/</id>
        
        <content type="html" xml:base="https://mmclinton.pages.dev/reading/the-only-good-indians/">&lt;h2 id=&quot;description&quot;&gt;&lt;a class=&quot;zola-anchor&quot; href=&quot;#description&quot; aria-label=&quot;Anchor link for: description&quot;&gt;Description&lt;&#x2F;a&gt;&lt;&#x2F;h2&gt;
&lt;p&gt;Ten years ago outside Browning, Montana, four Blackfeet shot some elk, and then went on with their lives. It happens every year, it’s been happening forever, it’s the way it’s always been. But this time it’s different.&lt;&#x2F;p&gt;
&lt;p&gt;Ten years after that fateful hunt, these men are being stalked, are being hunted themselves. By who? By . . . what? And why?&lt;&#x2F;p&gt;
&lt;p&gt;Some hunting expeditions, they’re never really over.&lt;&#x2F;p&gt;
&lt;p&gt;This one’s just beginning.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>The Secret History</title>
        <published>2026-06-15T00:00:00+00:00</published>
        <updated>2026-06-15T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://mmclinton.pages.dev/reading/the-secret-history/"/>
        <id>https://mmclinton.pages.dev/reading/the-secret-history/</id>
        
        <content type="html" xml:base="https://mmclinton.pages.dev/reading/the-secret-history/">&lt;p&gt;Review coming soon …&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Ownership, Lifetimes, and the Cost of Abstractions in Rust</title>
        <published>2026-06-15T00:00:00+00:00</published>
        <updated>2026-06-15T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://mmclinton.pages.dev/writing/the-shape-of-small-tools/"/>
        <id>https://mmclinton.pages.dev/writing/the-shape-of-small-tools/</id>
        
        <content type="html" xml:base="https://mmclinton.pages.dev/writing/the-shape-of-small-tools/">&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Placeholder content.&lt;&#x2F;strong&gt; This is not original work. This article is a stand-in used to
demonstrate Markdown rendering, layout, and typography in a Zola-based site. Content is
fictional and for structural testing only.&lt;&#x2F;p&gt;
&lt;&#x2F;blockquote&gt;
&lt;p&gt;Most languages ask you to trust the programmer. C gives you a raw pointer and wishes you
luck. Python wraps everything in a garbage collector and hopes the overhead is acceptable.
Rust takes a different position entirely: it asks you to prove, at compile time, that your
program is correct with respect to memory. The compiler is not a tool you use — it is a
collaborator that refuses to ship until you’ve convinced it.&lt;&#x2F;p&gt;
&lt;p&gt;This piece walks through the core ideas — ownership, borrowing, and lifetimes — and
examines the trade-offs honestly. Rust is not free. The borrow checker has a learning curve
with real friction. Whether that friction is worth it depends entirely on what you are
building.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;ownership-as-a-first-class-concept&quot;&gt;&lt;a class=&quot;zola-anchor&quot; href=&quot;#ownership-as-a-first-class-concept&quot; aria-label=&quot;Anchor link for: ownership-as-a-first-class-concept&quot;&gt;Ownership as a first-class concept&lt;&#x2F;a&gt;&lt;&#x2F;h2&gt;
&lt;p&gt;In Rust, every value has exactly one owner. When that owner goes out of scope, the value is
dropped — memory freed, destructors run, handles closed. There is no garbage collector
sweeping through at some undefined future moment. The moment a binding leaves scope,
cleanup happens.&lt;&#x2F;p&gt;
&lt;p&gt;Consider a simple example:&lt;&#x2F;p&gt;
&lt;pre class=&quot;giallo z-code&quot;&gt;&lt;code data-lang=&quot;rust&quot;&gt;&lt;span class=&quot;giallo-l&quot;&gt;&lt;span class=&quot;z-punctuation z-definition z-comment&quot;&gt;&#x2F;&#x2F;&lt;&#x2F;span&gt;&lt;span class=&quot;z-comment&quot;&gt; s1 owns the string&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span class=&quot;z-storage z-type&quot;&gt;let&lt;&#x2F;span&gt;&lt;span class=&quot;z-variable z-other&quot;&gt; s1&lt;&#x2F;span&gt;&lt;span class=&quot;z-keyword&quot;&gt; =&lt;&#x2F;span&gt;&lt;span class=&quot;z-entity z-name&quot;&gt; String&lt;&#x2F;span&gt;&lt;span class=&quot;z-keyword&quot;&gt;::&lt;&#x2F;span&gt;&lt;span class=&quot;z-entity z-name&quot;&gt;from&lt;&#x2F;span&gt;&lt;span&gt;(&lt;&#x2F;span&gt;&lt;span class=&quot;z-punctuation z-definition z-string&quot;&gt;&amp;quot;&lt;&#x2F;span&gt;&lt;span class=&quot;z-string&quot;&gt;hello&lt;&#x2F;span&gt;&lt;span class=&quot;z-punctuation z-definition z-string&quot;&gt;&amp;quot;&lt;&#x2F;span&gt;&lt;span&gt;)&lt;&#x2F;span&gt;&lt;span&gt;;&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span class=&quot;z-punctuation z-definition z-comment&quot;&gt;&#x2F;&#x2F;&lt;&#x2F;span&gt;&lt;span class=&quot;z-comment&quot;&gt; ownership moves to s2; s1 is no longer valid&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span class=&quot;z-storage z-type&quot;&gt;let&lt;&#x2F;span&gt;&lt;span class=&quot;z-variable z-other&quot;&gt; s2&lt;&#x2F;span&gt;&lt;span class=&quot;z-keyword&quot;&gt; =&lt;&#x2F;span&gt;&lt;span class=&quot;z-variable z-other&quot;&gt; s1&lt;&#x2F;span&gt;&lt;span&gt;;&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span class=&quot;z-punctuation z-definition z-comment&quot;&gt;&#x2F;&#x2F;&lt;&#x2F;span&gt;&lt;span class=&quot;z-comment&quot;&gt; this line would not compile:&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span class=&quot;z-punctuation z-definition z-comment&quot;&gt;&#x2F;&#x2F;&lt;&#x2F;span&gt;&lt;span class=&quot;z-comment&quot;&gt; println!(&amp;quot;{}&amp;quot;, s1);&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;The compiler tracks this statically. You do not discover the bug at runtime in production —
you discover it while writing the code. This is the central promise of Rust.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;borrowing-without-giving-up-ownership&quot;&gt;&lt;a class=&quot;zola-anchor&quot; href=&quot;#borrowing-without-giving-up-ownership&quot; aria-label=&quot;Anchor link for: borrowing-without-giving-up-ownership&quot;&gt;Borrowing without giving up ownership&lt;&#x2F;a&gt;&lt;&#x2F;h2&gt;
&lt;p&gt;Moving ownership everywhere would be impractical. Rust provides borrowing as the
alternative: you can lend a reference to a value without transferring ownership. References
come in two flavors — shared and mutable — and the compiler enforces that they never
coexist.&lt;&#x2F;p&gt;
&lt;pre class=&quot;giallo z-code&quot;&gt;&lt;code data-lang=&quot;rust&quot;&gt;&lt;span class=&quot;giallo-l&quot;&gt;&lt;span class=&quot;z-keyword&quot;&gt;fn&lt;&#x2F;span&gt;&lt;span class=&quot;z-entity z-name&quot;&gt; length&lt;&#x2F;span&gt;&lt;span&gt;(&lt;&#x2F;span&gt;&lt;span class=&quot;z-variable z-other&quot;&gt;s&lt;&#x2F;span&gt;&lt;span class=&quot;z-keyword&quot;&gt;:&lt;&#x2F;span&gt;&lt;span class=&quot;z-keyword&quot;&gt; &amp;amp;&lt;&#x2F;span&gt;&lt;span class=&quot;z-entity z-name&quot;&gt;String&lt;&#x2F;span&gt;&lt;span&gt;)&lt;&#x2F;span&gt;&lt;span class=&quot;z-keyword&quot;&gt; -&amp;gt;&lt;&#x2F;span&gt;&lt;span class=&quot;z-entity z-name&quot;&gt; usize&lt;&#x2F;span&gt;&lt;span&gt; {&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span class=&quot;z-variable z-other&quot;&gt;    s&lt;&#x2F;span&gt;&lt;span class=&quot;z-keyword&quot;&gt;.&lt;&#x2F;span&gt;&lt;span class=&quot;z-entity z-name&quot;&gt;len&lt;&#x2F;span&gt;&lt;span&gt;(&lt;&#x2F;span&gt;&lt;span&gt;)&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span&gt;}&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span class=&quot;z-storage z-type&quot;&gt;let&lt;&#x2F;span&gt;&lt;span class=&quot;z-variable z-other&quot;&gt; s&lt;&#x2F;span&gt;&lt;span class=&quot;z-keyword&quot;&gt; =&lt;&#x2F;span&gt;&lt;span class=&quot;z-entity z-name&quot;&gt; String&lt;&#x2F;span&gt;&lt;span class=&quot;z-keyword&quot;&gt;::&lt;&#x2F;span&gt;&lt;span class=&quot;z-entity z-name&quot;&gt;from&lt;&#x2F;span&gt;&lt;span&gt;(&lt;&#x2F;span&gt;&lt;span class=&quot;z-punctuation z-definition z-string&quot;&gt;&amp;quot;&lt;&#x2F;span&gt;&lt;span class=&quot;z-string&quot;&gt;world&lt;&#x2F;span&gt;&lt;span class=&quot;z-punctuation z-definition z-string&quot;&gt;&amp;quot;&lt;&#x2F;span&gt;&lt;span&gt;)&lt;&#x2F;span&gt;&lt;span&gt;;&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span class=&quot;z-storage z-type&quot;&gt;let&lt;&#x2F;span&gt;&lt;span class=&quot;z-variable z-other&quot;&gt; n&lt;&#x2F;span&gt;&lt;span class=&quot;z-keyword&quot;&gt; =&lt;&#x2F;span&gt;&lt;span class=&quot;z-entity z-name&quot;&gt; length&lt;&#x2F;span&gt;&lt;span&gt;(&lt;&#x2F;span&gt;&lt;span class=&quot;z-keyword&quot;&gt;&amp;amp;&lt;&#x2F;span&gt;&lt;span class=&quot;z-variable z-other&quot;&gt;s&lt;&#x2F;span&gt;&lt;span&gt;)&lt;&#x2F;span&gt;&lt;span&gt;;&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span class=&quot;z-punctuation z-definition z-comment&quot;&gt;&#x2F;&#x2F;&lt;&#x2F;span&gt;&lt;span class=&quot;z-comment&quot;&gt; s is still valid here&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span class=&quot;z-entity z-name&quot;&gt;println!&lt;&#x2F;span&gt;&lt;span&gt;(&lt;&#x2F;span&gt;&lt;span class=&quot;z-punctuation z-definition z-string&quot;&gt;&amp;quot;&lt;&#x2F;span&gt;&lt;span class=&quot;z-string&quot;&gt;s=&lt;&#x2F;span&gt;&lt;span class=&quot;z-string&quot;&gt;{&lt;&#x2F;span&gt;&lt;span class=&quot;z-string&quot;&gt;}&lt;&#x2F;span&gt;&lt;span class=&quot;z-string&quot;&gt;, len=&lt;&#x2F;span&gt;&lt;span class=&quot;z-string&quot;&gt;{&lt;&#x2F;span&gt;&lt;span class=&quot;z-string&quot;&gt;}&lt;&#x2F;span&gt;&lt;span class=&quot;z-punctuation z-definition z-string&quot;&gt;&amp;quot;&lt;&#x2F;span&gt;&lt;span&gt;,&lt;&#x2F;span&gt;&lt;span class=&quot;z-variable z-other&quot;&gt; s&lt;&#x2F;span&gt;&lt;span&gt;,&lt;&#x2F;span&gt;&lt;span class=&quot;z-variable z-other&quot;&gt; n&lt;&#x2F;span&gt;&lt;span&gt;)&lt;&#x2F;span&gt;&lt;span&gt;;&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;The rule — one mutable reference or many shared references, never both — eliminates data
races by construction. No mutex required for the cases the type system can see at compile
time.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;what-lifetimes-actually-are&quot;&gt;&lt;a class=&quot;zola-anchor&quot; href=&quot;#what-lifetimes-actually-are&quot; aria-label=&quot;Anchor link for: what-lifetimes-actually-are&quot;&gt;What lifetimes actually are&lt;&#x2F;a&gt;&lt;&#x2F;h2&gt;
&lt;p&gt;Lifetimes are annotations that tell the compiler how long a reference is valid relative to
other references. Most of the time, lifetime elision rules handle this automatically. When
you write a function that returns a reference derived from its inputs, you may need to be
explicit.&lt;&#x2F;p&gt;
&lt;pre class=&quot;giallo z-code&quot;&gt;&lt;code data-lang=&quot;rust&quot;&gt;&lt;span class=&quot;giallo-l&quot;&gt;&lt;span class=&quot;z-punctuation z-definition z-comment&quot;&gt;&#x2F;&#x2F;&lt;&#x2F;span&gt;&lt;span class=&quot;z-comment&quot;&gt; &amp;#39;a says: the returned reference lives as long as both inputs&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span class=&quot;z-keyword&quot;&gt;fn&lt;&#x2F;span&gt;&lt;span class=&quot;z-entity z-name&quot;&gt; longest&lt;&#x2F;span&gt;&lt;span&gt;&amp;lt;&lt;&#x2F;span&gt;&lt;span&gt;&amp;#39;&lt;&#x2F;span&gt;&lt;span class=&quot;z-entity z-name&quot;&gt;a&lt;&#x2F;span&gt;&lt;span&gt;&amp;gt;&lt;&#x2F;span&gt;&lt;span&gt;(&lt;&#x2F;span&gt;&lt;span class=&quot;z-variable z-other&quot;&gt;x&lt;&#x2F;span&gt;&lt;span class=&quot;z-keyword&quot;&gt;:&lt;&#x2F;span&gt;&lt;span class=&quot;z-keyword&quot;&gt; &amp;amp;&lt;&#x2F;span&gt;&lt;span&gt;&amp;#39;&lt;&#x2F;span&gt;&lt;span class=&quot;z-entity z-name&quot;&gt;a&lt;&#x2F;span&gt;&lt;span class=&quot;z-entity z-name&quot;&gt; str&lt;&#x2F;span&gt;&lt;span&gt;,&lt;&#x2F;span&gt;&lt;span class=&quot;z-variable z-other&quot;&gt; y&lt;&#x2F;span&gt;&lt;span class=&quot;z-keyword&quot;&gt;:&lt;&#x2F;span&gt;&lt;span class=&quot;z-keyword&quot;&gt; &amp;amp;&lt;&#x2F;span&gt;&lt;span&gt;&amp;#39;&lt;&#x2F;span&gt;&lt;span class=&quot;z-entity z-name&quot;&gt;a&lt;&#x2F;span&gt;&lt;span class=&quot;z-entity z-name&quot;&gt; str&lt;&#x2F;span&gt;&lt;span&gt;)&lt;&#x2F;span&gt;&lt;span class=&quot;z-keyword&quot;&gt; -&amp;gt;&lt;&#x2F;span&gt;&lt;span class=&quot;z-keyword&quot;&gt; &amp;amp;&lt;&#x2F;span&gt;&lt;span&gt;&amp;#39;&lt;&#x2F;span&gt;&lt;span class=&quot;z-entity z-name&quot;&gt;a&lt;&#x2F;span&gt;&lt;span class=&quot;z-entity z-name&quot;&gt; str&lt;&#x2F;span&gt;&lt;span&gt; {&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span class=&quot;z-keyword&quot;&gt;    if&lt;&#x2F;span&gt;&lt;span class=&quot;z-variable z-other&quot;&gt; x&lt;&#x2F;span&gt;&lt;span class=&quot;z-keyword&quot;&gt;.&lt;&#x2F;span&gt;&lt;span class=&quot;z-entity z-name&quot;&gt;len&lt;&#x2F;span&gt;&lt;span&gt;(&lt;&#x2F;span&gt;&lt;span&gt;)&lt;&#x2F;span&gt;&lt;span&gt; &amp;gt;&lt;&#x2F;span&gt;&lt;span class=&quot;z-variable z-other&quot;&gt; y&lt;&#x2F;span&gt;&lt;span class=&quot;z-keyword&quot;&gt;.&lt;&#x2F;span&gt;&lt;span class=&quot;z-entity z-name&quot;&gt;len&lt;&#x2F;span&gt;&lt;span&gt;(&lt;&#x2F;span&gt;&lt;span&gt;)&lt;&#x2F;span&gt;&lt;span&gt; {&lt;&#x2F;span&gt;&lt;span class=&quot;z-variable z-other&quot;&gt; x&lt;&#x2F;span&gt;&lt;span&gt; }&lt;&#x2F;span&gt;&lt;span class=&quot;z-keyword&quot;&gt; else&lt;&#x2F;span&gt;&lt;span&gt; {&lt;&#x2F;span&gt;&lt;span class=&quot;z-variable z-other&quot;&gt; y&lt;&#x2F;span&gt;&lt;span&gt; }&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span&gt;}&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;Lifetime annotations do not change how long values live — they only describe relationships
that already exist. The compiler uses them to verify that no reference outlives the data it
points to.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;the-honest-cost&quot;&gt;&lt;a class=&quot;zola-anchor&quot; href=&quot;#the-honest-cost&quot; aria-label=&quot;Anchor link for: the-honest-cost&quot;&gt;The honest cost&lt;&#x2F;a&gt;&lt;&#x2F;h2&gt;
&lt;p&gt;None of this is free. The borrow checker rejects valid programs that it cannot prove are
safe. Self-referential data structures require workarounds. Certain patterns that are
trivial in other languages require rethinking from scratch in Rust.&lt;&#x2F;p&gt;
&lt;p&gt;For applications where correctness and performance both matter — systems programming,
network daemons, parsers, embedded targets — the compile-time guarantees pay out. For a
quick script or a data pipeline where Python works fine, the overhead of fighting the borrow
checker is real cost with limited return.&lt;&#x2F;p&gt;
&lt;p&gt;Rust rewards the programmer who thinks carefully about data ownership before writing code.
If that matches how you already think, the friction evaporates quickly. If you are
accustomed to reaching for &lt;code&gt;Arc&amp;lt;Mutex&amp;lt;T&amp;gt;&amp;gt;&lt;&#x2F;code&gt; on everything and sorting out ownership later,
expect a steeper adjustment.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>mmclinton.pages.dev</title>
        <published>2026-06-10T00:00:00+00:00</published>
        <updated>2026-06-10T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://mmclinton.pages.dev/projects/mmclinton-pages-dev/"/>
        <id>https://mmclinton.pages.dev/projects/mmclinton-pages-dev/</id>
        
        <content type="html" xml:base="https://mmclinton.pages.dev/projects/mmclinton-pages-dev/">&lt;h2 id=&quot;about&quot;&gt;&lt;a class=&quot;zola-anchor&quot; href=&quot;#about&quot; aria-label=&quot;Anchor link for: about&quot;&gt;About&lt;&#x2F;a&gt;&lt;&#x2F;h2&gt;
&lt;p&gt;This website. A Zola static site, reproducible through a Nix flake, deployed to
Cloudflare Pages from Codeberg. Math is prerendered with KaTeX, code highlighting
follows the theme toggle, and the only client JavaScript is a theme switch and a
small constellation canvas.&lt;&#x2F;p&gt;
&lt;p&gt;See the &lt;a href=&quot;&#x2F;colophon&#x2F;&quot;&gt;colophon&lt;&#x2F;a&gt; for the full rundown.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Hello, World!</title>
        <published>2026-06-07T00:00:00+00:00</published>
        <updated>2026-06-07T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://mmclinton.pages.dev/writing/hello-world/"/>
        <id>https://mmclinton.pages.dev/writing/hello-world/</id>
        
        <content type="html" xml:base="https://mmclinton.pages.dev/writing/hello-world/">&lt;blockquote&gt;
&lt;p&gt;A comprehensive demonstration of standard Markdown features.&lt;&#x2F;p&gt;
&lt;&#x2F;blockquote&gt;
&lt;hr &#x2F;&gt;
&lt;h2 id=&quot;headings&quot;&gt;&lt;a class=&quot;zola-anchor&quot; href=&quot;#headings&quot; aria-label=&quot;Anchor link for: headings&quot;&gt;Headings&lt;&#x2F;a&gt;&lt;&#x2F;h2&gt;
&lt;h1 id=&quot;h1-page-title&quot;&gt;&lt;a class=&quot;zola-anchor&quot; href=&quot;#h1-page-title&quot; aria-label=&quot;Anchor link for: h1-page-title&quot;&gt;H1 — Page Title&lt;&#x2F;a&gt;&lt;&#x2F;h1&gt;
&lt;h2 id=&quot;h2-major-section&quot;&gt;&lt;a class=&quot;zola-anchor&quot; href=&quot;#h2-major-section&quot; aria-label=&quot;Anchor link for: h2-major-section&quot;&gt;H2 — Major Section&lt;&#x2F;a&gt;&lt;&#x2F;h2&gt;
&lt;h3 id=&quot;h3-subsection&quot;&gt;&lt;a class=&quot;zola-anchor&quot; href=&quot;#h3-subsection&quot; aria-label=&quot;Anchor link for: h3-subsection&quot;&gt;H3 — Subsection&lt;&#x2F;a&gt;&lt;&#x2F;h3&gt;
&lt;h4 id=&quot;h4-sub-subsection&quot;&gt;&lt;a class=&quot;zola-anchor&quot; href=&quot;#h4-sub-subsection&quot; aria-label=&quot;Anchor link for: h4-sub-subsection&quot;&gt;H4 — Sub-subsection&lt;&#x2F;a&gt;&lt;&#x2F;h4&gt;
&lt;h5 id=&quot;h5-minor-heading&quot;&gt;&lt;a class=&quot;zola-anchor&quot; href=&quot;#h5-minor-heading&quot; aria-label=&quot;Anchor link for: h5-minor-heading&quot;&gt;H5 — Minor heading&lt;&#x2F;a&gt;&lt;&#x2F;h5&gt;
&lt;h6 id=&quot;h6-smallest-heading&quot;&gt;&lt;a class=&quot;zola-anchor&quot; href=&quot;#h6-smallest-heading&quot; aria-label=&quot;Anchor link for: h6-smallest-heading&quot;&gt;H6 — Smallest heading&lt;&#x2F;a&gt;&lt;&#x2F;h6&gt;
&lt;hr &#x2F;&gt;
&lt;h2 id=&quot;emphasis&quot;&gt;&lt;a class=&quot;zola-anchor&quot; href=&quot;#emphasis&quot; aria-label=&quot;Anchor link for: emphasis&quot;&gt;Emphasis&lt;&#x2F;a&gt;&lt;&#x2F;h2&gt;
&lt;p&gt;Plain text, &lt;strong&gt;bold text&lt;&#x2F;strong&gt;, &lt;em&gt;italic text&lt;&#x2F;em&gt;, &lt;em&gt;&lt;strong&gt;bold and italic&lt;&#x2F;strong&gt;&lt;&#x2F;em&gt;, and &lt;del&gt;strikethrough&lt;&#x2F;del&gt;.&lt;&#x2F;p&gt;
&lt;p&gt;You can also use &lt;code&gt;inline code&lt;&#x2F;code&gt; to highlight short snippets.&lt;&#x2F;p&gt;
&lt;hr &#x2F;&gt;
&lt;h2 id=&quot;lists&quot;&gt;&lt;a class=&quot;zola-anchor&quot; href=&quot;#lists&quot; aria-label=&quot;Anchor link for: lists&quot;&gt;Lists&lt;&#x2F;a&gt;&lt;&#x2F;h2&gt;
&lt;h3 id=&quot;unordered&quot;&gt;&lt;a class=&quot;zola-anchor&quot; href=&quot;#unordered&quot; aria-label=&quot;Anchor link for: unordered&quot;&gt;Unordered&lt;&#x2F;a&gt;&lt;&#x2F;h3&gt;
&lt;ul&gt;
&lt;li&gt;Item one&lt;&#x2F;li&gt;
&lt;li&gt;Item two
&lt;ul&gt;
&lt;li&gt;Nested item A&lt;&#x2F;li&gt;
&lt;li&gt;Nested item B
&lt;ul&gt;
&lt;li&gt;Deeply nested item&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;&#x2F;li&gt;
&lt;li&gt;Item three&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h3 id=&quot;ordered&quot;&gt;&lt;a class=&quot;zola-anchor&quot; href=&quot;#ordered&quot; aria-label=&quot;Anchor link for: ordered&quot;&gt;Ordered&lt;&#x2F;a&gt;&lt;&#x2F;h3&gt;
&lt;ol&gt;
&lt;li&gt;First step&lt;&#x2F;li&gt;
&lt;li&gt;Second step
&lt;ol&gt;
&lt;li&gt;Sub-step one&lt;&#x2F;li&gt;
&lt;li&gt;Sub-step two&lt;&#x2F;li&gt;
&lt;&#x2F;ol&gt;
&lt;&#x2F;li&gt;
&lt;li&gt;Third step&lt;&#x2F;li&gt;
&lt;&#x2F;ol&gt;
&lt;hr &#x2F;&gt;
&lt;h2 id=&quot;links-images&quot;&gt;&lt;a class=&quot;zola-anchor&quot; href=&quot;#links-images&quot; aria-label=&quot;Anchor link for: links-images&quot;&gt;Links &amp;amp; Images&lt;&#x2F;a&gt;&lt;&#x2F;h2&gt;
&lt;p&gt;&lt;a rel=&quot;external&quot; href=&quot;https:&#x2F;&#x2F;www.openstreetmap.org&quot;&gt;OpenStreetMap&lt;&#x2F;a&gt; — an inline link.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;a rel=&quot;external&quot; href=&quot;https:&#x2F;&#x2F;www.anthropic.com&quot;&gt;Anthropic&lt;&#x2F;a&gt; — a reference-style link.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;img src=&quot;https:&#x2F;&#x2F;via.placeholder.com&#x2F;150&quot; title=&quot;Optional%20title&quot; alt=&quot;Alt text for an image&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; &#x2F;&gt;&lt;&#x2F;p&gt;
&lt;hr &#x2F;&gt;
&lt;h2 id=&quot;&quot;&gt;&lt;a class=&quot;zola-anchor&quot; href=&quot;#&quot; aria-label=&quot;Anchor link for: &quot;&gt;Code&lt;&#x2F;a&gt;&lt;&#x2F;h2&gt;
&lt;h3 id=&quot;-1&quot;&gt;&lt;a class=&quot;zola-anchor&quot; href=&quot;#-1&quot; aria-label=&quot;Anchor link for: -1&quot;&gt;Inline&lt;&#x2F;a&gt;&lt;&#x2F;h3&gt;
&lt;p&gt;Use &lt;code&gt;println!(&quot;Hello, World!&quot;)&lt;&#x2F;code&gt; to print in Rust.&lt;&#x2F;p&gt;
&lt;h3 id=&quot;-2&quot;&gt;&lt;a class=&quot;zola-anchor&quot; href=&quot;#-2&quot; aria-label=&quot;Anchor link for: -2&quot;&gt;Fenced Block (Rust)&lt;&#x2F;a&gt;&lt;&#x2F;h3&gt;
&lt;pre class=&quot;giallo z-code&quot;&gt;&lt;code data-lang=&quot;rust&quot;&gt;&lt;span class=&quot;giallo-l&quot;&gt;&lt;span class=&quot;z-keyword&quot;&gt;fn&lt;&#x2F;span&gt;&lt;span class=&quot;z-entity z-name&quot;&gt; main&lt;&#x2F;span&gt;&lt;span&gt;(&lt;&#x2F;span&gt;&lt;span&gt;)&lt;&#x2F;span&gt;&lt;span&gt; {&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span class=&quot;z-storage z-type&quot;&gt;    let&lt;&#x2F;span&gt;&lt;span class=&quot;z-variable z-other&quot;&gt; greeting&lt;&#x2F;span&gt;&lt;span class=&quot;z-keyword&quot;&gt; =&lt;&#x2F;span&gt;&lt;span class=&quot;z-punctuation z-definition z-string&quot;&gt; &amp;quot;&lt;&#x2F;span&gt;&lt;span class=&quot;z-string&quot;&gt;Hello, World!&lt;&#x2F;span&gt;&lt;span class=&quot;z-punctuation z-definition z-string&quot;&gt;&amp;quot;&lt;&#x2F;span&gt;&lt;span&gt;;&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span class=&quot;z-entity z-name&quot;&gt;    println!&lt;&#x2F;span&gt;&lt;span&gt;(&lt;&#x2F;span&gt;&lt;span class=&quot;z-punctuation z-definition z-string&quot;&gt;&amp;quot;&lt;&#x2F;span&gt;&lt;span class=&quot;z-string&quot;&gt;{&lt;&#x2F;span&gt;&lt;span class=&quot;z-string&quot;&gt;}&lt;&#x2F;span&gt;&lt;span class=&quot;z-punctuation z-definition z-string&quot;&gt;&amp;quot;&lt;&#x2F;span&gt;&lt;span&gt;,&lt;&#x2F;span&gt;&lt;span class=&quot;z-variable z-other&quot;&gt; greeting&lt;&#x2F;span&gt;&lt;span&gt;)&lt;&#x2F;span&gt;&lt;span&gt;;&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span&gt;}&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;&lt;h3 id=&quot;-3&quot;&gt;&lt;a class=&quot;zola-anchor&quot; href=&quot;#-3&quot; aria-label=&quot;Anchor link for: -3&quot;&gt;Fenced Block (Python)&lt;&#x2F;a&gt;&lt;&#x2F;h3&gt;
&lt;pre class=&quot;giallo z-code&quot;&gt;&lt;code data-lang=&quot;python&quot;&gt;&lt;span class=&quot;giallo-l&quot;&gt;&lt;span class=&quot;z-storage z-type&quot;&gt;def&lt;&#x2F;span&gt;&lt;span class=&quot;z-entity z-name&quot;&gt; greet&lt;&#x2F;span&gt;&lt;span&gt;(&lt;&#x2F;span&gt;&lt;span class=&quot;z-variable z-parameter z-function&quot;&gt;name&lt;&#x2F;span&gt;&lt;span&gt;:&lt;&#x2F;span&gt;&lt;span class=&quot;z-support&quot;&gt; str&lt;&#x2F;span&gt;&lt;span&gt;)&lt;&#x2F;span&gt;&lt;span&gt; -&amp;gt;&lt;&#x2F;span&gt;&lt;span class=&quot;z-support&quot;&gt; str&lt;&#x2F;span&gt;&lt;span&gt;:&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span class=&quot;z-keyword&quot;&gt;    return&lt;&#x2F;span&gt;&lt;span class=&quot;z-storage z-type&quot;&gt; f&lt;&#x2F;span&gt;&lt;span class=&quot;z-string&quot;&gt;&amp;quot;&lt;&#x2F;span&gt;&lt;span class=&quot;z-string&quot;&gt;Hello, &lt;&#x2F;span&gt;&lt;span class=&quot;z-constant&quot;&gt;{&lt;&#x2F;span&gt;&lt;span&gt;name&lt;&#x2F;span&gt;&lt;span class=&quot;z-constant&quot;&gt;}&lt;&#x2F;span&gt;&lt;span class=&quot;z-string&quot;&gt;!&lt;&#x2F;span&gt;&lt;span class=&quot;z-string&quot;&gt;&amp;quot;&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span class=&quot;z-keyword&quot;&gt;if&lt;&#x2F;span&gt;&lt;span class=&quot;z-support z-variable&quot;&gt; __name__&lt;&#x2F;span&gt;&lt;span class=&quot;z-keyword&quot;&gt; ==&lt;&#x2F;span&gt;&lt;span class=&quot;z-punctuation z-definition z-string&quot;&gt; &amp;quot;&lt;&#x2F;span&gt;&lt;span class=&quot;z-string&quot;&gt;__main__&lt;&#x2F;span&gt;&lt;span class=&quot;z-punctuation z-definition z-string&quot;&gt;&amp;quot;&lt;&#x2F;span&gt;&lt;span&gt;:&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span class=&quot;z-support&quot;&gt;    print&lt;&#x2F;span&gt;&lt;span&gt;(&lt;&#x2F;span&gt;&lt;span&gt;greet&lt;&#x2F;span&gt;&lt;span&gt;(&lt;&#x2F;span&gt;&lt;span class=&quot;z-punctuation z-definition z-string&quot;&gt;&amp;quot;&lt;&#x2F;span&gt;&lt;span class=&quot;z-string&quot;&gt;World&lt;&#x2F;span&gt;&lt;span class=&quot;z-punctuation z-definition z-string&quot;&gt;&amp;quot;&lt;&#x2F;span&gt;&lt;span&gt;)&lt;&#x2F;span&gt;&lt;span&gt;)&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;&lt;h3 id=&quot;-4&quot;&gt;&lt;a class=&quot;zola-anchor&quot; href=&quot;#-4&quot; aria-label=&quot;Anchor link for: -4&quot;&gt;Fenced Block (Shell)&lt;&#x2F;a&gt;&lt;&#x2F;h3&gt;
&lt;pre class=&quot;giallo z-code&quot;&gt;&lt;code data-lang=&quot;shellscript&quot;&gt;&lt;span class=&quot;giallo-l&quot;&gt;&lt;span class=&quot;z-support&quot;&gt;echo&lt;&#x2F;span&gt;&lt;span class=&quot;z-punctuation z-definition z-string&quot;&gt; &amp;quot;&lt;&#x2F;span&gt;&lt;span class=&quot;z-string&quot;&gt;Hello, World!&lt;&#x2F;span&gt;&lt;span class=&quot;z-punctuation z-definition z-string&quot;&gt;&amp;quot;&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;hr &#x2F;&gt;
&lt;h2 id=&quot;-5&quot;&gt;&lt;a class=&quot;zola-anchor&quot; href=&quot;#-5&quot; aria-label=&quot;Anchor link for: -5&quot;&gt;Tables&lt;&#x2F;a&gt;&lt;&#x2F;h2&gt;
&lt;table&gt;&lt;thead&gt;&lt;tr&gt;&lt;th&gt;Language&lt;&#x2F;th&gt;&lt;th&gt;Paradigm&lt;&#x2F;th&gt;&lt;th&gt;Typing&lt;&#x2F;th&gt;&lt;th&gt;First Appeared&lt;&#x2F;th&gt;&lt;&#x2F;tr&gt;&lt;&#x2F;thead&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td&gt;Rust&lt;&#x2F;td&gt;&lt;td&gt;Multi-paradigm&lt;&#x2F;td&gt;&lt;td&gt;Static&lt;&#x2F;td&gt;&lt;td&gt;2010&lt;&#x2F;td&gt;&lt;&#x2F;tr&gt;
&lt;tr&gt;&lt;td&gt;Python&lt;&#x2F;td&gt;&lt;td&gt;Multi-paradigm&lt;&#x2F;td&gt;&lt;td&gt;Dynamic&lt;&#x2F;td&gt;&lt;td&gt;1991&lt;&#x2F;td&gt;&lt;&#x2F;tr&gt;
&lt;tr&gt;&lt;td&gt;Go&lt;&#x2F;td&gt;&lt;td&gt;Concurrent&lt;&#x2F;td&gt;&lt;td&gt;Static&lt;&#x2F;td&gt;&lt;td&gt;2009&lt;&#x2F;td&gt;&lt;&#x2F;tr&gt;
&lt;tr&gt;&lt;td&gt;SQL&lt;&#x2F;td&gt;&lt;td&gt;Declarative&lt;&#x2F;td&gt;&lt;td&gt;Static&lt;&#x2F;td&gt;&lt;td&gt;1974&lt;&#x2F;td&gt;&lt;&#x2F;tr&gt;
&lt;&#x2F;tbody&gt;&lt;&#x2F;table&gt;
&lt;blockquote&gt;
&lt;p&gt;Column alignment can be controlled with colons in the separator row:&lt;&#x2F;p&gt;
&lt;&#x2F;blockquote&gt;
&lt;table&gt;&lt;thead&gt;&lt;tr&gt;&lt;th style=&quot;text-align: left&quot;&gt;Left-aligned&lt;&#x2F;th&gt;&lt;th style=&quot;text-align: center&quot;&gt;Centered&lt;&#x2F;th&gt;&lt;th style=&quot;text-align: right&quot;&gt;Right-aligned&lt;&#x2F;th&gt;&lt;&#x2F;tr&gt;&lt;&#x2F;thead&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td style=&quot;text-align: left&quot;&gt;Apple&lt;&#x2F;td&gt;&lt;td style=&quot;text-align: center&quot;&gt;Banana&lt;&#x2F;td&gt;&lt;td style=&quot;text-align: right&quot;&gt;Cherry&lt;&#x2F;td&gt;&lt;&#x2F;tr&gt;
&lt;tr&gt;&lt;td style=&quot;text-align: left&quot;&gt;1&lt;&#x2F;td&gt;&lt;td style=&quot;text-align: center&quot;&gt;2&lt;&#x2F;td&gt;&lt;td style=&quot;text-align: right&quot;&gt;3&lt;&#x2F;td&gt;&lt;&#x2F;tr&gt;
&lt;&#x2F;tbody&gt;&lt;&#x2F;table&gt;
&lt;hr &#x2F;&gt;
&lt;h2 id=&quot;-6&quot;&gt;&lt;a class=&quot;zola-anchor&quot; href=&quot;#-6&quot; aria-label=&quot;Anchor link for: -6&quot;&gt;Blockquotes&lt;&#x2F;a&gt;&lt;&#x2F;h2&gt;
&lt;blockquote&gt;
&lt;p&gt;“The curious task of economics is to demonstrate to men how little they really know about what they imagine they can design.”&lt;&#x2F;p&gt;
&lt;p&gt;— F.A. Hayek, &lt;em&gt;The Fatal Conceit&lt;&#x2F;em&gt;&lt;&#x2F;p&gt;
&lt;&#x2F;blockquote&gt;
&lt;p&gt;Nested blockquotes:&lt;&#x2F;p&gt;
&lt;blockquote&gt;
&lt;p&gt;Outer quote.&lt;&#x2F;p&gt;
&lt;blockquote&gt;
&lt;p&gt;Inner quote nested one level.&lt;&#x2F;p&gt;
&lt;blockquote&gt;
&lt;p&gt;Inner quote nested two levels.&lt;&#x2F;p&gt;
&lt;&#x2F;blockquote&gt;
&lt;&#x2F;blockquote&gt;
&lt;&#x2F;blockquote&gt;
&lt;hr &#x2F;&gt;
&lt;h2 id=&quot;-7&quot;&gt;&lt;a class=&quot;zola-anchor&quot; href=&quot;#-7&quot; aria-label=&quot;Anchor link for: -7&quot;&gt;Horizontal Rules&lt;&#x2F;a&gt;&lt;&#x2F;h2&gt;
&lt;p&gt;Three or more hyphens, asterisks, or underscores on their own line:&lt;&#x2F;p&gt;
&lt;hr &#x2F;&gt;
&lt;hr &#x2F;&gt;
&lt;hr &#x2F;&gt;
&lt;hr &#x2F;&gt;
&lt;h2 id=&quot;-8&quot;&gt;&lt;a class=&quot;zola-anchor&quot; href=&quot;#-8&quot; aria-label=&quot;Anchor link for: -8&quot;&gt;Task Lists&lt;&#x2F;a&gt;&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;input disabled=&quot;&quot; type=&quot;checkbox&quot; checked=&quot;&quot;&#x2F;&gt;
Write the Hello World template&lt;&#x2F;li&gt;
&lt;li&gt;&lt;input disabled=&quot;&quot; type=&quot;checkbox&quot; checked=&quot;&quot;&#x2F;&gt;
Include code blocks&lt;&#x2F;li&gt;
&lt;li&gt;&lt;input disabled=&quot;&quot; type=&quot;checkbox&quot; checked=&quot;&quot;&#x2F;&gt;
Add a table&lt;&#x2F;li&gt;
&lt;li&gt;&lt;input disabled=&quot;&quot; type=&quot;checkbox&quot;&#x2F;&gt;
Render it in a Markdown viewer&lt;&#x2F;li&gt;
&lt;li&gt;&lt;input disabled=&quot;&quot; type=&quot;checkbox&quot;&#x2F;&gt;
Extend with project-specific content&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;hr &#x2F;&gt;
&lt;h2 id=&quot;-9&quot;&gt;&lt;a class=&quot;zola-anchor&quot; href=&quot;#-9&quot; aria-label=&quot;Anchor link for: -9&quot;&gt;Footnotes&lt;&#x2F;a&gt;&lt;&#x2F;h2&gt;
&lt;p&gt;Standard Markdown footnotes&lt;sup class=&quot;footnote-reference&quot;&gt;&lt;a href=&quot;#1&quot;&gt;1&lt;&#x2F;a&gt;&lt;&#x2F;sup&gt; are supported in many renderers such as GitHub and Pandoc.&lt;sup class=&quot;footnote-reference&quot;&gt;&lt;a href=&quot;#2&quot;&gt;2&lt;&#x2F;a&gt;&lt;&#x2F;sup&gt;&lt;&#x2F;p&gt;
&lt;div class=&quot;footnote-definition&quot; id=&quot;1&quot;&gt;&lt;sup class=&quot;footnote-definition-label&quot;&gt;1&lt;&#x2F;sup&gt;
&lt;p&gt;This is the first footnote. It can contain &lt;strong&gt;formatted text&lt;&#x2F;strong&gt; and even &lt;code&gt;code&lt;&#x2F;code&gt;.&lt;&#x2F;p&gt;
&lt;&#x2F;div&gt;
&lt;div class=&quot;footnote-definition&quot; id=&quot;2&quot;&gt;&lt;sup class=&quot;footnote-definition-label&quot;&gt;2&lt;&#x2F;sup&gt;
&lt;p&gt;Pandoc is a universal document converter — handy for converting &lt;code&gt;.md&lt;&#x2F;code&gt; to PDF, DOCX, and more.&lt;&#x2F;p&gt;
&lt;&#x2F;div&gt;
&lt;hr &#x2F;&gt;
&lt;h2 id=&quot;-10&quot;&gt;&lt;a class=&quot;zola-anchor&quot; href=&quot;#-10&quot; aria-label=&quot;Anchor link for: -10&quot;&gt;Escaping Special Characters&lt;&#x2F;a&gt;&lt;&#x2F;h2&gt;
&lt;p&gt;Use a backslash to escape Markdown syntax: *not italic*, `not code`, [not a link].&lt;&#x2F;p&gt;
&lt;hr &#x2F;&gt;
&lt;h2 id=&quot;-11&quot;&gt;&lt;a class=&quot;zola-anchor&quot; href=&quot;#-11&quot; aria-label=&quot;Anchor link for: -11&quot;&gt;HTML (where supported)&lt;&#x2F;a&gt;&lt;&#x2F;h2&gt;
&lt;details&gt;
&lt;summary&gt;Click to expand a hidden section&lt;&#x2F;summary&gt;
&lt;p&gt;Raw HTML can be embedded in Markdown where the renderer allows it. Useful for collapsible sections, colored text, or custom layouts.&lt;&#x2F;p&gt;
&lt;&#x2F;details&gt;
&lt;hr &#x2F;&gt;
&lt;p&gt;&lt;em&gt;End of template. Happy writing!&lt;&#x2F;em&gt;&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Dune</title>
        <published>2026-05-20T00:00:00+00:00</published>
        <updated>2026-05-20T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://mmclinton.pages.dev/reading/dune/"/>
        <id>https://mmclinton.pages.dev/reading/dune/</id>
        
        <content type="html" xml:base="https://mmclinton.pages.dev/reading/dune/">&lt;p&gt;Review coming soon …&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Project Hail Mary</title>
        <published>2026-04-02T00:00:00+00:00</published>
        <updated>2026-04-02T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://mmclinton.pages.dev/reading/project-hail-mary/"/>
        <id>https://mmclinton.pages.dev/reading/project-hail-mary/</id>
        
        <content type="html" xml:base="https://mmclinton.pages.dev/reading/project-hail-mary/">&lt;p&gt;Review coming soon …&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>gitaid.nvim</title>
        <published>2026-03-10T00:00:00+00:00</published>
        <updated>2026-03-10T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://mmclinton.pages.dev/projects/gitaid-nvim/"/>
        <id>https://mmclinton.pages.dev/projects/gitaid-nvim/</id>
        
        <content type="html" xml:base="https://mmclinton.pages.dev/projects/gitaid-nvim/">&lt;h2 id=&quot;about&quot;&gt;&lt;a class=&quot;zola-anchor&quot; href=&quot;#about&quot; aria-label=&quot;Anchor link for: about&quot;&gt;About&lt;&#x2F;a&gt;&lt;&#x2F;h2&gt;
&lt;p&gt;A small, idiomatic Neovim plugin that displays the output of &lt;code&gt;git status --short&lt;&#x2F;code&gt; in a floating popup.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why&quot;&gt;&lt;a class=&quot;zola-anchor&quot; href=&quot;#why&quot; aria-label=&quot;Anchor link for: why&quot;&gt;Why&lt;&#x2F;a&gt;&lt;&#x2F;h2&gt;
&lt;p&gt;The porcelain is powerful but the muscle memory is brutal. &lt;code&gt;gitaid&lt;&#x2F;code&gt; trades a few
flags for verbs.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>spectral</title>
        <published>2026-02-18T00:00:00+00:00</published>
        <updated>2026-02-18T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://mmclinton.pages.dev/projects/spectral/"/>
        <id>https://mmclinton.pages.dev/projects/spectral/</id>
        
        <content type="html" xml:base="https://mmclinton.pages.dev/projects/spectral/">&lt;h2 id=&quot;about&quot;&gt;&lt;a class=&quot;zola-anchor&quot; href=&quot;#about&quot; aria-label=&quot;Anchor link for: about&quot;&gt;About&lt;&#x2F;a&gt;&lt;&#x2F;h2&gt;
&lt;p&gt;A real-time audio noise suppression application powered by &lt;a rel=&quot;external&quot; href=&quot;https:&#x2F;&#x2F;arxiv.org&#x2F;pdf&#x2F;1709.08243&quot;&gt;RNNoise&lt;&#x2F;a&gt;, a hybid DSP and neural-network-based noise suppression system originally developed by Xiph.org.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;status&quot;&gt;&lt;a class=&quot;zola-anchor&quot; href=&quot;#status&quot; aria-label=&quot;Anchor link for: status&quot;&gt;Status&lt;&#x2F;a&gt;&lt;&#x2F;h2&gt;
&lt;p&gt;Functional on Linux via PipeWire. The application consists of a GUI (&lt;code&gt;spectral&lt;&#x2F;code&gt;) and a background daemon (&lt;code&gt;spectral-daemon&lt;&#x2F;code&gt;) that handles audio processing.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>saw</title>
        <published>2026-01-12T00:00:00+00:00</published>
        <updated>2026-01-12T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://mmclinton.pages.dev/projects/saw/"/>
        <id>https://mmclinton.pages.dev/projects/saw/</id>
        
        <content type="html" xml:base="https://mmclinton.pages.dev/projects/saw/">&lt;h2 id=&quot;about&quot;&gt;&lt;a class=&quot;zola-anchor&quot; href=&quot;#about&quot; aria-label=&quot;Anchor link for: about&quot;&gt;About&lt;&#x2F;a&gt;&lt;&#x2F;h2&gt;
&lt;p&gt;A terminal-first workbench for running static analysis on a repository: discover the available analyzers for your language, run them, and review normalized findings in one place. Built in Rust, language by language.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;status&quot;&gt;&lt;a class=&quot;zola-anchor&quot; href=&quot;#status&quot; aria-label=&quot;Anchor link for: status&quot;&gt;Status&lt;&#x2F;a&gt;&lt;&#x2F;h2&gt;
&lt;p&gt;Early development (the Ratatui TUI is a three-tab workbench — home, analysis, tools — that triggers analyzer runs interactively).&lt;&#x2F;p&gt;
</content>
        
    </entry>
</feed>
