<?xml version="1.0" encoding="utf-8"?><feed xmlns="http://www.w3.org/2005/Atom" ><generator uri="https://jekyllrb.com/" version="3.10.0">Jekyll</generator><link href="https://dataterminals.github.io/blog/feed.xml" rel="self" type="application/atom+xml" /><link href="https://dataterminals.github.io/blog/" rel="alternate" type="text/html" /><updated>2026-08-10T19:52:04+00:00</updated><id>https://dataterminals.github.io/blog/feed.xml</id><title type="html">dataterminals</title><subtitle>to sparkle in the rubble</subtitle><entry><title type="html">mundane</title><link href="https://dataterminals.github.io/blog/2026/08/09/mundane/" rel="alternate" type="text/html" title="mundane" /><published>2026-08-09T00:00:00+00:00</published><updated>2026-08-09T00:00:00+00:00</updated><id>https://dataterminals.github.io/blog/2026/08/09/mundane</id><content type="html" xml:base="https://dataterminals.github.io/blog/2026/08/09/mundane/"><![CDATA[<p>i feel like if there’s anything more to the mundane… brainless… luxury
surveillance and mistreatment and debasement and disenfranchisement, the
mundane material excess cultural fatness, raw culturally obese-in-the-brain
schlock that describes the average texture of one’s daily life as literally
any american, especially working class ones, then it only comes from just…
idk honest to god disruption. like nobody here is stumbling upon anything
profound by stating that you’re a person in america who should never
underestimate their own need for convenience, it truly is disgusting, its like
people’s consumptive tendencies here are rooted in nothing more but larping as
exploiters of others. like we can’t do shit in life unless we have basically an
indentured servant do it for us, except now everyone can have one in a
never-ending chain of labor and fulfillment. so idk i dont feel very
fulfilled. i think one of the broader issues right now is that the obscenely
wealthy stopped feeling as if they needed to be classy and to contribute to
society; like most of them just feel like they don’t owe us shit, even though
their entire life is basically on rent from the vast swath of working class
america. dudes like rockefeller and carnegie were shitheads by every stretch of
the imagination, sure, and they also donated wealth to at least idk. “bring art
to the masses”. figuring that “well shit if I do nothing for these people what
happens when they come for me with the pitchforks” and now we’ve just
imprisoned ourselves in a pillow-fort, non-exitable, where it doesn’t matter
what you think, because you can’t do shit about it, and we’ve already marketed
a reality to you where resisting against that is just another, fractal level of
consumption itself. welcome to the loop</p>]]></content><author><name></name></author><summary type="html"><![CDATA[i feel like if there’s anything more to the mundane… brainless… luxury surveillance and mistreatment and debasement and disenfranchisement, the mundane material excess cultural fatness, raw culturally obese-in-the-brain schlock that describes the average texture of one’s daily life as literally any american, especially working class ones, then it only comes from just… idk honest to god disruption. like nobody here is stumbling upon anything profound by stating that you’re a person in america who should never underestimate their own need for convenience, it truly is disgusting, its like people’s consumptive tendencies here are rooted in nothing more but larping as exploiters of others. like we can’t do shit in life unless we have basically an indentured servant do it for us, except now everyone can have one in a never-ending chain of labor and fulfillment. so idk i dont feel very fulfilled. i think one of the broader issues right now is that the obscenely wealthy stopped feeling as if they needed to be classy and to contribute to society; like most of them just feel like they don’t owe us shit, even though their entire life is basically on rent from the vast swath of working class america. dudes like rockefeller and carnegie were shitheads by every stretch of the imagination, sure, and they also donated wealth to at least idk. “bring art to the masses”. figuring that “well shit if I do nothing for these people what happens when they come for me with the pitchforks” and now we’ve just imprisoned ourselves in a pillow-fort, non-exitable, where it doesn’t matter what you think, because you can’t do shit about it, and we’ve already marketed a reality to you where resisting against that is just another, fractal level of consumption itself. welcome to the loop]]></summary></entry><entry><title type="html">pyramid ocular unlidded insignia</title><link href="https://dataterminals.github.io/blog/2026/08/09/pyramid-ocular-unlidded-insignia/" rel="alternate" type="text/html" title="pyramid ocular unlidded insignia" /><published>2026-08-09T00:00:00+00:00</published><updated>2026-08-09T00:00:00+00:00</updated><id>https://dataterminals.github.io/blog/2026/08/09/pyramid-ocular-unlidded-insignia</id><content type="html" xml:base="https://dataterminals.github.io/blog/2026/08/09/pyramid-ocular-unlidded-insignia/"><![CDATA[<p>theres something so morbid about how i see a torrent marked as 2026 for a movie
and, my brain just has this urge and this demand to get it, just because it’s
new, just because of the general state of how greedy companies are over media
now that you’re owning nothing and being happy lol. its like i get it, and know
im about to see a recognizeable face being old. knaben has the 2026 jackass
front and center and i already know im about to see no bam margera (he’s sober!)
and johnny knoxville beginnig to look like the grandpa character he played in
the older jackasses lol</p>

<p>disclosure day already seems really annoying just because i thought it was going
to be some cool cloverfield esque alien reveal and instead its just a pretty
woman making chortling noises with her throat and running from the feds, it’s
such a blueball for a first-contact movie (i havent watched it im probably
wrong)</p>

<p>anime girls were way cooler back when real people couldn’t become one, and it
wasn’t the only job available for people who want to own a home in the USA in
their lifetime. its either embarrass yourself in front of a phone on a tripod or
spend $3,500 on a bouncy anime girl pngtube lol. only then will you be able to
afford dental work</p>]]></content><author><name></name></author><summary type="html"><![CDATA[theres something so morbid about how i see a torrent marked as 2026 for a movie and, my brain just has this urge and this demand to get it, just because it’s new, just because of the general state of how greedy companies are over media now that you’re owning nothing and being happy lol. its like i get it, and know im about to see a recognizeable face being old. knaben has the 2026 jackass front and center and i already know im about to see no bam margera (he’s sober!) and johnny knoxville beginnig to look like the grandpa character he played in the older jackasses lol]]></summary></entry><entry><title type="html">welcome</title><link href="https://dataterminals.github.io/blog/2026/08/06/welcome/" rel="alternate" type="text/html" title="welcome" /><published>2026-08-06T00:00:00+00:00</published><updated>2026-08-06T00:00:00+00:00</updated><id>https://dataterminals.github.io/blog/2026/08/06/welcome</id><content type="html" xml:base="https://dataterminals.github.io/blog/2026/08/06/welcome/"><![CDATA[<p>i appreciate you taking the time to actually click through this if you get that
far. i have a lot of energy for writing and creating and it much of the time,
it’s mostly for me. so everything you see here is sort of like… openly knowing
that a third party observer can peek into a the world and see me in front of my
vanity and mirror set. thats most of what people seeing what i produce, like…
it’s delivery of it.</p>

<p><img src="/blog/assets/niglitch.gif" alt="A looping glitch animation — a figure at a desk torn apart into magenta and cyan scanlines." /></p>]]></content><author><name></name></author><summary type="html"><![CDATA[i appreciate you taking the time to actually click through this if you get that far. i have a lot of energy for writing and creating and it much of the time, it’s mostly for me. so everything you see here is sort of like… openly knowing that a third party observer can peek into a the world and see me in front of my vanity and mirror set. thats most of what people seeing what i produce, like… it’s delivery of it.]]></summary></entry><entry><title type="html">Colophon</title><link href="https://dataterminals.github.io/blog/2026/08/05/colophon/" rel="alternate" type="text/html" title="Colophon" /><published>2026-08-05T00:00:00+00:00</published><updated>2026-08-05T00:00:00+00:00</updated><id>https://dataterminals.github.io/blog/2026/08/05/colophon</id><content type="html" xml:base="https://dataterminals.github.io/blog/2026/08/05/colophon/"><![CDATA[<p>Scaffolding post — it exists so every styled element has somewhere to be seen,
and so there’s a file to copy when writing the first real one. Delete it, or
keep it as a reference. Nothing depends on it.</p>

<p>The structure here is Jekyll’s <a href="https://github.com/jekyll/minima">minima</a> theme, unchanged: a header with
the wordmark and nav, a reverse-chronological list of dates and titles, and a
three-column footer. The styling is the <a href="https://dataterminals.github.io/">dataterminals</a> palette — oxblood,
bone, terracotta — over the same looping background the landing page uses.</p>

<h2 id="writing-a-post">Writing a post</h2>

<p>Drop a file in <code class="language-plaintext highlighter-rouge">_posts/</code> named <code class="language-plaintext highlighter-rouge">YYYY-MM-DD-some-slug.md</code>, with front matter:</p>

<div class="language-yaml highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="nn">---</span>
<span class="na">layout</span><span class="pi">:</span> <span class="s">post</span>
<span class="na">title</span><span class="pi">:</span> <span class="s2">"</span><span class="s">The</span><span class="nv"> </span><span class="s">title,</span><span class="nv"> </span><span class="s">in</span><span class="nv"> </span><span class="s">quotes</span><span class="nv"> </span><span class="s">if</span><span class="nv"> </span><span class="s">it</span><span class="nv"> </span><span class="s">has</span><span class="nv"> </span><span class="s">a</span><span class="nv"> </span><span class="s">colon"</span>
<span class="nn">---</span>
</code></pre></div></div>

<p>The date in the filename sets both the publication date and the URL, which
resolves to <code class="language-plaintext highlighter-rouge">/blog/2026/08/05/some-slug/</code>. Anything dated in the future stays
out of the build until that date passes, which makes scheduling a post a matter
of naming it correctly.</p>

<h2 id="the-type-scale">The type scale</h2>

<h3 id="third-level-heading">Third-level heading</h3>

<p>Body text runs at 1.02rem over 1.75 line-height on a 660px measure — the same
width the landing page uses, which lands at roughly 70 characters a line. Long
enough not to feel cramped, short enough that the eye finds the next line.</p>

<h5 id="fifth-level-heading">Fifth-level heading</h5>

<p>Below the fourth level, headings stop being serif and become tracked uppercase
in the faint ink, because a small serif heading reads as emphasis rather than
structure.</p>

<h2 id="inline-elements">Inline elements</h2>

<p>Links look like <a href="https://dataterminals.github.io/">this</a>, set in terracotta with a hairline under them —
visible without hovering, since a hover-only underline disappears against a
moving background. There’s <strong>bold</strong>, <em>italic</em>, <code class="language-plaintext highlighter-rouge">inline code</code>, and
<del>strikethrough</del>.</p>

<blockquote>
  <p>A blockquote borrows the sub-tagline’s voice: serif, italic, dimmed, held off
the left margin by an ember rule.</p>
</blockquote>

<ul>
  <li>Unordered lists</li>
  <li>take faint markers</li>
  <li>so the text leads</li>
</ul>

<ol>
  <li>Ordered lists</li>
  <li>number in the same ink</li>
</ol>

<hr />

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

<p>Fenced blocks are highlighted by Rouge, in a warm palette matched to the site
rather than the usual cool defaults:</p>

<div class="language-python highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="k">def</span> <span class="nf">parse_manifest</span><span class="p">(</span><span class="n">path</span><span class="p">:</span> <span class="n">Path</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="nb">dict</span><span class="p">[</span><span class="nb">str</span><span class="p">,</span> <span class="n">Entry</span><span class="p">]:</span>
    <span class="s">"""Read a mod manifest and index its entries by id."""</span>
    <span class="k">with</span> <span class="n">path</span><span class="p">.</span><span class="nb">open</span><span class="p">(</span><span class="n">encoding</span><span class="o">=</span><span class="s">"utf-8"</span><span class="p">)</span> <span class="k">as</span> <span class="n">fh</span><span class="p">:</span>
        <span class="n">raw</span> <span class="o">=</span> <span class="n">json</span><span class="p">.</span><span class="n">load</span><span class="p">(</span><span class="n">fh</span><span class="p">)</span>

    <span class="n">entries</span> <span class="o">=</span> <span class="p">{}</span>
    <span class="k">for</span> <span class="n">item</span> <span class="ow">in</span> <span class="n">raw</span><span class="p">.</span><span class="n">get</span><span class="p">(</span><span class="s">"entries"</span><span class="p">,</span> <span class="p">[]):</span>
        <span class="n">entries</span><span class="p">[</span><span class="n">item</span><span class="p">[</span><span class="s">"id"</span><span class="p">]]</span> <span class="o">=</span> <span class="n">Entry</span><span class="p">(</span>
            <span class="n">name</span><span class="o">=</span><span class="n">item</span><span class="p">[</span><span class="s">"name"</span><span class="p">],</span>
            <span class="n">version</span><span class="o">=</span><span class="n">item</span><span class="p">.</span><span class="n">get</span><span class="p">(</span><span class="s">"version"</span><span class="p">,</span> <span class="s">"0.0.0"</span><span class="p">),</span>
            <span class="n">requires</span><span class="o">=</span><span class="nb">tuple</span><span class="p">(</span><span class="n">item</span><span class="p">.</span><span class="n">get</span><span class="p">(</span><span class="s">"requires"</span><span class="p">,</span> <span class="p">())),</span>
        <span class="p">)</span>
    <span class="k">return</span> <span class="n">entries</span>
</code></pre></div></div>

<p>Lines longer than the measure scroll inside the block instead of widening the
page:</p>

<div class="language-plaintext highlighter-rouge"><div class="highlight"><pre class="highlight"><code>2026-08-05T14:22:09Z  WARN  loader  entry 'tfw.workbench.compat' declares a dependency on 'tfw.core&gt;=2.4.0' but the resolved graph pins 2.3.11 — continuing with the older version
</code></pre></div></div>

<h2 id="tables">Tables</h2>

<table>
  <thead>
    <tr>
      <th>Field</th>
      <th>Type</th>
      <th>Notes</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td><code class="language-plaintext highlighter-rouge">id</code></td>
      <td>string</td>
      <td>Unique within a manifest</td>
    </tr>
    <tr>
      <td><code class="language-plaintext highlighter-rouge">version</code></td>
      <td>semver</td>
      <td>Defaults to <code class="language-plaintext highlighter-rouge">0.0.0</code> when absent</td>
    </tr>
    <tr>
      <td><code class="language-plaintext highlighter-rouge">requires</code></td>
      <td>list</td>
      <td>Resolved depth-first, cycles rejected</td>
    </tr>
  </tbody>
</table>

<h2 id="images">Images</h2>

<p>Any image dropped in <code class="language-plaintext highlighter-rouge">assets/</code> and referenced with a leading slash gets a
hairline border and rounded corners:</p>

<div class="language-markdown highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="p">![</span><span class="nv">Alt text describing the image</span><span class="p">](</span><span class="sx">{{</span> <span class="nn">'/assets/some-image.png'</span> | relative_url }})
</code></pre></div></div>

<p>That <code class="language-plaintext highlighter-rouge">relative_url</code> filter matters — it prepends <code class="language-plaintext highlighter-rouge">/blog</code>, which is what keeps
links working both here and on a local preview. Bare <code class="language-plaintext highlighter-rouge">/assets/…</code> paths break in
one of the two.</p>]]></content><author><name></name></author><summary type="html"><![CDATA[Scaffolding post — it exists so every styled element has somewhere to be seen, and so there’s a file to copy when writing the first real one. Delete it, or keep it as a reference. Nothing depends on it.]]></summary></entry></feed>