<?xml version="1.0" encoding="utf-8"?><feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en"><generator uri="https://jekyllrb.com/" version="3.10.0">Jekyll</generator><link href="https://jasonzliang.github.io/blog/feed.xml" rel="self" type="application/atom+xml" /><link href="https://jasonzliang.github.io/" rel="alternate" type="text/html" hreflang="en" /><updated>2026-07-28T11:14:48-07:00</updated><id>https://jasonzliang.github.io/blog/feed.xml</id><title type="html">Jason Liang</title><subtitle>Notes and essays on neuroevolution, agentic reasoning, inference-time compute, and the road to AGI — by Jason Liang, Principal Research Scientist.</subtitle><author><name>Jason Liang</name><email>jasonzliang@utexas.edu</email></author><entry><title type="html">Welcome to the blog</title><link href="https://jasonzliang.github.io/blog/welcome/" rel="alternate" type="text/html" title="Welcome to the blog" /><published>2026-07-28T00:00:00-07:00</published><updated>2026-07-28T00:00:00-07:00</updated><id>https://jasonzliang.github.io/blog/welcome</id><content type="html" xml:base="https://jasonzliang.github.io/blog/welcome/"><![CDATA[<p>This is the first post on my blog. I’ll use this space for working notes and
essays on the things I spend my days thinking about: <strong>agentic reasoning,
inference-time compute, and large-scale neuroevolution</strong> as a path toward AGI.</p>

<p>This post doubles as a template — it shows every kind of content the blog
supports, so future posts are copy-paste-and-edit.</p>

<h2 id="text-links-and-emphasis">Text, links, and emphasis</h2>

<p>Standard Markdown works as you’d expect: <strong>bold</strong>, <em>italic</em>, <code class="language-plaintext highlighter-rouge">inline code</code>,
and <a href="https://jasonzliang.github.io/">links</a>. Paragraphs are set at a
comfortable reading measure with generous line height, matching the rest of
the site.</p>

<blockquote>
  <p>The thesis in one line: pre-training scaling is hitting diminishing returns,
and the next leg comes from recursive self-improvement at inference time —
gradient descent inside, evolutionary search outside.</p>
</blockquote>

<h2 id="images-with-captions">Images with captions</h2>

<p>Drop an image into <code class="language-plaintext highlighter-rouge">img/blog/&lt;post-slug&gt;/</code> and reference it with the figure
include for a captioned, responsive image:</p>

<figure class="post-figure">
  <img src="/img/blog/welcome/architecture.svg" alt="An outer evolutionary loop wrapping an inner gradient-descent loop." loading="lazy" /><figcaption>Neuroevolution as an outer-loop substrate: gradient descent trains each network, evolution searches over architectures.</figcaption>
</figure>

<h2 id="video-and-media">Video and media</h2>

<p>Embed a talk or demo — YouTube or a self-hosted clip — with the video include:</p>

<div class="video-embed">
  <iframe src="https://www.youtube-nocookie.com/embed/aircAruvnKk" title="Sample embedded video" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen="" loading="lazy"></iframe>
</div>

<h2 id="code">Code</h2>

<p>Fenced code blocks get syntax highlighting automatically:</p>

<div class="language-python highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="k">def</span> <span class="nf">evolve</span><span class="p">(</span><span class="n">population</span><span class="p">,</span> <span class="n">generations</span><span class="p">):</span>
    <span class="k">for</span> <span class="n">_</span> <span class="ow">in</span> <span class="nb">range</span><span class="p">(</span><span class="n">generations</span><span class="p">):</span>
        <span class="k">for</span> <span class="n">net</span> <span class="ow">in</span> <span class="n">population</span><span class="p">:</span>
            <span class="n">net</span><span class="p">.</span><span class="n">train</span><span class="p">()</span>            <span class="c1"># inner loop: gradient descent
</span>        <span class="n">population</span> <span class="o">=</span> <span class="n">select</span><span class="p">(</span><span class="n">population</span><span class="p">)</span>  <span class="c1"># outer loop: evolution
</span>        <span class="n">population</span> <span class="o">+=</span> <span class="n">mutate</span><span class="p">(</span><span class="n">population</span><span class="p">)</span>
    <span class="k">return</span> <span class="n">best</span><span class="p">(</span><span class="n">population</span><span class="p">)</span>
</code></pre></div></div>

<h2 id="lists">Lists</h2>

<ul>
  <li>Write posts in plain Markdown</li>
  <li>Commit and push — GitHub Pages rebuilds the site automatically</li>
  <li>The post appears at <code class="language-plaintext highlighter-rouge">/blog/&lt;title&gt;/</code> within a minute</li>
</ul>

<p>That’s the whole workflow. More soon.</p>]]></content><author><name>Jason Liang</name></author><category term="meta" /><category term="agentic-ai" /><category term="neuroevolution" /><summary type="html"><![CDATA[Why I'm starting a blog, and a quick tour of what this space can do — figures, video, and code all included.]]></summary><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://jasonzliang.github.io/img/blog/welcome/architecture.svg" /><media:content medium="image" url="https://jasonzliang.github.io/img/blog/welcome/architecture.svg" xmlns:media="http://search.yahoo.com/mrss/" /></entry></feed>