<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet href="/atom.xsl" type="text/xsl"?>
<feed xmlns="http://www.w3.org/2005/Atom" xmlns:fh="http://purl.org/syndication/history/1.0">
  <title>Archive</title>
  <id>https://waylonwalker.com/archive/atom.xml</id>
  <updated>2026-05-13T08:36:19Z</updated>
  <subtitle>All published posts</subtitle>
  <link href="https://waylonwalker.com/" rel="alternate" type="text/html"></link>
  <link href="https://waylonwalker.com/archive/atom.xml" rel="self" type="application/atom+xml"></link>
  <link href="https://waylonwalker.com/atom.xml" rel="current" type="application/atom+xml"></link>
  <author>
    <name>Waylon Walker</name>
  </author>
  <generator uri="https://github.com/WaylonWalker/markata-go">markata-go</generator>
  <fh:complete></fh:complete>
  <entry>
    <title>💭 These Layoffs Backfired Instantly (ft. Primeagen) - YouTube</title>
    <id>https://waylonwalker.com/thought-994/</id>
    <updated>2026-05-13T08:36:19Z</updated>
    <published>2026-05-13T08:36:19Z</published>
    <link href="https://waylonwalker.com/thought-994/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/watch?v=5WrGfsh7x5U</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;5WrGfsh7x5U&#34; title=&#34;These Layoffs Backfired Instantly (ft. Primeagen)&#34; playlabel=&#34;Play: These Layoffs Backfired Instantly (ft. Primeagen)&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Prime on Big A they make a really great mix.  I really like primes perspective on the layoffs here.  Adding in an ops perspecive a bit here.  Maybe inspiring a full level post.  infra, ops, sre roles are incentivised to keep uptime, that is your goal in these roles.  Idk how it works on big products, its probably more greased, higher stakes, more well thoguht out, more well discussed.  In my role for many small internal applications developers constantly use my platform different and find new edge cases that we never expected to hit.  Depending on my week I’m either the team blocker and I’m fighting fires all week making sure new releases are getting out and stay running while everything is breaking, or I’m tending to the fire lanes, predicting the new edges, looking at previous outages and asking myself how do we never see this category of failure again.  I think AI is really good a enabling both of these.  I think you can probably run a leaner team with AI on the latter half.  AI is really good at implementing things consitent (if you are careful) and fast.  But when shit hits the fan, you still need the people who know the systems to get things back up quickly and prevent a cascade of more problems.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Foo Fighters: Tiny Desk Concert - YouTube</title>
    <id>https://waylonwalker.com/thought-993/</id>
    <updated>2026-05-13T07:33:55Z</updated>
    <published>2026-05-13T07:33:55Z</published>
    <link href="https://waylonwalker.com/thought-993/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/watch?v=wxaXWSVhRXU&amp;list=RDwxaXWSVhRXU&amp;start_radio=1</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;wxaXWSVhRXU&#34; title=&#34;Foo Fighters: Tiny Desk Concert&#34; playlabel=&#34;Play: Foo Fighters: Tiny Desk Concert&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;What a great way to start a Wednesday morning with a fresh brand new tiny desk concert with the Foo Fighters.  The killed it, love the classics.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>agents are never done</title>
    <id>https://waylonwalker.com/agents-are-never-done/</id>
    <updated>2026-05-11T06:59:07Z</updated>
    <published>2026-05-11T06:59:07Z</published>
    <link href="https://waylonwalker.com/agents-are-never-done/" rel="alternate" type="text/html"></link>
    <summary type="text">Agentic coding has this nice trick of letting you bang out a project in an afternoon, something complex that would have take some real time to implement, not...</summary>
    <content type="html">&lt;p&gt;Agentic coding has this nice trick of letting you bang out a project in an&#xA;afternoon, something complex that would have take some real time to implement,&#xA;not just some rounding error that can slip right in between the jira board.&#xA;Then it will be perpetually never done.  There will always be bugs and thorns&#xA;rear their head up, new features no one ever thought of, and now no one really&#xA;has to think much about beyond having the idea.&lt;/p&gt;&#xA;&lt;p&gt;This part of software engineering has always been here, its the root of the&#xA;never complete 200 side projects.  But now it feels like fuel has been poured&#xA;on the fire, like we can get more done than ever.  But we are tricking&#xA;ourselves, these projects will never be “done”.  There’s always more to add.&#xA;Without feeling any of the pain of implementing it yourself, why not just keep&#xA;adding new features forever.  This is the mentality that is crushing me right now.&lt;/p&gt;&#xA;&lt;p&gt;It pulls at your token anxiety like crazy.  You look at the usage board and you&#xA;are almost cooked so you switch to mini models that cant really do much without&#xA;you responding yes every 30s, or your usage is still in the green with a day to&#xA;go so you are up till midnight trying to get your clanker to cook overnight on&#xA;a side project, but really the stuff that you can just think of off the top of&#xA;your head take 15 minutes max so you just keep checking in and adding a little&#xA;bit more.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Great Taste Of Pharloom</title>
    <id>https://waylonwalker.com/shots/great-taste-of-pharloom/</id>
    <updated>2026-05-10T20:04:10Z</updated>
    <published>2026-05-10T20:04:10Z</published>
    <link href="https://waylonwalker.com/shots/great-taste-of-pharloom/" rel="alternate" type="text/html"></link>
    <summary type="text">Great Taste Of Pharloom</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;http://dropper.waylonwalker.com/file/ccbcfe04-a033-4667-8cce-10431ed1f392.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Great Taste Of Pharloom&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/file/ccbcfe04-a033-4667-8cce-10431ed1f392.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;http://dropper.waylonwalker.com/file/ccbcfe04-a033-4667-8cce-10431ed1f392.mp4&#34; type=&#34;video/mp4&#34;&gt;Great Taste Of Pharloom&lt;/video&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;Great Taste Of Pharloom&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Chef Lugoli</title>
    <id>https://waylonwalker.com/shots/chef-lugoli/</id>
    <updated>2026-05-10T19:59:49Z</updated>
    <published>2026-05-10T19:59:49Z</published>
    <link href="https://waylonwalker.com/shots/chef-lugoli/" rel="alternate" type="text/html"></link>
    <summary type="text">Chef Lugoli</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;http://dropper.waylonwalker.com/file/a7b03707-8bb6-40b3-81ca-a443b5c78d45.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Chef Lugoli&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/file/a7b03707-8bb6-40b3-81ca-a443b5c78d45.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;http://dropper.waylonwalker.com/file/a7b03707-8bb6-40b3-81ca-a443b5c78d45.mp4&#34; type=&#34;video/mp4&#34;&gt;Chef Lugoli&lt;/video&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;Chef Lugoli&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Microsoft Doesn&#39;t Have it in Them to Win - YouTube</title>
    <id>https://waylonwalker.com/thought-992/</id>
    <updated>2026-05-09T12:00:01Z</updated>
    <published>2026-05-09T12:00:01Z</published>
    <link href="https://waylonwalker.com/thought-992/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://youtu.be/n5gE2RX2GVA?si=Wu08hMDV8fREPJKJ</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;n5gE2RX2GVA&#34; title=&#34;YouTube video&#34; playlabel=&#34;Play: YouTube video&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;I havent used windows in years at this point, but I feel this on the products I am forced to use for work.  Basic features are not right, kinda work most of the time.  New features, ai integrations, new skin/design, but still teams can’t use my system mic appropriately yet every other app does.&lt;/p&gt;&#xA;&lt;p&gt;Also feel this computers have not got significantly better since around getting ssds.  Yes they are better, but not at the same rate of being obsolete every two years.  I hope we hit local model land and it flips this a bit, not in quite the obsolete every two years range, but some new hardware actually lets you do meaningful more new things.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 How to Install Silksong mods on the Steam Deck | Long Play Tech</title>
    <id>https://waylonwalker.com/thought-991/</id>
    <updated>2026-05-09T09:46:52Z</updated>
    <published>2026-05-09T09:46:52Z</published>
    <link href="https://waylonwalker.com/thought-991/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://longplaytech.com/posts/how-to-install-silksong-mods-on-the-steam-deck/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://longplaytech.com/posts/how-to-install-silksong-mods-on-the-steam-deck/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://longplaytech.com/posts/how-to-install-silksong-mods-on-the-steam-deck/featured.jpg&#34; alt=&#34;How to Install Silksong mods on the Steam&amp;amp;nbsp;Deck — Having a tough time with Hollow Knight: Silksong? These mods will help.&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: How to Install Silksong mods on the Steam&amp;amp;nbsp;Deck — Having a tough time with Hollow Knight: Silksong? These mods will help.&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;How to Install Silksong mods on the Steam&amp;amp;nbsp;Deck&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Having a tough time with Hollow Knight: Silksong? These mods will help.&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;Long Play Tech · longplaytech.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Really good tutorial for how to mod silksong on the steam deck.  We just did this on my son’s steam deck.  I’d add a reccomendation to map ~ to a back button like L4. I think this guy was docked with a keyboard.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Couriers Rasher Full</title>
    <id>https://waylonwalker.com/shots/couriers-rasher-full/</id>
    <updated>2026-05-08T15:45:50Z</updated>
    <published>2026-05-08T15:45:50Z</published>
    <link href="https://waylonwalker.com/shots/couriers-rasher-full/" rel="alternate" type="text/html"></link>
    <summary type="text">Couriers Rasher Full</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;http://dropper.waylonwalker.com/file/5ed703dd-d2f2-4f84-aaec-7d25227c4156.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Couriers Rasher Full&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/file/5ed703dd-d2f2-4f84-aaec-7d25227c4156.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;http://dropper.waylonwalker.com/file/5ed703dd-d2f2-4f84-aaec-7d25227c4156.mp4&#34; type=&#34;video/mp4&#34;&gt;Couriers Rasher Full&lt;/video&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;Couriers Rasher Full&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Cloudflare cuts 1100</title>
    <id>https://waylonwalker.com/thought-990/</id>
    <updated>2026-05-08T08:59:48Z</updated>
    <published>2026-05-08T08:59:48Z</published>
    <link href="https://waylonwalker.com/thought-990/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://blog.cloudflare.com/building-for-the-future/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://blog.cloudflare.com/building-for-the-future/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://cf-assets.www.cloudflare.com/zkvhlag99gkb/67gFbQxsEORTbYLfA9aiYJ/fa428c2991093073e8ca03a4bbef94e3/dark.png&#34; alt=&#34;Building For The Future — This afternoon, we sent the following email to our global team. One of our core values at Cloudflare is transparency, and we believe it&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: Building For The Future — This afternoon, we sent the following email to our global team. One of our core values at Cloudflare is transparency, and we believe it&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Building For The Future&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;This afternoon, we sent the following email to our global team. One of our core values at Cloudflare is transparency, and we believe it&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;The Cloudflare Blog · blog.cloudflare.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Full salary for the rest of the year after being let go.  As much as this sucks as much as the job market sucks.  It’s good to see that these companies laying off huge numbers during good times are trying to take care of those they brought on.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Programming Sucks</title>
    <id>https://waylonwalker.com/thought-989/</id>
    <updated>2026-05-08T08:41:49Z</updated>
    <published>2026-05-08T08:41:49Z</published>
    <link href="https://waylonwalker.com/thought-989/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.stilldrinking.org/programming-sucks</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://www.stilldrinking.org/programming-sucks&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://www.stilldrinking.org/blog_images/programming-sucks.jpg&#34; alt=&#34;Programming Sucks&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: Programming Sucks&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Programming Sucks&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;stilldrinking.org&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Absolutely incredible, will fill some notes later&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Programming Still Sucks. — Writing</title>
    <id>https://waylonwalker.com/thought-988/</id>
    <updated>2026-05-07T08:50:59Z</updated>
    <published>2026-05-07T08:50:59Z</published>
    <link href="https://waylonwalker.com/thought-988/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.stvn.sh/writing/programming-still-sucks-fqffhyp</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://www.stvn.sh/writing/programming-still-sucks-fqffhyp&#34; class=&#34;embed-card-link  has-avatar has-avatar-before&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/www.stvn.sh.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/www.stvn.sh.ico&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Programming Still Sucks. — Writing&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Sorry Peter. — I&amp;#39;m at a birthday party, and while most people here also work in tech, there&amp;#39;s always a Guy with a Real Job. You know, a physical job, building some or other thing people need. And...&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;stvn.sh&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Absolute banger of a post, this is the time we are living in. Explain “are you afraid AI is going to take your job” to a non tech blue collar worker.  Broken over promises, greed, and projects mismanaged by leadership who has no idea what the day to day work actually does and how critical it is.&lt;/p&gt;&#xA;&lt;p&gt;I’m not quite in Sara’s position, but I feel something shielded by half of this working deep inside of a non tech part of a non tech company leading a very small rag tag team with get shit done attitude.&lt;/p&gt;&#xA;&lt;p&gt;But I feel it, I see colleagues hit by these blasts.b I get clipped with shrapnel from some of the largest blasts.  But nothing as significant as I see many others hit with&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>forgejo push to create</title>
    <id>https://waylonwalker.com/forgejo-push-to-create/</id>
    <updated>2026-05-06T21:58:55Z</updated>
    <published>2026-05-06T21:58:55Z</published>
    <link href="https://waylonwalker.com/forgejo-push-to-create/" rel="alternate" type="text/html"></link>
    <summary type="text">I just learned that forgejo has a push to create repo feature and it is a gamechanger. Upon first try it didn&#39;t work, with just a couple of environment...</summary>
    <content type="html">&lt;p&gt;I just learned that forgejo has a push to create repo feature and it is a&#xA;gamechanger.  Upon first try it didn’t work, with just a couple of environment&#xA;variables I was up and running with push to create.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;notify.wayl.one on  main is 📦 v0.1.62  v3.14.4  NO PYTHON VENV SET  USING SYSTEM NVIM&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;❯ git remote add origin https://git.waylonwalker.com/waylon/notify.wayl.one&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;notify.wayl.one on  main is 📦 v0.1.62  v3.14.4  NO PYTHON VENV SET  USING SYSTEM NVIM&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;❯ git push&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;remote: Push to create is not enabled &lt;span class=&#34;k&#34;&gt;for&lt;/span&gt; users.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;fatal: unable to access &lt;span class=&#34;s1&#34;&gt;&amp;#39;https://git.waylonwalker.com/waylon/notify.wayl.one/&amp;#39;&lt;/span&gt;: The requested URL returned error: &lt;span class=&#34;m&#34;&gt;403&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;So I added the following environment variables.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Author: Waylon S. Walker &amp;lt;waylon@waylonwalker.com&amp;gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Date:   Wed May 6 21:56:53 2026 -0500&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    enable push to create&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;gh&#34;&gt;diff --git a/k8s/forgejo/deployment.yaml b/k8s/forgejo/deployment.yaml&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;gh&#34;&gt;index d77daab..9346763 100644&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;gd&#34;&gt;--- a/k8s/forgejo/deployment.yaml&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;gi&#34;&gt;+++ b/k8s/forgejo/deployment.yaml&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;gu&#34;&gt;@@ -91,6 +91,10 @@ spec:&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;               value: &amp;#34;0.0.0.0&amp;#34;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;             - name: FORGEJO__server__HTTP_PORT&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;               value: &amp;#34;3000&amp;#34;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;gi&#34;&gt;+            - name: FORGEJO__repository__ENABLE_PUSH_CREATE_USER&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;gi&#34;&gt;+              value: &amp;#34;true&amp;#34;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;gi&#34;&gt;+            - name: FORGEJO__repository__ENABLE_PUSH_CREATE_ORG&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;gi&#34;&gt;+              value: &amp;#34;true&amp;#34;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;             - name: FORGEJO__database__DB_TYPE&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;               value: postgres&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;             - name: FORGEJO__database__HOST&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;&lt;a href=&#34;https://github.com/WaylonWalker/homelab-argo/commit/b2e953bc12&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;https://github.com/WaylonWalker/homelab-argo/commit/b2e953bc12&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Tried again, and it just worked!&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;notify.wayl.one on  main is 📦 v0.1.62  v3.14.4  NO PYTHON VENV SET  USING SYSTEM NVIM&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;❯ git push&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Enumerating objects: 171, &lt;span class=&#34;k&#34;&gt;done&lt;/span&gt;.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Counting objects: 100% &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;171/171&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt;, &lt;span class=&#34;k&#34;&gt;done&lt;/span&gt;.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Delta compression using up to &lt;span class=&#34;m&#34;&gt;12&lt;/span&gt; threads&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Compressing objects: 100% &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;169/169&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt;, &lt;span class=&#34;k&#34;&gt;done&lt;/span&gt;.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Writing objects: 100% &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;171/171&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt;, 176.22 KiB &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt; 16.02 MiB/s, &lt;span class=&#34;k&#34;&gt;done&lt;/span&gt;.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Total &lt;span class=&#34;m&#34;&gt;171&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;delta 99&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt;, reused &lt;span class=&#34;m&#34;&gt;0&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;delta 0&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt;, pack-reused &lt;span class=&#34;m&#34;&gt;0&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;from 0&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;remote: Resolving deltas: 100% &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;99/99&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt;, &lt;span class=&#34;k&#34;&gt;done&lt;/span&gt;.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;To https://git.waylonwalker.com/waylon/notify.wayl.one&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt; * &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;new branch&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;      main -&amp;gt; main&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>nless</title>
    <id>https://waylonwalker.com/nless/</id>
    <updated>2026-05-06T20:45:01Z</updated>
    <published>2026-05-06T20:45:01Z</published>
    <link href="https://waylonwalker.com/nless/" rel="alternate" type="text/html"></link>
    <summary type="text">nless is a seriously sick tui for exploring streaming data. It makes it seriously simple to pivot (U), drill in (Enter), sort (s). It leave breadcrumbs as...</summary>
    <content type="html">&lt;p&gt;nless is a seriously sick tui for exploring streaming data.  It makes it&#xA;seriously simple to pivot (U), drill in (Enter), sort (s).  It leave&#xA;breadcrumbs as you go and you can press q to back out.&lt;/p&gt;&#xA;&lt;p&gt;Play with your kubernetes events.  Ya, my &lt;a href=&#34;/homelab/&#34; class=&#34;glossary-term&#34; title=&#34;A place to self host applications. For me this is primarily self built web applications, and applications for sharing files with my family. Techno Tim has a...&#34;&gt;homelab&lt;/a&gt; is far from perfect, dont judge.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;kubectl get events -A -w &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt; uvx --from nothing-less nless&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;figure&gt;&#xA;&lt;a href=&#34;http://dropper.wayl.one/file/ceda8873-cb08-4436-a3ac-b5bf4a0b2379.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;ceda8873-cb08-4436-a3ac-b5bf4a0b2379.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.wayl.one/file/ceda8873-cb08-4436-a3ac-b5bf4a0b2379.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;http://dropper.wayl.one/file/ceda8873-cb08-4436-a3ac-b5bf4a0b2379.mp4&#34; type=&#34;video/mp4&#34;&gt;ceda8873-cb08-4436-a3ac-b5bf4a0b2379.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Ghostty is leaving GitHub</title>
    <id>https://waylonwalker.com/thought-987/</id>
    <updated>2026-05-06T20:38:11Z</updated>
    <published>2026-05-06T20:38:11Z</published>
    <link href="https://waylonwalker.com/thought-987/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://news.ycombinator.com/item?id=47939579</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://mitchellh.com/writing/ghostty-leaving-github&#34; class=&#34;embed-card-link  has-avatar has-avatar-before&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/mitchellh.com.png&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/mitchellh.com.png&#34;&gt;&#xA;    &lt;/a&gt;&lt;div class=&#34;embed-card-content&#34;&gt;&lt;a href=&#34;https://mitchellh.com/writing/ghostty-leaving-github&#34; class=&#34;embed-card-link  has-avatar has-avatar-before&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/mitchellh.com.png&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/mitchellh.com.png&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Ghostty Is Leaving GitHub&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;Mitchell Hashimoto · mitchellh.com&lt;/div&gt;&#xA;      &lt;/a&gt;&lt;div class=&#34;embed-card-source&#34;&gt;&lt;a href=&#34;https://mitchellh.com/writing/ghostty-leaving-github&#34; class=&#34;embed-card-link  has-avatar has-avatar-before&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/mitchellh.com.png&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/mitchellh.com.png&#34;&gt;Found on HN: &lt;/a&gt;&lt;a href=&#34;https://news.ycombinator.com/item?id=47939579&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/news.ycombinator.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/news.ycombinator.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;discussion&lt;/a&gt;&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &#xA;&lt;/div&gt;&#xA;&lt;p&gt;The GitHub tears post.  I feel it, maybe not as much as @mitchelh, but I feel it.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Red Squares — the GitHub outage graph</title>
    <id>https://waylonwalker.com/thought-986/</id>
    <updated>2026-05-06T20:36:00Z</updated>
    <published>2026-05-06T20:36:00Z</published>
    <link href="https://waylonwalker.com/thought-986/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://red-squares.cian.lol/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://red-squares.cian.lol/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Red Squares — the GitHub outage graph&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;A satirical contribution graph: red squares track GitHub.com platform outages instead of green squares tracking commits.&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;red-squares.cian.lol&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;yet another interesting visualization of github outages.  These guys are getting raked over the coals.  It really sucks to see.  Not quite tears to my eyes &lt;a href=&#34;https://news.ycombinator.com/item?id=47939579&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/news.ycombinator.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/news.ycombinator.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;mitchelh&lt;/a&gt;.  But it feels like a core part of opensource has been dying for a few years now and is now getting ripped to shreds.  The central location for open source is becoming more fragmented and I don’t see a path to where it ever gets any better.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Couriers Rasher So Close</title>
    <id>https://waylonwalker.com/shots/couriers-rasher-so-close/</id>
    <updated>2026-05-05T21:26:31Z</updated>
    <published>2026-05-05T21:26:31Z</published>
    <link href="https://waylonwalker.com/shots/couriers-rasher-so-close/" rel="alternate" type="text/html"></link>
    <summary type="text">I almost made it. Couriers Rasher is such a long run.</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/f3dee655-28b0-482f-807e-f4dc07dddcc4.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Couriers Rasher So Close&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/file/f3dee655-28b0-482f-807e-f4dc07dddcc4.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/file/f3dee655-28b0-482f-807e-f4dc07dddcc4.mp4&#34; type=&#34;video/mp4&#34;&gt;Couriers Rasher So Close&lt;/video&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;I was in the room where it happens when it went sour!&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/f8f2e7d9-5f01-42af-8542-7eb1dc79a01e.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Couriers Rasher So Close Full&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/file/f8f2e7d9-5f01-42af-8542-7eb1dc79a01e.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/file/f8f2e7d9-5f01-42af-8542-7eb1dc79a01e.mp4&#34; type=&#34;video/mp4&#34;&gt;Couriers Rasher So Close Full&lt;/video&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;Here is the full run end to end, I’m sure there are many points I could have saved the &amp;lt;5s I still needed.&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Couriers Rasher So Close Full</title>
    <id>https://waylonwalker.com/shots/couriers-rasher-so-close-full/</id>
    <updated>2026-05-05T21:15:25Z</updated>
    <published>2026-05-05T21:15:25Z</published>
    <link href="https://waylonwalker.com/shots/couriers-rasher-so-close-full/" rel="alternate" type="text/html"></link>
    <summary type="text">Couriers Rasher So Close Full</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;http://dropper.waylonwalker.com/file/d7ae0df5-1f23-4787-8274-b51f23941fcf.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Couriers Rasher So Close Full&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/file/d7ae0df5-1f23-4787-8274-b51f23941fcf.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;http://dropper.waylonwalker.com/file/d7ae0df5-1f23-4787-8274-b51f23941fcf.mp4&#34; type=&#34;video/mp4&#34;&gt;Couriers Rasher So Close Full&lt;/video&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;Couriers Rasher So Close Full&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>almost left tokens on the table</title>
    <id>https://waylonwalker.com/ping-57/</id>
    <updated>2026-05-05T07:33:20Z</updated>
    <published>2026-05-05T07:33:20Z</published>
    <link href="https://waylonwalker.com/ping-57/" rel="alternate" type="text/html"></link>
    <summary type="text">Almost didn&#39;t get through those gippity tokens this week, woke up yesterday with 50% and a day to use them, cut full 5.4 loose on a big project that needs a...</summary>
    <content type="html">&lt;p&gt;Almost didn’t get through those gippity tokens this week, woke up yesterday&#xA;with 50% and a day to use them, cut full 5.4 loose on a  big project that needs&#xA;a lot of work an it gobbled em right up throughout the day ran out just before&#xA;bed.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Desktop Crash 2026</title>
    <id>https://waylonwalker.com/thought-985/</id>
    <updated>2026-05-02T10:30:05Z</updated>
    <published>2026-05-02T10:30:05Z</published>
    <link href="https://waylonwalker.com/thought-985/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://pype.dev/desktop-crash-2026/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://pype.dev/desktop-crash-2026/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://cdn.statically.io/gh/pypeaday/pype.dev/main/pages/media/og-02.png&#34; alt=&#34;Desktop Crash 2026 | Nic Payne — PC Crash Desktop crashed days ago, apparently my primary drive has been going bad for a while and eventually it just died. live-booted to ubuntu server found re&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: Desktop Crash 2026 | Nic Payne — PC Crash Desktop crashed days ago, apparently my primary drive has been going bad for a while and eventually it just died. live-booted to ubuntu server found re&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Desktop Crash 2026 | Nic Payne&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;PC Crash Desktop crashed days ago, apparently my primary drive has been going bad for a while and eventually it just died. live-booted to ubuntu server found re&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;pype.dev&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;I’m taking this as a reminder to treat every machine like its about to catch fire, any machine with a user regularly using it already has the match lit.  I need to go through and commit draft blog posts, dirty &lt;a href=&#34;/homelab/&#34; class=&#34;glossary-term&#34; title=&#34;A place to self host applications. For me this is primarily self built web applications, and applications for sharing files with my family. Techno Tim has a...&#34;&gt;homelab&lt;/a&gt; POC’s need to get out or get in, and not forever be in limbo.  My efforts this year have been well intention ed to keep projects clean, on main, not dirty, but I think agents are making it worse before they make it better.  I have some new ideas forming and old ideas for managing this have failed me.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 ARTEMIS II PHOTO TIMELINE</title>
    <id>https://waylonwalker.com/thought-984/</id>
    <updated>2026-05-02T09:38:05Z</updated>
    <published>2026-05-02T09:38:05Z</published>
    <link href="https://waylonwalker.com/thought-984/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://artemistimeline.com/#jeremy-hansen-suited-up-and-ready</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://artemistimeline.com/#jeremy-hansen-suited-up-and-ready&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://artemistimeline.com/web/9608627.jpg&#34; alt=&#34;Artemis II Photo Timeline — An interactive photo timeline of NASA&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: Artemis II Photo Timeline — An interactive photo timeline of NASA&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Artemis II Photo Timeline&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;An interactive photo timeline of NASA&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;artemistimeline.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Hank Greed made a really cool site to explore the Artemis II mission with Claude Code.  Now this is what agentic coding is for, such a cool app to scroll around on and visualize when the photos were taken.  Listening to the video is sounded really hard to get all of the data to line up correctly, between devices and timezones it ws not straightforward even though all of the schedules and images were made public.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/72dbd361-091e-4e3e-b965-bca6dd11e33e.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;72dbd361-091e-4e3e-b965-bca6dd11e33e.webp&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/file/72dbd361-091e-4e3e-b965-bca6dd11e33e.webp&#34; alt=&#34;72dbd361-091e-4e3e-b965-bca6dd11e33e.webp&#34;/ data-glightbox=&#34;description: 72dbd361-091e-4e3e-b965-bca6dd11e33e.webp&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Hacker News RSS</title>
    <id>https://waylonwalker.com/thought-983/</id>
    <updated>2026-05-02T09:33:39Z</updated>
    <published>2026-05-02T09:33:39Z</published>
    <link href="https://waylonwalker.com/thought-983/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://hnrss.github.io/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://hnrss.github.io/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Hacker News RSS&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;hnrss.github.io&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;hacker news rss feeds, Nice list of feeds to consider adding to your feed reader.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>image compare in markata go</title>
    <id>https://waylonwalker.com/image-compare-in-markata-go/</id>
    <updated>2026-05-01T07:40:44Z</updated>
    <published>2026-05-01T07:40:44Z</published>
    <link href="https://waylonwalker.com/image-compare-in-markata-go/" rel="alternate" type="text/html"></link>
    <summary type="text">now has web awesome integration for image compare. It renders a nice web component with a slider to compare two images.</summary>
    <content type="html">&lt;p&gt;&lt;code&gt;markata-go&lt;/code&gt; now has web awesome integration for image compare.  It renders a&#xA;nice web component with a slider to compare two images.&lt;/p&gt;&#xA;&lt;wa-comparison class=&#34;markata-webawesome-comparison&#34;&gt;&lt;img slot=&#34;after&#34; src=&#34;https://dropper.wayl.one/file/d628ffba-de18-4fff-91a8-700f037df119.webp&#34; alt=&#34;d628ffba-de18-4fff-91a8-700f037df119.webp&#34; loading=&#34;lazy&#34;&gt;&lt;img slot=&#34;before&#34; src=&#34;https://dropper.waylonwalker.com/file/ca30665f-1a15-453e-aab8-221901c7df99.webp&#34; alt=&#34;&#34; loading=&#34;lazy&#34;&gt;&lt;/wa-comparison&gt;&#xA;&lt;p&gt;It’s done with a class wrapper around the image components.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;::: wa-comparison&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;![&lt;span class=&#34;nt&#34;&gt;d628ffba-de18-4fff-91a8-700f037df119.webp&lt;/span&gt;](&lt;span class=&#34;na&#34;&gt;https://dropper.wayl.one/file/d628ffba-de18-4fff-91a8-700f037df119.webp&lt;/span&gt;)&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;![](https://dropper.waylonwalker.com/file/ca30665f-1a15-453e-aab8-221901c7df99.webp)&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:::&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Without &lt;code&gt;markata-go&lt;/code&gt;’s web awesome integration, the above would look like:&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;&amp;lt;&lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;script&lt;/span&gt; &lt;span class=&#34;na&#34;&gt;type&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;&amp;#34;module&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;&amp;gt;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  &lt;span class=&#34;kr&#34;&gt;import&lt;/span&gt; &lt;span class=&#34;s1&#34;&gt;&amp;#39;https://ka-f.webawesome.com/webawesome@3.6.0/components/comparison/comparison.js&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;&amp;lt;/&lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;script&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;&amp;gt;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;&amp;lt;&lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;wa-comparison&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;&amp;gt;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  &lt;span class=&#34;p&#34;&gt;&amp;lt;&lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;img&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;na&#34;&gt;slot&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;&amp;#34;before&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;na&#34;&gt;src&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;&amp;#34;https://dropper.wayl.one/file/d628ffba-de18-4fff-91a8-700f037df119.webp&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;na&#34;&gt;alt&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;&amp;#34;Grayscale version of kittens in a basket looking around.&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  &lt;span class=&#34;p&#34;&gt;/&amp;gt;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  &lt;span class=&#34;p&#34;&gt;&amp;lt;&lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;img&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;na&#34;&gt;slot&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;&amp;#34;after&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;na&#34;&gt;src&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;&amp;#34;https://dropper.waylonwalker.com/file/ca30665f-1a15-453e-aab8-221901c7df99.webp&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;na&#34;&gt;alt&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;&amp;#34;Color version of kittens in a basket looking around.&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  &lt;span class=&#34;p&#34;&gt;/&amp;gt;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;&amp;lt;/&lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;wa-comparison&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;&amp;gt;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>testing copilot model flag</title>
    <id>https://waylonwalker.com/testing-copilot-model-flag/</id>
    <updated>2026-04-29T11:05:39Z</updated>
    <published>2026-04-29T11:05:39Z</published>
    <link href="https://waylonwalker.com/testing-copilot-model-flag/" rel="alternate" type="text/html"></link>
    <summary type="text">Today I found a way to test model syntax, cause the clankers always get the exact model name that copilot wants wrong.</summary>
    <content type="html">&lt;p&gt;Today I found a way to test model syntax, cause the clankers always get the&#xA;exact model name that copilot wants wrong.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;copilot --model claude-sonnet-4.5 -p &lt;span class=&#34;s2&#34;&gt;&amp;#34;Reply with OK&amp;#34;&lt;/span&gt; --allow-all --no-ask-user -s&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;copilot --model gpt-5.4 -p &lt;span class=&#34;s2&#34;&gt;&amp;#34;Reply with OK&amp;#34;&lt;/span&gt; --allow-all --no-ask-user -s&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Hybrid theory is the greatest album of our generation - YouTube</title>
    <id>https://waylonwalker.com/thought-982/</id>
    <updated>2026-04-28T21:31:51Z</updated>
    <published>2026-04-28T21:31:51Z</published>
    <link href="https://waylonwalker.com/thought-982/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/shorts/4BwsqMbruJA</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;4BwsqMbruJA&#34; title=&#34;Hybrid theory is the greatest album of our generation&#34; playlabel=&#34;Play: Hybrid theory is the greatest album of our generation&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Jaime’s title hooked me in here, what guitar riff from Linkin Park had the greatest riff of our generation.  Theres something about Linkin Park unlike Killswitch Engage, Atreyu, Avenged Sevenfold, bands I would listen to at this time that I cant remember a single riff, I can think of Chesters vocals, or the unique scratching they did, but mostly the songs were a whole piece.  What riff is he talking about.&lt;/p&gt;&#xA;&lt;p&gt;The very first note of “One Step Closer” plays and I’m immediately transported back to 2003 sitting in my garage watching &lt;a href=&#34;https://www.youtube.com/watch?v=AoQ6fUTuYvg&amp;amp;list=PLoSp9yq_oDOdCOfCp_QTS017cjAi4Cv_0&amp;amp;index=2&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/www.youtube.com.png&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/www.youtube.com.png&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;HuevosIII&lt;/a&gt; on repeat.  I can still remember the timing that Wes Miller did on the edit.  I can see the riders I looked up to for so long riding in formation.&lt;/p&gt;&#xA;&lt;p&gt;Turns out this riff is so recognizable it takes me exactly where I was when I listened to it hundreds of times.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Super Slow-Moto: The</title>
    <id>https://waylonwalker.com/thought-981/</id>
    <updated>2026-04-27T20:04:35Z</updated>
    <published>2026-04-27T20:04:35Z</published>
    <link href="https://waylonwalker.com/thought-981/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/watch?v=mhzDT37b158</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;mhzDT37b158&#34; title=&#34;Super Slow-Moto: The &amp;#34;Bubba Scrub&amp;#34; w/ James Stewart&#34; playlabel=&#34;Play: Super Slow-Moto: The &amp;#34;Bubba Scrub&amp;#34; w/ James Stewart&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;The most iconic shots of a scrub ever caught on camera.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Can You Feel the Slop</title>
    <id>https://waylonwalker.com/ping-56/</id>
    <updated>2026-04-26T12:38:58Z</updated>
    <published>2026-04-26T12:38:58Z</published>
    <link href="https://waylonwalker.com/ping-56/" rel="alternate" type="text/html"></link>
    <summary type="text">Do you ever vibe code out a POC, and you can just feel the shitty code underneath? Every change causes 3 things to break and wires get crossed all over the...</summary>
    <content type="html">&lt;p&gt;Do you ever vibe code out a POC, and you can just feel the shitty code&#xA;underneath?  Every change causes 3 things to break and wires get crossed all&#xA;over the place.  Sometimes I just want to write the code again.  Maybe its time&#xA;to slow down.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Raging Conchfly</title>
    <id>https://waylonwalker.com/shots/raging-conchfly/</id>
    <updated>2026-04-26T11:57:26Z</updated>
    <published>2026-04-26T11:57:26Z</published>
    <link href="https://waylonwalker.com/shots/raging-conchfly/" rel="alternate" type="text/html"></link>
    <summary type="text">Raging Conchfly</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;http://dropper.waylonwalker.com/file/f763f4c9-ed45-49c6-9446-83027152d7d3.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Raging Conchfly&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/file/f763f4c9-ed45-49c6-9446-83027152d7d3.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;http://dropper.waylonwalker.com/file/f763f4c9-ed45-49c6-9446-83027152d7d3.mp4&#34; type=&#34;video/mp4&#34;&gt;Raging Conchfly&lt;/video&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;Raging Conchfly&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>approve rm</title>
    <id>https://waylonwalker.com/ping-55/</id>
    <updated>2026-04-21T12:17:22Z</updated>
    <published>2026-04-21T12:17:22Z</published>
    <link href="https://waylonwalker.com/ping-55/" rel="alternate" type="text/html"></link>
    <summary type="text">Hot take, if you are unwilling to approve rm you should rethink your workflow, git state, or backups.</summary>
    <content type="html">&lt;p&gt;Hot take, if you are unwilling to approve rm you should rethink&#xA;your workflow, &lt;a href=&#34;/glossary/git/&#34; class=&#34;glossary-term&#34; title=&#34;Git is a version control system for tracking changes in source code during software development. In the beginning there were many, some were licensed. As...&#34;&gt;git&lt;/a&gt; state, or backups.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This is meant for normal project work with an agent working in&#xA;the context of a single project, with directory level access&#xA;to the project.&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Ping 54</title>
    <id>https://waylonwalker.com/ping-54/</id>
    <updated>2026-04-19T09:54:48Z</updated>
    <published>2026-04-19T09:54:48Z</published>
    <link href="https://waylonwalker.com/ping-54/" rel="alternate" type="text/html"></link>
    <summary type="text">I&#39;m regressing back to boomer ai for more plan mode style prompting at home... It does a decent job at ingesting a repo and coming up with plans before I...</summary>
    <content type="html">&lt;p&gt;I’m regressing back to boomer ai for more plan mode style prompting at home…&#xA;It does a decent job at ingesting a repo and coming up with plans before I&#xA;start spending precious tokens.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Tokens Just don&#39;t go as far as they used to</title>
    <id>https://waylonwalker.com/ping-53/</id>
    <updated>2026-04-18T12:17:22Z</updated>
    <published>2026-04-18T12:17:22Z</published>
    <link href="https://waylonwalker.com/ping-53/" rel="alternate" type="text/html"></link>
    <summary type="text">Not sure if this is simply the flavor of the month, or a shift in gpt5.4 being super subsidized on release and now that we have gpt5.4-mini-fast out they...</summary>
    <content type="html">&lt;p&gt;Not sure if this is simply the flavor of the month, or a shift in gpt5.4&#xA;being super subsidized on release and now that we have gpt5.4-mini-fast out&#xA;they have shifted, but I’m burning through half of my $20 gippity sub in a&#xA;day with hobby level use.  Second week in a row its burning so fast.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>stow local ignore</title>
    <id>https://waylonwalker.com/stow-local-ignore/</id>
    <updated>2026-04-18T10:36:00Z</updated>
    <published>2026-04-18T10:36:00Z</published>
    <link href="https://waylonwalker.com/stow-local-ignore/" rel="alternate" type="text/html"></link>
    <summary type="text">Stow comes with a local and global ignore list that you can use to ignore certain files or directories.</summary>
    <content type="html">&lt;p&gt;Stow comes with a local and global ignore list that you can use to ignore&#xA;certain files or directories.&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;If you put Perl regular expressions, one per line, in a .stow-local-ignore&#xA;file within any top level package directory, in which case any file or&#xA;directory within that package matching any of these regular expressions will&#xA;be ignored. In the absence of this package-specific ignore list, Stow will&#xA;instead use the contents of ~/.stow-global-ignore, if it exists. If neither&#xA;the package-local or global ignore list exist, Stow will use its own built-in&#xA;default ignore list, which serves as a useful example of the format of these&#xA;ignore list files:&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;p&gt;Example given from the docs&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;RCS&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;.+,v&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;CVS&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;\.\#.+       # CVS conflict files / emacs lock files&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;\.cvsignore&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;\.svn&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;_darcs&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;\.hg&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;\.git&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;\.gitignore&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;\.gitmodules&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;.+~          # emacs backup files&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;\#.*\#       # emacs autosave files&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;^/README.*&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;^/LICENSE.*&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;^/COPYING&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;h2 id=&#34;reference&#34;&gt;Reference &lt;a href=&#34;#reference&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://www.gnu.org/software/stow/manual/html_node/Types-And-Syntax-Of-Ignore-Lists.html&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/www.gnu.org.png&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/www.gnu.org.png&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;https://www.gnu.org/software/stow/manual/html_node/Types-And-Syntax-Of-Ignore-Lists.html&lt;/a&gt;&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Ping 52</title>
    <id>https://waylonwalker.com/ping-52/</id>
    <updated>2026-04-17T21:19:58Z</updated>
    <published>2026-04-17T21:19:58Z</published>
    <link href="https://waylonwalker.com/ping-52/" rel="alternate" type="text/html"></link>
    <summary type="text">Is it just me or are the agents not behaving today?</summary>
    <content type="html">&lt;p&gt;Is it just me or are the agents not behaving today?&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 &#34;Am I Crazy?&#34; [Wading Through AI - Episode 3]</title>
    <id>https://waylonwalker.com/thought-980/</id>
    <updated>2026-04-16T21:10:02Z</updated>
    <published>2026-04-16T21:10:02Z</published>
    <link href="https://waylonwalker.com/thought-980/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/watch?v=Sp1EmFRDquA</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;Sp1EmFRDquA&#34; title=&#34;YouTube video&#34; playlabel=&#34;Play: YouTube video&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Casey had an interesting point here.  I think demitri came back with some sense of sanity that its just not how corporations look at employee cost, but I still thought it was a head scratcher.&lt;/p&gt;&#xA;&lt;p&gt;Roughly translated not quoted&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;If the sellers of ai are telling you that your developers are going to be 10x productive, why are they only spending half their salary in tokens?  Why not 9x?&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Ping 50 A</title>
    <id>https://waylonwalker.com/ping-50-a/</id>
    <updated>2026-04-15T21:11:58Z</updated>
    <published>2026-04-15T21:11:58Z</published>
    <link href="https://waylonwalker.com/ping-50-a/" rel="alternate" type="text/html"></link>
    <summary type="text">I wrote code by hand today... I was out of tokens</summary>
    <content type="html">&lt;p&gt;I wrote code by hand today… I was out of tokens&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 A love letter to Pi | Lucas Meijer</title>
    <id>https://waylonwalker.com/thought-979/</id>
    <updated>2026-04-15T16:12:33Z</updated>
    <published>2026-04-15T16:12:33Z</published>
    <link href="https://waylonwalker.com/thought-979/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/watch?v=fdbXNWkpPMY</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;fdbXNWkpPMY&#34; title=&#34;YouTube video&#34; playlabel=&#34;Play: YouTube video&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;I hate how he called out terminal user interfaces as shit… then proved web interfaces to be superior.  Damn him.  I love working from my terminal, but having ai prove itself through &lt;a href=&#34;/html/&#34; class=&#34;glossary-term&#34; title=&#34;HTML (HyperText Markup Language) is the standard markup language used to create and design documents on the World Wide Web. It structures web content by...&#34;&gt;html&lt;/a&gt; reports including video, image, metrics, charts, and text is goated.  Rethinking yourself has the bottleneck not the orchestrator feels real.  Validating the work is hard, theres a shift right now and everyone is trying to figure it out.  Lucas’s technique is a little bit of be lazy and tell it to prove itself to you, so as you juggle your 15 agents you have a nice report to read.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 How Claude Code’s Creator Starts EVERY Project - YouTube</title>
    <id>https://waylonwalker.com/thought-978/</id>
    <updated>2026-04-15T16:07:26Z</updated>
    <published>2026-04-15T16:07:26Z</published>
    <link href="https://waylonwalker.com/thought-978/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/watch?v=KWrsLqnB6vA</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;KWrsLqnB6vA&#34; title=&#34;YouTube video&#34; playlabel=&#34;Play: YouTube video&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;This is a really good guide, with quite a few good nuggets.  I need to try deleting my AGENTS.md and rebuilding it from scratch more often.  I liked how he talked about having agents prove their work and tell them up front how they will be judged. What I didn’t care for so much was the feeling that a lot of the rules go in markdown, thats not a rule, thats a suggestion.  Rules should be deterministic.  They should be tests and linters that ensure they are followed.  Suggestions are good, but dont trust the agents to always follow them.  And don’t trust that they wont change your rules, keep them honest.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 POV: Growing up as a Millennial be like 🤣 AC:@mikemancusi #mil...</title>
    <id>https://waylonwalker.com/thought-977/</id>
    <updated>2026-04-15T16:02:46Z</updated>
    <published>2026-04-15T16:02:46Z</published>
    <link href="https://waylonwalker.com/thought-977/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/shorts/qH3KH-q_tGE</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://www.youtube.com/shorts/qH3KH-q_tGE&#34; class=&#34;embed-card-link  has-avatar has-avatar-before&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/www.youtube.com.png&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/www.youtube.com.png&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;External Link&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;youtube.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Feeling this today, feels like everything continues to get worse.  Trying to be more positive, and its hard.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Write It First, Then Let AI Drive - Kenneth Reitz</title>
    <id>https://waylonwalker.com/thought-976/</id>
    <updated>2026-04-14T20:05:11Z</updated>
    <published>2026-04-14T20:05:11Z</published>
    <link href="https://waylonwalker.com/thought-976/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://kennethreitz.org/essays/2026-04-12-write_first_let_drive</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://kennethreitz.org/essays/2026-04-12-write_it_first_then_let_ai_drive&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://kennethreitz.org/og-image/essays/2026-04-12-write_it_first_then_let_ai_drive.png&#34; alt=&#34;Write It First, Then Let AI Drive — There&amp;#39;s a thing that happens when you start using AI coding tools seriously. You assume the best workflow is obvious: let AI generate the first draft, then...&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: Write It First, Then Let AI Drive — There&amp;#39;s a thing that happens when you start using AI coding tools seriously. You assume the best workflow is obvious: let AI generate the first draft, then...&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Write It First, Then Let AI Drive&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;There&amp;#39;s a thing that happens when you start using AI coding tools seriously. You assume the best workflow is obvious: let AI generate the first draft, then...&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;Kenneth Reitz · kennethreitz.org&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Interesting take by Kenneth Reitz.  Not quite sure how I feel about it anymore.  It kinda hurts, but I’m not sure if code aesthetics matter as much as the product anymore.  I cared when I was the one editing, but at this point I’m not doing a lot of edits by hand.  Do these aesthetics affect the final products that users use, Not sure.  AI makes me sad.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Prove Yourself Agent</title>
    <id>https://waylonwalker.com/ping-50/</id>
    <updated>2026-04-14T16:12:04Z</updated>
    <published>2026-04-14T16:12:04Z</published>
    <link href="https://waylonwalker.com/ping-50/" rel="alternate" type="text/html"></link>
    <summary type="text">Ask your agents to prove their work. Include it in the initial prompt, not later.</summary>
    <content type="html">&lt;p&gt;Ask your agents to prove their work. Include it in the initial&#xA;prompt, not later.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 I am slowly coming around to AI assisted programming.</title>
    <id>https://waylonwalker.com/thought-975/</id>
    <updated>2026-04-14T15:17:09Z</updated>
    <published>2026-04-14T15:17:09Z</published>
    <link href="https://waylonwalker.com/thought-975/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://x.com/ThePrimeagen/status/2043861800819761382</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://x.com/ThePrimeagen/status/2043861800819761382&#34; class=&#34;embed-card-link  has-avatar has-avatar-before&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/x.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/x.com.ico&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;External Link&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;X (formerly Twitter) · x.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;If agents make prime a bit faster, what does that mean for the rest of us mortals?&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 AIs aren’t good rule followers</title>
    <id>https://waylonwalker.com/thought-974/</id>
    <updated>2026-04-14T15:16:11Z</updated>
    <published>2026-04-14T15:16:11Z</published>
    <link href="https://waylonwalker.com/thought-974/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://x.com/unclebobmartin/status/2044065822067282396</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://x.com/unclebobmartin/status/2044065822067282396&#34; class=&#34;embed-card-link  has-avatar has-avatar-before&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/x.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/x.com.ico&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;External Link&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;X (formerly Twitter) · x.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;I’ve gotta agree with bob on this one, the first thing I did to my biggest brownfield project I wanted to use agents on BEFORE they did work was a hardened pre-commit.yaml, ci, hardened type checking and linting. SECOND get rid of bad inconsistent patterns, let them replicate consistency, force them to pass checks.  Agents will follow all of your markdown suggestions &lt;em&gt;most&lt;/em&gt; of the time, enough for you to become complacent if you let it.  They are goal seeking, if you put them to a task you thought was possible that is not given your constraints, they will try to find a way given enough tokens.  I dont see this ever changing, its one thing that makes them great, it just needs to be kept in check.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 A quote from Steve Yegge</title>
    <id>https://waylonwalker.com/thought-973/</id>
    <updated>2026-04-13T21:10:23Z</updated>
    <published>2026-04-13T21:10:23Z</published>
    <link href="https://waylonwalker.com/thought-973/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://simonwillison.net/2026/Apr/13/steve-yegge/#atom-everything</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://simonwillison.net/2026/Apr/13/steve-yegge/#atom-everything&#34; class=&#34;embed-card-link  has-avatar has-avatar-before&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/simonwillison.net.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/simonwillison.net.ico&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Steve Yegge&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Steve Yegge: I was chatting with my buddy at Google, who&amp;#39;s been a tech director there for about 20 years, about their AI adoption. Craziest convo I&amp;#39;ve had all year. …&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;Simon Willison’s Weblog · simonwillison.net&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;behind, yet positioned to completely dominate this race by hitting it with some sense.  Making trends in what looks like longevity in the race that is not subsidising to simply get users, but to get by until they figure out how to 100x reduce the cost to a reasonable level.  They feel like the guy sitting in the back with nothing big or flashy to say that is going to drop the hammer on their competition that overstretched itself taking on too much debt because it was necessary to change the game.  There might be something to having a mix of hipsters, boomers, and luddites all trying to balance each other out.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Anthropic Mythos</title>
    <id>https://waylonwalker.com/anthropic-mythos/</id>
    <updated>2026-04-13T16:18:15Z</updated>
    <published>2026-04-13T16:18:15Z</published>
    <link href="https://waylonwalker.com/anthropic-mythos/" rel="alternate" type="text/html"></link>
    <summary type="text">An ai model created by Anthropic was announced as a closed preview on April 7, 2026 for critical security research and evaluation with its close partners...</summary>
    <content type="html">&lt;p&gt;An ai model created by Anthropic was announced as a closed preview on April 7,&#xA;2026 for critical security research and evaluation with its close partners with&#xA;critical software such as operating systems and browsers.  Anthropic claims&#xA;that mythos is able to reason through so much more context that any model ever&#xA;before.  This enables it to find bugs that are 25 years old in the BSD,&#xA;considered one of the most secure operating systems we have.  Once it finds&#xA;these zero day bugs never discovered before its able to use them together in&#xA;malicious ways never expected.  In ways the world is not ready for.  At the&#xA;time of writing these are claims without proof.  It remains scary to know the&#xA;potential this has and that there is only a few companies with this potential&#xA;that will gatekeep who gets access.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>What happens when the 0 days are exposed?</title>
    <id>https://waylonwalker.com/ping-49/</id>
    <updated>2026-04-13T16:12:04Z</updated>
    <published>2026-04-13T16:12:04Z</published>
    <link href="https://waylonwalker.com/ping-49/" rel="alternate" type="text/html"></link>
    <summary type="text">What&#39;s going to happen to all of our software when Anthropic Mythos finds all of the 0 day vulnerabilities? Will everything depending on the bugs break? Will...</summary>
    <content type="html">&lt;p&gt;What’s going to happen to all of our software when &lt;a href=&#34;/anthropic-mythos/&#34; class=&#34;glossary-term&#34; title=&#34;An ai model created by Anthropic was announced as a closed preview on April 7, 2026 for critical security research and evaluation with its close partners...&#34;&gt;Anthropic Mythos&lt;/a&gt; finds all&#xA;of the 0 day vulnerabilities?  Will everything depending on the bugs break?&#xA;Will it be possible to fix them cleanly?  Will we all get pwnd when the bad&#xA;actors get access to them before everything is patched?  Will LTS Operating&#xA;Systems Die?&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 How does Claude Code *actually* work? - YouTube</title>
    <id>https://waylonwalker.com/thought-972/</id>
    <updated>2026-04-13T10:15:26Z</updated>
    <published>2026-04-13T10:15:26Z</published>
    <link href="https://waylonwalker.com/thought-972/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/watch?v=I82j7AzMU80</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;I82j7AzMU80&#34; title=&#34;How does Claude Code *actually* work?&#34; playlabel=&#34;Play: How does Claude Code *actually* work?&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;5 star video, if you are going to watch one video to understand how harnesses and agents work, this is it.  This really had my gears spinning on what tools do for agents and how big of a difference they make in their ability to manage context efficiently and accurately create changes.  It’s crazy how good bash works, and that gives the agents the ability to do just about everything, but it could be better.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Vintage Nector Boss Arena</title>
    <id>https://waylonwalker.com/shots/vintage-nectar/</id>
    <updated>2026-04-12T21:21:12Z</updated>
    <published>2026-04-12T21:21:12Z</published>
    <link href="https://waylonwalker.com/shots/vintage-nectar/" rel="alternate" type="text/html"></link>
    <summary type="text">Clearing out Creige&#39;s Cellar for the Vintage Nectar.</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/cba159af-44a9-4db8-82e8-a2117236c916.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Vintage Nector Full&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/file/cba159af-44a9-4db8-82e8-a2117236c916.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/file/cba159af-44a9-4db8-82e8-a2117236c916.mp4&#34; type=&#34;video/mp4&#34;&gt;Vintage Nector Full&lt;/video&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;Creige has an ant problem in his cellar where he keeps the most valuable&#xA;nectar.  As always I took a bunch of unnecessary hits, but made it out of&#xA;this one in one shot with a couple of moments taken for heal.&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Horn Fragment Full Fight</title>
    <id>https://waylonwalker.com/shots/horn-fragment-full/</id>
    <updated>2026-04-12T21:18:01Z</updated>
    <published>2026-04-12T21:18:01Z</published>
    <link href="https://waylonwalker.com/shots/horn-fragment-full/" rel="alternate" type="text/html"></link>
    <summary type="text">Fighting the second Savage Beastfly in Far Fields</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/382288fe-b208-4eae-8895-9ec06171508d.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Horn Fragment Full&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/file/382288fe-b208-4eae-8895-9ec06171508d.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/file/382288fe-b208-4eae-8895-9ec06171508d.mp4&#34; type=&#34;video/mp4&#34;&gt;Horn Fragment Full&lt;/video&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;The second Savage Beastfly in Far Fields was admittedly took me way too many&#xA;tries, for a boss that feels like it should be a one shot guy I bet it took&#xA;me 15 tries.&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Artemis II Lunar Flyby</title>
    <id>https://waylonwalker.com/thought-971/</id>
    <updated>2026-04-09T21:53:49Z</updated>
    <published>2026-04-09T21:53:49Z</published>
    <link href="https://waylonwalker.com/thought-971/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.nasa.gov/gallery/lunar-flyby/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://www.nasa.gov/gallery/lunar-flyby/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://images-assets.nasa.gov/image/art002e015231/art002e015231~large.jpg&#34; alt=&#34;Artemis II Lunar Flyby - NASA — The first flyby images of the Moon captured by NASA’s Artemis II astronauts during their historic test flight reveal regions of the Moon&amp;#39;s far side, as well as an in-space solar eclipse. Released April 7, 2026, NASA astronauts Reid Wiseman, Victor Glover, and Christina Koch and CSA (Canadian Space Agency) astronaut Jeremy Hansen captured the images during the mission’s seven-hour flyby on April 6, 2026, showing humanity’s return to the Moon’s vicinity.&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: Artemis II Lunar Flyby - NASA — The first flyby images of the Moon captured by NASA’s Artemis II astronauts during their historic test flight reveal regions of the Moon&amp;#39;s far side, as well as an in-space solar eclipse. Released April 7, 2026, NASA astronauts Reid Wiseman, Victor Glover, and Christina Koch and CSA (Canadian Space Agency) astronaut Jeremy Hansen captured the images during the mission’s seven-hour flyby on April 6, 2026, showing humanity’s return to the Moon’s vicinity.&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Artemis II Lunar Flyby - NASA&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;The first flyby images of the Moon captured by NASA’s Artemis II astronauts during their historic test flight reveal regions of the Moon&amp;#39;s far side, as well as an in-space solar eclipse. Released...&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;NASA · nasa.gov&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;One of the biggest scientific achievement of our lifetime happened this week.  I will forever remember sitting in a Culvers in between theater builds looking through these photos as they came live, looking at them in awe.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/9987010a-a448-472d-9c60-2831b61a1d3a.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;9987010a-a448-472d-9c60-2831b61a1d3a.webp&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/file/9987010a-a448-472d-9c60-2831b61a1d3a.webp&#34; alt=&#34;9987010a-a448-472d-9c60-2831b61a1d3a.webp&#34;/ data-glightbox=&#34;description: 9987010a-a448-472d-9c60-2831b61a1d3a.webp&#34;&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;One of the most famous images from the shoot “Setting Earth”&lt;/p&gt;&lt;/figcaption&gt;&#xA;&lt;/figure&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Explaining the Most Important Artemis II Photos - YouTube</title>
    <id>https://waylonwalker.com/thought-970/</id>
    <updated>2026-04-09T21:44:47Z</updated>
    <published>2026-04-09T21:44:47Z</published>
    <link href="https://waylonwalker.com/thought-970/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/watch?v=oaXRREHVkHo</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;oaXRREHVkHo&#34; title=&#34;Explaining the Most Important Artemis II Photos&#34; playlabel=&#34;Play: Explaining the Most Important Artemis II Photos&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;What an amazing set of photos created by the Artemis II crew accompanying a fantastic breakdown by Hank Green.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/0b53a4ed-924e-42b5-84f4-51c189f60801.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;0b53a4ed-924e-42b5-84f4-51c189f60801.webp&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/file/0b53a4ed-924e-42b5-84f4-51c189f60801.webp&#34; alt=&#34;0b53a4ed-924e-42b5-84f4-51c189f60801.webp&#34;/ data-glightbox=&#34;description: 0b53a4ed-924e-42b5-84f4-51c189f60801.webp&#34;&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;I like this one, as its probably one of the ones not shred a ton&lt;/p&gt;&lt;/figcaption&gt;&#xA;&lt;/figure&gt;&#xA;&lt;p&gt;Whole gallery is worth looking at &lt;a href=&#34;https://www.nasa.gov/gallery/lunar-flyby/&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/www.nasa.gov.png&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/www.nasa.gov.png&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;https://www.nasa.gov/gallery/lunar-flyby/&lt;/a&gt;&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Ping 48</title>
    <id>https://waylonwalker.com/ping-48/</id>
    <updated>2026-04-08T16:12:32Z</updated>
    <published>2026-04-08T16:12:32Z</published>
    <link href="https://waylonwalker.com/ping-48/" rel="alternate" type="text/html"></link>
    <content type="text">&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 An AI state of the union: We’ve passed the inflection point &amp; ...</title>
    <id>https://waylonwalker.com/thought-969/</id>
    <updated>2026-04-08T09:29:40Z</updated>
    <published>2026-04-08T09:29:40Z</published>
    <link href="https://waylonwalker.com/thought-969/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/watch?v=wc8FBhQtdsA</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;wc8FBhQtdsA&#34; title=&#34;An AI state of the union: We’ve passed the inflection point &amp;amp; dark factories are coming&#34; playlabel=&#34;Play: An AI state of the union: We’ve passed the inflection point &amp;amp; dark factories are coming&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;A really interesting long form interview with @simonwillison.net.  If you follow him closely most of it is probably not new, but I found some interesting nuggets.&lt;/p&gt;&#xA;&lt;p&gt;Simon is writing most of his code from his phone these days using anthropic hosted platform.  He mentioned that a lot of security risks go away when you don’t put secrets on the platform and you let them take the risk of running ai written code with ai chosen supply chain.&lt;/p&gt;&#xA;&lt;p&gt;He talked about the Pelican Riding a Bike benchmark for quite awhile.  He was surprised at how well of a proxy it is for how capable a model is at just about everything.  He also said that when he runs the benchmark he also runs half a dozen others that he’s never talked about so that He could see if they were to train a model specific to his benchmark he could catch them, but it seems they had caught on and if they were they seem that they would already be doing it on all of his others anyways.&lt;/p&gt;&#xA;&lt;p&gt;TDD is incredibly boring for humans, it strips so much creativity and joy from the process.  Who cares if agents are bored they do better when doing TDD.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 DDR5 Prices are Crashing... Kind Of. - YouTube</title>
    <id>https://waylonwalker.com/thought-968/</id>
    <updated>2026-04-08T08:41:16Z</updated>
    <published>2026-04-08T08:41:16Z</published>
    <link href="https://waylonwalker.com/thought-968/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/watch?v=0jCMF7OeH9w&amp;t=328s</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;0jCMF7OeH9w&#34; title=&#34;DDR5 Prices are Crashing... Kind Of.&#34; playlabel=&#34;Play: DDR5 Prices are Crashing... Kind Of.&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;THIS is the future of &lt;a href=&#34;/homelab/&#34; class=&#34;glossary-term&#34; title=&#34;A place to self host applications. For me this is primarily self built web applications, and applications for sharing files with my family. Techno Tim has a...&#34;&gt;homelab&lt;/a&gt;, excited to see someone who knows so much more about hardware than I do get excited about this.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/f69c86b9-ab79-46ad-9ef0-4d794544e943.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;f69c86b9-ab79-46ad-9ef0-4d794544e943.webp&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/file/f69c86b9-ab79-46ad-9ef0-4d794544e943.webp&#34; alt=&#34;f69c86b9-ab79-46ad-9ef0-4d794544e943.webp&#34;/ data-glightbox=&#34;description: f69c86b9-ab79-46ad-9ef0-4d794544e943.webp&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 @seldo.com on Bluesky</title>
    <id>https://waylonwalker.com/thought-967/</id>
    <updated>2026-04-08T07:31:34Z</updated>
    <published>2026-04-08T07:31:34Z</published>
    <link href="https://waylonwalker.com/thought-967/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://bsky.app/profile/seldo.com/post/3miybjol76p2r</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://bsky.app/profile/seldo.com/post/3miybjol76p2r&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://cdn.bsky.app/img/avatar_thumbnail/plain/did:plc:4w3lx5jmokfvihilz2q562ev/bafkreic3gypsfet4fdphv4pp3h3fbrbwuu54bu42ks4qs6h754syqo3fxi&#34; alt=&#34;Laurie Voss (@seldo.com) — Project Glasswing is a glimpse at an oncoming future in which agents do things humans could never have accomplished and the results are handled by other agents faster than humans could react and we are just spectators.&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: Laurie Voss (@seldo.com) — Project Glasswing is a glimpse at an oncoming future in which agents do things humans could never have accomplished and the results are handled by other agents faster than humans could react and we are just spectators.&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Laurie Voss (@seldo.com)&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Project Glasswing is a glimpse at an oncoming future in which agents do things humans could never have accomplished and the results are handled by other agents faster than humans could react and we...&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;Bluesky Social · bsky.app&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Is Glasswing the next inflection point&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/00bc13be-32bd-4410-b0c4-2ecc0f2f6b95.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;00bc13be-32bd-4410-b0c4-2ecc0f2f6b95.webp&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/file/00bc13be-32bd-4410-b0c4-2ecc0f2f6b95.webp&#34; alt=&#34;00bc13be-32bd-4410-b0c4-2ecc0f2f6b95.webp&#34;/ data-glightbox=&#34;description: 00bc13be-32bd-4410-b0c4-2ecc0f2f6b95.webp&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>3x3-3 Gaming Keeb Complete</title>
    <id>https://waylonwalker.com/shots/gaming-keeb-complete/</id>
    <updated>2026-04-05T19:09:05Z</updated>
    <published>2026-04-05T19:09:05Z</published>
    <link href="https://waylonwalker.com/shots/gaming-keeb-complete/" rel="alternate" type="text/html"></link>
    <summary type="text">freshly built gaming keyboard for @wyatt sitting on my desk</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;http://dropper.waylonwalker.com/file/32510980-2e53-4294-9198-c2fc5a6fb96a.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;3x3-3 gaming keeb complete&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;http://dropper.waylonwalker.com/file/32510980-2e53-4294-9198-c2fc5a6fb96a.webp&#34; alt=&#34;3x3-3 gaming keeb complete&#34;/ data-glightbox=&#34;description: 3x3-3 gaming keeb complete&#34;&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;freshly built gaming keyboard for @wyatt sitting on my desk&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 BumpMesh by CNC Kitchen</title>
    <id>https://waylonwalker.com/thought-966/</id>
    <updated>2026-04-05T10:54:20Z</updated>
    <published>2026-04-05T10:54:20Z</published>
    <link href="https://waylonwalker.com/thought-966/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://bumpmesh.com/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://bumpmesh.com/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://bumpmesh.com/assets/preview.jpg&#34; alt=&#34;BumpMesh by CNC Kitchen — Add displacement textures to STL, OBJ, and 3MF models directly in your browser. Preview, mask, bake, and export printable textured meshes locally.&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: BumpMesh by CNC Kitchen — Add displacement textures to STL, OBJ, and 3MF models directly in your browser. Preview, mask, bake, and export printable textured meshes locally.&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;BumpMesh by CNC Kitchen&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Add displacement textures to STL, OBJ, and 3MF models directly in your browser. Preview, mask, bake, and export printable textured meshes locally.&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;BumpMesh · bumpmesh.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Absolutely sick texture app from cnc kitchen.  Like him I’ve spent a bunch of time attempting and failing to learn blender, I’m so glad someone else vibe coded out such a good app that can &lt;code&gt;just&lt;/code&gt; add texture to stls with basic masks and is the very basics of what you would want to add to 3d prints to make them interesting, I’m excited to use this for some real projects.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/d959e3dc-3fde-410b-acaf-8f0574f68a1a.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;d959e3dc-3fde-410b-acaf-8f0574f68a1a.webp&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/file/d959e3dc-3fde-410b-acaf-8f0574f68a1a.webp&#34; alt=&#34;d959e3dc-3fde-410b-acaf-8f0574f68a1a.webp&#34;/ data-glightbox=&#34;description: d959e3dc-3fde-410b-acaf-8f0574f68a1a.webp&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/e10dddf6-0f2e-498f-bef7-81901afced7b.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;e10dddf6-0f2e-498f-bef7-81901afced7b.webp&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/file/e10dddf6-0f2e-498f-bef7-81901afced7b.webp&#34; alt=&#34;e10dddf6-0f2e-498f-bef7-81901afced7b.webp&#34;/ data-glightbox=&#34;description: e10dddf6-0f2e-498f-bef7-81901afced7b.webp&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Wonka Letters</title>
    <id>https://waylonwalker.com/shots/wonka-letters/</id>
    <updated>2026-04-04T10:16:30Z</updated>
    <published>2026-04-04T10:16:30Z</published>
    <link href="https://waylonwalker.com/shots/wonka-letters/" rel="alternate" type="text/html"></link>
    <summary type="text">Wonka letters all cut out ready to get some stiffeners and go off for paint.</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/e7cfd915-1484-4a29-beb1-16063940bfd6.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Wonka Letters&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/file/e7cfd915-1484-4a29-beb1-16063940bfd6.webp&#34; alt=&#34;Wonka Letters&#34;/ data-glightbox=&#34;description: Wonka Letters&#34;&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;Wonka letters all cut out ready to get some stiffeners and go off for paint.&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>What is this job anymore</title>
    <id>https://waylonwalker.com/ping-46/</id>
    <updated>2026-04-03T20:44:55Z</updated>
    <published>2026-04-03T20:44:55Z</published>
    <link href="https://waylonwalker.com/ping-46/" rel="alternate" type="text/html"></link>
    <summary type="text">The job of writing code is dying, models are getting better, the average person will have their average features implemented in average ways with no effort...</summary>
    <content type="html">&lt;p&gt;The job of writing code is dying, models are getting better, the average person&#xA;will have their average features implemented in average ways with no effort by&#xA;agents, the writing is on the wall.  We are still trying to review most of the&#xA;critical code, this is slowing us down, is it really stopping any bugs or&#xA;giving us any more familiarity with the product, marginally.&lt;/p&gt;&#xA;&lt;p&gt;The time is now to grease up your UAT, testing, deployment pipelines. Dont let&#xA;agents delete entire regions.  Review your backup and restore strategy, you do&#xA;have a DR plan right?&lt;/p&gt;&#xA;&lt;p&gt;Things are changing fast, the best of us are still better than the clankers.&#xA;Most of us have more context than the clankers.  Most of us have more intuition&#xA;of what and where to implement fixes.  Context windows and memory will be&#xA;solved problems.  Your DR plan, UAT, testinng and QA environments will not come&#xA;for free, you need to make them, and deeply integrate them into your processes.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Hair Whittling Sharp</title>
    <id>https://waylonwalker.com/shots/hair-whittling-sharp/</id>
    <updated>2026-04-03T20:43:11Z</updated>
    <published>2026-04-03T20:43:11Z</published>
    <link href="https://waylonwalker.com/shots/hair-whittling-sharp/" rel="alternate" type="text/html"></link>
    <summary type="text">Hair whittling sharp, Do I get my redneck nerd card yet?</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/29b8ae31-7c9b-45a7-b950-72bd2f3f6011.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Hair Whittling Sharp&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/file/29b8ae31-7c9b-45a7-b950-72bd2f3f6011.webp&#34; alt=&#34;Hair Whittling Sharp&#34;/ data-glightbox=&#34;description: Hair Whittling Sharp&#34;&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;Hair whittling sharp, Do I get my redneck nerd card yet?&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Bush: Tiny Desk Concert - YouTube</title>
    <id>https://waylonwalker.com/thought-965/</id>
    <updated>2026-04-03T20:23:28Z</updated>
    <published>2026-04-03T20:23:28Z</published>
    <link href="https://waylonwalker.com/thought-965/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/watch?v=lBuHH7WE4yE&amp;list=RDlBuHH7WE4yE&amp;start_radio=1</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;lBuHH7WE4yE&#34; title=&#34;Bush: Tiny Desk Concert&#34; playlabel=&#34;Play: Bush: Tiny Desk Concert&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Bush on tiny desk.  Iconic band on an iconic platform.  Will be re-listening to this several times.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/3b67304c-41cc-4040-b6cd-7e0c16633e3d.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;3b67304c-41cc-4040-b6cd-7e0c16633e3d.webp&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/file/3b67304c-41cc-4040-b6cd-7e0c16633e3d.webp&#34; alt=&#34;3b67304c-41cc-4040-b6cd-7e0c16633e3d.webp&#34;/ data-glightbox=&#34;description: 3b67304c-41cc-4040-b6cd-7e0c16633e3d.webp&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Llama In Pi Thinks Its Claude</title>
    <id>https://waylonwalker.com/shots/llama-in-pi-thinks-its-claude/</id>
    <updated>2026-04-03T08:37:18Z</updated>
    <published>2026-04-03T08:37:18Z</published>
    <link href="https://waylonwalker.com/shots/llama-in-pi-thinks-its-claude/" rel="alternate" type="text/html"></link>
    <summary type="text">I just launched ollama picked pi as it asked what harness I wanted to run, and it responded telling me it was claude.</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/00d19487-c8c2-490c-84cb-c64e33149be2.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;llama in pi thinks its claude&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/file/00d19487-c8c2-490c-84cb-c64e33149be2.webp&#34; alt=&#34;llama in pi thinks its claude&#34;/ data-glightbox=&#34;description: llama in pi thinks its claude&#34;&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;I just launched ollama picked pi as it asked what harness I wanted to run, and it responded telling me it was claude.&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Ping 47</title>
    <id>https://waylonwalker.com/ping-47/</id>
    <updated>2026-04-02T21:33:20Z</updated>
    <published>2026-04-02T21:33:20Z</published>
    <link href="https://waylonwalker.com/ping-47/" rel="alternate" type="text/html"></link>
    <content type="text">&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Ty 0.0.26</title>
    <id>https://waylonwalker.com/shots/ty-0.0.26/</id>
    <updated>2026-04-02T21:18:12Z</updated>
    <published>2026-04-02T21:18:12Z</published>
    <link href="https://waylonwalker.com/shots/ty-0.0.26/" rel="alternate" type="text/html"></link>
    <summary type="text">ty 0.0.26 was released on 3/26/26, nice work planning.</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/26f075a3-4941-4ac8-877e-7dda777579db.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;ty 0.0.26&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/file/26f075a3-4941-4ac8-877e-7dda777579db.webp&#34; alt=&#34;ty 0.0.26&#34;/ data-glightbox=&#34;description: ty 0.0.26&#34;&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;ty 0.0.26 was released on 3/26/26, nice work planning.&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Smassh Monkeytype Clone In The Terminal</title>
    <id>https://waylonwalker.com/shots/smassh-monkeytype-clone-in-the-terminal/</id>
    <updated>2026-04-02T21:17:09Z</updated>
    <published>2026-04-02T21:17:09Z</published>
    <link href="https://waylonwalker.com/shots/smassh-monkeytype-clone-in-the-terminal/" rel="alternate" type="text/html"></link>
    <summary type="text">What a banger of a tui, fantastic job cloning monkeytype. Looks so good. The toast messages are a tell tale built with textual.</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/35102587-dffe-48ec-920a-a037917e7776.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;smassh monkeytype clone in the terminal&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/file/35102587-dffe-48ec-920a-a037917e7776.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/file/35102587-dffe-48ec-920a-a037917e7776.mp4&#34; type=&#34;video/mp4&#34;&gt;smassh monkeytype clone in the terminal&lt;/video&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;What a banger of a tui, fantastic job cloning monkeytype.  Looks so good.  The toast messages are a tell tale built with textual.&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Sparklines On The Feeds Header</title>
    <id>https://waylonwalker.com/shots/sparklines-on-the-feeds-header/</id>
    <updated>2026-04-02T21:15:21Z</updated>
    <published>2026-04-02T21:15:21Z</published>
    <link href="https://waylonwalker.com/shots/sparklines-on-the-feeds-header/" rel="alternate" type="text/html"></link>
    <summary type="text">View of the new markata-go feeds header with the banger of a sparkline.</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/7d35b9ae-3e63-42f1-90c6-4cc0db518212.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;sparklines on the feeds header&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/file/7d35b9ae-3e63-42f1-90c6-4cc0db518212.webp&#34; alt=&#34;sparklines on the feeds header&#34;/ data-glightbox=&#34;description: sparklines on the feeds header&#34;&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;View of the new markata-go feeds header with the banger of a sparkline.&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Getting Excited For This New Feeds Page</title>
    <id>https://waylonwalker.com/shots/getting-excited-for-this-new-feeds-page/</id>
    <updated>2026-04-02T21:14:01Z</updated>
    <published>2026-04-02T21:14:01Z</published>
    <link href="https://waylonwalker.com/shots/getting-excited-for-this-new-feeds-page/" rel="alternate" type="text/html"></link>
    <summary type="text">This sparklines on this new feeds page are chefs kiss.</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/b1579888-4b8d-4adc-9404-a0dfd97a7acf.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Getting excited for this new feeds page&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/file/b1579888-4b8d-4adc-9404-a0dfd97a7acf.webp&#34; alt=&#34;Getting excited for this new feeds page&#34;/ data-glightbox=&#34;description: Getting excited for this new feeds page&#34;&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;This sparklines on this new feeds page are chefs kiss.&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>The year of the supply chain attacks</title>
    <id>https://waylonwalker.com/ping-45/</id>
    <updated>2026-04-02T20:26:33Z</updated>
    <published>2026-04-02T20:26:33Z</published>
    <link href="https://waylonwalker.com/ping-45/" rel="alternate" type="text/html"></link>
    <summary type="text">I think I&#39;m starting to understand my role as a platform developer in 2026.</summary>
    <content type="html">&lt;p&gt;I think I’m starting to understand my role as a platform developer in 2026.&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;least priveleged access&lt;/li&gt;&#xA;&lt;li&gt;default deny + explicit allow&lt;/li&gt;&#xA;&lt;li&gt;understand your blast radius&lt;/li&gt;&#xA;&lt;li&gt;&lt;strong&gt;GREASED&lt;/strong&gt; creds rotate process&lt;/li&gt;&#xA;&lt;li&gt;PIN EVERYTHING&lt;/li&gt;&#xA;&lt;li&gt;keep packages up to date&lt;/li&gt;&#xA;&lt;li&gt;but not too up to date, use dependency cooldowns&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 GitHub - kraanzu/smassh at terminaltrove · GitHub</title>
    <id>https://waylonwalker.com/thought-964/</id>
    <updated>2026-04-02T09:07:37Z</updated>
    <published>2026-04-02T09:07:37Z</published>
    <link href="https://waylonwalker.com/thought-964/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://github.com/kraanzu/smassh?ref=terminaltrove</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://github.com/kraanzu/smassh?ref=terminaltrove&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://repository-images.githubusercontent.com/454288517/ffbff45f-2f28-4d8b-92d6-fbb22d457a62&#34; alt=&#34;GitHub - kraanzu/smassh at terminaltrove — Smassh your Keyboard, TUI Edition. Contribute to kraanzu/smassh development by creating an account on GitHub.&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: GitHub - kraanzu/smassh at terminaltrove — Smassh your Keyboard, TUI Edition. Contribute to kraanzu/smassh development by creating an account on GitHub.&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;GitHub - kraanzu/smassh at terminaltrove&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Smassh your Keyboard, TUI Edition. Contribute to kraanzu/smassh development by creating an account on GitHub.&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;GitHub · github.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;smassh is the coolest monkeytype tui clone, its impressively accurate.  Easy to install and run, all the same themes appear to be there and everything.  maybe a good way to get a few reps in while agents are running these days.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/35102587-dffe-48ec-920a-a037917e7776.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;35102587-dffe-48ec-920a-a037917e7776.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/file/35102587-dffe-48ec-920a-a037917e7776.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/file/35102587-dffe-48ec-920a-a037917e7776.mp4&#34; type=&#34;video/mp4&#34;&gt;35102587-dffe-48ec-920a-a037917e7776.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;I need to go back and brush up on my skills I’m down a good 20wpm from what I should be doing.&lt;/p&gt;&lt;/figcaption&gt;&#xA;&lt;/figure&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>The final nail for Windows?</title>
    <id>https://waylonwalker.com/ping-44/</id>
    <updated>2026-04-01T20:23:53Z</updated>
    <published>2026-04-01T20:23:53Z</published>
    <link href="https://waylonwalker.com/ping-44/" rel="alternate" type="text/html"></link>
    <summary type="text">Easy anticheat for linux is out.</summary>
    <content type="html">&lt;p&gt;Easy anticheat for linux is out.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition tip&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Tip&lt;/p&gt;&#xA;&lt;p&gt;look at the date&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;If this were real what would you play first?  For me it’s &lt;code&gt;skate .&lt;/code&gt; is really&#xA;the only thing I care about and I’m fine without it.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 What Happens When AI Stops Being Artificially Cheap | Daniel M...</title>
    <id>https://waylonwalker.com/thought-963/</id>
    <updated>2026-04-01T12:04:12Z</updated>
    <published>2026-04-01T12:04:12Z</published>
    <link href="https://waylonwalker.com/thought-963/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://danielmiessler.com/blog/ai-stops-being-artificially-cheap</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://danielmiessler.com/blog/ai-stops-being-artificially-cheap&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://danielmiessler.com/images/ai-stops-being-artificially-cheap-thumb.png?t=1778345718965&#34; alt=&#34;What Happens When AI Stops Being Artificially Cheap — The subsidy era is ending. Here&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: What Happens When AI Stops Being Artificially Cheap — The subsidy era is ending. Here&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;What Happens When AI Stops Being Artificially Cheap&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;The subsidy era is ending. Here&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;danielmiessler.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;I’ve been thinking about this for awhile and Daniel makes some great arguments here.  Interestingly keeping inference cheap removes the incentives to make our tools better, help us choose the right model, lean on local models, open weight models.  The frontier models are so affordable through subsidized subscription models why would you deal with anything less intelligent at this point.  The tooling we use is not optimized for it, and why should it be.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Tuesday, March 31, 2026 | Baty.net</title>
    <id>https://waylonwalker.com/thought-962/</id>
    <updated>2026-03-31T21:09:19Z</updated>
    <published>2026-03-31T21:09:19Z</published>
    <link href="https://waylonwalker.com/thought-962/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://baty.net/journal/31mar26/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://baty.net/journal/31mar26/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;External Link&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;baty.net&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;emacs config so bad he launch obsidian, YIKES!  grantid I’m using obsidian currently on my phone, not for this post, but for journal entries while I’m away from my desk.  Use this as a reminder that you can swim through murky waters with your dotfiles for awhile, but occasionally its good to do a clean up, pin it, put em in a docker image, have a good fallback to go to if shit really hits the fan.  Iv’e been using &lt;a href=&#34;https://github.com/waylonwalker/nvim-manager&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;https://github.com/waylonwalker/nvim-manager&lt;/a&gt; as part of my strategy for awhile now.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Release 0.9.17 · astral-sh/uv · GitHub</title>
    <id>https://waylonwalker.com/thought-961/</id>
    <updated>2026-03-31T21:02:17Z</updated>
    <published>2026-03-31T21:02:17Z</published>
    <link href="https://waylonwalker.com/thought-961/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://github.com/astral-sh/uv/releases/tag/0.9.17</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;/static/https://github.com/astral-sh/uv/releases/tag/0.9.17&#34; class=&#34;glightbox-link&#34; aria-label=&#34;https://github.com/astral-sh/uv/releases/tag/0.9.17&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;/static/https://github.com/astral-sh/uv/releases/tag/0.9.17&#34; alt=&#34;https://github.com/astral-sh/uv/releases/tag/0.9.17&#34;/ data-glightbox=&#34;description: https://github.com/astral-sh/uv/releases/tag/0.9.17&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;p&gt;uv adds dependency cooldowns via &lt;a href=&#34;https://github.com/astral-sh/uv/pull/16814&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;#16814&lt;/a&gt;. Well needed feature in todays world, far from a guarantee, but its something.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Package Managers Need to Cool Down</title>
    <id>https://waylonwalker.com/thought-960/</id>
    <updated>2026-03-31T20:40:50Z</updated>
    <published>2026-03-31T20:40:50Z</published>
    <link href="https://waylonwalker.com/thought-960/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://simonwillison.net/2026/Mar/24/package-managers-need-to-cool-down/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://simonwillison.net/2026/Mar/24/package-managers-need-to-cool-down/&#34; class=&#34;embed-card-link  has-avatar has-avatar-before&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/simonwillison.net.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/simonwillison.net.ico&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Package Managers Need to Cool Down&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Today&amp;#39;s LiteLLM supply chain attack inspired me to revisit the idea of dependency cooldowns, the practice of only installing updated dependencies once they&amp;#39;ve been out in the wild for a …&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;Simon Willison’s Weblog · simonwillison.net&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;2026, finding the balance between fixed bugs and zero days.  There is very unlikely ever a reason you &lt;strong&gt;need&lt;/strong&gt; to be running bleeding edge packages in prod most package managers now support cool downs.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 no one read the source</title>
    <id>https://waylonwalker.com/thought-959/</id>
    <updated>2026-03-31T18:47:59Z</updated>
    <published>2026-03-31T18:47:59Z</published>
    <link href="https://waylonwalker.com/thought-959/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://x.com/ThePrimeagen/status/2038978962089492631</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://x.com/ThePrimeagen/status/2038978962089492631&#34; class=&#34;embed-card-link  has-avatar has-avatar-before&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/x.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/x.com.ico&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;External Link&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;X (formerly Twitter) · x.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Everyone look away, nothing to see here.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/090f03b2-e6f5-4ede-a814-bfbb4e237b54.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;090f03b2-e6f5-4ede-a814-bfbb4e237b54.webp&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/file/090f03b2-e6f5-4ede-a814-bfbb4e237b54.webp&#34; alt=&#34;090f03b2-e6f5-4ede-a814-bfbb4e237b54.webp&#34;/ data-glightbox=&#34;description: 090f03b2-e6f5-4ede-a814-bfbb4e237b54.webp&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 safe words</title>
    <id>https://waylonwalker.com/thought-958/</id>
    <updated>2026-03-31T18:46:01Z</updated>
    <published>2026-03-31T18:46:01Z</published>
    <link href="https://waylonwalker.com/thought-958/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://x.com/metedata/status/2038924041453441422</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://x.com/metedata/status/2038924041453441422&#34; class=&#34;embed-card-link  has-avatar has-avatar-before&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/x.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/x.com.ico&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;External Link&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;X (formerly Twitter) · x.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Anthropic safewords are the talk of the town today.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/c097c6dc-4b10-4fab-a9f9-1d4181422285.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;c097c6dc-4b10-4fab-a9f9-1d4181422285.webp&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/file/c097c6dc-4b10-4fab-a9f9-1d4181422285.webp&#34; alt=&#34;c097c6dc-4b10-4fab-a9f9-1d4181422285.webp&#34;/ data-glightbox=&#34;description: c097c6dc-4b10-4fab-a9f9-1d4181422285.webp&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 the cheng lou pretext tweet</title>
    <id>https://waylonwalker.com/thought-957/</id>
    <updated>2026-03-31T18:38:39Z</updated>
    <published>2026-03-31T18:38:39Z</published>
    <link href="https://waylonwalker.com/thought-957/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://x.com/_chenglou/status/2037713766205608234</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://x.com/_chenglou/status/2037713766205608234&#34; class=&#34;embed-card-link  has-avatar has-avatar-before&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/x.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/x.com.ico&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;External Link&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;X (formerly Twitter) · x.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;webdev twitter is blowing up with implementations of pretext text calculations.  The examples are absolutely fun and ridiculous.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/350a368f-0e6b-4375-98d6-6303961c0d6c.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;350a368f-0e6b-4375-98d6-6303961c0d6c.webp&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/file/350a368f-0e6b-4375-98d6-6303961c0d6c.webp&#34; alt=&#34;350a368f-0e6b-4375-98d6-6303961c0d6c.webp&#34;/ data-glightbox=&#34;description: 350a368f-0e6b-4375-98d6-6303961c0d6c.webp&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Ping 43</title>
    <id>https://waylonwalker.com/ping-43/</id>
    <updated>2026-03-31T18:33:05Z</updated>
    <published>2026-03-31T18:33:05Z</published>
    <link href="https://waylonwalker.com/ping-43/" rel="alternate" type="text/html"></link>
    <summary type="text">Okay so I logged into twitter today, and we are back.... probably not for long, but we are for now. Claude Code source leaked, the tweets are great....</summary>
    <content type="html">&lt;p&gt;Okay so I logged into twitter today, and we are back…. probably not for long,&#xA;but we are for now.  Claude Code source leaked, the tweets are great. [[&#xA;thoughts-956 ]], [[ thoughts-958 ]], [[ thoughts-959 ]], Some typescript css&#xA;text layout with bouncing balls, bubbles, strings, and webcam video to text is&#xA;blowing up [[ thoughts-957 ]].  This is the tech twitter I remember no sad news&#xA;how the world is corrupt by the other side.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 you can replace the spinning verbs in Claude Code</title>
    <id>https://waylonwalker.com/thought-956/</id>
    <updated>2026-03-31T18:31:56Z</updated>
    <published>2026-03-31T18:31:56Z</published>
    <link href="https://waylonwalker.com/thought-956/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://x.com/joshmedeski/status/2039010741039120417</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://x.com/joshmedeski/status/2039010741039120417&#34; class=&#34;embed-card-link  has-avatar has-avatar-before&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/x.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/x.com.ico&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;External Link&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;X (formerly Twitter) · x.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;The claude code source code leaked today and the tweets are great, maybe twitter is back.&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;Did you know you can replace the spinning verbs in Claude Code. I’m having fun with it.&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/8cf5cf65-40e1-4f40-8d09-b596a97dd51d.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;8cf5cf65-40e1-4f40-8d09-b596a97dd51d.webp&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/file/8cf5cf65-40e1-4f40-8d09-b596a97dd51d.webp&#34; alt=&#34;8cf5cf65-40e1-4f40-8d09-b596a97dd51d.webp&#34;/ data-glightbox=&#34;description: 8cf5cf65-40e1-4f40-8d09-b596a97dd51d.webp&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 @nicknisi.com on Bluesky</title>
    <id>https://waylonwalker.com/thought-955/</id>
    <updated>2026-03-31T10:19:49Z</updated>
    <published>2026-03-31T10:19:49Z</published>
    <link href="https://waylonwalker.com/thought-955/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://bsky.app/profile/nicknisi.com/post/3mhgcbpm4ds2p</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://bsky.app/profile/nicknisi.com/post/3mhgcbpm4ds2p&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://cdn.bsky.app/img/avatar_thumbnail/plain/did:plc:qcyz4wcmgnz4mzxevrsrf6j6/bafkreigqa53eff2zrpj3ycievkcogzoj6yhyvsngidu6zowjnjofvzng4i&#34; alt=&#34;Nick Nisi (@nicknisi.com) — Y&amp;#39;all, I think I&amp;#39;m a convert to pi&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: Nick Nisi (@nicknisi.com) — Y&amp;#39;all, I think I&amp;#39;m a convert to pi&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Nick Nisi (@nicknisi.com)&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Y&amp;#39;all, I think I&amp;#39;m a convert to pi&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;Bluesky Social · bsky.app&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;I’m about to be pi pilled.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>A person holds a clear, compartmentalized tray containing multiple small sections filled with light-colored, granular material</title>
    <id>https://waylonwalker.com/shots/a-person-holds-a-clear-compartmentalized-tray-containing-multiple-small-sections-filled-with-light-colored-granular-material/</id>
    <updated>2026-03-30T16:52:38Z</updated>
    <published>2026-03-30T16:52:38Z</published>
    <link href="https://waylonwalker.com/shots/a-person-holds-a-clear-compartmentalized-tray-containing-multiple-small-sections-filled-with-light-colored-granular-material/" rel="alternate" type="text/html"></link>
    <summary type="text">A person holds a clear, compartmentalized tray containing multiple small sections filled with light-colored, granular material. The tray is set against the backdrop of an outdoor wooden deck railing.</summary>
    <content type="html">&lt;p&gt;This is a reminder to clean your AC air filter, we run a window unit to cut&#xA;cost of keeping the whole house cold.  We thought it had a dusty smell so I&#xA;took the whole thing out to clean up to find out it was really clean… except&#xA;the filter that I could have cleaned inside.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;http://dropper.waylonwalker.com/file/754e203d-3795-4cdf-9c30-fee20eb0e653.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;A person holds a clear, compartmentalized tray containing multiple small sections filled with light-colored, granular material. The tray is set against the backdrop of an outdoor wooden deck railing.&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;http://dropper.waylonwalker.com/file/754e203d-3795-4cdf-9c30-fee20eb0e653.webp&#34; alt=&#34;A person holds a clear, compartmentalized tray containing multiple small sections filled with light-colored, granular material. The tray is set against the backdrop of an outdoor wooden deck railing.&#34;/ data-glightbox=&#34;description: A person holds a clear, compartmentalized tray containing multiple small sections filled with light-colored, granular material. The tray is set against the backdrop of an outdoor wooden deck railing.&#34;&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;A person holds a clear, compartmentalized tray containing multiple small&#xA;sections filled with light-colored, granular material. The tray is set&#xA;against the backdrop of an outdoor wooden deck railing.&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Wyatt&#39;s First Printed Cosplay Scales</title>
    <id>https://waylonwalker.com/shots/wyatts-first-printed-cosplay-scales/</id>
    <updated>2026-03-30T10:22:31Z</updated>
    <published>2026-03-30T10:22:31Z</published>
    <link href="https://waylonwalker.com/shots/wyatts-first-printed-cosplay-scales/" rel="alternate" type="text/html"></link>
    <summary type="text">Wyatt printed these sick scales today and they came out so good on first try, luckily Rhiannon already had the fabric for him and he was able to follow his passion on this project while the spark was lit.</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/aaaf7c08-b59b-48ff-bc16-287f40a207da.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Wyatt’s first printed cosplay scales&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/file/aaaf7c08-b59b-48ff-bc16-287f40a207da.webp&#34; alt=&#34;Wyatt’s first printed cosplay scales&#34;/ data-glightbox=&#34;description: Wyatt’s first printed cosplay scales&#34;&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;Wyatt printed these sick scales today and they came out so good on first try, luckily Rhiannon already had the fabric for him and he was able to follow his passion on this project while the spark was lit.&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Wreath Of Purity</title>
    <id>https://waylonwalker.com/shots/wreath-of-purity/</id>
    <updated>2026-03-29T20:30:23Z</updated>
    <published>2026-03-29T20:30:23Z</published>
    <link href="https://waylonwalker.com/shots/wreath-of-purity/" rel="alternate" type="text/html"></link>
    <summary type="text">Wreath Of Purity Acquired</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/6463fb4a-33ab-43da-8e7f-86b80ac9292f.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Wreath Of Purity&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/file/6463fb4a-33ab-43da-8e7f-86b80ac9292f.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/file/6463fb4a-33ab-43da-8e7f-86b80ac9292f.mp4&#34; type=&#34;video/mp4&#34;&gt;Wreath Of Purity&lt;/video&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;Die Muck Maggots&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Longclaw Acuiquired</title>
    <id>https://waylonwalker.com/shots/longclaw/</id>
    <updated>2026-03-29T20:29:49Z</updated>
    <published>2026-03-29T20:29:49Z</published>
    <link href="https://waylonwalker.com/shots/longclaw/" rel="alternate" type="text/html"></link>
    <summary type="text">By completing Broodfeast Wish you acquire the Longclaw giving you a longer range attack.</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/532ae693-3c1b-4ae1-aae8-cf86edb04b4a.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Longclaw&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/file/532ae693-3c1b-4ae1-aae8-cf86edb04b4a.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/file/532ae693-3c1b-4ae1-aae8-cf86edb04b4a.mp4&#34; type=&#34;video/mp4&#34;&gt;Longclaw&lt;/video&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;I went all the way through &lt;a href=&#34;/shots/groal-the-great-bench/&#34; class=&#34;wikilink&#34; data-title=&#34;Groal The Great Bench&#34; data-description=&#34;Goal The Great Bench&#34; data-date=&#34;2026-03-29&#34; data-preview=&#34;Goal The Great Bench&#34; data-preview-image=&#34;https://dropper.waylonwalker.com/file/08220e04-8639-456c-b348-681dae69eeff.mp4&#34;&gt;Groal The Great Bench&lt;/a&gt; to find Longclaw only to relize thats not where you get it.&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Seekers Soul</title>
    <id>https://waylonwalker.com/shots/seekers-soul/</id>
    <updated>2026-03-29T20:29:12Z</updated>
    <published>2026-03-29T20:29:12Z</published>
    <link href="https://waylonwalker.com/shots/seekers-soul/" rel="alternate" type="text/html"></link>
    <summary type="text">Seekers Soul</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/2be10b76-f5df-4604-8024-c5c0aeed92d9.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Seekers Soul&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/file/2be10b76-f5df-4604-8024-c5c0aeed92d9.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/file/2be10b76-f5df-4604-8024-c5c0aeed92d9.mp4&#34; type=&#34;video/mp4&#34;&gt;Seekers Soul&lt;/video&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;Seekers Soul&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Groal The Great</title>
    <id>https://waylonwalker.com/shots/groal-the-great/</id>
    <updated>2026-03-29T20:16:57Z</updated>
    <published>2026-03-29T20:16:57Z</published>
    <link href="https://waylonwalker.com/shots/groal-the-great/" rel="alternate" type="text/html"></link>
    <summary type="text">Goal The Great</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/cdb840a6-a807-427a-a558-744d92812862.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Goal The Great&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/file/cdb840a6-a807-427a-a558-744d92812862.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/file/cdb840a6-a807-427a-a558-744d92812862.mp4&#34; type=&#34;video/mp4&#34;&gt;Goal The Great&lt;/video&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;This dude was a bear to handle, long run up through the muck maggots, you&#xA;only meet him after a full arena battle, his balls bounce erratically do 2&#xA;damage each that quickly cause you to stack up 2x2 hits.  I finally took the&#xA;cowards way out and hid in the water to defeat him.&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Updating The Arch Iso</title>
    <id>https://waylonwalker.com/shots/updating-the-arch-iso/</id>
    <updated>2026-03-28T18:24:50Z</updated>
    <published>2026-03-28T18:24:50Z</published>
    <link href="https://waylonwalker.com/shots/updating-the-arch-iso/" rel="alternate" type="text/html"></link>
    <summary type="text">Wyatt is working on a new arch install and it blew up, time to update the live image.</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/31a456ec-37e2-4feb-a250-96e23d670aee.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Updating the arch iso&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/file/31a456ec-37e2-4feb-a250-96e23d670aee.webp&#34; alt=&#34;Updating the arch iso&#34;/ data-glightbox=&#34;description: Updating the arch iso&#34;&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;Wyatt is working on a new arch install and it blew up, time to update the live image.&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Social Media is dead</title>
    <id>https://waylonwalker.com/ping-42/</id>
    <updated>2026-03-28T12:17:44Z</updated>
    <published>2026-03-28T12:17:44Z</published>
    <link href="https://waylonwalker.com/ping-42/" rel="alternate" type="text/html"></link>
    <summary type="text">Social Media is dead, interest media killed it long ago. I no longer feel like I&#39;m connecting to people, creating community, having fun, learning. I feel...</summary>
    <content type="html">&lt;p&gt;Social Media is dead, interest media killed it long ago.  I no longer feel like&#xA;I’m connecting to people, creating community, having fun, learning.  I feel&#xA;like I’m being shoveled slop from the slop machine, I’m sure mostly create by&#xA;well intentioned people just trying to make it in the world, trying to make&#xA;their mark, trying to make something of themselves.  The algos long lost the&#xA;idea of subs and likes, and transitioned to how long you will pause on a topic.&#xA;What used to be a series of recognizable faces, names, avatars, each with their&#xA;own personality that I could come to learn and know who was just trollin, who&#xA;was serious, is now mostly unrecognizable.  Platforms have changed and&#xA;fractured communities people went separate ways, not all the same ways.  No one&#xA;community is like it used to be, and its hard to find.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>/carry/</title>
    <id>https://waylonwalker.com/carry/</id>
    <updated>2026-03-27T16:35:40Z</updated>
    <published>2026-03-27T16:35:40Z</published>
    <link href="https://waylonwalker.com/carry/" rel="alternate" type="text/html"></link>
    <summary type="text">I try to keep a pretty light every day carry, but it never works out, keyfobs and headphone cases end up causing more bulk than I&#39;d like, but My EDC is no...</summary>
    <content type="html">&lt;h2 id=&#34;edc&#34;&gt;EDC &lt;a href=&#34;#edc&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;I try to keep a pretty light every day carry, but it never works out, keyfobs&#xA;and headphone cases end up causing more bulk than I’d like, but My EDC is no&#xA;where near the bulk I had as a kid with my cargo pants decked out with&#xA;everything I could possibly need.&lt;/p&gt;&#xA;&lt;p&gt;I hold no attachment to anything in my EDC.  Nothing on my person has&#xA;sentimental value.  Anything I carry can be lost, stolen, or destroyed at any&#xA;point in time.  I pick things of sufficient usable, utilitarian, quality&#xA;sufficient to work.  No extra fluff.&lt;/p&gt;&#xA;&lt;hr/&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;Google Pixel 6&lt;/li&gt;&#xA;&lt;li&gt;Ridge Wallet&lt;/li&gt;&#xA;&lt;li&gt;Olight Perun - Since April 2022&lt;/li&gt;&#xA;&lt;li&gt;Civivi Qubit - Since March 2024 after my last one was donated to the Indianapolis Stadium&lt;/li&gt;&#xA;&lt;li&gt;OpenFit Shokz&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;hr/&gt;&#xA;&lt;h2 id=&#34;rules&#34;&gt;Rules &lt;a href=&#34;#rules&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;lightweight&lt;/li&gt;&#xA;&lt;li&gt;replacable&lt;/li&gt;&#xA;&lt;li&gt;no emotional attachments&lt;/li&gt;&#xA;&lt;li&gt;utilitarian&lt;/li&gt;&#xA;&lt;li&gt;everything serves a purpose&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;h2 id=&#34;my-kit&#34;&gt;My kit &lt;a href=&#34;#my-kit&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/606e48d7-bf14-42b9-a96e-87b676556ff8.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;My EDC layout&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/file/606e48d7-bf14-42b9-a96e-87b676556ff8.webp&#34; alt=&#34;My EDC layout&#34;/ data-glightbox=&#34;description: My EDC layout&#34;&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;Photo taken March 2023&lt;/p&gt;&lt;/figcaption&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;phone&#34;&gt;Phone &lt;a href=&#34;#phone&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;&lt;em&gt;Google Pixel 6&lt;/em&gt;&lt;/p&gt;&#xA;&lt;p&gt;I will not get finance a new phone for the foreseeable future again.  The last&#xA;time I feel like I got a phone that felt like an upgrade was 2018 when I went&#xA;to the Pixel 3.  The pixel 6 and pixel 8 my wife has feel no different&#xA;whatsoever to me.  It’s become more of a tool that does its job, there’s no&#xA;major upgrades really driving me to create more ewaste with new devices.&lt;/p&gt;&#xA;&lt;h2 id=&#34;wallet&#34;&gt;Wallet &lt;a href=&#34;#wallet&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;&lt;em&gt;Ridge Wallet&lt;/em&gt;&lt;/p&gt;&#xA;&lt;p&gt;A necessary evil that I still need.  I keep as few of cards as necessary in it.&#xA;This would be the worst thing in my kit to loose.  Only because the time it&#xA;would take to replace all of them.  This one was a gift to replace my last&#xA;leather wallet, and I see no reason for this one to ever need replaced.  It’s&#xA;much lighter and smaller, would not change that aspect.&lt;/p&gt;&#xA;&lt;h2 id=&#34;flashlight&#34;&gt;Flashlight &lt;a href=&#34;#flashlight&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;&lt;em&gt;Olight Perun&lt;/em&gt;&lt;/p&gt;&#xA;&lt;p&gt;When I became a homeowner I added a dedicated flashlight to my EDC.  Its light&#xA;and out of the way.  It’s the only thing I’ve ever found useful to fit in the&#xA;coin pocket of jeans, so I don’t even notice it.  Compared to using a phone,&#xA;its more powerful, easier to position on me with the clip on my shirt/pants, or&#xA;magnetically to a metal surface for inspections/house work.&lt;/p&gt;&#xA;&lt;h2 id=&#34;knife&#34;&gt;Knife &lt;a href=&#34;#knife&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;&lt;em&gt;Civivi Qubit&lt;/em&gt;&lt;/p&gt;&#xA;&lt;p&gt;I’ve carried a knife since as long as I can remember, feels like 10 but&#xA;probably more like 14 years old.  Never anything fancy, a few knock off&#xA;leathermans, a few Buck, Case, KaBar that I found on a bridge, and now 3&#xA;Civivis.  I use them till they break or more commonly they get lent and not&#xA;returned, or lost.  This is the most utilitarian thing I keep, almost always&#xA;kept razor sharp, used, abused, and put away dirty.  Never used for prying, but&#xA;used to cut anything it will cut no matter how &lt;em&gt;hard&lt;/em&gt; it is on it.  Its not to&#xA;look pretty, show off, its purely a tool that I hold no attachment to.&lt;/p&gt;&#xA;&lt;h2 id=&#34;headphones&#34;&gt;Headphones &lt;a href=&#34;#headphones&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;&lt;em&gt;OpenFit Shokz&lt;/em&gt;&lt;/p&gt;&#xA;&lt;p&gt;Not my first choice in headphones, but they work.  Headphones are probably the&#xA;item of biggest churn and ewaste for me.  Eventually I might pony up for&#xA;something that is more durable and repairable, but headphones just don’t last&#xA;forever before they stop working for me.  This latest pair was a pair my wife&#xA;chose to try and did not like.  They sat in a drawer for a year or so until I&#xA;started carrying them.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Where Is The Tech Industry Going</title>
    <id>https://waylonwalker.com/ping-37/</id>
    <updated>2026-03-27T14:11:49Z</updated>
    <published>2026-03-27T14:11:49Z</published>
    <link href="https://waylonwalker.com/ping-37/" rel="alternate" type="text/html"></link>
    <summary type="text">Agents suck</summary>
    <content type="html">&lt;p&gt;Agents suck&lt;/p&gt;&#xA;&lt;p&gt;Get left behind if you don’t use them&lt;/p&gt;&#xA;&lt;p&gt;Burn out if you use them too much&lt;/p&gt;&#xA;&lt;p&gt;The software world has been flipped upside down seemingly overnight.  Slow at&#xA;first, then all at once.  It started with auto complete, to chat, to, ide&#xA;integrations, to agents that would f&amp;amp;!^ over your repo more than it would help.&#xA;Up till this point we are just  little bit better and more specific than copy&#xA;paste from Stack Overflow. Then in Nov 2025 models learned how to effectively&#xA;use tools and do what you ask of them, sometimes more, sometimes less, but&#xA;generally for the basic shit most of us make its a net positive with each&#xA;iteration.&lt;/p&gt;&#xA;&lt;p&gt;Our techniques for managing work need to change.&lt;/p&gt;&#xA;&lt;p&gt;Our expectations need to change.&lt;/p&gt;&#xA;&lt;p&gt;Burnout for a lot of folks is coming.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Is Compaction The Issue</title>
    <id>https://waylonwalker.com/is-compaction-the-issue/</id>
    <updated>2026-03-26T09:37:47Z</updated>
    <published>2026-03-26T09:37:47Z</published>
    <link href="https://waylonwalker.com/is-compaction-the-issue/" rel="alternate" type="text/html"></link>
    <summary type="text">I saw today in work chat something along the lines of &#34;we need bigger context windows&#34; &#34;compaction times are holding us back&#34;. Maybe I&#39;m just blessed with...</summary>
    <content type="html">&lt;p&gt;I saw today in work chat something along the lines of “we need bigger context&#xA;windows” “compaction times are holding us back”.  Maybe I’m just blessed with&#xA;the lack of lord jira, maybe juggle too many projects at once and they are all&#xA;pretty much done when I get back.  Maybe I do more long running specs and spend&#xA;time making good plans that it does not matter.&lt;/p&gt;&#xA;&lt;p&gt;Anyways the point I’m getting to is that if you think that compaction is your&#xA;main issue slowing you down, and 10x this if you are a manager thinking this is&#xA;what is slowing down your team you &lt;strong&gt;need&lt;/strong&gt; to look at your workflow.  Not&#xA;because it sucks.  Not only because it could be better.  Because you are&#xA;signing yourself and your team up for burnout if you are sitting there watching&#xA;these things run like waiting for paint to dry and firing more prompts at them&#xA;as soon as they are done.  It feels easy.  It feels like you are going fast.&#xA;Its eating more brainpower than you think, and its not getting you to your&#xA;destination any faster.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 To Live In A World Without AI</title>
    <id>https://waylonwalker.com/thought-954/</id>
    <updated>2026-03-26T08:29:37Z</updated>
    <published>2026-03-26T08:29:37Z</published>
    <link href="https://waylonwalker.com/thought-954/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://pype.dev/to-live-in-a-world-without-ai/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://pype.dev/to-live-in-a-world-without-ai/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://cdn.statically.io/gh/pypeaday/pype.dev/main/pages/media/og-02.png&#34; alt=&#34;To Live In A World Without AI | Nic Payne — I&amp;#39;m finding lately that I wish we could go back to pre-ChatGPT... A world&#xA;without a code-gen easy button, where &amp;#34;easy&amp;#34; was LSP autocomplete, wher&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: To Live In A World Without AI | Nic Payne — I&amp;#39;m finding lately that I wish we could go back to pre-ChatGPT... A world&#xA;without a code-gen easy button, where &amp;#34;easy&amp;#34; was LSP autocomplete, wher&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;To Live In A World Without AI | Nic Payne&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;I&amp;#39;m finding lately that I wish we could go back to pre-ChatGPT... A world&#xA;without a code-gen easy button, where &amp;#34;easy&amp;#34; was LSP autocomplete, wher&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;pype.dev&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;We f&amp;amp;&lt;em&gt;#ing said @pype.dev, well f&amp;amp;&lt;/em&gt;#ing said.  I think a lot of us are feeling this, we’ve pitched our brain into a bucket and we are no longer stretching it in the same way.  We still work in similar ways of old, with new ways of turning off and saying yes a bunch of times.  the best thing I can hope for is that as things get better we have fewer yes loops, and more architectural design debates and deep thoughts.  But I fear deep thoughts are gone to the way of “research the leading 10 frameworks and pick the best one for this project.” and letting the clankers do the deep thinking.  Its signing us up for a weird distopia.&lt;/p&gt;&#xA;&lt;p&gt;I think a lot of us wish we could undo what has happened and go back to actually understanding what we are doing, but the world has changed, and if you are building average shit, like the average person, using models trained on average people doing average shit you cant keep up anymore.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 pype.dev - https://github.com/steveyegge/beads</title>
    <id>https://waylonwalker.com/thought-953/</id>
    <updated>2026-03-26T08:24:05Z</updated>
    <published>2026-03-26T08:24:05Z</published>
    <link href="https://waylonwalker.com/thought-953/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://pype.dev/my-thoughts-on-beads/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://pype.dev/my-thoughts-on-beads/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://cdn.statically.io/gh/pypeaday/images.pype.dev/main/blog-media/20260303115635_629b64a7.png&#34; alt=&#34;My Thoughts on Beads | Nic Payne — [Steve Yegge](https://en.wikipedia.org/wiki/Steve_Yegge) is a pretty well-known individual in the tech field, having been&#xA;around for a long time at some of the&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: My Thoughts on Beads | Nic Payne — [Steve Yegge](https://en.wikipedia.org/wiki/Steve_Yegge) is a pretty well-known individual in the tech field, having been&#xA;around for a long time at some of the&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;My Thoughts on Beads | Nic Payne&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;[Steve Yegge](https://en.wikipedia.org/wiki/Steve_Yegge) is a pretty well-known individual in the tech field, having been&#xA;around for a long time at some of the &lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;pype.dev&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;I’m in step with @pype.dev here, I really want beads to work for me, but my systems for infra/platform work are all over the place, not one repo.  I’m considering trying the &lt;code&gt;BEADS_DIR&lt;/code&gt; env var but idk if it fits my workflow.  For now, similar to @pype.dev, I am rocking my own home vibed solution that I’ve intentionally put little effort in and its working great and I expect it to be broken and not working with the latest harnesses and models within a few months anyways, cause there is no predicting this train.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 paynepride dot com outage on vacation</title>
    <id>https://waylonwalker.com/thought-952/</id>
    <updated>2026-03-26T08:20:22Z</updated>
    <published>2026-03-26T08:20:22Z</published>
    <link href="https://waylonwalker.com/thought-952/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://pype.dev/paynepride-dot-com-outage-on-vacation/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://pype.dev/paynepride-dot-com-outage-on-vacation/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://cdn.statically.io/gh/pypeaday/pype.dev/main/pages/media/og-02.png&#34; alt=&#34;paynepride dot com outage on vacation | Nic Payne — The day after I leave for vacation I start getting SSL errors on every homelab&#xA;service I host for myself and others. The culprit was my Cloudflare API token&#xA;exp&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: paynepride dot com outage on vacation | Nic Payne — The day after I leave for vacation I start getting SSL errors on every homelab&#xA;service I host for myself and others. The culprit was my Cloudflare API token&#xA;exp&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;paynepride dot com outage on vacation | Nic Payne&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;The day after I leave for vacation I start getting SSL errors on every homelab&#xA;service I host for myself and others. The culprit was my Cloudflare API token&#xA;exp&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;pype.dev&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;oof, outage on the &lt;a href=&#34;/homelab/&#34; class=&#34;glossary-term&#34; title=&#34;A place to self host applications. For me this is primarily self built web applications, and applications for sharing files with my family. Techno Tim has a...&#34;&gt;homelab&lt;/a&gt; during vacation, brutal.  I can think of a couple of similar solutions to what @pype.dev has done to tailscale in, but I’m not sure that I could do this remotely.  On one hand I’m so glad that cloudflared just takes care of certs on the other hand this really brings a gap in my understanding of what the heck I would do if it were broken.&lt;/p&gt;&#xA;&lt;p&gt;An untested DR plan is not a DR plan.&lt;/p&gt;&#xA;&lt;p&gt;An untested backup does not exist.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Has 3D Printing Reduced Adam Savage&#39;s Maker&#39;s High? - YouTube</title>
    <id>https://waylonwalker.com/thought-951/</id>
    <updated>2026-03-25T20:37:06Z</updated>
    <published>2026-03-25T20:37:06Z</published>
    <link href="https://waylonwalker.com/thought-951/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://youtu.be/l8vxTYJbzSY?t=107</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;l8vxTYJbzSY&#34; title=&#34;Has 3D Printing Reduced Adam Savage&amp;#39;s Maker&amp;#39;s High?&#34; playlabel=&#34;Play: Has 3D Printing Reduced Adam Savage&amp;#39;s Maker&amp;#39;s High?&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;&lt;a href=&#34;/vibe-coding/&#34; class=&#34;glossary-term&#34; title=&#34;A coding style popularized in 2025. It is the act of using LLMs to generate code for an application, but the author never looks at the output. The author...&#34;&gt;Vibe coding&lt;/a&gt; is going so far into the news sphere now that Adam Savage even weighs in with perspectives from someone who has built a life around building things with his hands, keeping up with new making techniques, discovering old techniques as they combine with new.  He talks about 3d printing reviving his love of the pantograph as one automation technique eases the most difficult part of another.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Lets Land The Plane</title>
    <id>https://waylonwalker.com/lets-land-the-plane/</id>
    <updated>2026-03-25T08:41:15Z</updated>
    <published>2026-03-25T08:41:15Z</published>
    <link href="https://waylonwalker.com/lets-land-the-plane/" rel="alternate" type="text/html"></link>
    <summary type="text">Part of @steveyegge &#39;s gastown/beads is a prompt &#34;Lets land the plane&#34;. It&#39;s very straightforward forward and what any sane human would probably do before...</summary>
    <content type="html">&lt;p&gt;Part of @steveyegge ’s gastown/beads is a prompt “Lets land the plane”.  It’s very straightforward forward and what any sane human would probably do before finishing work, except the last part.  The “generate a handoff prompt for the next session” was not something I’ve put much thought into.  But now that I juggle 6 sessions at a time and often end up with 20 sessions open because I don’t want to close them and loose the last bit of context.  This is what I need to keep from crippling my laptop memory from all of these stale sessions hanging around.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/b75a3a4d-679c-415d-9d14-231b0f75e0ff.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Open image&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/file/b75a3a4d-679c-415d-9d14-231b0f75e0ff.webp&#34; alt=&#34;&#34;/ data-glightbox=&#34;description: &#34;&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;Taken from &lt;a href=&#34;https://ianbull.com/posts/beads&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/ianbull.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/ianbull.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;https://ianbull.com/posts/beads&lt;/a&gt;&lt;/p&gt;&lt;/figcaption&gt;&#xA;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 kubernetes is beautiful r/kubernetes</title>
    <id>https://waylonwalker.com/thought-950/</id>
    <updated>2026-03-23T21:29:40Z</updated>
    <published>2026-03-23T21:29:40Z</published>
    <link href="https://waylonwalker.com/thought-950/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.reddit.com/r/kubernetes/comments/1rzyhip/kubernetes_beautiful/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-reddit&#34;&gt;&#xA;  &lt;a href=&#34;https://www.reddit.com/r/kubernetes/comments/1rzyhip/kubernetes_is_beautiful/&#34; class=&#34;embed-card-link  has-avatar has-avatar-before&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/www.reddit.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/www.reddit.com.ico&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Kubernetes is beautiful.&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Kubernetes is beautiful.&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;Reddit · reddit.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;This is a fantastic progression through kuberentes concepts.  From running a pod, to making it resiliant, holding secrets, accepting traffic, and autoscaling.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>move zmk keyboard to new bluetooth adapter</title>
    <id>https://waylonwalker.com/move-zmk-keyboard-to-new-bluetooth-adapter/</id>
    <updated>2026-03-23T17:59:59Z</updated>
    <published>2026-03-23T17:59:59Z</published>
    <link href="https://waylonwalker.com/move-zmk-keyboard-to-new-bluetooth-adapter/" rel="alternate" type="text/html"></link>
    <summary type="text">I&#39;ve been having issue with my keyboard disconnecting to my main desktop for awhile. Today I got a cheap bluetooh dongle in and am giving it a run this week...</summary>
    <content type="html">&lt;p&gt;I’ve been having issue with my keyboard disconnecting to my main desktop for&#xA;awhile.  Today I got a cheap bluetooh dongle in and am giving it a run this&#xA;week to see how things go.  The first step was to move it to the new adapter.&#xA;I’ve never had multiple adapters installed so this was a new to me process.&lt;/p&gt;&#xA;&lt;p&gt;I was able to do it all with the same keyboard, It did require some juggling&#xA;between usb and bluetooth modes pluging and unplugging, two keyboards would be&#xA;simpler to reason about.&lt;/p&gt;&#xA;&lt;p&gt;I can’t be bothered to change my brain to think about this machine on a&#xA;different zmk profile it is of absolute importance for it to remain on the same&#xA;profile, otherwise this would be a simple bind to another empty profile.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Why not use a cable on desktop?&lt;/p&gt;&#xA;&lt;p&gt;I dont mind cable, and have used one on this setup for years, but I have&#xA;actually been picking up and moving this keyboard and using it with&#xA;different devices.&lt;/p&gt;&#xA;&lt;p&gt;I’ve got a big battery and performace cranked up, unless my machine is&#xA;under load I do not notice any key lag.&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;I did it with bluetoothctl, I’m sure it could have been done with a gui like&#xA;&lt;code&gt;blueberry&lt;/code&gt; or &lt;code&gt;blueman&lt;/code&gt;.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;bluetoothctl&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# list adapters&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;list&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;select&lt;/span&gt; &amp;lt;old-adapter&amp;gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;devices&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# fin the MAC address of the device 42BLOCK&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;remove &amp;lt;42BLOCK_MAC&amp;gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Now I plugged into usb. And &lt;strong&gt;importantly&lt;/strong&gt; cleared out the zmk profile.  If&#xA;you do not clear the profile your board does not go into pairing mode.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;bluetoothctl&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# switch adapters&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;select&lt;/span&gt; &amp;lt;new-adapter&amp;gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;power on&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;agent on&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;default-agent&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;scan on&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Put 42Block in pairing mode, &lt;span class=&#34;k&#34;&gt;then&lt;/span&gt;:&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;pair &amp;lt;42BLOCK_MAC&amp;gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;trust &amp;lt;42BLOCK_MAC&amp;gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;At this pint I saw this show up in the logs, I think there was some masking&#xA;issues or something in zmk, output kept going out usb no matter what so I&#xA;disconnected the keyboard and typed the passkey in, and it worked.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;agent&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt; Passkey: &lt;span class=&#34;m&#34;&gt;540044&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Boom, it just started working right away.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;bluetoothctl&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;connect &amp;lt;42BLOCK_MAC&amp;gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;info &amp;lt;42BLOCK_MAC&amp;gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;scan off&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;exit&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 More Details Than You Probably Wanted to Know About Recent Upd...</title>
    <id>https://waylonwalker.com/thought-949/</id>
    <updated>2026-03-23T12:26:22Z</updated>
    <published>2026-03-23T12:26:22Z</published>
    <link href="https://waylonwalker.com/thought-949/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://blog.jim-nielsen.com/2026/notes-site-updates/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://blog.jim-nielsen.com/2026/notes-site-updates/&#34; class=&#34;embed-card-link  has-avatar has-avatar-before&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/blog.jim-nielsen.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/blog.jim-nielsen.com.ico&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;More Details Than You Probably Wanted to Know About Recent Updates to My Notes Site&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Writing about the big beautiful mess that is making things for the world wide web.&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;blog.jim-nielsen.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;I love the level of thought that Jim has put into these changes and making sure that urls don’t change.  I’ve got a big change in flight to my main site and this is one of the reasons that I’ve been sitting on it so long.  I want to make sure urls arent broken, redirects work as they should, and there are no 404’s from existing urls.  Currently the new version only exists on a separate deployement &lt;a href=&#34;https://go.waylonwalker.com/&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/go.waylonwalker.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/go.waylonwalker.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;https://go.waylonwalker.com/&lt;/a&gt;&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;I also added the ability to “shuffle” between posts. This is mostly for myself. I like to randomly jump through notes I’ve published in the past for reoccurring inspiration&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;p&gt;Love this idea and have it on my new site already as well, and have really enjoyed using it by pressing it a dozen or so times over the course of a few sessions.  It highlights that I have too many posts like stars and thoughts and I should do some weighting to main posts.  mine is at &lt;a href=&#34;https://go.waylonwalker.com/random/&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/go.waylonwalker.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/go.waylonwalker.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;https://go.waylonwalker.com/random/&lt;/a&gt;&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Notes – 06:34 Mon 23 Mar 2026 – David Bushell – Web Dev (UK)</title>
    <id>https://waylonwalker.com/thought-948/</id>
    <updated>2026-03-23T09:07:38Z</updated>
    <published>2026-03-23T09:07:38Z</published>
    <link href="https://waylonwalker.com/thought-948/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://dbushell.com/notes/2026-03-23T06:34Z/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://dbushell.com/notes/2026-03-23T06:34Z/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://dbushell.com/assets/images/ogimage.png&#34; alt=&#34;Notes – 06:34 Mon 23 Mar 2026 — Notes – 06:34 Mon 23 Mar 2026&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: Notes – 06:34 Mon 23 Mar 2026 — Notes – 06:34 Mon 23 Mar 2026&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Notes – 06:34 Mon 23 Mar 2026&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Notes – 06:34 Mon 23 Mar 2026&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;dbushell.com · dbushell.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;Does anyone think fast-code will continue to pay the same salary? The answer isn’t to switch your brain off during your McCode shift and write a poem after work. Your job will be replaced by a Banglasdeshi slop-shop if AI improves (which is inevitable, apparently). Possibly the same sweatshop that loomed my £3 T-shirt. The Luddites didn’t accept their fate so easily.&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;p&gt;David has some good points here, but I’m feeling the opposite direction a bit.  Execs have always liked keeping the PM’s and the people steering the ship close by and were willing to farm out more and more grunt work.  It feels like we are in a weird phase where there used to be a big group of people paid to write code.   A few of them are exceptionally good at it and will remain.  There will be a need for these people everywhere.  Somehow we still need people hand editing assembly code optimizations, fortran, and cobol today.  Those industries largely moved on, but a few great ones remain.  I think this fast-code slop factory is going to be a  short forgotten time in history, but no one yet knows what’s next.  We are all waiting to find out.  Just with anything there is still value in doing it by hand and understanding it at a deep level, but its quickly becoming hobby work.  The things that most people code, things like CRUD apps do not require a special skill.  They are largely replicating existing good patterns on frameworks to implement business logic that are custom to the app.  There is no way of getting around the latter.  Someone will always need to understand the business logic and be able to “sign off” and assert that it does the thing the business needs.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>I don&#39;t want someone else running my agents</title>
    <id>https://waylonwalker.com/i-dont-want-someone-else-running-my-agents/</id>
    <updated>2026-03-23T00:00:00Z</updated>
    <published>2026-03-23T00:00:00Z</published>
    <link href="https://waylonwalker.com/i-dont-want-someone-else-running-my-agents/" rel="alternate" type="text/html"></link>
    <summary type="text">I don&#39;t want to review the pr, I dont want to fight the mass of changes clobbered across the codebase. I want to own my platform. With everything changing...</summary>
    <content type="html">&lt;p&gt;I don’t want to review the pr, I dont want to fight the mass of changes&#xA;clobbered across the codebase.  I want to own my platform.  With everything&#xA;changing with agents writing more code than I can imagine in a day work looks&#xA;different now.  I still want to work with real people.  I want to collaborate&#xA;on ideas.  I want someone to bounce ideas off with.  I want someone else in the&#xA;war room with me on launch day, or when the whole thing goes down.  But I don’t&#xA;them slopping in my sandbox, if someone is going to be stirring the slop in my&#xA;product I want it to be me.  Work is feeling different now.  New lines need to&#xA;be drawn in new directions.  Expectations are changing, the way work is&#xA;completed is changing, and we are all here trying to figure out what this looks&#xA;like moving forward.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ mohebifar tooscut</title>
    <id>https://waylonwalker.com/mohebifar-tooscut/</id>
    <updated>2026-03-22T22:18:23Z</updated>
    <published>2026-03-22T22:18:23Z</published>
    <link href="https://waylonwalker.com/mohebifar-tooscut/" rel="alternate" type="text/html"></link>
    <summary type="text">Looking for inspiration? tooscut by mohebifar.</summary>
    <content type="html">&lt;p&gt;Looking for inspiration? &lt;a href=&#34;https://github.com/mohebifar/tooscut&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;tooscut&lt;/a&gt; by &lt;a href=&#34;https://github.com/mohebifar&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;mohebifar&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Professional video editing, right in your browser. Made with Rust, WebGPU, WASM, and Tanstack Start.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Ping 38</title>
    <id>https://waylonwalker.com/ping-38/</id>
    <updated>2026-03-22T09:56:48Z</updated>
    <published>2026-03-22T09:56:48Z</published>
    <link href="https://waylonwalker.com/ping-38/" rel="alternate" type="text/html"></link>
    <summary type="text">When agents do the work its harder to recognize a dead end.</summary>
    <content type="html">&lt;p&gt;When agents do the work its harder to recognize a dead end.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ kraanzu smassh</title>
    <id>https://waylonwalker.com/kraanzu-smassh/</id>
    <updated>2026-03-21T16:56:20Z</updated>
    <published>2026-03-21T16:56:20Z</published>
    <link href="https://waylonwalker.com/kraanzu-smassh/" rel="alternate" type="text/html"></link>
    <summary type="text">I like kraanzu&#39;s project smassh.</summary>
    <content type="html">&lt;p&gt;I like &lt;a href=&#34;https://github.com/kraanzu&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;kraanzu’s&lt;/a&gt; project &lt;a href=&#34;https://github.com/kraanzu/smassh&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;smassh&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Smassh your Keyboard, TUI Edition&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ KittenML KittenTTS</title>
    <id>https://waylonwalker.com/kittenml-kittentts/</id>
    <updated>2026-03-20T03:37:04Z</updated>
    <published>2026-03-20T03:37:04Z</published>
    <link href="https://waylonwalker.com/kittenml-kittentts/" rel="alternate" type="text/html"></link>
    <summary type="text">I&#39;m really excited about KittenTTS, an amazing project by KittenML. It&#39;s worth exploring!</summary>
    <content type="html">&lt;p&gt;I’m really excited about &lt;a href=&#34;https://github.com/KittenML/KittenTTS&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;KittenTTS&lt;/a&gt;, an amazing project by &lt;a href=&#34;https://github.com/KittenML&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;KittenML&lt;/a&gt;. It’s worth exploring!&lt;/p&gt;&#xA;&lt;p&gt;State-of-the-art TTS model under 25MB 😻&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Learning to agent</title>
    <id>https://waylonwalker.com/ping-35b/</id>
    <updated>2026-03-19T20:53:08Z</updated>
    <published>2026-03-19T20:53:08Z</published>
    <link href="https://waylonwalker.com/ping-35b/" rel="alternate" type="text/html"></link>
    <summary type="text">All we are hearing lately is Agents are the future, something flipped around NOV 2025 with opus 4.5. It turned snake oil into action. It changed programmers...</summary>
    <content type="html">&lt;p&gt;All we are hearing lately is Agents are the future, something flipped around&#xA;NOV 2025 with opus 4.5.  It turned snake oil into action.  It changed&#xA;programmers will be replaced in 6 months to now.  Not all of them, but probably&#xA;most of us who are not extraordinary.  If you fall into the camp of folks not&#xA;adopting, I got no issues with that.  No one is twisting your arm, well maybe&#xA;your boss or cto is, thats on them.  I don’t mean to say this is the future as&#xA;in, get in or get left behind.  I mean it as this is where your other engineers&#xA;probably are, the junior to mid level engineers are here.  If you are not&#xA;trying to meet them where they are how are you going to lead them.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Studio Ghibli Images in the Wild</title>
    <id>https://waylonwalker.com/ping-35/</id>
    <updated>2026-03-19T20:49:26Z</updated>
    <published>2026-03-19T20:49:26Z</published>
    <link href="https://waylonwalker.com/ping-35/" rel="alternate" type="text/html"></link>
    <summary type="text">I just stumbled into an image in my org chart of someone who clearly turned themself into a Studio Ghibli character in chatgpt during the small window of...</summary>
    <content type="html">&lt;p&gt;I just stumbled into an image in my org chart of someone who clearly turned&#xA;themself into a Studio Ghibli character in chatgpt during the small window of&#xA;time that it seemed to do this for everything.  Its clearly the aesthetic that&#xA;It would do by default for that week, then would not do it whatsoever.  I’d&#xA;link it, but its from an org chart.  I mostly found it interesting how we now&#xA;have these recognizable artifacts from specific moments in time.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Ping 36</title>
    <id>https://waylonwalker.com/ping-36/</id>
    <updated>2026-03-19T17:42:56Z</updated>
    <published>2026-03-19T17:42:56Z</published>
    <link href="https://waylonwalker.com/ping-36/" rel="alternate" type="text/html"></link>
    <summary type="text">I feel like there&#39;s an inevitable phase to every ai/agentic worked feature/epic where you have to get in and chat with it 2025 style (except it actually...</summary>
    <content type="html">&lt;p&gt;I feel like there’s an inevitable phase to every ai/agentic worked feature/epic&#xA;where you have to get in and chat with it 2025 style (except it actually works&#xA;and doesn’t turn your project to shit).  Planning is great, planning out epics&#xA;for full orchestrator’s to churn for hours on is amazing, but it always leaves&#xA;me with a handful of thorns multiplied by complexity level of things that I&#xA;can shout a list of 6 items at a time that it can one shot.  I haven’t seen&#xA;anyone put a name to this phase yet, so I’m going to call it the UAT phase&#xA;for now and it seems like a very necessary part of the SDLC.  It was&#xA;important before, but feels more so now as engineers distance themselves&#xA;from the implementation.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Research, Plan, Implement</title>
    <id>https://waylonwalker.com/ping-34/</id>
    <updated>2026-03-18T20:49:26Z</updated>
    <published>2026-03-18T20:49:26Z</published>
    <link href="https://waylonwalker.com/ping-34/" rel="alternate" type="text/html"></link>
    <summary type="text">I heard this term yesterday, and I think a lot of people are missing out on step 1. It&#39;s important to experiment with agents and learn what they can do well...</summary>
    <content type="html">&lt;p&gt;I heard this term yesterday, and I think a lot of people are missing out on&#xA;step 1.  It’s important to experiment with agents and learn what they can do&#xA;well and what they cant, this changes every couple of weeks at this point.  You&#xA;might be spending hours planning something that could have been implemented&#xA;right away, or maybe wasted time planning something that needed more research,&#xA;more context engineering.  Agents start fresh every session, they cant remember&#xA;what you asked them to do 5 minutes ago in the other session, getting the right&#xA;tokens in session is critical.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>dot dockerenv</title>
    <id>https://waylonwalker.com/dot-dockerenv/</id>
    <updated>2026-03-18T10:07:16Z</updated>
    <published>2026-03-18T10:07:16Z</published>
    <link href="https://waylonwalker.com/dot-dockerenv/" rel="alternate" type="text/html"></link>
    <summary type="text">Today I learned that docker creates an empty file to indicate that you are running in a docker container. Other runtimes like podman commonly use ....</summary>
    <content type="html">&lt;p&gt;Today I learned that docker creates an empty &lt;code&gt;/.dockerenv&lt;/code&gt; file to indicate that&#xA;you are running in a docker container.  Other runtimes like podman commonly use&#xA;&lt;code&gt;/run/.containerenv&lt;/code&gt;.  kubernetes uses neither of these, the most common way to&#xA;detect if you are running in kubernetes is to check for the presence of the&#xA;&lt;code&gt;KUBERNETES_SERVICE_HOST&lt;/code&gt; environment variable.  There will also be a directory&#xA;at &lt;code&gt;/var/run/secrets/kubernetes.io/serviceaccount&lt;/code&gt; that contains the service&#xA;account credentials if you are running in kubernetes.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Context Poisoning Was There All Along</title>
    <id>https://waylonwalker.com/ping-32/</id>
    <updated>2026-03-17T21:10:38Z</updated>
    <published>2026-03-17T21:10:38Z</published>
    <link href="https://waylonwalker.com/ping-32/" rel="alternate" type="text/html"></link>
    <summary type="text">I wrote some code by hand on Sunday. Sat down with my son and started building out a game in pygame from scratch. We went to google, we searched how to do...</summary>
    <content type="html">&lt;p&gt;I wrote some code by hand on Sunday.  Sat down with my son and started building&#xA;out a game in pygame from scratch.  We went to google, we searched how to do&#xA;something, we copy and pasted from the docs.  Not because we are dumb, but&#xA;because we cant remember some aspects of the pygame api.  Now that these&#xA;patterns are established we no longer have to google them, we simply grep our&#xA;codebase and replicate the pattern.  Easy right?  It’s funny that it took ai to&#xA;coin the term &lt;code&gt;context poisoning&lt;/code&gt; even though it was there all along.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ tobi qmd</title>
    <id>https://waylonwalker.com/tobi-qmd/</id>
    <updated>2026-03-17T20:39:09Z</updated>
    <published>2026-03-17T20:39:09Z</published>
    <link href="https://waylonwalker.com/tobi-qmd/" rel="alternate" type="text/html"></link>
    <summary type="text">If you&#39;re into interesting projects, don&#39;t miss out on qmd, created by tobi.</summary>
    <content type="html">&lt;p&gt;If you’re into interesting projects, don’t miss out on &lt;a href=&#34;https://github.com/tobi/qmd&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;qmd&lt;/a&gt;, created by &lt;a href=&#34;https://github.com/tobi&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;tobi&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;mini cli search engine for your docs, knowledge bases, meeting notes, whatever. Tracking current sota approaches while being all local&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ ratdoux OrcaSlicer-FullSpectrum</title>
    <id>https://waylonwalker.com/ratdoux-orcaslicer-fullspectrum/</id>
    <updated>2026-03-17T20:33:28Z</updated>
    <published>2026-03-17T20:33:28Z</published>
    <link href="https://waylonwalker.com/ratdoux-orcaslicer-fullspectrum/" rel="alternate" type="text/html"></link>
    <summary type="text">Looking for inspiration? OrcaSlicer-FullSpectrum by ratdoux.</summary>
    <content type="html">&lt;p&gt;Looking for inspiration? &lt;a href=&#34;https://github.com/ratdoux/OrcaSlicer-FullSpectrum&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;OrcaSlicer-FullSpectrum&lt;/a&gt; by &lt;a href=&#34;https://github.com/ratdoux&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;ratdoux&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;G-code generator for Snapmaker U1 with Full Spectrum layer blending&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Agents cannot replace the thinking, they only amplify it</title>
    <id>https://waylonwalker.com/ping-33/</id>
    <updated>2026-03-17T20:32:16Z</updated>
    <published>2026-03-17T20:32:16Z</published>
    <link href="https://waylonwalker.com/ping-33/" rel="alternate" type="text/html"></link>
    <summary type="text">Agents cannot replace the thinking, they only amplify it. If you set the agents off in the wrong direction that&#39;s where they will go. They will sprint there...</summary>
    <content type="html">&lt;p&gt;Agents cannot replace the thinking, they only amplify it.  If you set the&#xA;agents off in the wrong direction that’s where they will go.  They will sprint&#xA;there faster than you can go.  This is ok, its one of their advantages, they&#xA;can give you signal quick.  Remember if they are off in the wrong direction&#xA;more research and planning is needed, and maybe a little bit more thinking on&#xA;your end to steer them in the right direction.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>trailmakers pioneers second run - Almost Cheesed It To Port Aquelite</title>
    <id>https://waylonwalker.com/shots/almost-cheesed-it-to-port-aquelite/</id>
    <updated>2026-03-17T20:22:52Z</updated>
    <published>2026-03-17T20:22:52Z</published>
    <link href="https://waylonwalker.com/shots/almost-cheesed-it-to-port-aquelite/" rel="alternate" type="text/html"></link>
    <summary type="text">Almost Cheesed It To Port Aquelite</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/b0adaf31-0a54-4289-a129-0656cd830c62.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Almost Cheesed It To Port Aquelite&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/file/b0adaf31-0a54-4289-a129-0656cd830c62.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/file/b0adaf31-0a54-4289-a129-0656cd830c62.mp4&#34; type=&#34;video/mp4&#34;&gt;Almost Cheesed It To Port Aquelite&lt;/video&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;I almost Cheesed It To Port Aquelite by spamming repawn, During my second trailmakers pioneers run.&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>trailmakers pioneers second run - Its A Trap</title>
    <id>https://waylonwalker.com/shots/its-a-trap/</id>
    <updated>2026-03-17T20:22:07Z</updated>
    <published>2026-03-17T20:22:07Z</published>
    <link href="https://waylonwalker.com/shots/its-a-trap/" rel="alternate" type="text/html"></link>
    <summary type="text">Its A Trap</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/144212e0-1ed6-4c1a-9630-70ad545145c9.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Its A Trap&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/file/144212e0-1ed6-4c1a-9630-70ad545145c9.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/file/144212e0-1ed6-4c1a-9630-70ad545145c9.mp4&#34; type=&#34;video/mp4&#34;&gt;Its A Trap&lt;/video&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;Its A Trap, abmush with Adiral Leadhead, During my second trailmakers pioneers run.&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>trailmakers pioneers second run - Collection Party Balloon</title>
    <id>https://waylonwalker.com/shots/collection-party-balloon/</id>
    <updated>2026-03-17T20:21:30Z</updated>
    <published>2026-03-17T20:21:30Z</published>
    <link href="https://waylonwalker.com/shots/collection-party-balloon/" rel="alternate" type="text/html"></link>
    <summary type="text">Collection Party Balloon</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/e3bc3df8-7ad5-4e29-9878-d71603f3b208.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Collection Party Balloon&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/file/e3bc3df8-7ad5-4e29-9878-d71603f3b208.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/file/e3bc3df8-7ad5-4e29-9878-d71603f3b208.mp4&#34; type=&#34;video/mp4&#34;&gt;Collection Party Balloon&lt;/video&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;Collecting Party Balloon, During my second trailmakers pioneers run.&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>trailmakers pioneers second run - Collection L Bracket</title>
    <id>https://waylonwalker.com/shots/collection-l-bracket/</id>
    <updated>2026-03-17T20:20:14Z</updated>
    <published>2026-03-17T20:20:14Z</published>
    <link href="https://waylonwalker.com/shots/collection-l-bracket/" rel="alternate" type="text/html"></link>
    <summary type="text">Collection L Bracket</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/00069fdd-0baf-44d0-9102-cfc80f273327.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Collection L Bracket&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/file/00069fdd-0baf-44d0-9102-cfc80f273327.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/file/00069fdd-0baf-44d0-9102-cfc80f273327.mp4&#34; type=&#34;video/mp4&#34;&gt;Collection L Bracket&lt;/video&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;Collecting the L Bracket, During my second trailmakers pioneers run.&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>trailmakers pioneers second run - Wyatt Hits The Gap</title>
    <id>https://waylonwalker.com/shots/wyatt-hits-the-gap/</id>
    <updated>2026-03-17T20:19:24Z</updated>
    <published>2026-03-17T20:19:24Z</published>
    <link href="https://waylonwalker.com/shots/wyatt-hits-the-gap/" rel="alternate" type="text/html"></link>
    <summary type="text">Wyatt Hits The Gap</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/69869e1e-7aea-42c7-9d99-321aac67324a.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Wyatt Hits The Gap&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/file/69869e1e-7aea-42c7-9d99-321aac67324a.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/file/69869e1e-7aea-42c7-9d99-321aac67324a.mp4&#34; type=&#34;video/mp4&#34;&gt;Wyatt Hits The Gap&lt;/video&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;Wyatt Hits The Gap, During my second trailmakers pioneers run.&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 ten year computer</title>
    <id>https://waylonwalker.com/thought-947/</id>
    <updated>2026-03-17T09:32:50Z</updated>
    <published>2026-03-17T09:32:50Z</published>
    <link href="https://waylonwalker.com/thought-947/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://alexwlchan.net/2026/ten-year-computer/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://alexwlchan.net/2026/ten-year-computer/&#34; class=&#34;embed-card-link  has-avatar has-avatar-before&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/alexwlchan.net.png&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/alexwlchan.net.png&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Dreaming of a ten-year computer – alexwlchan&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;alexwlchan.net&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Great gusto here from someone looking to fill landfills less.  Get more use from what they paid for.  Dodge some tough times in the hardware industry.  I’m going to argue that the 10 year computer is not one bit crazy right now.  No idea what the future entails, if local llms get good enough to really get so useful they feel required this could easily change.  One issue I had with the post as they are looking to get a machine for the next 10 years is they were so focused on themself that they missed the point.  They were so focused on buying something that would work for them for 10 years that they bought something brand new rather than thinking about the bigger issue of how do we get hardware to last 10+ years.  Some factor of this involves giving our devices a second life.  Two things went wrong here.  First it appears they they have a perfectly good imac with a broken screen.  I know nothing about apple/imac, assuming that the screen is toast and unrepairable, I know you can ssh into a mac this feels like good potential for server hardware.  Next they purchased a brand new mac mini.  Hardware has been good for a long time, there is no need to buy new right now, especially now.  I haven’t bought a new machine in years and most of my hardware is second hand cobbled together stuff, and has no issues.  I’ve got one machine thats 16 years old, 2 machines at 9 years, one at 8 years.  To get here they need to be repairable, designed to last, and probably no run windows as they will release something that renders them too slow or require new hardware for security that wont work.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 The future of Coding and Code Quality - YouTube</title>
    <id>https://waylonwalker.com/thought-946/</id>
    <updated>2026-03-17T09:07:41Z</updated>
    <published>2026-03-17T09:07:41Z</published>
    <link href="https://waylonwalker.com/thought-946/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/watch?v=baIHCeccbbw</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;baIHCeccbbw&#34; title=&#34;The future of Coding and Code Quality&#34; playlabel=&#34;Play: The future of Coding and Code Quality&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Very interesting takes from @thdxr in this interview.  A lot has been hashed out by others all over the place, but a hot take here is that code quality is higher than ever right now.  Codebases are becoming more consistent than ever.   If you are not starting with a good consistent base from the start you are poising your context and doomed to fail and have all the common failures of ai written code.  He still reads almost every PR, and will read all of the code eventually.  There are a few cases where reading the PR is not worthwhile only when its low stakes, knows that good patterns have been established and followed.  He argues that someone needs to be the expert of the code and of the product still and fears that too many people not looking at prs will fail companies.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Thinking about ai productivity again</title>
    <id>https://waylonwalker.com/ping-31/</id>
    <updated>2026-03-16T21:01:44Z</updated>
    <published>2026-03-16T21:01:44Z</published>
    <link href="https://waylonwalker.com/ping-31/" rel="alternate" type="text/html"></link>
    <summary type="text">Thinking about AI productivity again. It&#39;s allowing massive amounts of work to get done, to levels that humans cannot physically type out in some cases. But...</summary>
    <content type="html">&lt;p&gt;Thinking about AI productivity again.  It’s allowing massive amounts of work to&#xA;get done, to levels that humans cannot physically type out in some cases.  But&#xA;not all of this work is necessarily high value work.  Right now I’m working on&#xA;one of the biggest PRs to an internal cli library.  Probably the largest PR&#xA;I’ve ever done professionally.  It touches all of the cli, refactors every&#xA;command, reaches into the business logic layers to drive deeper separation.  I&#xA;reaches into the common layers to drive consistency.  It ensures that every&#xA;command (50 or so) has similar flags, supports –plain, –no-color.  It specs&#xA;out contracts to ensure that data goes out stdout, any extra goes out stderr.&#xA;This makes everything unix pipe friendly. There was quite a bit of research and&#xA;prep that went in, that turns out to already be distilled down into clig.dev.&#xA;The point is that this is all good work.  It will make the product consistent,&#xA;repeatable, expected, and most of all boring.  Most of the time, it will just&#xA;work.  Since we did it ahead of a lot of other agentic work on the product its&#xA;establishing good patterns for the product moving forward.  But its low value&#xA;work.  We wouldn’t have likely put humans on this work wholesale and fixed&#xA;critical paths as they came up.  Its not cutting cost, selling more product, or&#xA;driving critical business decisions.  Yes it’s worth it now, but it would not&#xA;have bee in the past.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Dummy13 On A Skateboard</title>
    <id>https://waylonwalker.com/shots/dummy13-on-a-skateboard/</id>
    <updated>2026-03-16T20:53:56Z</updated>
    <published>2026-03-16T20:53:56Z</published>
    <link href="https://waylonwalker.com/shots/dummy13-on-a-skateboard/" rel="alternate" type="text/html"></link>
    <summary type="text">Tonight Wyatt gave me a dummy13 that he printed, assembled, and posed all on his own. He&#39;s printed quite a few of these in the past, and none came to this level of completion. I&#39;m so proud of him. This one was a near flawless build with only a few mistakes, that I&#39;d argue were poor design, small vertical pins. More importantly he was able to problem solve and use resin to fix these mistakes.</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/beb54917-9ffa-458f-aaef-8d0a4b56566f.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;dummy13 on a skateboard&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/file/beb54917-9ffa-458f-aaef-8d0a4b56566f.webp&#34; alt=&#34;dummy13 on a skateboard&#34;/ data-glightbox=&#34;description: dummy13 on a skateboard&#34;&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;Tonight Wyatt gave me a dummy13 that he printed, assembled, and posed all on his own.  He’s printed quite a few of these in the past, and none came to this level of completion.  I’m so proud of him.  This one was a near flawless build with only a few mistakes, that I’d argue were poor design, small vertical pins.  More importantly he was able to problem solve and use resin to fix these mistakes.&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Groal The Great Fail 1</title>
    <id>https://waylonwalker.com/shots/goal-the-great-fail-1/</id>
    <updated>2026-03-15T20:33:06Z</updated>
    <published>2026-03-15T20:33:06Z</published>
    <link href="https://waylonwalker.com/shots/goal-the-great-fail-1/" rel="alternate" type="text/html"></link>
    <summary type="text">Groal The Great Fail 1</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/7722f9c4-8910-4811-a5b7-86ae7051ca0a.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Groal The Great Fail 1&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/file/7722f9c4-8910-4811-a5b7-86ae7051ca0a.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/file/7722f9c4-8910-4811-a5b7-86ae7051ca0a.mp4&#34; type=&#34;video/mp4&#34;&gt;Groal The Great Fail 1&lt;/video&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;Groal The Great Fail 1&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Groal The Great Fail 2</title>
    <id>https://waylonwalker.com/shots/goal-the-great-fail-2/</id>
    <updated>2026-03-15T20:31:49Z</updated>
    <published>2026-03-15T20:31:49Z</published>
    <link href="https://waylonwalker.com/shots/goal-the-great-fail-2/" rel="alternate" type="text/html"></link>
    <summary type="text">Groal The Great Fail 2</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/73bf21e9-bb8f-48f0-b2b5-840a1beec270.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Groal The Great Fail 2&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/file/73bf21e9-bb8f-48f0-b2b5-840a1beec270.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/file/73bf21e9-bb8f-48f0-b2b5-840a1beec270.mp4&#34; type=&#34;video/mp4&#34;&gt;Groal The Great Fail 2&lt;/video&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;Groal The Great Fail 2&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Do You Have Token anxiety? - YouTube</title>
    <id>https://waylonwalker.com/thought-945/</id>
    <updated>2026-03-15T09:27:15Z</updated>
    <published>2026-03-15T09:27:15Z</published>
    <link href="https://waylonwalker.com/thought-945/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/watch?v=ZJEnQOsMtsU</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;ZJEnQOsMtsU&#34; title=&#34;What is wrong with us?!&#34; playlabel=&#34;Play: What is wrong with us?!&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Kids are leaving the party early, not drinking, cant watch netflix without the laptop open.  They are leaving the party early to check on their agents.  I get it, that feeling that you need to eek out one more prompt, keep your agents running. if they arent running what are you even doing.  If not you 6 others are ready to pass you up.  The timeline to be first has shrunk to nothing but unachievable.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ cyxzdev Uncodixfy</title>
    <id>https://waylonwalker.com/cyxzdev-uncodixfy/</id>
    <updated>2026-03-13T01:26:23Z</updated>
    <published>2026-03-13T01:26:23Z</published>
    <link href="https://waylonwalker.com/cyxzdev-uncodixfy/" rel="alternate" type="text/html"></link>
    <summary type="text">I recently discovered Uncodixfy by cyxzdev, and it&#39;s truly impressive.</summary>
    <content type="html">&lt;p&gt;I recently discovered &lt;a href=&#34;https://github.com/cyxzdev/Uncodixfy&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;Uncodixfy&lt;/a&gt; by &lt;a href=&#34;https://github.com/cyxzdev&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;cyxzdev&lt;/a&gt;, and it’s truly impressive.&lt;/p&gt;&#xA;&lt;p&gt;the holly uncodexify instructions - letting GPT create uncodexified UI&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 No one under 18 installs Linux</title>
    <id>https://waylonwalker.com/thought-944/</id>
    <updated>2026-03-09T11:46:15Z</updated>
    <published>2026-03-09T11:46:15Z</published>
    <link href="https://waylonwalker.com/thought-944/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://youtube.com/clip/UgkxVmrLKcNieh6FffrnSu2-iXD8SVFzSCzj?si=rV4k2piZM3Jcq9w0</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;1HeALnI-gVg&#34; title=&#34;✂️ No one under 18 installs Linux&#34; playlabel=&#34;Play: ✂️ No one under 18 installs Linux&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;😂 Should I be concerned that My 12yo installed Arch BTW on his own?&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 The web is bearable with RSS</title>
    <id>https://waylonwalker.com/thought-943/</id>
    <updated>2026-03-09T09:00:55Z</updated>
    <published>2026-03-09T09:00:55Z</published>
    <link href="https://waylonwalker.com/thought-943/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://pluralistic.net/2026/03/07/reader-mode/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://pluralistic.net/2026/03/07/reader-mode/&#34; class=&#34;embed-card-link  has-avatar has-avatar-before&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/pluralistic.net.jpg&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/pluralistic.net.jpg&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Pluralistic: The web is bearable with RSS (07 Mar 2026) – Pluralistic: Daily links from Cory Doctorow&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;pluralistic.net&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;It’s wild how much of a hit Google took from killing reader, almost any time I hear about killedbygoogle, reader is the top of the list.  Its the thing that we all remember being really good and the incumbants just did not match up.  Somehow we are here 13 years later still bitching about it, despite it only having a 6 year run.  You should probably get an rss reader, and follow some incredible people that make feeds.  Most sites that produce content have the ability to subscribe over rss.  Unlike @pluralistic.net, I dont read in my reader.  My reader is just a list of links out to the web and I typically read it how the author intended on their site.  I nod a long to Cory’s enshitified internet just as much as the next guy, I love text based interfaces, I despise  the bloat that js has brought on.  But I don’t believe all js is bad, I don’t turn it off, even though he has me questioning this now.  News sites kinda suck, we can agree there, but its rare that a small indie web creator has fully enshitified their site with js.  I don’t buy that.  Sub to the feeds.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 I need a new blog to subscribe to. Know… | justin․searls․co</title>
    <id>https://waylonwalker.com/thought-942/</id>
    <updated>2026-03-09T08:31:53Z</updated>
    <published>2026-03-09T08:31:53Z</published>
    <link href="https://waylonwalker.com/thought-942/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://justin.searls.co/takes/2026-03-08-23h18m29s/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://justin.searls.co/takes/2026-03-08-23h18m29s/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://justin.searls.co/img/face.jpg&#34; alt=&#34;Justin Searls&#xA;@searls — &#xA;I need a new blog to subscribe to. Know any you think I&amp;#39;d like? E-mail me: justin@searls.co&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: Justin Searls&#xA;@searls — &#xA;I need a new blog to subscribe to. Know any you think I&amp;#39;d like? E-mail me: justin@searls.co&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Justin Searls&#xA;@searls&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;&#xA;I need a new blog to subscribe to. Know any you think I&amp;#39;d like? E-mail me: justin@searls.co&#xA;&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;justin․searls․co · justin.searls.co&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Sent Justin my list &lt;a href=&#34;https://go.waylonwalker.com/blogroll&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/go.waylonwalker.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/go.waylonwalker.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;https://go.waylonwalker.com/blogroll&lt;/a&gt;, will soon be on the main site, but right now its only on the go subdomain.  I’ve long had reader.waylonwalker.com, but thats soon going to be wrapped into the main site as well at /reader.&lt;/p&gt;&#xA;&lt;p&gt;I’m interested to see what good stuff Justin gets and if you have any good ones to share reply.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Did you even like to code?</title>
    <id>https://waylonwalker.com/ping-29/</id>
    <updated>2026-03-07T20:59:39Z</updated>
    <published>2026-03-07T20:59:39Z</published>
    <link href="https://waylonwalker.com/ping-29/" rel="alternate" type="text/html"></link>
    <summary type="text">Here&#39;s something I&#39;ve been wrestling with lately. I keep hearing people come to the realization that they never liked coding, they thought they did, but...</summary>
    <content type="html">&lt;p&gt;Here’s something I’ve been wrestling with lately.  I keep hearing people come&#xA;to the realization that they never liked coding, they thought they did, but&#xA;secretly hated it the whole time.  I dont think I’ve ever kidded myself about&#xA;this.  I like building things.  I like having an idea and see it come to life.&#xA;Just because I like the end product more, and that coding really was a means to&#xA;an end, something I will never do again in the same capacity that I have in the&#xA;past, does not mean I did not enjoy the art of solving problems by typing&#xA;syntax into a file to tell a computer how to solve a problem.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Silksong Credits</title>
    <id>https://waylonwalker.com/shots/credits/</id>
    <updated>2026-03-07T09:19:27Z</updated>
    <published>2026-03-07T09:19:27Z</published>
    <link href="https://waylonwalker.com/shots/credits/" rel="alternate" type="text/html"></link>
    <summary type="text">Credits</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/251a07be-eb46-4a27-9317-1c7a673ba2b4.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Credits&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/file/251a07be-eb46-4a27-9317-1c7a673ba2b4.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/file/251a07be-eb46-4a27-9317-1c7a673ba2b4.mp4&#34; type=&#34;video/mp4&#34;&gt;Credits&lt;/video&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;Today I rolled the credits to Silksong, far from the end, still finishing the&#xA;playthrough.  also I walked away and let it sit idle and it ate my play&#xA;buffer so I lost the full boss fight.&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>The only thing that seems interesting is AI right now</title>
    <id>https://waylonwalker.com/ping-28/</id>
    <updated>2026-03-06T20:55:26Z</updated>
    <published>2026-03-06T20:55:26Z</published>
    <link href="https://waylonwalker.com/ping-28/" rel="alternate" type="text/html"></link>
    <summary type="text">The only thing that seems interesting is AI right now, I&#39;m writing less code, and I kinda just don&#39;t care as much about the small open source stuff as I used...</summary>
    <content type="html">&lt;p&gt;The only thing that seems interesting is AI right now, I’m writing less code,&#xA;and I kinda just don’t care as much about the small open source stuff as I used&#xA;to.  I enjoy reading about what other people are thinking, doing, creating.&#xA;But when I go to grab a podcast while I wait on my clankers its one talking&#xA;about how other people are using them, how to make them more secure, more&#xA;effective, how the new models change things, what models are good at what.&#xA;It’s all so new and changes so fast.  Any sort of new open source project&#xA;starts out sus that it was just vibe coded anyways, So at the moment it feels&#xA;like ooh how did you get that, how do I make mine, and that the thing itself&#xA;has less value.  I hate that its this way, but it is.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Tmk 3x6+3 Gaming Keeb Sliced</title>
    <id>https://waylonwalker.com/shots/tmk-3x6+3-gaming-keeb-sliced/</id>
    <updated>2026-03-06T17:56:38Z</updated>
    <published>2026-03-06T17:56:38Z</published>
    <link href="https://waylonwalker.com/shots/tmk-3x6+3-gaming-keeb-sliced/" rel="alternate" type="text/html"></link>
    <summary type="text">Running through the layers of the tmx 3x6+s. gaming keeb.</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/0c4daa3e-8097-4e91-b54a-a3a84e1e0a48.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;tmk 3x6+3 gaming keeb sliced&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/file/0c4daa3e-8097-4e91-b54a-a3a84e1e0a48.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/file/0c4daa3e-8097-4e91-b54a-a3a84e1e0a48.mp4&#34; type=&#34;video/mp4&#34;&gt;tmk 3x6+3 gaming keeb sliced&lt;/video&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;Running through the layers of the tmx 3x6+s. gaming keeb.&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Tmk 3x6+3 Gaming Promo</title>
    <id>https://waylonwalker.com/shots/tmk-3x6+3-gaming-promo/</id>
    <updated>2026-03-06T17:48:47Z</updated>
    <published>2026-03-06T17:48:47Z</published>
    <link href="https://waylonwalker.com/shots/tmk-3x6+3-gaming-promo/" rel="alternate" type="text/html"></link>
    <summary type="text">Promo video for the tmk 3x5+3 gaming keyboard.</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/f5769ee4-7094-4527-a27c-c4b9f3d58bc2.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;tmk 3x6+3 gaming promo&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/file/f5769ee4-7094-4527-a27c-c4b9f3d58bc2.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/file/f5769ee4-7094-4527-a27c-c4b9f3d58bc2.mp4&#34; type=&#34;video/mp4&#34;&gt;tmk 3x6+3 gaming promo&lt;/video&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;Promo video for the tmk 3x5+3 gaming keyboard.&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>It&#39;s all moving so fast</title>
    <id>https://waylonwalker.com/ping-27/</id>
    <updated>2026-03-05T20:53:59Z</updated>
    <published>2026-03-05T20:53:59Z</published>
    <link href="https://waylonwalker.com/ping-27/" rel="alternate" type="text/html"></link>
    <summary type="text">AI is moving so fast this year its hard to keep up, I&#39;ve written 3 or 4 versions of one blog post to replace im-out-on-agents, but it feels like everything...</summary>
    <content type="html">&lt;p&gt;AI is moving so fast this year its hard to keep up, I’ve written 3 or 4&#xA;versions of one blog post to replace &lt;a href=&#34;/im-out-on-agents/&#34; class=&#34;wikilink&#34; data-title=&#34;I&amp;#39;m Out On Agents&#34; data-description=&#34;Its the year 2025 and we are only a few years into having 6 months to live before ai takes our jobs, and the big push right now is agents, managing agents. I...&#34; data-date=&#34;2025-08-27&#34; data-preview=&#34;Its the year 2025 and we are only a few years into having 6 months to live before ai takes our jobs, and the big push right now is agents, managing agents. I...&#34;&gt;I&amp;#39;m Out On Agents&lt;/a&gt;, but it feels like&#xA;everything changes before I can get it out.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Tgo V0.1.0</title>
    <id>https://waylonwalker.com/shots/tgo-v0.1.0/</id>
    <updated>2026-03-04T21:19:47Z</updated>
    <published>2026-03-04T21:19:47Z</published>
    <link href="https://waylonwalker.com/shots/tgo-v0.1.0/" rel="alternate" type="text/html"></link>
    <summary type="text">tgo v0.1.0, tmux session switcher written in go</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/7c5765a0-126d-430a-ad86-eb83eb440e1b.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;tgo v0.1.0&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/file/7c5765a0-126d-430a-ad86-eb83eb440e1b.webp&#34; alt=&#34;tgo v0.1.0&#34;/ data-glightbox=&#34;description: tgo v0.1.0&#34;&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;tgo v0.1.0, tmux session switcher written in go&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>I Built A Tmux Session Switcher</title>
    <id>https://waylonwalker.com/i-built-a-tmux-session-switcher/</id>
    <updated>2026-03-04T20:47:37Z</updated>
    <published>2026-03-04T20:47:37Z</published>
    <link href="https://waylonwalker.com/i-built-a-tmux-session-switcher/" rel="alternate" type="text/html"></link>
    <summary type="text">I&#39;ve been thinking about this for awhile now. For years now, fuzzy pickers and last session have been my go to. They have served me well. I can typically...</summary>
    <content type="html">&lt;p&gt;I’ve been thinking about this for awhile now.  For years now, fuzzy pickers and&#xA;last session have been my go to.  They have served me well.  I can typically&#xA;only keep so much in my head anyways.  I’m often doing a hub and spoke pattern&#xA;between main project, notes, and infra repo, maybe two projects.  Don’t get me&#xA;wrong, I regularly run with a dozen or more sessions running at a time, but&#xA;only two to three are in my immediate context at any point anyways.&lt;/p&gt;&#xA;&lt;h2 id=&#34;the-design&#34;&gt;The Design &lt;a href=&#34;#the-design&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;&lt;em&gt;harpoon for tmux&lt;/em&gt;&lt;/p&gt;&#xA;&lt;p&gt;press a hotkey followed by one more keystroke, currently any left hand letter&#xA;SIMPLE, FAST, thats of utmost importance, what I want are sessions that I can&#xA;can be assigned in order of importance from middle row, top row, bottom row.&lt;/p&gt;&#xA;&lt;p&gt;I added this binding to my tmux config.  Now I can press &lt;code&gt;c-a a&lt;/code&gt; to go to the&#xA;first session, &lt;code&gt;c-a s&lt;/code&gt; to go to the second session. &lt;code&gt;c-a&lt;/code&gt; and pause to think&#xA;j/k to navigate, space to pick up a session and move it, x to kill it.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;bind-key -n c-a popup -E &lt;span class=&#34;s1&#34;&gt;&amp;#39;~/go/bin/tgo&amp;#39;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;h2 id=&#34;enter-the-agents&#34;&gt;Enter the agents &lt;a href=&#34;#enter-the-agents&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;Now with agents doing more and more work, and cooking for longer periods this&#xA;is not cutting it, I’m often swapping through a lot more sessions, I’ve got&#xA;more projects sitting in more phases between research, implementation, fully&#xA;orchestrated agents, and sessions that need their hand held to get things&#xA;right.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/7c5765a0-126d-430a-ad86-eb83eb440e1b.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Open image&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/file/7c5765a0-126d-430a-ad86-eb83eb440e1b.webp&#34; alt=&#34;&#34;/ data-glightbox=&#34;description: &#34;&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;Image of the &lt;code&gt;tgo&lt;/code&gt; tool in action, I’d show you a video, but its not really&#xA;that interesting, it just flashes up and goes to the next session as fast as&#xA;you can press the key.&lt;/p&gt;&lt;/figcaption&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;made-with-gpt-53-codex-and-gpt-51-codex-mini&#34;&gt;Made with gpt-5.3-codex and gpt-5.1-codex-mini &lt;a href=&#34;#made-with-gpt-53-codex-and-gpt-51-codex-mini&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;Idk how much it cost, it barely touched my $20/month weekly token allowance.&#xA;I’ve been thinking about it for awhile and decided today was the day to pull&#xA;the trigger on something and get it started, worst case I throw it away.  It&#xA;took the agents about 7 minutes to implement a working version with broken ci&#xA;that it later fixed.&lt;/p&gt;&#xA;&lt;p&gt;I’ve typed far more characters and put more thought into this post than the&#xA;tool itself, that where we are these days I guess.&lt;/p&gt;&#xA;&lt;p&gt;See the session that made &lt;code&gt;tgo&lt;/code&gt; &lt;a href=&#34;/ses-3444b09b1ffexter3elfg5qqtg/&#34; class=&#34;wikilink&#34; data-title=&#34;Ses_3444b09b1ffexter3elfg5qqtg&#34; data-description=&#34;** ses***** 3/4/2026, 8:52:32 PM&#34; data-date=&#34;2026-03-04&#34; data-preview=&#34;** ses***** 3/4/2026, 8:52:32 PM&#34;&gt;Ses_3444b09b1ffexter3elfg5qqtg&lt;/a&gt;&lt;/p&gt;&#xA;&lt;h2 id=&#34;should-you-use-it&#34;&gt;Should you use it? &lt;a href=&#34;#should-you-use-it&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;You can its there for anyone to use, go for it, there’s an easy to download&#xA;binary.&lt;/p&gt;&#xA;&lt;p&gt;It’s all vibe coded slop that you could probably do a better job doing in a&#xA;cave with scraps anyways.  Take inspiration and make one that works for you.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Is gpt-5.4 slow?</title>
    <id>https://waylonwalker.com/ping-30/</id>
    <updated>2026-03-04T20:47:00Z</updated>
    <published>2026-03-04T20:47:00Z</published>
    <link href="https://waylonwalker.com/ping-30/" rel="alternate" type="text/html"></link>
    <summary type="text">What you don&#39;t have six agents orchestrating the work of 6 subagents yet. I saw in a work chat that people were complaining about 5.4 being too slow and they...</summary>
    <content type="html">&lt;p&gt;What you don’t have six agents orchestrating the work of 6 subagents yet.  I&#xA;saw in a work chat that people were complaining about 5.4 being too slow and&#xA;they keep going back to opus.  For me its been working great, I have it working&#xA;on critical infrastructure work, that I will need to maintain.  I appreciate&#xA;its accuracy and completeness.  And honestly I’m &lt;strong&gt;rarely&lt;/strong&gt; watching agents&#xA;run.  Its like watching paint dry at this point.  Its interesting to read their&#xA;thinking prompts, but not productive work.  While its running I’m teeing up the&#xA;net prompt.  Working with another set of agents to write a set of issues for&#xA;the next epic.  I might be too privileged though.  I own a whole platform and&#xA;have plenty of autonomy to work on what I see fit for the day.  I don’t have a&#xA;boss breathing down my neck waiting for a single ticket to be complete.  I’m&#xA;working on 6 projects at a time.  I’m taking walks to avoid becoming a burnt&#xA;out zombie.  I’m definitely not complaining about it kicking out massive&#xA;amounts of code too slow though.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>We are the Grey Beards</title>
    <id>https://waylonwalker.com/ping-26/</id>
    <updated>2026-03-04T20:44:12Z</updated>
    <published>2026-03-04T20:44:12Z</published>
    <link href="https://waylonwalker.com/ping-26/" rel="alternate" type="text/html"></link>
    <summary type="text">In November 2025 everyones beard lost its color, we aged into the next generation without realizing it. If you were getting paid to write code at this point...</summary>
    <content type="html">&lt;p&gt;In November 2025 everyones beard lost its color, we aged into the next&#xA;generation without realizing it.  If you were getting paid to write code at&#xA;this point in time, you are part of a special point in history where we used to&#xA;write code by hand.  There will be systems air gapped systems somewhere devs&#xA;will continue to do it how we’ve always done it, some day they will peek out of&#xA;this cave and realize that they are the only ones left, no one else remembers&#xA;what its like.  Writing code will quickly become a hobby that people do, in a&#xA;weird niche way.  Not because you want to build something, but like the guy&#xA;with a mainframe in his garage that likes to watch the lights blink.  Because&#xA;its nostalgic, it’s a very cool skill, its fun and rewarding, but it won’t be&#xA;to get something done.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Clankers got me tired</title>
    <id>https://waylonwalker.com/ping-25/</id>
    <updated>2026-03-03T20:42:25Z</updated>
    <published>2026-03-03T20:42:25Z</published>
    <link href="https://waylonwalker.com/ping-25/" rel="alternate" type="text/html"></link>
    <summary type="text">I spent all day grinding on a 20 minute fix. I want the agents to do it. They can do it, but they are missing the harnesses they need to replicate my...</summary>
    <content type="html">&lt;p&gt;I spent all day grinding on a 20 minute fix.  I want the agents to do it. They&#xA;can do it, but they are missing the harnesses they need to replicate my&#xA;workflows of old.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>One Shot Markata Searchcraft</title>
    <id>https://waylonwalker.com/shots/one-shot-markata-searchcraft/</id>
    <updated>2026-03-02T19:20:17Z</updated>
    <published>2026-03-02T19:20:17Z</published>
    <link href="https://waylonwalker.com/shots/one-shot-markata-searchcraft/" rel="alternate" type="text/html"></link>
    <summary type="text">This is the results of a one shot markata-go searchcraft integration</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/d406663b-a255-4025-b4ee-e40d1e483783.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;One Shot markata searchcraft&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/file/d406663b-a255-4025-b4ee-e40d1e483783.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/file/d406663b-a255-4025-b4ee-e40d1e483783.mp4&#34; type=&#34;video/mp4&#34;&gt;One Shot markata searchcraft&lt;/video&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;This is the results of a one shot markata-go searchcraft integration&lt;/p&gt;&lt;/figcaption&gt;&#xA;&lt;/figure&gt;&#xA;&lt;p&gt;The prompt was so rambly, I wrote it in about 2 minutes on the way out the door&#xA;to a kids practice.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;I am going to leave for awhile and I want you to prototype a markata-go&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;integration with searchcraft.  use /home/waylon/git/waylonwalker.com-go as the&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;site to test, stand up a new searchcraft database with podman. use a worktree&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;in ./worktree to write the integration, I want fast semantic search accross all&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;of my documents, I want them ingested/upserted/update on build, I want an index&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;per sitename, I might have multiple sites per database, I want you to make a&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;/search page to test out what the seasrch looks like.  heavily delegate to&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;ni&#34;&gt;@builder&lt;/span&gt; to research and fully understand https://www.searchcraft.io/ before&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;starting, properly ingest all of the site and make the search page, I don&amp;#39;t&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;want you to stop or ask questions until it works, use &lt;span class=&#34;sb&#34;&gt;`agent-browser`&lt;/span&gt; for&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;testing, use &lt;span class=&#34;ni&#34;&gt;@builder&lt;/span&gt; for all changes writing editing and testing.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>gh do I have a pr</title>
    <id>https://waylonwalker.com/gh-do-i-have-a-pr/</id>
    <updated>2026-03-02T08:47:44Z</updated>
    <published>2026-03-02T08:47:44Z</published>
    <link href="https://waylonwalker.com/gh-do-i-have-a-pr/" rel="alternate" type="text/html"></link>
    <summary type="text">In the age of agents sometimes work gets done on so many different worktrees and branches its hard to tell if there is already a PR or any of them or not,...</summary>
    <content type="html">&lt;p&gt;In the age of agents sometimes work gets done on so many different worktrees&#xA;and branches its hard to tell if there is already a PR or any of them or not,&#xA;the great &lt;code&gt;gh&lt;/code&gt; cli has us covered.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;gh pr list --head fix/markata-go-connections-graph&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ version-fox vfox</title>
    <id>https://waylonwalker.com/version-fox-vfox/</id>
    <updated>2026-03-02T02:57:32Z</updated>
    <published>2026-03-02T02:57:32Z</published>
    <link href="https://waylonwalker.com/version-fox-vfox/" rel="alternate" type="text/html"></link>
    <summary type="text">I like version-fox&#39;s project vfox.</summary>
    <content type="html">&lt;p&gt;I like &lt;a href=&#34;https://github.com/version-fox&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;version-fox’s&lt;/a&gt; project &lt;a href=&#34;https://github.com/version-fox/vfox&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;vfox&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;A cross-platform and extendable version manager with support for Java, Node.js, Golang, Python, Flutter, .NET &amp;amp; more&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Waiting For My Weekly Token Allowance</title>
    <id>https://waylonwalker.com/shots/waiting-for-my-weekly-token-allowance/</id>
    <updated>2026-02-28T11:28:24Z</updated>
    <published>2026-02-28T11:28:24Z</published>
    <link href="https://waylonwalker.com/shots/waiting-for-my-weekly-token-allowance/" rel="alternate" type="text/html"></link>
    <summary type="text">Openai gives me a token allowance for my $20 tier subscription, if I&#39;m careful it lasts a few days of heavy side project work.</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.wayl.one/file/818c2d71-521a-4286-a831-cccec1f9b82b.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Waiting for my weekly token allowance&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.wayl.one/file/818c2d71-521a-4286-a831-cccec1f9b82b.webp&#34; alt=&#34;Waiting for my weekly token allowance&#34;/ data-glightbox=&#34;description: Waiting for my weekly token allowance&#34;&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;Openai gives me a token allowance for my $20 tier subscription, if I’m careful it lasts a few days of heavy side project work.&lt;/p&gt;&lt;/figcaption&gt;&#xA;&lt;/figure&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.wayl.one/file/59a85775-c597-42f9-95be-28f250d4e72b.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Open image&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.wayl.one/file/59a85775-c597-42f9-95be-28f250d4e72b.webp&#34; alt=&#34;&#34;/ data-glightbox=&#34;description: &#34;&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;Opencode Zen out of tokens&lt;/p&gt;&lt;/figcaption&gt;&#xA;&lt;/figure&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.wayl.one/file/35052eef-9b3d-41ab-8d99-ed30f5015442.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Open image&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.wayl.one/file/35052eef-9b3d-41ab-8d99-ed30f5015442.webp&#34; alt=&#34;&#34;/ data-glightbox=&#34;description: &#34;&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;Openai out of tokens&lt;/p&gt;&lt;/figcaption&gt;&#xA;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ Kohei-Wada taskdog</title>
    <id>https://waylonwalker.com/kohei-wada-taskdog/</id>
    <updated>2026-02-27T21:08:43Z</updated>
    <published>2026-02-27T21:08:43Z</published>
    <link href="https://waylonwalker.com/kohei-wada-taskdog/" rel="alternate" type="text/html"></link>
    <summary type="text">Just starred taskdog by Kohei-Wada. It&#39;s an exciting project with a lot to offer.</summary>
    <content type="html">&lt;p&gt;Just starred &lt;a href=&#34;https://github.com/Kohei-Wada/taskdog&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;taskdog&lt;/a&gt; by &lt;a href=&#34;https://github.com/Kohei-Wada&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;Kohei-Wada&lt;/a&gt;. It’s an exciting project with a lot to offer.&lt;/p&gt;&#xA;&lt;p&gt;Terminal task manager with intelligent schedule optimization.Keyboard-only. No dragging, no micromanagement.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 jack cuts block in half</title>
    <id>https://waylonwalker.com/thought-941/</id>
    <updated>2026-02-27T11:29:10Z</updated>
    <published>2026-02-27T11:29:10Z</published>
    <link href="https://waylonwalker.com/thought-941/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://x.com/jack/status/2027129697092731343?s=20</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://x.com/jack/status/2027129697092731343?s=20&#34; class=&#34;embed-card-link  has-avatar has-avatar-before&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/x.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/x.com.ico&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;External Link&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;X (formerly Twitter) · x.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;One of the well worded shitty messages I’ve seen, good severance, help, timeline to cut off coms.&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;we’re not making this decision because we’re in trouble. our business is strong. gross profit continues to grow, we continue to serve more and more customers, and profitability is improving. but something has changed. we’re already seeing that the intelligence tools we’re creating and using, paired with smaller and flatter teams, are enabling a new way of working which fundamentally changes what it means to build and run a company. and that’s accelerating rapidly.&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;p&gt;Much better than the get rid of people cause AI can do the work.  Honestly I feel this though.  I was just talking with some colleages how do we divvy work in the age of agents without just constantly walking on each other.  If each of us is now an architect who is managing teams of junior agents under us it feels MUCH different than before.&lt;/p&gt;&#xA;&lt;p&gt;I’m far from working in a large software org like this and I’m feeling it.  I only imagine that it gets worse the more people that have to orchestrate around each other.&lt;/p&gt;&#xA;&lt;p&gt;Appreciate the honesty and transparance, but man this sucks for those impacted and the job market right now.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>The Ghostty Guy</title>
    <id>https://waylonwalker.com/ping-24/</id>
    <updated>2026-02-26T18:49:39Z</updated>
    <published>2026-02-26T18:49:39Z</published>
    <link href="https://waylonwalker.com/ping-24/" rel="alternate" type="text/html"></link>
    <summary type="text">I was today years old when I realized that the ghostty guy is the Hashicorp guy.</summary>
    <content type="html">&lt;p&gt;I was today years old when I realized that the ghostty guy is the Hashicorp guy.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ torvalds linux</title>
    <id>https://waylonwalker.com/torvalds-linux/</id>
    <updated>2026-02-25T16:09:09Z</updated>
    <published>2026-02-25T16:09:09Z</published>
    <link href="https://waylonwalker.com/torvalds-linux/" rel="alternate" type="text/html"></link>
    <summary type="text">Just starred linux by torvalds. It&#39;s an exciting project with a lot to offer.</summary>
    <content type="html">&lt;p&gt;Just starred &lt;a href=&#34;https://github.com/torvalds/linux&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;linux&lt;/a&gt; by &lt;a href=&#34;https://github.com/torvalds&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;torvalds&lt;/a&gt;. It’s an exciting project with a lot to offer.&lt;/p&gt;&#xA;&lt;p&gt;Linux kernel source tree&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 FFmpeg video crop</title>
    <id>https://waylonwalker.com/thought-940/</id>
    <updated>2026-02-25T08:29:59Z</updated>
    <published>2026-02-25T08:29:59Z</published>
    <link href="https://waylonwalker.com/thought-940/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://tools.simonwillison.net/ffmpeg-crop</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://tools.simonwillison.net/ffmpeg-crop&#34; class=&#34;embed-card-link  has-avatar has-avatar-before&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/tools.simonwillison.net.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/tools.simonwillison.net.ico&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;FFmpeg video crop&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;tools.simonwillison.net&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;This was the inspiration for the next update in dropper that became a full clip editor.  The one that I’ve long wanted, but forgotten about.  It’s going to include this cropper, resize, image extractor, and trimmer.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Tiny Tool Town 🏘️</title>
    <id>https://waylonwalker.com/thought-939/</id>
    <updated>2026-02-25T08:27:11Z</updated>
    <published>2026-02-25T08:27:11Z</published>
    <link href="https://waylonwalker.com/thought-939/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.tinytooltown.com/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://www.tinytooltown.com/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://www.tinytooltown.com/og-image.png&#34; alt=&#34;Tiny Tool Town 🏘️ — A delightful showcase for free, fun &amp;amp; open source tiny tools. Stupid-delightful software made with love.&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: Tiny Tool Town 🏘️ — A delightful showcase for free, fun &amp;amp; open source tiny tools. Stupid-delightful software made with love.&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Tiny Tool Town 🏘️&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;A delightful showcase for free, fun &amp;amp; open source tiny tools. Stupid-delightful software made with love.&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;Tiny Tool Town · tinytooltown.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Learned about this one from the @stipete &lt;a href=&#34;https://youtu.be/Wm7tsiJ1nIo?si=_qvZaR5SPWozBjrY&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/youtu.be.png&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/youtu.be.png&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;interview&lt;/a&gt; @scotthanselman did on YouTube.  This is proof that the internet is alive.  It’s such web 1.0 nostalgia to see that people can just build things!  Did you know that you can literally just build things and make them exist?  You don’t need users, You don’t need a big platform, you can just make something into existance.  It seems like something we have forgotten through web 2.0 where everything as become 4 major apps all linking to each other and trying to hoard all of the attention. Scroll through tehre are some really cool apps, probably nothing that has the polish you want, or is going to change your world.  What these apps have more than anything you’ve probably used in the recent years, is inspiration.  Its xyz, but the way I wanted, or with my little twist.  And no one else has to like it but me because I’m the user.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 FancyGist</title>
    <id>https://waylonwalker.com/thought-938/</id>
    <updated>2026-02-25T08:07:40Z</updated>
    <published>2026-02-25T08:07:40Z</published>
    <link href="https://waylonwalker.com/thought-938/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://fancygist.com/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://fancygist.com/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;/og.png&#34; alt=&#34;FancyGist&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: FancyGist&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;FancyGist&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;fancygist.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;I saw this in @cassido’s newsletter this week and had to give it a run.  I despise that there is no dark mode and it insists on burning my retinas 😤.  But really this is an absolute beate of a web based markdown editor, I love the command mode to press slash and it just pops out in this whimsical animation ready for me to pick what I want.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/74f0ac1e-ac50-4939-8bba-4698a8043b25.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Open image&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/file/74f0ac1e-ac50-4939-8bba-4698a8043b25.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/file/74f0ac1e-ac50-4939-8bba-4698a8043b25.mp4&#34; type=&#34;video/mp4&#34;&gt;Your browser does not support the video tag.&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Dropper Just Got The Clip Editor I&#39;ve Dreamed Of</title>
    <id>https://waylonwalker.com/shots/dropper-just-got-the-clip-editor-i&#39;ve-dreamed-of/</id>
    <updated>2026-02-24T21:33:37Z</updated>
    <published>2026-02-24T21:33:37Z</published>
    <link href="https://waylonwalker.com/shots/dropper-just-got-the-clip-editor-i&#39;ve-dreamed-of/" rel="alternate" type="text/html"></link>
    <summary type="text">Editing a Session Skate Sim clip inside of dropper with trim, scrub, and crop.</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.wayl.one/file/63be6ed0-3265-4d6a-b5c7-7aa61838b3ba.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;dropper just got the clip editor I’ve dreamed of&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.wayl.one/file/63be6ed0-3265-4d6a-b5c7-7aa61838b3ba.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.wayl.one/file/63be6ed0-3265-4d6a-b5c7-7aa61838b3ba.mp4&#34; type=&#34;video/mp4&#34;&gt;dropper just got the clip editor I’ve dreamed of&lt;/video&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;Editing a Session Skate Sim clip inside of dropper with trim, scrub, and crop.&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Dropper Gets Video Thumbnail Upgrade</title>
    <id>https://waylonwalker.com/shots/dropper-gets-video-thumbnail-upgrade/</id>
    <updated>2026-02-24T21:16:54Z</updated>
    <published>2026-02-24T21:16:54Z</published>
    <link href="https://waylonwalker.com/shots/dropper-gets-video-thumbnail-upgrade/" rel="alternate" type="text/html"></link>
    <summary type="text">In the video clip you can see me reload into the latest version of dropper that supports video thumbnails, turning those unknown clips into a collection I can recognize.</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.wayl.one/file/3c8ef069-be64-4e80-b386-c9463830a0d6.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Dropper gets video thumbnail upgrade&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.wayl.one/file/3c8ef069-be64-4e80-b386-c9463830a0d6.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.wayl.one/file/3c8ef069-be64-4e80-b386-c9463830a0d6.mp4&#34; type=&#34;video/mp4&#34;&gt;Dropper gets video thumbnail upgrade&lt;/video&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;In the video clip you can see me reload into the latest version of dropper that supports video thumbnails, turning those unknown clips into a collection I can recognize.&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>/verify</title>
    <id>https://waylonwalker.com/verify/</id>
    <updated>2026-02-24T10:36:57Z</updated>
    <published>2026-02-24T10:36:57Z</published>
    <link href="https://waylonwalker.com/verify/" rel="alternate" type="text/html"></link>
    <summary type="text">Inspired by @mollywhite&#39;s verify slashpage. This page serves as the system of record for my online identity. The best places to follow me are:</summary>
    <content type="html">&lt;p&gt;Inspired by @mollywhite’s&#xA;&lt;a href=&#34;https://mollywhite.net/verify/&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/mollywhite.net.png&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/mollywhite.net.png&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;verify&lt;/a&gt; &lt;a href=&#34;https://slashpages.net&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/slashpages.net.png&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/slashpages.net.png&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;slashpage&lt;/a&gt;.&#xA;This page serves as the system of record for my online identity. The best&#xA;places to follow me are:&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;My Website: &lt;a href=&#34;https://waylonwalker.com&#34;&gt;waylonwalker.com&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;YouTube: &lt;a href=&#34;https://youtube.com/waylonwalker&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/youtube.com.png&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/youtube.com.png&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;Waylon Walker&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;YouTube Gaming: &lt;a href=&#34;https://www.youtube.com/channel/UCHuxc1HRsd3aRjvL6C817tQ&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/www.youtube.com.png&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/www.youtube.com.png&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;Waylon Walker Gaming&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;Twitch: &lt;a href=&#34;https://www.twitch.tv/waylonwalker&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/www.twitch.tv.png&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/www.twitch.tv.png&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;Waylon Walker&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;Twitter: &lt;a href=&#34;https://twitter.com/_WaylonWalker&#34;&gt;@_WaylonWalker&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;LinkedIn: &lt;a href=&#34;https://www.linkedin.com/in/waylonwalker&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/www.linkedin.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/www.linkedin.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;Waylon Walker&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;GitHub: &lt;a href=&#34;https://github.com/WaylonWalker&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;WaylonWalker&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;Dev.to: &lt;a href=&#34;https://dev.to/waylonwalker&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/dev.to.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/dev.to.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;Waylon Walker&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;Bluesky: &lt;a href=&#34;https://bsky.app/profile/waylonwalker.com&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/bsky.app.png&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/bsky.app.png&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;@waylonwalker.com&lt;/a&gt;&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Gma Silk Fail1</title>
    <id>https://waylonwalker.com/shots/gma-silk-fail1/</id>
    <updated>2026-02-23T17:52:50Z</updated>
    <published>2026-02-23T17:52:50Z</published>
    <link href="https://waylonwalker.com/shots/gma-silk-fail1/" rel="alternate" type="text/html"></link>
    <summary type="text">Gma Silk Fail1</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/21e82f95-c53b-449b-858d-c66c375b38e8.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Gma Silk Fail1&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/file/21e82f95-c53b-449b-858d-c66c375b38e8.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/file/21e82f95-c53b-449b-858d-c66c375b38e8.mp4&#34; type=&#34;video/mp4&#34;&gt;Gma Silk Fail1&lt;/video&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;Gma Silk Fail1&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Post Lace2 Dream</title>
    <id>https://waylonwalker.com/shots/post-lace2-dream/</id>
    <updated>2026-02-23T17:51:06Z</updated>
    <published>2026-02-23T17:51:06Z</published>
    <link href="https://waylonwalker.com/shots/post-lace2-dream/" rel="alternate" type="text/html"></link>
    <summary type="text">Post Lace2 Dream</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/03cd8071-33ee-4280-a4e4-4a5df382d627.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Post Lace2 Dream&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/file/03cd8071-33ee-4280-a4e4-4a5df382d627.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/file/03cd8071-33ee-4280-a4e4-4a5df382d627.mp4&#34; type=&#34;video/mp4&#34;&gt;Post Lace2 Dream&lt;/video&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;Post Lace2 Dream&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Lace2</title>
    <id>https://waylonwalker.com/shots/lace2/</id>
    <updated>2026-02-23T17:48:56Z</updated>
    <published>2026-02-23T17:48:56Z</published>
    <link href="https://waylonwalker.com/shots/lace2/" rel="alternate" type="text/html"></link>
    <summary type="text">Lace2</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/e325282a-d50a-4f85-9e08-634bc0faca74.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Lace2&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/file/e325282a-d50a-4f85-9e08-634bc0faca74.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/file/e325282a-d50a-4f85-9e08-634bc0faca74.mp4&#34; type=&#34;video/mp4&#34;&gt;Lace2&lt;/video&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;Lace2&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Reply guy</title>
    <id>https://waylonwalker.com/thought-937/</id>
    <updated>2026-02-23T08:39:41Z</updated>
    <published>2026-02-23T08:39:41Z</published>
    <link href="https://waylonwalker.com/thought-937/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://simonwillison.net/2026/Feb/23/reply-guy/#atom-everything</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://simonwillison.net/2026/Feb/23/reply-guy/#atom-everything&#34; class=&#34;embed-card-link  has-avatar has-avatar-before&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/simonwillison.net.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/simonwillison.net.ico&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Reply guy&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;The latest scourge of Twitter is AI bots that reply to your tweets with generic, banal commentary slop, often accompanied by a question to &amp;#34;drive engagement&amp;#34; and waste as much …&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;Simon Willison’s Weblog · simonwillison.net&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;I had no idea there were such things as “reply guy” as a service.  I can see this as a really genuine thing where brands want to genuinely engage with their communities, quickly being taken over by slop bros to ruin everything.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Smaller and dumber - daverupert.com</title>
    <id>https://waylonwalker.com/thought-936/</id>
    <updated>2026-02-23T08:36:05Z</updated>
    <published>2026-02-23T08:36:05Z</published>
    <link href="https://waylonwalker.com/thought-936/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://daverupert.com/2026/02/smaller-and-dumber/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://daverupert.com/2026/02/smaller-and-dumber/&#34; class=&#34;embed-card-link  has-avatar has-avatar-before&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/daverupert.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/daverupert.com.ico&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Smaller and dumber&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;If I can make it smaller, I should.&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;daverupert.com · daverupert.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Important things to remember in the age of cheap code.  More code, not always more better.  More code mean, more risk, more maintenance, harder to change.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 An attempt at a balanced perspective on AI - YouTube</title>
    <id>https://waylonwalker.com/thought-935/</id>
    <updated>2026-02-22T21:09:05Z</updated>
    <published>2026-02-22T21:09:05Z</published>
    <link href="https://waylonwalker.com/thought-935/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/watch?v=FC7YGG0FzZ0</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;FC7YGG0FzZ0&#34; title=&#34;An attempt at a balanced perspective on AI&#34; playlabel=&#34;Play: An attempt at a balanced perspective on AI&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;THIS, THIS is how most people are feeling about AI right now.  Theres lots of “oh ai bad”, “but ai help”, “but ai company sleezy”.  Cassidy did a fantastic job summarizing how most of us are feeling.  Ending with well at the end of the day, I can’t do anything about the bad, the best thing I can do is learn how to embrace the good cause it aint going away any time soon.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Thoughts Cluster Looks Like A Flower</title>
    <id>https://waylonwalker.com/shots/thoughts-cluster-looks-like-a-flower/</id>
    <updated>2026-02-21T15:49:25Z</updated>
    <published>2026-02-21T15:49:25Z</published>
    <link href="https://waylonwalker.com/shots/thoughts-cluster-looks-like-a-flower/" rel="alternate" type="text/html"></link>
    <summary type="text">My thoughts connections made an interesting flower layout.</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/5e7ccf2b-bf88-4e1e-ae39-e4a9fc718083.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Thoughts cluster looks like a flower&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/file/5e7ccf2b-bf88-4e1e-ae39-e4a9fc718083.webp&#34; alt=&#34;Thoughts cluster looks like a flower&#34;/ data-glightbox=&#34;description: Thoughts cluster looks like a flower&#34;&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;My thoughts connections made an interesting flower layout.&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Post by @castpixel.bsky.social — Bluesky</title>
    <id>https://waylonwalker.com/thought-934/</id>
    <updated>2026-02-19T17:11:42Z</updated>
    <published>2026-02-19T17:11:42Z</published>
    <link href="https://waylonwalker.com/thought-934/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://bsky.app/profile/castpixel.bsky.social/post/3mf52azn5oc2h</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://bsky.app/profile/castpixel.bsky.social/post/3mf52azn5oc2h&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img src=&#34;https://cdn.bsky.app/img/feed_thumbnail/plain/did:plc:oybl65tqxhrz2kudyddnfsll/bafkreieol42oec5cxatj3xxpkekepoyhjcxkkwcom4tzyfuiu3vk7gj7ia&#34; alt=&#34;castpixel  ⚧️⚢ (@castpixel.bsky.social) — I made a tool that turns PCB designs into 3D-printable molds. you sandwich copper tape between the parts, sand the ridges, and you have a real working PCB. no etching, no chemicals. I am losing my mind&#xA;&amp;lt;p&amp;gt;castpixel.itch.io/pcb-forge&amp;#34; loading=“lazy”&amp;gt;&#xA;&amp;lt;/div&amp;gt;&#xA;&amp;lt;div class=&#34; embed-card-content glightbox&#34;=&#34;&#34;/ data-glightbox=&#34;description: castpixel  ⚧️⚢ (@castpixel.bsky.social) — I made a tool that turns PCB designs into 3D-printable molds. you sandwich copper tape between the parts, sand the ridges, and you have a real working PCB. no etching, no chemicals. I am losing my mind&#xA;&amp;lt;p&amp;gt;castpixel.itch.io/pcb-forge&amp;#34; loading=“lazy”&amp;gt;&#xA;&amp;lt;/div&amp;gt;&#xA;&amp;lt;div class=&#34;&gt;&#xA;&lt;div class=&#34;embed-card-title&#34;&gt;castpixel  ⚧️⚢ (@castpixel.bsky.social)&lt;/div&gt;&#xA;&lt;div class=&#34;embed-card-description&#34;&gt;I made a tool that turns PCB designs into 3D-printable molds. you sandwich copper tape between the parts, sand the ridges, and you have a real working PCB. no etching, no chemicals. I am losing my …&lt;/div&gt;&#xA;&lt;div class=&#34;embed-card-meta&#34;&gt;Bluesky Social · bsky.app&lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;/a&gt;&lt;p&gt;&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;This is a wild way to build prototype pcb’s, so cool and creative.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Session: Skate Sim on X: &#34;Our long-awaited Skate Core Update i...</title>
    <id>https://waylonwalker.com/thought-933/</id>
    <updated>2026-02-19T17:10:18Z</updated>
    <published>2026-02-19T17:10:18Z</published>
    <link href="https://waylonwalker.com/thought-933/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://x.com/SessionGame/status/2024469214396838140</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://x.com/SessionGame/status/2024469214396838140&#34; class=&#34;embed-card-link  has-avatar has-avatar-before&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/x.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/x.com.ico&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;External Link&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;X (formerly Twitter) · x.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Had 10 minutes to play with the new session updates this afternoon and it feels so much smoother.  I can definitely feel it even as a casual user.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 trash on X: &#34;loving the state of development right now https:/...</title>
    <id>https://waylonwalker.com/thought-932/</id>
    <updated>2026-02-19T17:07:34Z</updated>
    <published>2026-02-19T17:07:34Z</published>
    <link href="https://waylonwalker.com/thought-932/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://x.com/trashh_dev/status/2024476878015468027</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://x.com/trashh_dev/status/2024476878015468027&#34; class=&#34;embed-card-link  has-avatar has-avatar-before&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/x.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/x.com.ico&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;External Link&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;X (formerly Twitter) · x.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;There are so many config files right now, glad to see some standards coming in around Agents.md, but so much is still specialized to a whole host of tools that have not been standardized on yet.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Silksong Demastered</title>
    <id>https://waylonwalker.com/thought-931/</id>
    <updated>2026-02-17T18:20:18Z</updated>
    <published>2026-02-17T18:20:18Z</published>
    <link href="https://waylonwalker.com/thought-931/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://nekodot.itch.io/silksong-nes</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://nekodot.itch.io/silksong-nes&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://img.itch.zone/aW1nLzI1NTY5MDUxLnBuZw==/original/4hxpLH.png&#34; alt=&#34;Silksong: Demastered by Nekodot — Hollow Knight: Silksong in the classic NES-style!&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: Silksong: Demastered by Nekodot — Hollow Knight: Silksong in the classic NES-style!&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Silksong: Demastered by Nekodot&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Hollow Knight: Silksong in the classic NES-style!&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;itch.io · nekodot.itch.io&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;This is an abolute banger of a game on itch.  It nails the nes aesthetic while keeping true to the modern silksong movements.  You can play through the first boss Moss Mother, and where you start the first ascend into Bone Bottom.  I was in shock when I discovered the little climb effect hornet does when you just cant quite make a jump, the hold jump for height is on point.  Her downstrike with the hunters crest is perfect.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Blueskii on X: &#34;this underground creator named &#34;sN0UK&#34; made Qu...</title>
    <id>https://waylonwalker.com/thought-930/</id>
    <updated>2026-02-17T08:02:51Z</updated>
    <published>2026-02-17T08:02:51Z</published>
    <link href="https://waylonwalker.com/thought-930/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://x.com/LayoutPerson/status/2023551519375900957</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://x.com/LayoutPerson/status/2023551519375900957&#34; class=&#34;embed-card-link  has-avatar has-avatar-before&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/x.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/x.com.ico&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;External Link&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;X (formerly Twitter) · x.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Wyatt would absolutely love this banger of a level.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://x.com/i/status/2023551519375900957&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Open image&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://x.com/i/status/2023551519375900957&#34; alt=&#34;&#34;/ data-glightbox=&#34;description: &#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Home / X</title>
    <id>https://waylonwalker.com/thought-929/</id>
    <updated>2026-02-17T07:58:16Z</updated>
    <published>2026-02-17T07:58:16Z</published>
    <link href="https://waylonwalker.com/thought-929/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://x.com/dhh/status/2023710298201350606/photo/1</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://x.com/dhh/status/2023710298201350606/photo/1&#34; class=&#34;embed-card-link  has-avatar has-avatar-before&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/x.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/x.com.ico&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;External Link&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;X (formerly Twitter) · x.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;To the untrained eye this passes as any normal gui editor.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/86d45a22-9ed4-4f14-8070-5f0cadee9bad.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Open image&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/file/86d45a22-9ed4-4f14-8070-5f0cadee9bad.webp&#34; alt=&#34;&#34;/ data-glightbox=&#34;description: &#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 uvx.sh | Astral</title>
    <id>https://waylonwalker.com/thought-928/</id>
    <updated>2026-02-16T14:21:29Z</updated>
    <published>2026-02-16T14:21:29Z</published>
    <link href="https://waylonwalker.com/thought-928/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://uvx.sh/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://uvx.sh/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;uvx.sh | Astral&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Install Python tools with a single command. Powered by uv.&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;uvx.sh&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;astral silently dropped a clever uvx.sh to help builders reach a wider audience, no longer does a user need to have python installed prior to installing a python cli. It does have a hard requirement on having curl or wget available.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 POV: You install Clawdbot on VPS - YouTube</title>
    <id>https://waylonwalker.com/thought-927/</id>
    <updated>2026-02-16T10:22:40Z</updated>
    <published>2026-02-16T10:22:40Z</published>
    <link href="https://waylonwalker.com/thought-927/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/shorts/bof8TkZkr1I</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;bof8TkZkr1I&#34; title=&#34;POV: You install Clawdbot on VPS&#34; playlabel=&#34;Play: POV: You install Clawdbot on VPS&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Use a linux vps, It’s easy, just follow these simple instructions.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 POV: Your AI Models change faster than JS Frameworks - YouTube</title>
    <id>https://waylonwalker.com/thought-926/</id>
    <updated>2026-02-16T10:21:52Z</updated>
    <published>2026-02-16T10:21:52Z</published>
    <link href="https://waylonwalker.com/thought-926/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/shorts/vGKC9LpGnOQ</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;vGKC9LpGnOQ&#34; title=&#34;POV: Your AI Models change faster than JS Frameworks&#34; playlabel=&#34;Play: POV: Your AI Models change faster than JS Frameworks&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;We are living through the js framework wars for agents and llms now.  We will look back on this with clarity, and wonder why we wasted time with things like graphql, and why we couldn’t see the real winners from the start.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 OpenClaw: The Viral AI Agent that Broke the Internet - Peter S...</title>
    <id>https://waylonwalker.com/thought-925/</id>
    <updated>2026-02-16T10:19:08Z</updated>
    <published>2026-02-16T10:19:08Z</published>
    <link href="https://waylonwalker.com/thought-925/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/watch?v=YFjfBk8HI5o</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;YFjfBk8HI5o&#34; title=&#34;OpenClaw: The Viral AI Agent that Broke the Internet - Peter Steinberger | Lex Fridman Podcast #491&#34; playlabel=&#34;Play: OpenClaw: The Viral AI Agent that Broke the Internet - Peter Steinberger | Lex Fridman Podcast #491&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Such a good interview @lexfridman is such a talented interview.  It’s so cool to see the other side of this.  For weeks we’ve heard about the story of the name change, we’ve seen everyone shitting on the security model, buying up all the mac minis in existance, fear mongering not to install this thing.  @steipete.me has such a cool story from the beginning talking about making this thing fun and exciting.  Giving it a personality that is not “You are absolutely right”.  The story of changing the name twice, and getting pwnd on every step the first time and nailing it the second time is incredible.  Dude is having fun trying to make the thing he wants in the world exist.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Happy Valentines Breakfast 2026</title>
    <id>https://waylonwalker.com/shots/happy-valentines-breakfast-2026/</id>
    <updated>2026-02-14T19:26:30Z</updated>
    <published>2026-02-14T19:26:30Z</published>
    <link href="https://waylonwalker.com/shots/happy-valentines-breakfast-2026/" rel="alternate" type="text/html"></link>
    <summary type="text">A one eye&#39;d pirate (egg in toast) in the shape of a heart for Ayla.</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/48c9dfa2-326c-42eb-ae17-78887fa0146c.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Happy Valentines Breakfast 2026&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/file/48c9dfa2-326c-42eb-ae17-78887fa0146c.webp&#34; alt=&#34;Happy Valentines Breakfast 2026&#34;/ data-glightbox=&#34;description: Happy Valentines Breakfast 2026&#34;&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;A one eye’d pirate (egg in toast) in the shape of a heart for Ayla.&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/f0233aa3-175c-45e0-8e96-c2628ab55f1a.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Prepped bread for the heart shaped one eye’d pirate&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/file/f0233aa3-175c-45e0-8e96-c2628ab55f1a.webp&#34; alt=&#34;Prepped bread for the heart shaped one eye’d pirate&#34;/ data-glightbox=&#34;description: Prepped bread for the heart shaped one eye’d pirate&#34;&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;Ayla helped with the ideation and the Prep work.&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>New Fast Mode In Markata-Go Is Fun</title>
    <id>https://waylonwalker.com/shots/new-fast-mode-in-markata-go-is-fun/</id>
    <updated>2026-02-14T19:25:04Z</updated>
    <published>2026-02-14T19:25:04Z</published>
    <link href="https://waylonwalker.com/shots/new-fast-mode-in-markata-go-is-fun/" rel="alternate" type="text/html"></link>
    <summary type="text">Swapping themes with the theme picker cli and watching the output change within about 1-2s live reloaded in the browser.</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/6676ab86-02a2-4596-8ce9-9af34a98eda3.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;New fast mode in markata-go is fun&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/file/6676ab86-02a2-4596-8ce9-9af34a98eda3.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/file/6676ab86-02a2-4596-8ce9-9af34a98eda3.mp4&#34; type=&#34;video/mp4&#34;&gt;New fast mode in markata-go is fun&lt;/video&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;Swapping themes with the theme picker cli and watching the output change within about 1-2s live reloaded in the browser.&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>double gutter</title>
    <id>https://waylonwalker.com/double-gutter/</id>
    <updated>2026-02-14T09:12:42Z</updated>
    <published>2026-02-14T09:12:42Z</published>
    <link href="https://waylonwalker.com/double-gutter/" rel="alternate" type="text/html"></link>
    <summary type="text">I keep forgetting about the double gutter problem with nested containers. When you put padding on a parent and the child also has padding, you get twice the...</summary>
    <content type="html">&lt;p&gt;I keep forgetting about the double gutter problem with nested containers.  When&#xA;you put padding on a parent and the child also has padding, you get twice the&#xA;spacing you wanted.&lt;/p&gt;&#xA;&lt;h2 id=&#34;the-problem&#34;&gt;The Problem &lt;a href=&#34;#the-problem&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;container&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  &lt;span class=&#34;k&#34;&gt;padding&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;mi&#34;&gt;2&lt;/span&gt;&lt;span class=&#34;kt&#34;&gt;rem&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;}&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;child&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  &lt;span class=&#34;k&#34;&gt;padding&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;mi&#34;&gt;2&lt;/span&gt;&lt;span class=&#34;kt&#34;&gt;rem&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;}&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Now your content is 4rem from the edge.  Not what I meant at all.&lt;/p&gt;&#xA;&lt;h2 id=&#34;the-fix&#34;&gt;The Fix &lt;a href=&#34;#the-fix&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;Either remove padding from the parent or use &lt;code&gt;box-sizing: border-box&lt;/code&gt; and plan&#xA;for it.  I usually just drop the parent padding when I realize what I have done.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Naya Connect | Hackaday</title>
    <id>https://waylonwalker.com/thought-924/</id>
    <updated>2026-02-12T21:39:21Z</updated>
    <published>2026-02-12T21:39:21Z</published>
    <link href="https://waylonwalker.com/thought-924/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://hackaday.com/tag/naya-connect/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://hackaday.com/tag/naya-connect/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://s0.wp.com/_si/?t=eyJpbWciOiJodHRwczpcL1wvaGFja2FkYXkuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDIwXC8wN1wvaGFja2FkYXktbG9nby13aXRoLXRleHQtb3BlbmdyYXBoLWRlZmF1bHQtaW1hZ2UuanBnIiwidHh0IjoiSGFja2FkYXkiLCJ0ZW1wbGF0ZSI6ImhpZ2h3YXkiLCJmb250IjoiIiwiYmxvZ19pZCI6MTU2NjcwMTc3fQ.kVPxWrsIQyGdD1cPoxYvzP1mD56qtpkNpW1nAFiZiIgMQ&#34; alt=&#34;Naya Connect – Hackaday&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: Naya Connect – Hackaday&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Naya Connect – Hackaday&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;Hackaday · hackaday.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;The idea of adjustable key caps to mutate your board into something that really fits you, how you type, how your fingers move, is an absolute banger.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>First W In Brotato</title>
    <id>https://waylonwalker.com/first-w-in-brotato/</id>
    <updated>2026-02-11T20:48:08Z</updated>
    <published>2026-02-11T20:48:08Z</published>
    <link href="https://waylonwalker.com/first-w-in-brotato/" rel="alternate" type="text/html"></link>
    <summary type="text">After having brotato and doing a few runs every once in a while I ** beat the most basic balanced run in the game! Wyatt wanted to play tonight and its such...</summary>
    <content type="html">&lt;p&gt;After having brotato and doing a few runs every once in a while I &lt;strong&gt;finally&lt;/strong&gt;&#xA;beat the most basic balanced run in the game!  Wyatt wanted to play tonight and&#xA;its such an easy game to jump in do a few runs and move on without getting&#xA;overly invested.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/07c87b1d-60a0-4527-a045-d4203ca929db.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;I almost died&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/file/07c87b1d-60a0-4527-a045-d4203ca929db.webp&#34; alt=&#34;I almost died&#34;/ data-glightbox=&#34;description: I almost died&#34;&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;Watching back I cannot believe how lucky I got, barely scraping by with 1hp at this point&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/f1711b94-dad1-4f97-b6ac-1de34db4a779.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Open image&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/file/f1711b94-dad1-4f97-b6ac-1de34db4a779.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/file/f1711b94-dad1-4f97-b6ac-1de34db4a779.mp4&#34; type=&#34;video/mp4&#34;&gt;Your browser does not support the video tag.&lt;/video&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;the last 80s of the game&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/9b108e98-1f43-4b94-8824-467abcbf9e54.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Winning Loadout&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/file/9b108e98-1f43-4b94-8824-467abcbf9e54.webp&#34; alt=&#34;Winning Loadout&#34;/ data-glightbox=&#34;description: Winning Loadout&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Brotato Balanced Win</title>
    <id>https://waylonwalker.com/shots/brotato-balanced-win/</id>
    <updated>2026-02-11T20:47:48Z</updated>
    <published>2026-02-11T20:47:48Z</published>
    <link href="https://waylonwalker.com/shots/brotato-balanced-win/" rel="alternate" type="text/html"></link>
    <summary type="text">Taking the W in a brotato run</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/f1711b94-dad1-4f97-b6ac-1de34db4a779.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Brotato Balanced Win&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/file/f1711b94-dad1-4f97-b6ac-1de34db4a779.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/file/f1711b94-dad1-4f97-b6ac-1de34db4a779.mp4&#34; type=&#34;video/mp4&#34;&gt;Brotato Balanced Win&lt;/video&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;Taking the W in a brotato run&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>/top4</title>
    <id>https://waylonwalker.com/top4/</id>
    <updated>2026-02-11T14:00:00Z</updated>
    <published>2026-02-11T14:00:00Z</published>
    <link href="https://waylonwalker.com/top4/" rel="alternate" type="text/html"></link>
    <summary type="text">Definitive ranked lists of my top 3 favorites plus an honorable mention.</summary>
    <content type="html">&lt;p&gt;Definitive ranked lists of my top 3 favorites plus an honorable mention.&lt;/p&gt;&#xA;&lt;h2 id=&#34;terminal-tools&#34;&gt;Terminal Tools &lt;a href=&#34;#terminal-tools&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;ol&gt;&#xA;&lt;li&gt;&lt;strong&gt;&lt;a href=&#34;https://neovim.io/&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/neovim.io.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/neovim.io.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;neovim&lt;/a&gt;&lt;/strong&gt; - modal editing changed how I think about text&lt;/li&gt;&#xA;&lt;li&gt;&lt;strong&gt;&lt;a href=&#34;https://tmux.github.io/&#34;&gt;tmux&lt;/a&gt;&lt;/strong&gt; - terminal sessions that survive disconnects and allow me to hop between projects at the speed of thought.&lt;/li&gt;&#xA;&lt;li&gt;&lt;strong&gt;&lt;a href=&#34;https://k9scli.io/&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/k9scli.io.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/k9scli.io.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;k9s&lt;/a&gt;&lt;/strong&gt; - S tier tui interface that all tuis should strive for&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;p&gt;&lt;strong&gt;Honorable mention:&lt;/strong&gt; &lt;a href=&#34;https://ipython.org/&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/ipython.org.png&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/ipython.org.png&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;ipython&lt;/a&gt;&lt;/p&gt;&#xA;&lt;h2 id=&#34;python-tools&#34;&gt;Python Tools &lt;a href=&#34;#python-tools&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;ol&gt;&#xA;&lt;li&gt;&lt;strong&gt;&lt;a href=&#34;https://pandas.pydata.org/&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/pandas.pydata.org.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/pandas.pydata.org.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;pandas&lt;/a&gt;&lt;/strong&gt; - This is what got me out of corporate spreadsheets and back into code/software.&lt;/li&gt;&#xA;&lt;li&gt;&lt;strong&gt;&lt;a href=&#34;https://kedro.org/&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/kedro.org.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/kedro.org.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;kedro&lt;/a&gt;&lt;/strong&gt; - data pipelines with opinions I agree with&lt;/li&gt;&#xA;&lt;li&gt;&lt;strong&gt;&lt;a href=&#34;https://fastapi.tiangolo.com/&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/fastapi.tiangolo.com.png&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/fastapi.tiangolo.com.png&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;fastapi&lt;/a&gt;&lt;/strong&gt; - my favorite python web framework&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;p&gt;&lt;strong&gt;Honorable mention:&lt;/strong&gt; &lt;a href=&#34;https://typer.tiangolo.com/&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/typer.tiangolo.com.png&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/typer.tiangolo.com.png&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;typer&lt;/a&gt; - fast cli apps&lt;/p&gt;&#xA;&lt;h2 id=&#34;games-to-play-with-kids&#34;&gt;Games to Play with Kids &lt;a href=&#34;#games-to-play-with-kids&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;&lt;em&gt;multiplayer&lt;/em&gt;&lt;/p&gt;&#xA;&lt;ol&gt;&#xA;&lt;li&gt;&lt;strong&gt;&lt;a href=&#34;https://minecraft.net/&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/minecraft.net.png&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/minecraft.net.png&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;Minecraft&lt;/a&gt;&lt;/strong&gt; - infinite creativity, modding potential&lt;/li&gt;&#xA;&lt;li&gt;&lt;strong&gt;&lt;a href=&#34;https://store.steampowered.com/app/1211020/Wobbly_Life/&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/store.steampowered.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/store.steampowered.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;Wobbly Life&lt;/a&gt;&lt;/strong&gt; - Open World Co-op&lt;/li&gt;&#xA;&lt;li&gt;&lt;strong&gt;&lt;a href=&#34;https://www.stardewvalley.net/&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/www.stardewvalley.net.png&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/www.stardewvalley.net.png&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;Stardew Valley&lt;/a&gt;&lt;/strong&gt; - cozy, collaborative farming&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;p&gt;&lt;strong&gt;Honorable mention:&lt;/strong&gt; &lt;a href=&#34;https://www.terraria.org/&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/www.terraria.org.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/www.terraria.org.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;Terraria&lt;/a&gt; - 2d world builder&lt;/p&gt;&#xA;&lt;h2 id=&#34;games-to-play-alone&#34;&gt;Games to Play Alone &lt;a href=&#34;#games-to-play-alone&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;&lt;em&gt;singleplayer&lt;/em&gt;&lt;/p&gt;&#xA;&lt;ol&gt;&#xA;&lt;li&gt;&lt;strong&gt;&lt;a href=&#34;https://www.hollowknight.com/&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/www.hollowknight.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/www.hollowknight.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;Hollow Knight&lt;/a&gt;/&lt;a href=&#34;https://hollowknightsilksong.com/&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/hollowknightsilksong.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/hollowknightsilksong.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;Hollow Knight Silksong&lt;/a&gt;&lt;/strong&gt; - S tier 2d platformer with adventure, mystery, lore, boss fights.&lt;/li&gt;&#xA;&lt;li&gt;&lt;strong&gt;&lt;a href=&#34;https://store.steampowered.com/app/861650/Session_Skate_Sim/&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/store.steampowered.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/store.steampowered.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;Session Skate Sim&lt;/a&gt;&lt;/strong&gt; - The best skate sim&lt;/li&gt;&#xA;&lt;li&gt;&lt;strong&gt;&lt;a href=&#34;https://www.animalwell.net/&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/www.animalwell.net.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/www.animalwell.net.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;Animal Well&lt;/a&gt;&lt;/strong&gt; - epic 2d platformer with the most incredible graphics at 320p ever created and the deepest puzzles Ive seen&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;p&gt;&lt;strong&gt;Honorable mention:&lt;/strong&gt; &lt;a href=&#34;https://store.steampowered.com/app/400/Portal/&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/store.steampowered.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/store.steampowered.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;Portal&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;em&gt;Inspired by &lt;a href=&#34;https://topfour.net&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/topfour.net.png&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/topfour.net.png&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;topfour.net&lt;/a&gt; and &lt;a href=&#34;https://slashpages.net&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/slashpages.net.png&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/slashpages.net.png&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;slashpages.net&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;&#xA;&lt;h2 id=&#34;albums&#34;&gt;Albums &lt;a href=&#34;#albums&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;ol&gt;&#xA;&lt;li&gt;&lt;strong&gt;&lt;a href=&#34;https://music.youtube.com/playlist?list=OLAK5uy_nQZeZomNaDner6XRg5FeJrzgdKXnGSJwY&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/music.youtube.com.png&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/music.youtube.com.png&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;Atreyu Greatest&#xA;Hits&lt;/a&gt;&lt;/strong&gt; - Greatest hits is 100% a cop out on my behalf, but this is legit the&#xA;full album I’ve listened to 10x more than any other album since having a cd&#xA;player as a kid.  This is my go to skate jam album.&lt;/li&gt;&#xA;&lt;li&gt;&lt;strong&gt;&lt;a href=&#34;https://music.youtube.com/playlist?list=OLAK5uy_k4Xnda2Pxyc90mpntw7hdOPCA3JKeOkRY&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/music.youtube.com.png&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/music.youtube.com.png&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;Hybrid Theory&lt;/a&gt; - Linkin Park&lt;/strong&gt; This album was featured in almost moto part from my youth.&lt;/li&gt;&#xA;&lt;li&gt;&lt;strong&gt;&lt;a href=&#34;https://music.youtube.com/playlist?list=OLAK5uy_ktsNq_asQthl1xOm_tXwpD9tZa5413YFc&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/music.youtube.com.png&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/music.youtube.com.png&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;The Life of a Showgirl&lt;/a&gt; - Taylor Swift&lt;/strong&gt; - Best album to listen to as a family.&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;h2 id=&#34;artists&#34;&gt;Artists &lt;a href=&#34;#artists&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;ol&gt;&#xA;&lt;li&gt;&lt;strong&gt;&lt;a href=&#34;https://music.youtube.com/channel/UC54RgORww0lUMVq4NwdwANQ&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/music.youtube.com.png&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/music.youtube.com.png&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;Killswitch Engage&lt;/a&gt;&lt;/strong&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;strong&gt;&lt;a href=&#34;https://music.youtube.com/channel/UCFcqi7MrlzIp9RMTtUlxE8g&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/music.youtube.com.png&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/music.youtube.com.png&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;Avenged Sevenfold&lt;/a&gt;&lt;/strong&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;strong&gt;&lt;a href=&#34;https://music.youtube.com/channel/UCZzZJcadWlszIvI7CmntVbA&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/music.youtube.com.png&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/music.youtube.com.png&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;All That Remains&lt;/a&gt;&lt;/strong&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;strong&gt;&lt;a href=&#34;https://music.youtube.com/channel/UCP0efewXEcuCddMFLjlCDJQ&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/music.youtube.com.png&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/music.youtube.com.png&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;Parkway Drive&lt;/a&gt;&lt;/strong&gt;&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;h2 id=&#34;must-see-gag-clips&#34;&gt;Must See Gag clips &lt;a href=&#34;#must-see-gag-clips&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;ol&gt;&#xA;&lt;li&gt;&lt;strong&gt;&lt;a href=&#34;https://www.youtube.com/shorts/uCMu9MoRwCo&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/www.youtube.com.png&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/www.youtube.com.png&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;Bobby Lee - Dull Samauri Sword&lt;/a&gt;&lt;/strong&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;strong&gt;&lt;a href=&#34;https://www.youtube.com/watch?v=EF8GhC-T_Mo&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/www.youtube.com.png&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/www.youtube.com.png&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;Ed Bassmaster - Look at this Car!!!&lt;/a&gt;&lt;/strong&gt;&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>/yep</title>
    <id>https://waylonwalker.com/yep/</id>
    <updated>2026-02-11T12:00:00Z</updated>
    <published>2026-02-11T12:00:00Z</published>
    <link href="https://waylonwalker.com/yep/" rel="alternate" type="text/html"></link>
    <summary type="text">Inspired by @fyrio&#39;s yep slashpage, a list of ** things I enjoy, use, recommend, want to know more about, or seek out in no particular order, updated as I...</summary>
    <content type="html">&lt;p&gt;Inspired by @fyrio’s &lt;a href=&#34;https://fyr.io/yep&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/fyr.io.png&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/fyr.io.png&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;yep&lt;/a&gt;&#xA;&lt;a href=&#34;https://slashpages.net/&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/slashpages.net.png&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/slashpages.net.png&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;slashpage&lt;/a&gt;, a list of &lt;strong&gt;S tier&lt;/strong&gt; things I enjoy, use,&#xA;recommend, want to know more about, or seek out in no particular order, updated as I think about it.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition seealso&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Seealso&lt;/p&gt;&#xA;&lt;div class=&#34;embed-card&#34;&gt;&#xA;&lt;/div&gt;&#xA;  &lt;a href=&#34;/nope/&#34; class=&#34;embed-card-link&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;/nope&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Inspired by @baty&amp;#39;s nope slashpage, a list of ** things I don&amp;#39;t like, don&amp;#39;t care, avoid, overhyped, or won&amp;#39;t do in no particular order, updated as I think...&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;Feb 11, 2026&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;h2 id=&#34;yep&#34;&gt;/yep &lt;a href=&#34;#yep&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;coffee&lt;/li&gt;&#xA;&lt;li&gt;small web 1.0&lt;/li&gt;&#xA;&lt;li&gt;RSS&lt;/li&gt;&#xA;&lt;li&gt;minecraft&lt;/li&gt;&#xA;&lt;li&gt;Hollow Knight&lt;/li&gt;&#xA;&lt;li&gt;Silksong&lt;/li&gt;&#xA;&lt;li&gt;terminals&lt;/li&gt;&#xA;&lt;li&gt;python&lt;/li&gt;&#xA;&lt;li&gt;vim keybindings&lt;/li&gt;&#xA;&lt;li&gt;self-hosting&lt;/li&gt;&#xA;&lt;li&gt;open source&lt;/li&gt;&#xA;&lt;li&gt;running kubernetes in my basement&lt;/li&gt;&#xA;&lt;li&gt;mechanical keyboards&lt;/li&gt;&#xA;&lt;li&gt;markdown&lt;/li&gt;&#xA;&lt;li&gt;data engineering&lt;/li&gt;&#xA;&lt;li&gt;Woodworking&lt;/li&gt;&#xA;&lt;li&gt;Fingerboarding&lt;/li&gt;&#xA;&lt;li&gt;Darts&lt;/li&gt;&#xA;&lt;li&gt;Skateboarding&lt;/li&gt;&#xA;&lt;li&gt;Biking&lt;/li&gt;&#xA;&lt;li&gt;Trampoline&lt;/li&gt;&#xA;&lt;li&gt;3d printing&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>/nope</title>
    <id>https://waylonwalker.com/nope/</id>
    <updated>2026-02-11T12:00:00Z</updated>
    <published>2026-02-11T12:00:00Z</published>
    <link href="https://waylonwalker.com/nope/" rel="alternate" type="text/html"></link>
    <summary type="text">Inspired by @baty&#39;s nope slashpage, a list of ** things I don&#39;t like, don&#39;t care, avoid, overhyped, or won&#39;t do in no particular order, updated as I think...</summary>
    <content type="html">&lt;p&gt;Inspired by @baty’s &lt;a href=&#34;https://baty.net/nope/&#34;&gt;nope&lt;/a&gt;&#xA;&lt;a href=&#34;https://slashpages.net/&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/slashpages.net.png&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/slashpages.net.png&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;slashpage&lt;/a&gt;, a list of &lt;strong&gt;F tier&lt;/strong&gt; things I don’t like,&#xA;don’t care, avoid, overhyped, or won’t do in no particular order, updated as I&#xA;think about it.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition seealso&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Seealso&lt;/p&gt;&#xA;&lt;div class=&#34;embed-card&#34;&gt;&#xA;&lt;/div&gt;&#xA;  &lt;a href=&#34;/yep/&#34; class=&#34;embed-card-link&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;/yep&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Inspired by @fyrio&amp;#39;s yep slashpage, a list of ** things I enjoy, use, recommend, want to know more about, or seek out in no particular order, updated as I...&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;Feb 11, 2026&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;h2 id=&#34;nope&#34;&gt;/nope &lt;a href=&#34;#nope&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;roblox&lt;/li&gt;&#xA;&lt;li&gt;mobile games&lt;/li&gt;&#xA;&lt;li&gt;telemetry&lt;/li&gt;&#xA;&lt;li&gt;Windows&lt;/li&gt;&#xA;&lt;li&gt;VSCode&lt;/li&gt;&#xA;&lt;li&gt;allow notifications&lt;/li&gt;&#xA;&lt;li&gt;subscription hell&lt;/li&gt;&#xA;&lt;li&gt;ads&lt;/li&gt;&#xA;&lt;li&gt;social media&lt;/li&gt;&#xA;&lt;li&gt;clickbait&lt;/li&gt;&#xA;&lt;li&gt;WYSIWYG editors particularly ones that use proprietary non text formats&lt;/li&gt;&#xA;&lt;li&gt;politics&lt;/li&gt;&#xA;&lt;li&gt;short form video&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Background Patterns with CSS `corner-radius` – Frontend Master...</title>
    <id>https://waylonwalker.com/thought-923/</id>
    <updated>2026-02-10T08:41:45Z</updated>
    <published>2026-02-10T08:41:45Z</published>
    <link href="https://waylonwalker.com/thought-923/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://frontendmasters.com/blog/background-patterns-with-css-corner-radius/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://frontendmasters.com/blog/background-patterns-with-css-corner-radius/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://frontendmasters.com/blog/wp-json/social-image-generator/v1/image/8505&#34; alt=&#34;Background Patterns with CSS `corner-radius` – Frontend Masters Blog — You might need to know this someday: you can style a div, put the div into SVG, then put the SVG in to CSS and use it as a repeating background.&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: Background Patterns with CSS `corner-radius` – Frontend Masters Blog — You might need to know this someday: you can style a div, put the div into SVG, then put the SVG in to CSS and use it as a repeating background.&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Background Patterns with CSS `corner-radius` – Frontend Masters Blog&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;You might need to know this someday: you can style a div, put the div into SVG, then put the SVG in to CSS and use it as a repeating background.&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;frontendmasters.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;These patterns are really good.  I like a good repeating background on a website.  Takes me back to the old days of web, but with a nice crispness that was never there on sites of old&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ pydantic monty</title>
    <id>https://waylonwalker.com/pydantic-monty/</id>
    <updated>2026-02-09T03:53:14Z</updated>
    <published>2026-02-09T03:53:14Z</published>
    <link href="https://waylonwalker.com/pydantic-monty/" rel="alternate" type="text/html"></link>
    <summary type="text">Check out monty by pydantic. It&#39;s a well-crafted project with great potential.</summary>
    <content type="html">&lt;p&gt;Check out &lt;a href=&#34;https://github.com/pydantic/monty&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;monty&lt;/a&gt; by &lt;a href=&#34;https://github.com/pydantic&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;pydantic&lt;/a&gt;. It’s a well-crafted project with great potential.&lt;/p&gt;&#xA;&lt;p&gt;A minimal, secure Python interpreter written in Rust for use by AI&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Gradient Keycap Results</title>
    <id>https://waylonwalker.com/shots/gradient-keycap-results/</id>
    <updated>2026-02-07T19:55:55Z</updated>
    <published>2026-02-07T19:55:55Z</published>
    <link href="https://waylonwalker.com/shots/gradient-keycap-results/" rel="alternate" type="text/html"></link>
    <summary type="text">The gradient keycaps turned out pretty good, but I&#39;m not sure what I did wrong with the interface between the raft and the caps, that came out ** rough, but the effect works.</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/42e82c07-5380-45a8-8cbd-a1b642dbfb3b.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;gradient keycap results&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/file/42e82c07-5380-45a8-8cbd-a1b642dbfb3b.webp&#34; alt=&#34;gradient keycap results&#34;/ data-glightbox=&#34;description: gradient keycap results&#34;&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;The gradient keycaps turned out pretty good, but I’m not sure what I did wrong with the interface between the raft and the caps, that came out &lt;strong&gt;very&lt;/strong&gt; rough, but the effect works.&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Camp Rock Sign</title>
    <id>https://waylonwalker.com/shots/camp-rock-sign/</id>
    <updated>2026-02-07T19:51:35Z</updated>
    <published>2026-02-07T19:51:35Z</published>
    <link href="https://waylonwalker.com/shots/camp-rock-sign/" rel="alternate" type="text/html"></link>
    <summary type="text">Camp Rock Sign all put together, by the fabulous Rhiannon, the letters came out great, her work on the built is amazing, cant wait to see it lit up.</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/5d9ceac4-8f43-49bf-8bde-2a67dca7cc58.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Camp Rock Sign&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/file/5d9ceac4-8f43-49bf-8bde-2a67dca7cc58.webp&#34; alt=&#34;Camp Rock Sign&#34;/ data-glightbox=&#34;description: Camp Rock Sign&#34;&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;Camp Rock Sign all put together, by the fabulous Rhiannon, the letters came out great, her work on the built is amazing, cant wait to see it lit up.&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ nextlevelbuilder ui-ux-pro-max-skill</title>
    <id>https://waylonwalker.com/nextlevelbuilder-ui-ux-pro-max-skill/</id>
    <updated>2026-02-06T20:18:21Z</updated>
    <published>2026-02-06T20:18:21Z</published>
    <link href="https://waylonwalker.com/nextlevelbuilder-ui-ux-pro-max-skill/" rel="alternate" type="text/html"></link>
    <summary type="text">Check out nextlevelbuilder and their project ui-ux-pro-max-skill.</summary>
    <content type="html">&lt;p&gt;Check out &lt;a href=&#34;https://github.com/nextlevelbuilder&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;nextlevelbuilder&lt;/a&gt; and their project &lt;a href=&#34;https://github.com/nextlevelbuilder/ui-ux-pro-max-skill&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;ui-ux-pro-max-skill&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;An AI SKILL that provide design intelligence for building professional UI/UX multiple platforms&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Gradient Keycaps In Bambu Studio</title>
    <id>https://waylonwalker.com/shots/gradient-keycaps-in-bambu-studio/</id>
    <updated>2026-02-06T19:53:05Z</updated>
    <published>2026-02-06T19:53:05Z</published>
    <link href="https://waylonwalker.com/shots/gradient-keycaps-in-bambu-studio/" rel="alternate" type="text/html"></link>
    <summary type="text">I have an idea for gradient keycaps using tri colored filliment, I&#39;m excited to see how it turns out.</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/7fd8f2f8-a701-4be9-8289-8f9d3bb3c405.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;gradient keycaps in bambu studio&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/file/7fd8f2f8-a701-4be9-8289-8f9d3bb3c405.webp&#34; alt=&#34;gradient keycaps in bambu studio&#34;/ data-glightbox=&#34;description: gradient keycaps in bambu studio&#34;&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;I have an idea for gradient keycaps using tri colored filliment, I’m excited to see how it turns out.&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Pm Not Babysitter</title>
    <id>https://waylonwalker.com/pm-not-babysitter/</id>
    <updated>2026-02-06T14:04:25Z</updated>
    <published>2026-02-06T14:04:25Z</published>
    <link href="https://waylonwalker.com/pm-not-babysitter/" rel="alternate" type="text/html"></link>
    <summary type="text">Stop babysitting your agents, treat them like a real team and they will reward you.</summary>
    <content type="html">&lt;p&gt;Stop babysitting your agents, treat them like a real team and they will reward&#xA;you.&lt;/p&gt;&#xA;&lt;p&gt;Back in December I saw theo make a comment that code is now cheap, its the run&#xA;rate of models, He quoted a study, not sure that he fully even believed it, but&#xA;it claimed that the average developer after all meetings, training, emails,&#xA;planning and extra shit in their day averages out 10 well tested lines of code&#xA;per day.  Opus 3.5 made him 10k loc (lines of code) that day.&lt;/p&gt;&#xA;&lt;p&gt;We have all agreed for decades that lines of code is not a proxy to&#xA;productivity or quality.  Often more code means more risk, more review, more&#xA;infrastructure.  This has become MUCH different.  Lines of code are still far&#xA;from any sort of good metric.  That aside, your agents are not doing 10k lines&#xA;with you babysitting them, and in fact its very likely that the product quality&#xA;is MUCH worse as you babysit them.&lt;/p&gt;&#xA;&lt;p&gt;You need a tool for planning and tracking, otherwise you are playing babysitter&#xA;rather than Product Manager (PM).&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ vercel-labs agent-browser</title>
    <id>https://waylonwalker.com/vercel-labs-agent-browser/</id>
    <updated>2026-02-05T22:20:08Z</updated>
    <published>2026-02-05T22:20:08Z</published>
    <link href="https://waylonwalker.com/vercel-labs-agent-browser/" rel="alternate" type="text/html"></link>
    <summary type="text">If you&#39;re into interesting projects, don&#39;t miss out on agent-browser, created by vercel-labs.</summary>
    <content type="html">&lt;p&gt;If you’re into interesting projects, don’t miss out on &lt;a href=&#34;https://github.com/vercel-labs/agent-browser&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;agent-browser&lt;/a&gt;, created by &lt;a href=&#34;https://github.com/vercel-labs&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;vercel-labs&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Browser automation CLI for AI agents&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>diff kubernetes manifest with cluster</title>
    <id>https://waylonwalker.com/diff-kubernetes-manifest-with-cluster/</id>
    <updated>2026-02-05T09:37:39Z</updated>
    <published>2026-02-05T09:37:39Z</published>
    <link href="https://waylonwalker.com/diff-kubernetes-manifest-with-cluster/" rel="alternate" type="text/html"></link>
    <summary type="text">Like a dufus this morning I did a hard reset on a git repo for getting I was working on a manifest for. You see I generally use argo, but occasionally I have...</summary>
    <content type="html">&lt;p&gt;Like a dufus this morning I did a hard reset on a &lt;a href=&#34;/glossary/git/&#34; class=&#34;glossary-term&#34; title=&#34;Git is a version control system for tracking changes in source code during software development. In the beginning there were many, some were licensed. As...&#34;&gt;git&lt;/a&gt; repo for getting I was&#xA;working on a manifest for.  You see I generally use argo, but occasionally I&#xA;have no idea what I am doing or want yet and I start raw doggin it, fully aware&#xA;that I’m going to just nuke this namespace before getting it into a proper&#xA;argocd.&lt;/p&gt;&#xA;&lt;p&gt;I was overjoyed when I found out that you can diff your manifests with live&#xA;production using the &lt;code&gt;kubectl diff&lt;/code&gt; command.  It uses standard diff so you can&#xA;bring all your fancy diff viewers you like.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# regular manifest&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;kubectl diff -f k8s/shots -n shot&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# kustomize&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;kubectl diff -k k8s -n go-waylonwalker-com&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# using a fancy diff viewer&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;kubectl diff -f k8s/shots -n shot &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt; delta&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# using an even fancier diff viewer&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# pinkies out for this one&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;kubectl diff -f k8s/shots -n shot &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt; delta --diff-so-fancy&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Now I can get those changes back that I thought I lost, and apply updates with&#xA;confidence knowing what is about to change.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 The shovelware cometh</title>
    <id>https://waylonwalker.com/thought-922/</id>
    <updated>2026-02-03T21:45:51Z</updated>
    <published>2026-02-03T21:45:51Z</published>
    <link href="https://waylonwalker.com/thought-922/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://jerodsanto.net/2026/02/the-shovelware-cometh/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://jerodsanto.net/2026/02/the-shovelware-cometh/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img src=&#34;https://jerodsanto.net/share.png&#34; alt=&#34;The shovelware cometh — In September of last year, I covered a post by Mike Judge arguing that AI coding claims don’t add up, in which he asked this question:&#xA;&amp;lt;p&amp;gt;If so many developers are so extraordinarily productive using these tools, where is the flood of shovelware? We should be seeing apps of all shapes and sizes, video games, new websites, mobile apps, software-as-a-service apps — we should be drowning in choice. We should be in the middle of an indie software revolution. We should be seeing 10,000 Tetris clones on Steam.&amp;#34; loading=“lazy”&amp;gt;&#xA;&amp;lt;/div&amp;gt;&#xA;&amp;lt;div class=&#34; embed-card-content glightbox&#34;=&#34;&#34;/ data-glightbox=&#34;description: The shovelware cometh — In September of last year, I covered a post by Mike Judge arguing that AI coding claims don’t add up, in which he asked this question:&#xA;&amp;lt;p&amp;gt;If so many developers are so extraordinarily productive using these tools, where is the flood of shovelware? We should be seeing apps of all shapes and sizes, video games, new websites, mobile apps, software-as-a-service apps — we should be drowning in choice. We should be in the middle of an indie software revolution. We should be seeing 10,000 Tetris clones on Steam.&amp;#34; loading=“lazy”&amp;gt;&#xA;&amp;lt;/div&amp;gt;&#xA;&amp;lt;div class=&#34;&gt;&#xA;&lt;div class=&#34;embed-card-title&#34;&gt;The shovelware cometh&lt;/div&gt;&#xA;&lt;div class=&#34;embed-card-description&#34;&gt;In September of last year, I covered a post by Mike Judge arguing that AI coding claims don’t add up, in which he asked this question:&lt;p&gt;&lt;/p&gt;&#xA;&lt;p&gt;If so many developers are so extraordinarily productive usi…&lt;/p&gt;&lt;/div&gt;&#xA;&lt;div class=&#34;embed-card-meta&#34;&gt;jerodsanto.net&lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;/a&gt;&lt;p&gt;&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Not surprising theirs a lag, between the models getting better, the tools getting better, and the masses getting better at using them, it takes time.  This is still quite a hockey stick.  I’m wondering how many are not posting on Show HN embarrassed they built something they know nothing about and afraid to get questions.  I have no idea how anyone would get this ratio, but if I were a betting man, Id bet the ratio of build/show went way up.  Plus we are probably getting a ton of people who have never heard of HN start building cool bespoke things for themselves and thats it, they use it, they love it, they might tell/show a friend.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 The shovelware cometh</title>
    <id>https://waylonwalker.com/thought-921/</id>
    <updated>2026-02-03T21:45:51Z</updated>
    <published>2026-02-03T21:45:51Z</published>
    <link href="https://waylonwalker.com/thought-921/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://jerodsanto.net/2026/02/the-shovelware-cometh/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://jerodsanto.net/2026/02/the-shovelware-cometh/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img src=&#34;https://jerodsanto.net/share.png&#34; alt=&#34;The shovelware cometh — In September of last year, I covered a post by Mike Judge arguing that AI coding claims don’t add up, in which he asked this question:&#xA;&amp;lt;p&amp;gt;If so many developers are so extraordinarily productive using these tools, where is the flood of shovelware? We should be seeing apps of all shapes and sizes, video games, new websites, mobile apps, software-as-a-service apps — we should be drowning in choice. We should be in the middle of an indie software revolution. We should be seeing 10,000 Tetris clones on Steam.&amp;#34; loading=“lazy”&amp;gt;&#xA;&amp;lt;/div&amp;gt;&#xA;&amp;lt;div class=&#34; embed-card-content glightbox&#34;=&#34;&#34;/ data-glightbox=&#34;description: The shovelware cometh — In September of last year, I covered a post by Mike Judge arguing that AI coding claims don’t add up, in which he asked this question:&#xA;&amp;lt;p&amp;gt;If so many developers are so extraordinarily productive using these tools, where is the flood of shovelware? We should be seeing apps of all shapes and sizes, video games, new websites, mobile apps, software-as-a-service apps — we should be drowning in choice. We should be in the middle of an indie software revolution. We should be seeing 10,000 Tetris clones on Steam.&amp;#34; loading=“lazy”&amp;gt;&#xA;&amp;lt;/div&amp;gt;&#xA;&amp;lt;div class=&#34;&gt;&#xA;&lt;div class=&#34;embed-card-title&#34;&gt;The shovelware cometh&lt;/div&gt;&#xA;&lt;div class=&#34;embed-card-description&#34;&gt;In September of last year, I covered a post by Mike Judge arguing that AI coding claims don’t add up, in which he asked this question:&lt;p&gt;&lt;/p&gt;&#xA;&lt;p&gt;If so many developers are so extraordinarily productive usi…&lt;/p&gt;&lt;/div&gt;&#xA;&lt;div class=&#34;embed-card-meta&#34;&gt;jerodsanto.net&lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;/a&gt;&lt;p&gt;&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Not surprising theirs a lag, between the models getting better, the tools getting better, and the masses getting better at using them, it takes time.  This is still quite a hockey stick.  I’m wondering how many are not posting on Show HN embarrassed they built something they know nothing about and afraid to get questions.  I have no idea how anyone would get this ratio, but if I were a betting man, Id bet the ratio of build/show went way up.  Plus we are probably getting a ton of people who have never heard of HN start building cool bespoke things for themselves and thats it, they use it, they love it, they might tell/show a friend.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Camp Rock Letters</title>
    <id>https://waylonwalker.com/shots/camp-rock-letters/</id>
    <updated>2026-02-03T19:49:29Z</updated>
    <published>2026-02-03T19:49:29Z</published>
    <link href="https://waylonwalker.com/shots/camp-rock-letters/" rel="alternate" type="text/html"></link>
    <summary type="text">Camp Rock Letters going on the print bed for the show choir.</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/70432c14-ce44-4848-8a27-e1e0db209c45.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;camp rock letters&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/file/70432c14-ce44-4848-8a27-e1e0db209c45.webp&#34; alt=&#34;camp rock letters&#34;/ data-glightbox=&#34;description: camp rock letters&#34;&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;Camp Rock Letters going on the print bed for the show choir.&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Ping 23</title>
    <id>https://waylonwalker.com/ping-23/</id>
    <updated>2026-02-03T16:50:52Z</updated>
    <published>2026-02-03T16:50:52Z</published>
    <link href="https://waylonwalker.com/ping-23/" rel="alternate" type="text/html"></link>
    <summary type="text">I taught wyatt green, I apologize in advance, I underestimate the power of immature humor has on him.</summary>
    <content type="html">&lt;p&gt;I taught wyatt &lt;span style=&#34;display:inline-block;width:1em;height:1em;background:#bada55;border:1px&#xA;solid #000;&#34;&gt;&lt;/span&gt; &lt;code&gt;#bada55&lt;/code&gt; green, I apologize in advance, I underestimate&#xA;the power of immature humor has on him.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 dax on X: &#34;finally got around to setting up an always on openc...</title>
    <id>https://waylonwalker.com/thought-920/</id>
    <updated>2026-02-03T08:18:39Z</updated>
    <published>2026-02-03T08:18:39Z</published>
    <link href="https://waylonwalker.com/thought-920/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://x.com/thdxr/status/2017691649384620057</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://x.com/thdxr/status/2017691649384620057&#34; class=&#34;embed-card-link  has-avatar has-avatar-before&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/x.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/x.com.ico&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;External Link&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;X (formerly Twitter) · x.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;I tried this flow [of running an opencode server on tailscale] on day one of getting opencode, I wanted to prompt from my phone while were were  running lights at the theater. It kinda worked, but the ui was really bad on phone, hard to use and the experience overall–it felt buggy.  Happy to see they are making improvements and it might now be ready for some real use.&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://dropper.waylonwalker.com/file/9065fcb2-5e40-479c-967e-498bc9bb6a4f.mp4&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/dropper.waylonwalker.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/dropper.waylonwalker.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;https://dropper.waylonwalker.com/file/9065fcb2-5e40-479c-967e-498bc9bb6a4f.mp4&lt;/a&gt;&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Short Month, Big Ideas (February 2026 Wallpapers Edition) — Sm...</title>
    <id>https://waylonwalker.com/thought-919/</id>
    <updated>2026-02-02T08:48:03Z</updated>
    <published>2026-02-02T08:48:03Z</published>
    <link href="https://waylonwalker.com/thought-919/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.smashingmagazine.com/2026/01/desktop-wallpaper-calendars-february-2026/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://www.smashingmagazine.com/2026/01/desktop-wallpaper-calendars-february-2026/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://files.smashing.media/articles/desktop-wallpaper-calendars-february-2026/feb-26-eternal-tech-preview-opt.png&#34; alt=&#34;Short Month, Big Ideas (February 2026 Wallpapers Edition) — Smashing Magazine — Let’s make the most of the shortest month of the year with a new collection of desktop wallpapers that are sure to bring a smile to your face — and maybe spark your creativity, too. All of them were designed with love by the community for the community and can be downloaded for free. Happy February!&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: Short Month, Big Ideas (February 2026 Wallpapers Edition) — Smashing Magazine — Let’s make the most of the shortest month of the year with a new collection of desktop wallpapers that are sure to bring a smile to your face — and maybe spark your creativity, too. All of them were designed with love by the community for the community and can be downloaded for free. Happy February!&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Short Month, Big Ideas (February 2026 Wallpapers Edition) — Smashing Magazine&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Let’s make the most of the shortest month of the year with a new collection of desktop wallpapers that are sure to bring a smile to your face — and maybe spark your creativity, too. All of them...&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;Smashing Magazine · smashingmagazine.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;test&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Ping 21</title>
    <id>https://waylonwalker.com/ping-21/</id>
    <updated>2026-01-29T07:30:59Z</updated>
    <published>2026-01-29T07:30:59Z</published>
    <link href="https://waylonwalker.com/ping-21/" rel="alternate" type="text/html"></link>
    <summary type="text">Agents right now</summary>
    <content type="html">&lt;p&gt;Agents right now&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;can I access the project you mentioned?&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;yes&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;Can i access /tmp&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;yes, just do it&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;While I’m I at it, &lt;code&gt;kubctl delete...&lt;/code&gt;&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;yanks plug front internet&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Agent Management Is Exhausting</title>
    <id>https://waylonwalker.com/agent-management-is-exhausting/</id>
    <updated>2026-01-26T14:38:35Z</updated>
    <published>2026-01-26T14:38:35Z</published>
    <link href="https://waylonwalker.com/agent-management-is-exhausting/" rel="alternate" type="text/html"></link>
    <summary type="text">The state of development in early 2026 is all wrapped around learning how to manage many agents running in parallel. Everyone&#39;s trying to figure out the...</summary>
    <content type="html">&lt;p&gt;The state of development in early 2026 is all wrapped around learning how to&#xA;manage many agents running in parallel. Everyone’s trying to figure out the&#xA;workflow.&lt;/p&gt;&#xA;&lt;h2 id=&#34;the-plan-is-everything&#34;&gt;The Plan Is Everything &lt;a href=&#34;#the-plan-is-everything&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;The secret I’ve discovered is a good, well-defined plan. This could be a&#xA;markdown file or a GitHub issue. Agents are actually great at writing these for&#xA;you. They’ll include reproduction steps, outline changes needed, and structure&#xA;the work.&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;This&lt;/strong&gt; is your opportunity to step in. Read the plan. Look for hallucinations.&#xA;Spot where it’s going off track. Edit the plan before the agent starts coding.&lt;/p&gt;&#xA;&lt;p&gt;I had one today where it laid out reproduction steps beautifully, but I could&#xA;add context about network requests that completely changed the approach. This&#xA;editing phase is what most people are missing right now. Skip it and you’ll&#xA;watch your agent solve the wrong problem with impressive efficiency.&lt;/p&gt;&#xA;&lt;h2 id=&#34;the-pace-problem&#34;&gt;The Pace Problem &lt;a href=&#34;#the-pace-problem&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;Here’s what nobody warned me about: managing these things is &lt;em&gt;exhausting&lt;/em&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Depending on the day, agents move so damn fast. I can barely research, find, and&#xA;raise issues as fast as Claude can implement features and fixes. It’s like&#xA;trying to speedrun a Minecraft seed when you just figured out how to craft a&#xA;pickaxe.&lt;/p&gt;&#xA;&lt;h2 id=&#34;a-different-kind-of-work&#34;&gt;A Different Kind of Work &lt;a href=&#34;#a-different-kind-of-work&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;This stretches a different part of my brain than I’m used to using. I’m learning&#xA;new skills around:&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;Issue tracking and management at high velocity&lt;/li&gt;&#xA;&lt;li&gt;Knowing which models handle which tasks best&lt;/li&gt;&#xA;&lt;li&gt;Spotting when a session is about to go sideways from context bloat or bad&#xA;compaction&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;I had a session yesterday where the context got poisoned with a wrong&#xA;assumption. The agent spent 20 minutes building on that false premise before I&#xA;caught it. That’s 20 minutes of perfectly executed code solving the wrong&#xA;problem entirely.&lt;/p&gt;&#xA;&lt;h2 id=&#34;worth-it-but-hard&#34;&gt;Worth It, But Hard &lt;a href=&#34;#worth-it-but-hard&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;I’m not going to hype-bro you and say this is easy or that you’re wrong to be&#xA;skeptical. If you have the opportunity to work with agents, it’s worth learning&#xA;proper techniques.&lt;/p&gt;&#xA;&lt;p&gt;It’s not easy. It requires actual management skills, not just&#xA;prompting skills. And yeah, I’m tired.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Peter Steinberger</title>
    <id>https://waylonwalker.com/thought-918/</id>
    <updated>2026-01-26T14:00:57Z</updated>
    <published>2026-01-26T14:00:57Z</published>
    <link href="https://waylonwalker.com/thought-918/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://steipete.me/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://steipete.me/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://steipete.me/peter-avatar.jpg&#34; alt=&#34;Peter Steinberger — Peter Steinberger: AI-powered tools from Swift roots to web frontiers. Every commit lands on GitHub for you to fork &amp;amp; remix.&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: Peter Steinberger — Peter Steinberger: AI-powered tools from Swift roots to web frontiers. Every commit lands on GitHub for you to fork &amp;amp; remix.&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Peter Steinberger&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Peter Steinberger: AI-powered tools from Swift roots to web frontiers. Every commit lands on GitHub for you to fork &amp;amp; remix.&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;steipete.me&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Pete has a ton of good posts here and actually ships a lot of product.  reccommended read.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Stay away from my trash! - tldraw: Build whiteboards in React ...</title>
    <id>https://waylonwalker.com/thought-917/</id>
    <updated>2026-01-26T13:59:50Z</updated>
    <published>2026-01-26T13:59:50Z</published>
    <link href="https://waylonwalker.com/thought-917/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://tldraw.dev/blog/stay-away-from-my-trash</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://tldraw.dev/blog/stay-away-from-my-trash&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://cdn.sanity.io/images/ij3ytvrl/production/f16bd2f50cf91e9ef545fbd0821ea88916e23e9e-1600x900.png?w=1200&amp;amp;fit=max&#34; alt=&#34;Stay away from my trash! — If writing the code is the easy part, why would I want someone else to write it?&#34; loading=&#34;lazy&#34;/ width=&#34;1200&#34; data-glightbox=&#34;description: Stay away from my trash! — If writing the code is the easy part, why would I want someone else to write it?&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Stay away from my trash!&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;If writing the code is the easy part, why would I want someone else to write it?&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;tldraw.dev&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;read later&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Stop Using Boomer Ai</title>
    <id>https://waylonwalker.com/stop-using-boomer-ai/</id>
    <updated>2026-01-26T13:12:29Z</updated>
    <published>2026-01-26T13:12:29Z</published>
    <link href="https://waylonwalker.com/stop-using-boomer-ai/" rel="alternate" type="text/html"></link>
    <summary type="text">I was listening to these guys talk about migrating off of boomer ai the other day. Introducing the term boomer ai to describe using chat, copy, paste instead...</summary>
    <content type="html">&lt;p&gt;I was listening to these guys talk about migrating off of boomer ai the other&#xA;day.  Introducing the term boomer ai to describe using chat, copy, paste&#xA;instead of agents.  Something magical happened to the tooling and models around&#xA;december, they got really good.  The chatgpt $20 plan hooked into opencode is&#xA;good, the Free models in Opencode Zen (Big Pickle and Kimi K2.5 Free) are&#xA;really good.  Neither of these quite match up to the speed and quality of the&#xA;larger plans, but they are good.  good enough to throw away your boomer ai&#xA;techniques and start using agents.  Agents are the future, and they are here&#xA;now.  If you are still using chat, copy, paste, you are doing it wrong.  Stop&#xA;using boomer ai and start using agents.  You will be amazed at how much better&#xA;your results will be.&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://www.youtube.com/watch?v=3dmPKuTWbsI&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/www.youtube.com.png&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/www.youtube.com.png&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;https://www.youtube.com/watch?v=3dmPKuTWbsI&lt;/a&gt;&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 I&#39;m back from the dead</title>
    <id>https://waylonwalker.com/thought-916/</id>
    <updated>2026-01-25T20:48:26Z</updated>
    <published>2026-01-25T20:48:26Z</published>
    <link href="https://waylonwalker.com/thought-916/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://pype.dev/im-back-from-the-dead/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://pype.dev/im-back-from-the-dead/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://cdn.statically.io/gh/pypeaday/images.pype.dev/main/blog-media/20260124140321_9abef62f.png&#34; alt=&#34;I — The flu hit me like a freight train right at the start of the year, along with&#xA;the most stress I&amp;#39;ve ever felt at work dropping on me at the same time, I&amp;amp;#x&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: I — The flu hit me like a freight train right at the start of the year, along with&#xA;the most stress I&amp;#39;ve ever felt at work dropping on me at the same time, I&amp;amp;#x&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;I&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;The flu hit me like a freight train right at the start of the year, along with&#xA;the most stress I&amp;#39;ve ever felt at work dropping on me at the same time, I&amp;amp;#x&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;pype.dev&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;I’m jelous… as I was getting better, I got kicked down again. cant hold a conversation without coughing.  Its hitting people from all over like crazy this year.  so glad its just the flu and not something seriously harmful for hospitalization.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Mentions</title>
    <id>https://waylonwalker.com/mentions/</id>
    <updated>2026-01-24T19:11:15Z</updated>
    <published>2026-01-24T19:11:15Z</published>
    <link href="https://waylonwalker.com/mentions/" rel="alternate" type="text/html"></link>
    <summary type="text">I can now just mention people from my markata about blogroll like @simonwillison.net or @swyx.io</summary>
    <content type="html">&lt;p&gt;I can now just mention people from my &lt;a href=&#34;/markata/&#34; class=&#34;wikilink&#34; data-title=&#34;markata&#34; data-description=&#34;This post is a work in progress.&#34; data-date=&#34;2024-05-30&#34; data-preview=&#34;This post is a work in progress.&#34;&gt;markata&lt;/a&gt;  &lt;a href=&#34;/about/&#34; class=&#34;wikilink&#34; data-title=&#34;Waylon Walker&#34; data-description=&#34;Husband, dad of two, and hobbyist builder of things on the internet.&#34; data-date=&#34;2021-11-20&#34; data-preview=&#34;Husband, dad of two, and hobbyist builder of things on the internet.&#34;&gt;Waylon Walker&lt;/a&gt; [[ blogroll ]] like @simonwillison.net or @swyx.io&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;/now/&#34; class=&#34;wikilink&#34; data-title=&#34;/now&#34; data-description=&#34;This page is meant to be simple view into what is happening in my life right now. Inspired by @NowNowNow. and Derek Sivers.&#34; data-date=&#34;2025-01-12&#34; data-preview=&#34;This page is meant to be simple view into what is happening in my life right now. Inspired by @NowNowNow. and Derek Sivers.&#34;&gt;/now&lt;/a&gt;  [[ upto ]] [[ doing ]]&lt;/p&gt;&#xA;&lt;aside class=&#34;admonition aside aside-right&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Aside&lt;/p&gt;&#xA;&lt;p&gt;This is an aside!&lt;/p&gt;&#xA;&lt;/aside&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ wilsonzlin fastrender</title>
    <id>https://waylonwalker.com/wilsonzlin-fastrender/</id>
    <updated>2026-01-24T03:54:07Z</updated>
    <published>2026-01-24T03:54:07Z</published>
    <link href="https://waylonwalker.com/wilsonzlin-fastrender/" rel="alternate" type="text/html"></link>
    <summary type="text">The work on fastrender by wilsonzlin.</summary>
    <content type="html">&lt;p&gt;The work on &lt;a href=&#34;https://github.com/wilsonzlin/fastrender&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;fastrender&lt;/a&gt; by &lt;a href=&#34;https://github.com/wilsonzlin&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;wilsonzlin&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Experimental new browser engine&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>2026-01-23 Notes</title>
    <id>https://waylonwalker.com/2026-01-23-notes/</id>
    <updated>2026-01-23T22:28:38Z</updated>
    <published>2026-01-23T22:28:38Z</published>
    <link href="https://waylonwalker.com/2026-01-23-notes/" rel="alternate" type="text/html"></link>
    <summary type="text">Next for markata go</summary>
    <content type="html">&lt;p&gt;Next for markata go&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;Embed post, internal and external&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/og/&#34; class=&#34;glossary-term&#34; title=&#34;OG is short for open graph, a set of standard meta tags that are used for social media sharing. This is what tells other websites how to describe and display...&#34;&gt;Og&lt;/a&gt; images&lt;/li&gt;&#xA;&lt;li&gt;Post importer - thoughts&lt;/li&gt;&#xA;&lt;li&gt;Reader / blogroll plugin&lt;/li&gt;&#xA;&lt;li&gt;K9s inspired tui&lt;/li&gt;&#xA;&lt;li&gt;:files, :posts, :tags, :feeds,&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;hr/&gt;&#xA;&lt;p&gt;Extra classes&lt;/p&gt;&#xA;&lt;p&gt;Wikilinks&lt;/p&gt;&#xA;&lt;p&gt;Lsp&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;Complete wikilinks&lt;/li&gt;&#xA;&lt;li&gt;Complete mentions&lt;/li&gt;&#xA;&lt;li&gt;Document diagnostic&lt;/li&gt;&#xA;&lt;li&gt;Workspace diagnostics&lt;/li&gt;&#xA;&lt;li&gt;Config completions&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;Jinja_md obsidian like support&lt;/p&gt;&#xA;&lt;p&gt;View as in footer&lt;/p&gt;&#xA;&lt;p&gt;Archive missing grid of pages&lt;/p&gt;&#xA;&lt;p&gt;Nav footer different on feeds than post&#xA;Sometimes the skip to content peeks into the top left corner of the page by a few pixels, it’s distracting&lt;/p&gt;&#xA;&lt;p&gt;Tap to zoom image&lt;/p&gt;&#xA;&lt;p&gt;Google font&lt;/p&gt;&#xA;&lt;p&gt;Sitemap&lt;/p&gt;&#xA;&lt;p&gt;Background image support&lt;/p&gt;&#xA;&lt;p&gt;Mouse support in tui works, not in tmux&lt;/p&gt;&#xA;&lt;p&gt;All optional plugins with config from user should raise warning configured not able&lt;/p&gt;&#xA;&lt;p&gt;Lines of code should be separate from word count&lt;/p&gt;&#xA;&lt;p&gt;Tui press enter, should see full post and scroll/read render markdown&lt;/p&gt;&#xA;&lt;p&gt;Update branding from fast to comprehensive&lt;/p&gt;&#xA;&lt;p&gt;Debug pages, show config&lt;/p&gt;&#xA;&lt;hr/&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;Image gallery&lt;/li&gt;&#xA;&lt;li&gt;carousel&lt;/li&gt;&#xA;&lt;li&gt;Prev/next&lt;/li&gt;&#xA;&lt;li&gt;Embedfeed&lt;/li&gt;&#xA;&lt;li&gt;Fix aside&lt;/li&gt;&#xA;&lt;li&gt;Contrast / flashbang check on admonitions styles on all themes.&lt;/li&gt;&#xA;&lt;li&gt;Glossary&lt;/li&gt;&#xA;&lt;li&gt;Banner post&lt;/li&gt;&#xA;&lt;li&gt;Keys&lt;/li&gt;&#xA;&lt;li&gt;Containers&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;hr/&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;Page 1 link is always highlighted&lt;/li&gt;&#xA;&lt;li&gt;Page 1 link is broken when coming from page 1&lt;/li&gt;&#xA;&lt;li&gt;On mobile search is too wide&lt;/li&gt;&#xA;&lt;li&gt;Shots needs warmed with a head request&lt;/li&gt;&#xA;&lt;li&gt;&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;hr/&gt;&#xA;&lt;p&gt;Tags&lt;/p&gt;&#xA;&lt;p&gt;Contacts&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ flosch pongo2</title>
    <id>https://waylonwalker.com/flosch-pongo2/</id>
    <updated>2026-01-22T23:34:17Z</updated>
    <published>2026-01-22T23:34:17Z</published>
    <link href="https://waylonwalker.com/flosch-pongo2/" rel="alternate" type="text/html"></link>
    <summary type="text">Check out flosch and their project pongo2.</summary>
    <content type="html">&lt;p&gt;Check out &lt;a href=&#34;https://github.com/flosch&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;flosch&lt;/a&gt; and their project &lt;a href=&#34;https://github.com/flosch/pongo2&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;pongo2&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Django-syntax like template-engine for Go&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 DockFrame - Modular USB-C Hub with Framework-Compatible Expans...</title>
    <id>https://waylonwalker.com/thought-915/</id>
    <updated>2026-01-21T21:21:53Z</updated>
    <published>2026-01-21T21:21:53Z</published>
    <link href="https://waylonwalker.com/thought-915/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://dockframe.com/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://dockframe.com/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://dockframe.hwlab.io/images/dockframe_front.png&#34; alt=&#34;DockFrame - Modular USB-C Hub with Framework-Compatible Expansion Cards — DockFrame is a modular USB-C hub that accepts Framework-compatible Expansion Cards and custom Tool Cards. Dock once, reconfigure whenever.&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: DockFrame - Modular USB-C Hub with Framework-Compatible Expansion Cards — DockFrame is a modular USB-C hub that accepts Framework-compatible Expansion Cards and custom Tool Cards. Dock once, reconfigure whenever.&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;DockFrame - Modular USB-C Hub with Framework-Compatible Expansion Cards&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;DockFrame is a modular USB-C hub that accepts Framework-compatible Expansion Cards and custom Tool Cards. Dock once, reconfigure whenever.&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;DockFrame · dockframe.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Dockframe looks like a really cool concept using the framework tiles ( the connectors idk what they are called ) to build a dock.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>What Your Coding Tool Says About You</title>
    <id>https://waylonwalker.com/what-your-coding-tool-says-about-you/</id>
    <updated>2026-01-21T16:25:41Z</updated>
    <published>2026-01-21T16:25:41Z</published>
    <link href="https://waylonwalker.com/what-your-coding-tool-says-about-you/" rel="alternate" type="text/html"></link>
    <summary type="text">Copilot - corporate 9-5er * Claude Code - Agentic Workflows or Bust * Vim/neovim - definite neck beard * VsCode - What else is there?</summary>
    <content type="html">&lt;ul&gt;&#xA;&lt;li&gt;open code - libre free as in beer and speech&lt;/li&gt;&#xA;&lt;li&gt;Copilot - corporate 9-5er&lt;/li&gt;&#xA;&lt;li&gt;Cursor - You sip on Philz coffee with your macbook&lt;/li&gt;&#xA;&lt;li&gt;Claude Code - Agentic Workflows or Bust&lt;/li&gt;&#xA;&lt;li&gt;Jetbrains - I didn’t know you wrote java&lt;/li&gt;&#xA;&lt;li&gt;Vim/neovim - definite neck beard&lt;/li&gt;&#xA;&lt;li&gt;VsCode - What else is there?&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Quick Tip To Get Agents Running Longer</title>
    <id>https://waylonwalker.com/ping-22/</id>
    <updated>2026-01-21T16:22:26Z</updated>
    <published>2026-01-21T16:22:26Z</published>
    <link href="https://waylonwalker.com/ping-22/" rel="alternate" type="text/html"></link>
    <summary type="text">Here&#39;s a quick tip if you want to get your agents running longer, **.</summary>
    <content type="html">&lt;p&gt;Here’s a quick tip if you want to get your agents running longer, &lt;strong&gt;prompt better&lt;/strong&gt;.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>format markdown with mdformat</title>
    <id>https://waylonwalker.com/format-markdown-with-mdformat/</id>
    <updated>2026-01-19T20:41:14Z</updated>
    <published>2026-01-19T20:41:14Z</published>
    <link href="https://waylonwalker.com/format-markdown-with-mdformat/" rel="alternate" type="text/html"></link>
    <summary type="text">I really wish I would have got this right a few years ago. Theres a couple of flags I had to use to get mdformat to do hard wraps at 80 characters and not...</summary>
    <content type="html">&lt;p&gt;I really wish I would have got this right a few years ago. Theres a couple of&#xA;flags I had to use to get mdformat to do hard wraps at 80 characters and not&#xA;wreck tables. This mix of flags and plugins is workign really well for me so&#xA;far.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;mdfmt&lt;span class=&#34;o&#34;&gt;()&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;{&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    uvx &lt;span class=&#34;se&#34;&gt;\&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        --with &lt;span class=&#34;s2&#34;&gt;&amp;#34;mdformat-ruff&amp;#34;&lt;/span&gt; &lt;span class=&#34;se&#34;&gt;\&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        --with &lt;span class=&#34;s2&#34;&gt;&amp;#34;mdformat-beautysh&amp;#34;&lt;/span&gt; &lt;span class=&#34;se&#34;&gt;\&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        --with &lt;span class=&#34;s2&#34;&gt;&amp;#34;mdformat-web&amp;#34;&lt;/span&gt; &lt;span class=&#34;se&#34;&gt;\&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        --with &lt;span class=&#34;s2&#34;&gt;&amp;#34;mdformat-config&amp;#34;&lt;/span&gt; &lt;span class=&#34;se&#34;&gt;\&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        --with &lt;span class=&#34;s2&#34;&gt;&amp;#34;mdformat-gfm&amp;#34;&lt;/span&gt; &lt;span class=&#34;se&#34;&gt;\&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        --with &lt;span class=&#34;s2&#34;&gt;&amp;#34;mdformat-front-matters&amp;#34;&lt;/span&gt; &lt;span class=&#34;se&#34;&gt;\&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        --with &lt;span class=&#34;s2&#34;&gt;&amp;#34;mdformat-wikilink&amp;#34;&lt;/span&gt; &lt;span class=&#34;se&#34;&gt;\&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        --with &lt;span class=&#34;s2&#34;&gt;&amp;#34;mdformat-simple-breaks&amp;#34;&lt;/span&gt; &lt;span class=&#34;se&#34;&gt;\&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        mdformat &lt;span class=&#34;se&#34;&gt;\&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        --wrap &lt;span class=&#34;m&#34;&gt;80&lt;/span&gt; &lt;span class=&#34;se&#34;&gt;\&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        --end-of-line lf &lt;span class=&#34;se&#34;&gt;\&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        --codeformatters python &lt;span class=&#34;se&#34;&gt;\&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        --codeformatters bash &lt;span class=&#34;se&#34;&gt;\&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;$@&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;And as pre-commmit.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;l&#34;&gt;repos&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;- &lt;span class=&#34;nt&#34;&gt;repo&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;l&#34;&gt;https://github.com/hukkin/mdformat&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;    &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;rev&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;m&#34;&gt;1.0.0&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;c&#34;&gt;# pin to the version you want&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;    &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;hooks&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;      &lt;/span&gt;- &lt;span class=&#34;nt&#34;&gt;id&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;l&#34;&gt;mdformat&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;        &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;args&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;          &lt;/span&gt;- --&lt;span class=&#34;l&#34;&gt;wrap&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;          &lt;/span&gt;- &lt;span class=&#34;s2&#34;&gt;&amp;#34;80&amp;#34;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;          &lt;/span&gt;- --&lt;span class=&#34;l&#34;&gt;end-of-line&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;          &lt;/span&gt;- &lt;span class=&#34;l&#34;&gt;lf&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;          &lt;/span&gt;- --&lt;span class=&#34;l&#34;&gt;codeformatters&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;          &lt;/span&gt;- &lt;span class=&#34;l&#34;&gt;python&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;          &lt;/span&gt;- --&lt;span class=&#34;l&#34;&gt;codeformatters&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;          &lt;/span&gt;- &lt;span class=&#34;l&#34;&gt;bash&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;        &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;additional_dependencies&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;          &lt;/span&gt;- &lt;span class=&#34;l&#34;&gt;mdformat-ruff&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;          &lt;/span&gt;- &lt;span class=&#34;l&#34;&gt;mdformat-beautysh&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;          &lt;/span&gt;- &lt;span class=&#34;l&#34;&gt;mdformat-web&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;          &lt;/span&gt;- &lt;span class=&#34;l&#34;&gt;mdformat-config&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;          &lt;/span&gt;- &lt;span class=&#34;l&#34;&gt;mdformat-gfm&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;          &lt;/span&gt;- &lt;span class=&#34;l&#34;&gt;mdformat-front-matters&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;          &lt;/span&gt;- &lt;span class=&#34;l&#34;&gt;mdformat-wikilink&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;          &lt;/span&gt;- &lt;span class=&#34;l&#34;&gt;mdformat-simple-breaks&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 make no mistakes by Beginbot | Suno</title>
    <id>https://waylonwalker.com/thought-914/</id>
    <updated>2026-01-19T20:25:15Z</updated>
    <published>2026-01-19T20:25:15Z</published>
    <link href="https://waylonwalker.com/thought-914/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://suno.com/song/f5821216-ea6e-49c3-98de-67880e517a89</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://suno.com/song/f5821216-ea6e-49c3-98de-67880e517a89&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://cdn2.suno.ai/image_large_f5821216-ea6e-49c3-98de-67880e517a89.jpeg&#34; alt=&#34;make no mistakes — Listen and make your own on Suno.&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: make no mistakes — Listen and make your own on Suno.&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;make no mistakes&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Listen and make your own on Suno.&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;suno.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Ai prompt music, the right level of cringe to be great.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 I Hope This Email Finds You Before I Do - Last Week in AWS Blog</title>
    <id>https://waylonwalker.com/thought-913/</id>
    <updated>2026-01-19T15:24:34Z</updated>
    <published>2026-01-19T15:24:34Z</published>
    <link href="https://waylonwalker.com/thought-913/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.lastweekinaws.com/blog/i-hope-this-email-finds-you-before-i-do/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://www.lastweekinaws.com/blog/i-hope-this-email-finds-you-before-i-do/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://www.lastweekinaws.com/wp-content/uploads/2026/01/header-1768364958717.jpg&#34; alt=&#34;I Hope This Email Finds You Before I Do — I Hope This Email Finds You Before I Do&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: I Hope This Email Finds You Before I Do — I Hope This Email Finds You Before I Do&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;I Hope This Email Finds You Before I Do&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;I Hope This Email Finds You Before I Do&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;Last Week in AWS · lastweekinaws.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;This post was filled with real life, snark, entertainment, feelings.  I get a lot of these emails that claim they can change my SEO game if I give them 500, for a site making 0, Link partnerships from small startups.  A lot of these are so automated that if I do respond I dont even get a response.  I’ve responded to many simply asking what is this about, I get 10 others just like you a week.  Can you tell me what exactly you want and what each of us benefit from it, how did you find me.  All normal questions, they almost always result in crickets, no response, maybe its time to implement a Billie for more snark.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Ping 19</title>
    <id>https://waylonwalker.com/ping-19/</id>
    <updated>2026-01-18T14:07:57Z</updated>
    <published>2026-01-18T14:07:57Z</published>
    <link href="https://waylonwalker.com/ping-19/" rel="alternate" type="text/html"></link>
    <summary type="text">What no one is talking about is that Deegs doesn&#39;t get the red plate without Anstie on the ground.</summary>
    <content type="html">&lt;p&gt;What no one is talking about is that Deegs doesn’t get the red plate without&#xA;Anstie on the ground.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/6cf67bcf-5111-4ee0-892e-0407eb1acdbe.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Open image&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/file/6cf67bcf-5111-4ee0-892e-0407eb1acdbe.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/file/6cf67bcf-5111-4ee0-892e-0407eb1acdbe.mp4&#34; type=&#34;video/mp4&#34;&gt;Your browser does not support the video tag.&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Trobio Full2</title>
    <id>https://waylonwalker.com/shots/trobio-full2/</id>
    <updated>2026-01-17T12:20:57Z</updated>
    <published>2026-01-17T12:20:57Z</published>
    <link href="https://waylonwalker.com/shots/trobio-full2/" rel="alternate" type="text/html"></link>
    <summary type="text">Trobio Full2</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/37a7b508-f5d5-49d7-a443-dc346fdae913.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Trobio Full2&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/file/37a7b508-f5d5-49d7-a443-dc346fdae913.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/file/37a7b508-f5d5-49d7-a443-dc346fdae913.mp4&#34; type=&#34;video/mp4&#34;&gt;Trobio Full2&lt;/video&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;Trobio Full2&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>What is that</title>
    <id>https://waylonwalker.com/ping-18/</id>
    <updated>2026-01-15T19:22:47Z</updated>
    <published>2026-01-15T19:22:47Z</published>
    <link href="https://waylonwalker.com/ping-18/" rel="alternate" type="text/html"></link>
    <summary type="text">I was unironically asked what is that about my keeb today. Followed by no way that works, how would you type a, s, y, u, after showing, I go the &#34;that&#39;s...</summary>
    <content type="html">&lt;p&gt;I was unironically asked what is that about my keeb today.  Followed by no way&#xA;that works, how would you type a, s, y, u, after showing, I go the “that’s&#xA;weird” walk away.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Hornet Sitting</title>
    <id>https://waylonwalker.com/shots/hornet-sitting/</id>
    <updated>2026-01-15T19:16:43Z</updated>
    <published>2026-01-15T19:16:43Z</published>
    <link href="https://waylonwalker.com/shots/hornet-sitting/" rel="alternate" type="text/html"></link>
    <summary type="text">Hornet Sitting</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/81553691-15f4-4b5e-9b4f-92fcbacf6838.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Hornet Sitting&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/file/81553691-15f4-4b5e-9b4f-92fcbacf6838.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/file/81553691-15f4-4b5e-9b4f-92fcbacf6838.mp4&#34; type=&#34;video/mp4&#34;&gt;Hornet Sitting&lt;/video&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;Hornet Sitting&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Trobio Fight</title>
    <id>https://waylonwalker.com/shots/trobio-fight/</id>
    <updated>2026-01-15T19:12:25Z</updated>
    <published>2026-01-15T19:12:25Z</published>
    <link href="https://waylonwalker.com/shots/trobio-fight/" rel="alternate" type="text/html"></link>
    <summary type="text">Trobio Fight</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/ff44918f-3c72-4377-94d2-91021033e357.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Trobio Fight&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/file/ff44918f-3c72-4377-94d2-91021033e357.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/file/ff44918f-3c72-4377-94d2-91021033e357.mp4&#34; type=&#34;video/mp4&#34;&gt;Trobio Fight&lt;/video&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;Trobio Fight&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Trobio Full</title>
    <id>https://waylonwalker.com/shots/trobio-full/</id>
    <updated>2026-01-15T19:10:33Z</updated>
    <published>2026-01-15T19:10:33Z</published>
    <link href="https://waylonwalker.com/shots/trobio-full/" rel="alternate" type="text/html"></link>
    <summary type="text">Trobio Full</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/7cc6a28b-d471-4a15-8e12-c9d1b8152fa1.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Trobio Full&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/file/7cc6a28b-d471-4a15-8e12-c9d1b8152fa1.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/file/7cc6a28b-d471-4a15-8e12-c9d1b8152fa1.mp4&#34; type=&#34;video/mp4&#34;&gt;Trobio Full&lt;/video&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;Trobio Full&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>📝 Git Notes</title>
    <id>https://waylonwalker.com/git/</id>
    <updated>2026-01-15T09:05:21Z</updated>
    <published>2026-01-15T09:05:21Z</published>
    <link href="https://waylonwalker.com/git/" rel="alternate" type="text/html"></link>
    <summary type="text">Waylon Walker&#39;s Git Notes</summary>
    <content type="html">&lt;h2 id=&#34;see-old-revisions-of-one-file&#34;&gt;See old revisions of one file &lt;a href=&#34;#see-old-revisions-of-one-file&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;git log --oneline -- &amp;lt;file&amp;gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;git log -n &lt;span class=&#34;m&#34;&gt;2&lt;/span&gt; --oneline -- &amp;lt;file&amp;gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;h2 id=&#34;checkout-an-old-revision-of-a-file&#34;&gt;Checkout an old revision of a file &lt;a href=&#34;#checkout-an-old-revision-of-a-file&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;git checkout &amp;lt;commit&amp;gt; -- path/to/file&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;h2 id=&#34;fuzzy-pick-a-file-and-check-out-an-old-revision&#34;&gt;fuzzy pick a file and check out an old revision &lt;a href=&#34;#fuzzy-pick-a-file-and-check-out-an-old-revision&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;cp&#34;&gt;#!/usr/bin/env bash&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;set&lt;/span&gt; -euo pipefail&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nv&#34;&gt;file&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;${&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;1&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;:-&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;}&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;if&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;[[&lt;/span&gt; -z &lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;${&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;file&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;}&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;]]&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;then&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  &lt;span class=&#34;nv&#34;&gt;file&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;$(&lt;/span&gt;git ls-files &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt; fzf --prompt&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;select file &amp;gt; &amp;#34;&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;||&lt;/span&gt; &lt;span class=&#34;nb&#34;&gt;exit&lt;/span&gt; &lt;span class=&#34;m&#34;&gt;0&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;fi&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;if&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;[[&lt;/span&gt; -z &lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;${&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;file&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;}&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;]]&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;then&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  &lt;span class=&#34;nb&#34;&gt;exit&lt;/span&gt; &lt;span class=&#34;m&#34;&gt;0&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;fi&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;if&lt;/span&gt; ! git rev-parse --is-inside-work-tree &amp;gt;/dev/null 2&amp;gt;&lt;span class=&#34;p&#34;&gt;&amp;amp;&lt;/span&gt;1&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;then&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  &lt;span class=&#34;nb&#34;&gt;echo&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;Not a git repository.&amp;#34;&lt;/span&gt; &amp;gt;&lt;span class=&#34;p&#34;&gt;&amp;amp;&lt;/span&gt;&lt;span class=&#34;m&#34;&gt;2&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  &lt;span class=&#34;nb&#34;&gt;exit&lt;/span&gt; &lt;span class=&#34;m&#34;&gt;1&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;fi&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;if&lt;/span&gt; ! git ls-files --error-unmatch -- &lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;${&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;file&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;}&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt; &amp;gt;/dev/null 2&amp;gt;&lt;span class=&#34;p&#34;&gt;&amp;amp;&lt;/span&gt;1&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;then&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  &lt;span class=&#34;nb&#34;&gt;echo&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;File is not tracked by git: &lt;/span&gt;&lt;span class=&#34;si&#34;&gt;${&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;file&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;}&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt; &amp;gt;&lt;span class=&#34;p&#34;&gt;&amp;amp;&lt;/span&gt;&lt;span class=&#34;m&#34;&gt;2&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  &lt;span class=&#34;nb&#34;&gt;exit&lt;/span&gt; &lt;span class=&#34;m&#34;&gt;1&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;fi&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nv&#34;&gt;choice&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;$(&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  git log --follow --pretty&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;format:&lt;span class=&#34;s1&#34;&gt;&amp;#39;%h %ad %s&amp;#39;&lt;/span&gt; --date&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;short -- &lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;${&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;file&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;}&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    fzf --ansi --no-sort --reverse &lt;span class=&#34;se&#34;&gt;\&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        --preview-window&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;down:70% &lt;span class=&#34;se&#34;&gt;\&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        --prompt&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;checkout revision &amp;gt; &amp;#34;&lt;/span&gt; &lt;span class=&#34;se&#34;&gt;\&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        --preview &lt;span class=&#34;s2&#34;&gt;&amp;#34;git show --color=always {1}^..{1} -- &amp;#39;&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;${&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;file&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;}&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#39; 2&amp;gt;/dev/null || git show --color=always {1} -- &amp;#39;&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;${&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;file&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;}&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#39;&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;if&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;[[&lt;/span&gt; -z &lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;${&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;choice&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;}&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;]]&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;then&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  &lt;span class=&#34;nb&#34;&gt;exit&lt;/span&gt; &lt;span class=&#34;m&#34;&gt;0&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;fi&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nv&#34;&gt;commit&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;$(&lt;/span&gt;awk &lt;span class=&#34;s1&#34;&gt;&amp;#39;{print $1}&amp;#39;&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;&amp;lt;&amp;lt;&amp;lt;&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;${&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;choice&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;}&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;git checkout &lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;${&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;commit&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;}&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt; -- &lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;${&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;file&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;}&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Heringbone Fingerboard</title>
    <id>https://waylonwalker.com/shots/heringbone-fingerboard/</id>
    <updated>2026-01-14T19:55:10Z</updated>
    <published>2026-01-14T19:55:10Z</published>
    <link href="https://waylonwalker.com/shots/heringbone-fingerboard/" rel="alternate" type="text/html"></link>
    <summary type="text">I just finished up my latest 6 ply wood fingerboard. I used scraps of purple, blue, red, and gold from the first 5 boards I built to make this pattern.</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/1b7f257c-5193-4b74-b768-2fa4a7ccdec8.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Heringbone Fingerboard&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/file/1b7f257c-5193-4b74-b768-2fa4a7ccdec8.webp&#34; alt=&#34;Heringbone Fingerboard&#34;/ data-glightbox=&#34;description: Heringbone Fingerboard&#34;&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;I just finished up my latest 6 ply wood fingerboard.  I used scraps of purple, blue, red, and gold from the first 5 boards I built to make this pattern.&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Dont Trust Users Tokens</title>
    <id>https://waylonwalker.com/dont-trust-users-tokens/</id>
    <updated>2026-01-14T19:49:43Z</updated>
    <published>2026-01-14T19:49:43Z</published>
    <link href="https://waylonwalker.com/dont-trust-users-tokens/" rel="alternate" type="text/html"></link>
    <summary type="text">User states: Upon picking up an old project and trying to install pip says &#34;cannot find a version to satisfy&#34;</summary>
    <content type="html">&lt;p&gt;User states: Upon picking up an old project and trying to install pip says&#xA;“cannot find a version to satisfy”&lt;/p&gt;&#xA;&lt;p&gt;I’ve got this, I’ve had this a hundred times before it’s a python version, a&#xA;rogue package, maybe a yank from the pinned deps.  I pop open the project get&#xA;us on the same commit.  I get a different error, make a few updates and we are&#xA;good, except the user gets the same error from the start.&lt;/p&gt;&#xA;&lt;p&gt;They never saw the error I did, and my fix did not magically resolve their&#xA;error.  We circle all the things it could be for hours.  I consistently wipe my&#xA;venv, and recreate with ease, send them the commands I ran to no avail.&#xA;Something is up and I can’t put my finger on it.  We’ve checked all the things&#xA;and inched as close as we can to running everything exactly the same.&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;Os&lt;/li&gt;&#xA;&lt;li&gt;python version&lt;/li&gt;&#xA;&lt;li&gt;Network vpn&lt;/li&gt;&#xA;&lt;li&gt;uv version&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;Nothing makes any sense.  Finally I throw in the towel, is it the artifact&#xA;server.  I forge a token and give him one to borrow.&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;BAM&lt;/strong&gt; it works, like magic.  The first sign of progress.  Then he mentions.&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;Huh that’s odd cause I just got mine this morning&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;p&gt;Failing to mention this any earlier that getting a new token for a service and&#xA;it completely borked it!  I get it though, the error was very oddly presented&#xA;and not easy to see why&lt;/p&gt;&#xA;&lt;p&gt;There it was all along, looking back in the logs I see his redacted token going&#xA;to the wrong registry. One that does not include our packages, everything makes&#xA;sense now. The reason it couldn’t find a version to satisfy was not a python&#xA;version, os version, package conflict, it was that it couldn’t find a fucking&#xA;version of the thing to begin with.&lt;/p&gt;&#xA;&lt;p&gt;All this to say, don’t trust users tokens, save your time and just get fresh&#xA;ones with them.&lt;/p&gt;&#xA;&lt;p&gt;&lt;redacted&gt; if you read this it’s all cool, like I said it’s all part of the&#xA;job, no harsh feelings, at least we got a good story out of it right!&lt;/redacted&gt;&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ dbreunig whenwords</title>
    <id>https://waylonwalker.com/dbreunig-whenwords/</id>
    <updated>2026-01-14T17:08:20Z</updated>
    <published>2026-01-14T17:08:20Z</published>
    <link href="https://waylonwalker.com/dbreunig-whenwords/" rel="alternate" type="text/html"></link>
    <summary type="text">Check out dbreunig and their project whenwords.</summary>
    <content type="html">&lt;p&gt;Check out &lt;a href=&#34;https://github.com/dbreunig&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;dbreunig&lt;/a&gt; and their project &lt;a href=&#34;https://github.com/dbreunig/whenwords&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;whenwords&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;A relative time formatting library, with no code.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Hollow Knight: Silksong by Ceen in 54:55 - Awesome Games Done ...</title>
    <id>https://waylonwalker.com/thought-912/</id>
    <updated>2026-01-14T02:35:01Z</updated>
    <published>2026-01-14T02:35:01Z</published>
    <link href="https://waylonwalker.com/thought-912/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/watch?v=M9Li3gm4JCI</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;M9Li3gm4JCI&#34; title=&#34;Hollow Knight: Silksong by Ceen in 54:55 - Awesome Games Done Quick 2026&#34; playlabel=&#34;Play: Hollow Knight: Silksong by Ceen in 54:55 - Awesome Games Done Quick 2026&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;What a goat, speedrunning silksong at a competitive pace, live, with live audience, while co hosting, and raising $2M for Prevent Cancer Foundation.  CEEN moves in ways that do not compute with my brain, everything looks so simple, things that take me so long are done in a few swipes.  Watching this it really make silkspear look OP, this thing does so much damage if you never take damage and can use it continuously without needing silk for healing.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 &#34;I shipped code I don&#39;t understand and I bet you have too&#34; – J...</title>
    <id>https://waylonwalker.com/thought-910/</id>
    <updated>2026-01-14T02:15:41Z</updated>
    <published>2026-01-14T02:15:41Z</published>
    <link href="https://waylonwalker.com/thought-910/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/watch?v=eIoohUmYpGI</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;eIoohUmYpGI&#34; title=&#34;The Infinite Software Crisis – Jake Nations, Netflix&#34; playlabel=&#34;Play: The Infinite Software Crisis – Jake Nations, Netflix&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Absolute banger of a conference talk, saving to come back with more notes later.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>High Halls Gauntlet Ending</title>
    <id>https://waylonwalker.com/shots/high-halls-gauntlet-ending/</id>
    <updated>2026-01-13T18:49:59Z</updated>
    <published>2026-01-13T18:49:59Z</published>
    <link href="https://waylonwalker.com/shots/high-halls-gauntlet-ending/" rel="alternate" type="text/html"></link>
    <summary type="text">High Halls Gauntlet Ending</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/a74b0494-341b-4194-955c-be2a56931d77.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;High Halls Gauntlet Ending&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/file/a74b0494-341b-4194-955c-be2a56931d77.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/file/a74b0494-341b-4194-955c-be2a56931d77.mp4&#34; type=&#34;video/mp4&#34;&gt;High Halls Gauntlet Ending&lt;/video&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;High Halls Gauntlet Ending&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Conductors Melody</title>
    <id>https://waylonwalker.com/shots/conductors-melody/</id>
    <updated>2026-01-13T18:43:43Z</updated>
    <published>2026-01-13T18:43:43Z</published>
    <link href="https://waylonwalker.com/shots/conductors-melody/" rel="alternate" type="text/html"></link>
    <summary type="text">Conductors Melody</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/91c794cb-fd46-4354-aae9-a15ef2426ea0.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Conductors Melody&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/file/91c794cb-fd46-4354-aae9-a15ef2426ea0.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/file/91c794cb-fd46-4354-aae9-a15ef2426ea0.mp4&#34; type=&#34;video/mp4&#34;&gt;Conductors Melody&lt;/video&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;Conductors Melody&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Top Spool</title>
    <id>https://waylonwalker.com/shots/top-spool/</id>
    <updated>2026-01-13T18:42:48Z</updated>
    <published>2026-01-13T18:42:48Z</published>
    <link href="https://waylonwalker.com/shots/top-spool/" rel="alternate" type="text/html"></link>
    <summary type="text">Top Spool</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/ff9c858b-0829-4e50-a933-cdc971e601af.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Top Spool&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/file/ff9c858b-0829-4e50-a933-cdc971e601af.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/file/ff9c858b-0829-4e50-a933-cdc971e601af.mp4&#34; type=&#34;video/mp4&#34;&gt;Top Spool&lt;/video&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;Top Spool&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>opencode variants</title>
    <id>https://waylonwalker.com/opencode-variants/</id>
    <updated>2026-01-13T08:53:36Z</updated>
    <published>2026-01-13T08:53:36Z</published>
    <link href="https://waylonwalker.com/opencode-variants/" rel="alternate" type="text/html"></link>
    <summary type="text">Opencode is changing on the daily right now, today I noticed the word pop up in Orange text in my opencode window. Looking into this they are exposing...</summary>
    <content type="html">&lt;p&gt;Opencode is changing on the daily right now, today I noticed the word &lt;code&gt;low&lt;/code&gt; pop&#xA;up in Orange text in my opencode window.  Looking into this they are exposing&#xA;&lt;a href=&#34;https://opencode.ai/docs/models/#variants&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/opencode.ai.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/opencode.ai.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;variants&lt;/a&gt; to the user.  This allows&#xA;you to change between fast or slow and thinking, the later taking more time to&#xA;prepare before doing an action.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/0b6bfe5e-41b0-4e44-8c5a-ff88739a770e.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Swapping Variants in opencode&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/file/0b6bfe5e-41b0-4e44-8c5a-ff88739a770e.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/file/0b6bfe5e-41b0-4e44-8c5a-ff88739a770e.mp4&#34; type=&#34;video/mp4&#34;&gt;Swapping Variants in opencode&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;p&gt;It looks like this toggle may have been here for awhile and I’m just now&#xA;discovering it. Potentially because its a new feature of the free Zen provider.&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;Variants&#xA;Many models support multiple variants with different configurations. OpenCode ships with built-in default variants for popular providers.&lt;/p&gt;&#xA;&lt;p&gt;Built-in variants&#xA;OpenCode ships with default variants for many providers:&lt;/p&gt;&#xA;&lt;p&gt;Anthropic:&lt;/p&gt;&#xA;&lt;p&gt;high - High thinking budget (default)&#xA;max - Maximum thinking budget&#xA;OpenAI:&lt;/p&gt;&#xA;&lt;p&gt;Varies by model but roughly:&lt;/p&gt;&#xA;&lt;p&gt;none - No reasoning&#xA;minimal - Minimal reasoning effort&#xA;low - Low reasoning effort&#xA;medium - Medium reasoning effort&#xA;high - High reasoning effort&#xA;xhigh - Extra high reasoning effort&#xA;Google:&lt;/p&gt;&#xA;&lt;p&gt;low - Lower effort/token budget&#xA;high - Higher effort/token budget&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Reflections on 13 years and 1,000 posts of writing on my blog</title>
    <id>https://waylonwalker.com/thought-909/</id>
    <updated>2026-01-13T03:15:54Z</updated>
    <published>2026-01-13T03:15:54Z</published>
    <link href="https://waylonwalker.com/thought-909/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://hamy.xyz/blog/2026-01_1000-blog-posts</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://hamy.xyz/blog/2026-01_1000-blog-posts&#34; class=&#34;embed-card-link  has-avatar has-avatar-before&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/hamy.xyz.png&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/hamy.xyz.png&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Reflections on 13 years and 1,000 posts of writing on my blog - HAMY&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;hamy.xyz&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;The answer is I do it habitually. If there’s a big enough idea I’ve had floating around in my head and I think others might find it useful / interesting then I usually think it’s worth logging it somewhere. If I don’t, I’ll likely just keep thinking about it so might as well get it out of my head and on the internet where people can find it.&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;a href=&#34;https://hammy.xyz&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/hammy.xyz.png&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/hammy.xyz.png&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;hammy&lt;/a&gt;&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;p&gt;This is how you do it.  If you want to do something, you need to make it a habit. Something you crave, something you need.  I need to write my ideas down in this blog, it helps me index ideas for later, but more importantly it helps me flesh them out and think through real things.&lt;/p&gt;&#xA;&lt;p&gt;Congrats on 1k, your site is awesome &lt;a href=&#34;https://hammy.xyz&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/hammy.xyz.png&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/hammy.xyz.png&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;Hammy&lt;/a&gt;&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Ping 17</title>
    <id>https://waylonwalker.com/ping-17/</id>
    <updated>2026-01-12T12:01:16Z</updated>
    <published>2026-01-12T12:01:16Z</published>
    <link href="https://waylonwalker.com/ping-17/" rel="alternate" type="text/html"></link>
    <summary type="text">I&#39;m not sure if its good to keep issues and plans in the repo long term, but I&#39;m going to give it a shot.</summary>
    <content type="html">&lt;p&gt;I’m not sure if its good to keep issues and plans in the repo long term, but&#xA;I’m going to give it a shot.&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;read @pages/issues/issue-1.md create a plan to fix the issue, then write your&#xA;plan to fix in @pages/plans/fix-issue-1.md&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Don&#39;t fall into the anti-AI hype</title>
    <id>https://waylonwalker.com/thought-908/</id>
    <updated>2026-01-12T03:03:25Z</updated>
    <published>2026-01-12T03:03:25Z</published>
    <link href="https://waylonwalker.com/thought-908/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://simonwillison.net/2026/Jan/11/dont-fall-into-the-anti-ai-hype/#atom-everything</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://simonwillison.net/2026/Jan/11/dont-fall-into-the-anti-ai-hype/#atom-everything&#34; class=&#34;embed-card-link  has-avatar has-avatar-before&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/simonwillison.net.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/simonwillison.net.ico&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Don’t fall into the anti-AI hype&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;I&amp;#39;m glad someone was brave enough to say this. There is a lot of anti-AI sentiment in the software development community these days. Much of it is justified, but if …&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;Simon Willison’s Weblog · simonwillison.net&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Never believe in absolutes, see what I did there.  The hype bros will take you to the extremes, ai will take your jobs in six months or be burned to the ground in six months.  How about its useful now and will be more useful in six months.  If you turned off the hype bro feed for six months you would probably be fine, in fact you would probably be better off for not capturing so much noise along the way.  AI has gone the way of next js framework, it churns fast, hype bros are always an expert that know exactly whats best for everyone.  It changes fast, what was the best last week might be dead next week.  In fact getting to know what works well for you and knowing that tool really well for a longer period will take you farther.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Salesforces mistake - YouTube</title>
    <id>https://waylonwalker.com/thought-907/</id>
    <updated>2026-01-12T02:52:55Z</updated>
    <published>2026-01-12T02:52:55Z</published>
    <link href="https://waylonwalker.com/thought-907/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/shorts/tBWenRZIgdg</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;tBWenRZIgdg&#34; title=&#34;Salesforces mistake&#34; playlabel=&#34;Play: Salesforces mistake&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Salesforce gets pwnd by the ai hype bros and killed its reputation with employees, letting them know where they truely stand with them.  4k people sounds like a lot, its probably a big chunk of savings, but was it worth the loss of reputation?  There must be a better way to give this a trial run that lets them understand this before disrupting the lives of real people right???&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Broodmother Eye</title>
    <id>https://waylonwalker.com/shots/broodmother-eye/</id>
    <updated>2026-01-11T18:03:37Z</updated>
    <published>2026-01-11T18:03:37Z</published>
    <link href="https://waylonwalker.com/shots/broodmother-eye/" rel="alternate" type="text/html"></link>
    <summary type="text">Broodmother Eye</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/89b14b31-6ae8-42c4-ab1b-fc1d354ee27c.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Broodmother Eye&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/file/89b14b31-6ae8-42c4-ab1b-fc1d354ee27c.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/file/89b14b31-6ae8-42c4-ab1b-fc1d354ee27c.mp4&#34; type=&#34;video/mp4&#34;&gt;Broodmother Eye&lt;/video&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;Broodmother Eye&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Big Flea 1</title>
    <id>https://waylonwalker.com/shots/big-flea-1/</id>
    <updated>2026-01-11T18:01:55Z</updated>
    <published>2026-01-11T18:01:55Z</published>
    <link href="https://waylonwalker.com/shots/big-flea-1/" rel="alternate" type="text/html"></link>
    <summary type="text">Big Flea 1</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/d7578560-e7ae-4a0c-9896-a4db9d919b23.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Big Flea 1&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/file/d7578560-e7ae-4a0c-9896-a4db9d919b23.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/file/d7578560-e7ae-4a0c-9896-a4db9d919b23.mp4&#34; type=&#34;video/mp4&#34;&gt;Big Flea 1&lt;/video&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;Big Flea 1&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Cogfly</title>
    <id>https://waylonwalker.com/shots/cogfly/</id>
    <updated>2026-01-11T18:00:35Z</updated>
    <published>2026-01-11T18:00:35Z</published>
    <link href="https://waylonwalker.com/shots/cogfly/" rel="alternate" type="text/html"></link>
    <summary type="text">Cogfly</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/3fefcd31-128c-47bb-a8b1-b601cfd54536.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Cogfly&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/file/3fefcd31-128c-47bb-a8b1-b601cfd54536.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/file/3fefcd31-128c-47bb-a8b1-b601cfd54536.mp4&#34; type=&#34;video/mp4&#34;&gt;Cogfly&lt;/video&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;Cogfly&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Beast Crest</title>
    <id>https://waylonwalker.com/shots/beast-crest/</id>
    <updated>2026-01-11T17:59:06Z</updated>
    <published>2026-01-11T17:59:06Z</published>
    <link href="https://waylonwalker.com/shots/beast-crest/" rel="alternate" type="text/html"></link>
    <summary type="text">Beast Crest</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/9a406fa1-d69d-4fd9-9ff1-15c84661d97d.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Beast Crest&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/file/9a406fa1-d69d-4fd9-9ff1-15c84661d97d.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/file/9a406fa1-d69d-4fd9-9ff1-15c84661d97d.mp4&#34; type=&#34;video/mp4&#34;&gt;Beast Crest&lt;/video&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;Beast Crest&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Clawline</title>
    <id>https://waylonwalker.com/shots/clawline/</id>
    <updated>2026-01-11T17:57:57Z</updated>
    <published>2026-01-11T17:57:57Z</published>
    <link href="https://waylonwalker.com/shots/clawline/" rel="alternate" type="text/html"></link>
    <summary type="text">Clawline</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/73e59874-cc30-4330-bb5a-c81a93310dcd.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Clawline&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/file/73e59874-cc30-4330-bb5a-c81a93310dcd.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/file/73e59874-cc30-4330-bb5a-c81a93310dcd.mp4&#34; type=&#34;video/mp4&#34;&gt;Clawline&lt;/video&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;Clawline&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Ai</title>
    <id>https://waylonwalker.com/ai/</id>
    <updated>2026-01-11T13:48:43Z</updated>
    <published>2026-01-11T13:48:43Z</published>
    <link href="https://waylonwalker.com/ai/" rel="alternate" type="text/html"></link>
    <summary type="text">Last updated Jan 2026.</summary>
    <content type="html">&lt;p&gt;Last updated Jan 2026.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition seealso&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Seealso&lt;/p&gt;&#xA;&lt;p&gt;Looking for all posts tagged with ai see [[ tag/ai ]]&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Ai is a tool I use a lot for code generation, research, image generation, and&#xA;debugging.  The words I publish on this site are my own unless explicitly&#xA;stated from the top.  There’s only one or two posts in this category.&lt;/p&gt;&#xA;&lt;h2 id=&#34;words-are-mine&#34;&gt;Words are mine &lt;a href=&#34;#words-are-mine&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;The core of what this blog is, is my thoughts ideas, sharing experiences.  The&#xA;words are the important part.  They are not perfect, I often do not spell or&#xA;grammer check, and what is here is from a flow state of writing and very often&#xA;not refactored.&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;No AI unless explicitly stated&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;h2 id=&#34;code-gen&#34;&gt;code gen &lt;a href=&#34;#code-gen&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;Up till around 2023 all of the code to create the site was hand written by me.&#xA;I have my own site generator that I maintain &lt;a href=&#34;/markata/&#34; class=&#34;wikilink&#34; data-title=&#34;markata&#34; data-description=&#34;This post is a work in progress.&#34; data-date=&#34;2024-05-30&#34; data-preview=&#34;This post is a work in progress.&#34;&gt;markata&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;From 2023 through 2025 snippets of code, sometimes entire plugins or modules&#xA;were created in chat apps like chatgpt.  There was no agentic coding, windsurf,&#xA;cursor, claude code, opencode, none of it.  It was all integrated into the site&#xA;by hand.&lt;/p&gt;&#xA;&lt;p&gt;Starting around Dec 2025 I was finding freely available agents through tools&#xA;like opencode to be more and more useful, making less mistakes, doing better at&#xA;getting context and making changes.  The flow is relying on heavy planning and&#xA;issue reporting.&lt;/p&gt;&#xA;&lt;h2 id=&#34;image-gen&#34;&gt;image gen &lt;a href=&#34;#image-gen&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;I really got into stable diffusion as it came out.  I thought it was&#xA;fascinating to generate different kinds of images of things that I would&#xA;otherwise have no ability to create, for a long time I was generating images&#xA;for every post.  I’ve moved on from doing it for every post, but still do it&#xA;occasionally.&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;I’m not an artist, sometimes I like to include art that I would not otherwise&#xA;be able to.  Most of the art you see on a post is AI generated, and may not&#xA;be called out.&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;h2 id=&#34;a-hreftechbrophobic-classwikilink-data-titletechbrophobic-data-descriptioni-just-heard-someone-drop-the-this-term-and-it-kinda-fits-a-lot-of-shit-on-the-internet-right-now-arguing-that-its-ok-to-question-ai-its-ok-to-like-it-its-data-date2025-11-09techbrophobica&#34;&gt;&lt;a href=&#34;/techbrophobic/&#34; class=&#34;wikilink&#34; data-title=&#34;Techbrophobic&#34; data-description=&#34;I just heard someone drop the this term and it kinda fits a lot of shit on the internet right now. Arguing that its OK to question AI, its OK to like it, its...&#34; data-date=&#34;2025-11-09&#34; data-preview=&#34;I just heard someone drop the this term and it kinda fits a lot of shit on the internet right now. Arguing that its OK to question AI, its OK to like it, its...&#34;&gt;Techbrophobic&lt;/a&gt; &lt;a href=&#34;#a-hreftechbrophobic-classwikilink-data-titletechbrophobic-data-descriptioni-just-heard-someone-drop-the-this-term-and-it-kinda-fits-a-lot-of-shit-on-the-internet-right-now-arguing-that-its-ok-to-question-ai-its-ok-to-like-it-its-data-date2025-11-09techbrophobica&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;I feel this term strongly.  I find ai tooling useful, but the industry and hype bros bring a bad taste.&lt;/p&gt;&#xA;&lt;p&gt;The tools do not not do everything right, you still have to think, watch its output.  You have to put the work in to do proper software engineering.  Its not a magic pill, but it has the ability to implement ideas, plans, very quickly.&lt;/p&gt;&#xA;&lt;p&gt;Also the whole industry creeps me out.  The theft that happened to get here was wrong.  AI shovoled into everything as slop sucks.  The stock market pump is sus.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Diffs, from Pierre</title>
    <id>https://waylonwalker.com/thought-906/</id>
    <updated>2026-01-10T23:28:59Z</updated>
    <published>2026-01-10T23:28:59Z</published>
    <link href="https://waylonwalker.com/thought-906/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://diffs.com/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://diffs.com/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://diffs.com/diffs-brand/opengraph-image.png&#34; alt=&#34;Diffs, from Pierre — @pierre/diffs is an open source diff and code rendering library. It&amp;#39;s built on Shiki for syntax highlighting and theming, is super customizable, and comes packed with features.&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: Diffs, from Pierre — @pierre/diffs is an open source diff and code rendering library. It&amp;#39;s built on Shiki for syntax highlighting and theming, is super customizable, and comes packed with features.&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Diffs, from Pierre&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;@pierre/diffs is an open source diff and code rendering library. It&amp;#39;s built on Shiki for syntax highlighting and theming, is super customizable, and comes packed with features.&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;diffs.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;This looks like a really nice and performant diffing library that supports vanilla and react, with a lot of options.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Portajohn Progress 01 10 2026</title>
    <id>https://waylonwalker.com/shots/portajohn-progress-01-10-2026/</id>
    <updated>2026-01-10T18:58:03Z</updated>
    <published>2026-01-10T18:58:03Z</published>
    <link href="https://waylonwalker.com/shots/portajohn-progress-01-10-2026/" rel="alternate" type="text/html"></link>
    <summary type="text">A cutaway of the portajohn keyboard progress, it shows the internal trace from the bottom along with built in supports, reset button, power button, microcontroller cutout. I&#39;m getting very happy with the progress. I really like the feel of the latest build, and can&#39;t wait to have this solid build out there.</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/a6e31df0-b278-457c-9acd-f8ba81afc12b.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;portajohn progress 01 10 2026&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/file/a6e31df0-b278-457c-9acd-f8ba81afc12b.webp&#34; alt=&#34;portajohn progress 01 10 2026&#34;/ data-glightbox=&#34;description: portajohn progress 01 10 2026&#34;&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;A cutaway of the portajohn keyboard progress, it shows the internal trace from the bottom along with built in supports, reset button, power button, microcontroller cutout.  I’m getting very happy with the progress.  I really like the feel of the latest build, and can’t wait to have this solid build out there.&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Oxide and Friends 1/5/2026 -- Predictions 2026!! - YouTube</title>
    <id>https://waylonwalker.com/thought-905/</id>
    <updated>2026-01-09T21:41:43Z</updated>
    <published>2026-01-09T21:41:43Z</published>
    <link href="https://waylonwalker.com/thought-905/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/clip/UgkxKSVMasWf0UpGaRVRqeBmn9C5Oh1syH2Q</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;lVDhQMiAbR8&#34; title=&#34;✂️ Job of typing code into a computer in 6 years&#34; playlabel=&#34;Play: ✂️ Job of typing code into a computer in 6 years&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;I thought this was an interesting take from Simon.  I’ve been hearing him consistently say there will be more demand for software engineering in the future.  More companies will have the ability and need to deal with software applications, but fewer of us will be hand editing any code.  I thought this was an interesting interaction in the clip.&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;Uh Simon, what do you got for us?&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;I’ve just got the one. I think the act&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;of the the the job of being paid money to type code into a computer Yeah.&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;will go the same way as punching punch cards.&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;Okay.&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;I do I think in&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;six years time I do not think it will anyone will be paid to 80:56&#xA;just do the thing where you type the code.&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;Just type the code. Okay.&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;I&#xA;think software engineering will still be an enormous career. I just think the&#xA;software engineers won’t be spending multiple hours of their day in a text&#xA;editor typing out syntax. 81:09&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;It will look like punching cards. I think&#xA;so. Yeah.&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;Yeah. Interesting. In uh in six years. Um and but software&#xA;engineering still very much exists.&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;I believe so. I I hope so. [laughter] I&#xA;very much hope so because I think&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;the um the challenge of being a software&#xA;81:23 engineer is not remembering&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;how if what what if what for loops look&#xA;like. It is understanding what computers can do and how to turn fuzzy human&#xA;requirements into actual like working software. And that’s that’s what we’re&#xA;for. And I think we’ll still be doing that just a lot more of it in a lot more&#xA;ambitious scale.&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;And then Okay. Do you Does the software engineer though&#xA;deals with code? I mean they I mean the code is being written.&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;I think&#xA;they probably look at it occasionally.&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;Okay. Only occasionally a little&#xA;bit. So I met 81:53&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;Who debugs it?&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;Um I I hate to say it, the agents&#xA;debug it themselves.&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;Okay. Who debugs your device driver that either works&#xA;or doesn’t? I like&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;working on this programming language like I’m doing my&#xA;own codegen and like&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;claude is happy to pull out GDB and just like&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>opencode init prompt</title>
    <id>https://waylonwalker.com/opencode-init-prompt/</id>
    <updated>2026-01-09T13:32:12Z</updated>
    <published>2026-01-09T13:32:12Z</published>
    <link href="https://waylonwalker.com/opencode-init-prompt/" rel="alternate" type="text/html"></link>
    <summary type="text">This is opencode&#39;s init prompt.</summary>
    <content type="html">&lt;p&gt;This is opencode’s init prompt.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Please analyze this codebase and create an AGENTS.md file containing:&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;1.&lt;/span&gt; Build/lint/test commands - especially for running a single test&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;2.&lt;/span&gt; Code style guidelines including imports, formatting, types, naming conventions, error handling, etc.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;The file you create will be given to agentic coding agents (such as yourself) that operate in this repository. Make it about 150 lines long.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;If there are Cursor rules (in .cursor/rules/ or .cursorrules) or Copilot rules (in .github/copilot-instructions.md), make sure to include them.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;If there&amp;#39;s already an AGENTS.md, improve it if it&amp;#39;s located in &amp;lt;dir&amp;gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Og-Sample</title>
    <id>https://waylonwalker.com/og-sample/</id>
    <updated>2026-01-09T08:19:29Z</updated>
    <published>2026-01-09T08:19:29Z</published>
    <link href="https://waylonwalker.com/og-sample/" rel="alternate" type="text/html"></link>
    <summary type="text">I&#39;m making an effort to make my og images better yet again, I&#39;m going for that next 10% better. I really like my og images, but there are some title sizes...</summary>
    <content type="html">&lt;p&gt;I’m making an effort to make my &lt;a href=&#34;/og/&#34; class=&#34;glossary-term&#34; title=&#34;OG is short for open graph, a set of standard meta tags that are used for social media sharing. This is what tells other websites how to describe and display...&#34;&gt;og&lt;/a&gt; images better yet again, I’m going for that&#xA;next 10% better.  I really like my og images, but there are some title sizes&#xA;that overflow.  This page is a page to help debug.  How I make these og images&#xA;is for another day.&lt;/p&gt;&#xA;&lt;h2 id=&#34;script&#34;&gt;Script &lt;a href=&#34;#script&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;I use my own static site generator &lt;a href=&#34;/markata/&#34; class=&#34;wikilink&#34; data-title=&#34;markata&#34; data-description=&#34;This post is a work in progress.&#34; data-date=&#34;2024-05-30&#34; data-preview=&#34;This post is a work in progress.&#34;&gt;markata&lt;/a&gt;.  I can use it to generate a&#xA;list of posts wrapped in their og image.  I use itertools to do a groupby so&#xA;that I can do roughly every 5 characters larger, and see a wide variety of&#xA;sizes.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;kn&#34;&gt;from&lt;/span&gt; &lt;span class=&#34;nn&#34;&gt;markata&lt;/span&gt; &lt;span class=&#34;kn&#34;&gt;import&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;Markata&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;kn&#34;&gt;from&lt;/span&gt; &lt;span class=&#34;nn&#34;&gt;itertools&lt;/span&gt; &lt;span class=&#34;kn&#34;&gt;import&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;groupby&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;markata&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;Markata&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;()&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;lens&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;[{&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;length&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;nb&#34;&gt;len&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;post&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;title&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;),&lt;/span&gt; &lt;span class=&#34;s1&#34;&gt;&amp;#39;title&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;post&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;title&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;s1&#34;&gt;&amp;#39;slug&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;post&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;slug&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;}&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;for&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;post&lt;/span&gt; &lt;span class=&#34;ow&#34;&gt;in&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;m&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;posts&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;lens_sorted&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;nb&#34;&gt;sorted&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;lens&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;key&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;lambda&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;x&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;x&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;length&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;])&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;groups&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;n&#34;&gt;k&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;nb&#34;&gt;list&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;g&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;k&#34;&gt;for&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;k&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;g&lt;/span&gt; &lt;span class=&#34;ow&#34;&gt;in&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;groupby&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;lens_sorted&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;key&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;lambda&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;x&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;x&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;length&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;//&lt;/span&gt; &lt;span class=&#34;mi&#34;&gt;5&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;*&lt;/span&gt; &lt;span class=&#34;mi&#34;&gt;5&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;}&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;posts&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;g&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;0&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;for&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;g&lt;/span&gt; &lt;span class=&#34;ow&#34;&gt;in&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;groups&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;values&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;()]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;ogs&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;[&lt;/span&gt; &lt;span class=&#34;sa&#34;&gt;f&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;[![&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;post&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;title&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;}&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;](https://shots.waylonwalker.com/shot/?url=https://waylonwalker.com/&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;{&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;post&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;slug&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]&lt;/span&gt; &lt;span class=&#34;si&#34;&gt;}&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;/og/&amp;amp;height=600&amp;amp;width=1200&amp;amp;scaled_width=1200&amp;amp;scaled_height=600&amp;amp;format=jpg&amp;amp;v=4)](https://waylonwalker.com/&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;{&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;post&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;slug&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]&lt;/span&gt; &lt;span class=&#34;si&#34;&gt;}&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;/og/)&amp;#39;&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;for&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;post&lt;/span&gt; &lt;span class=&#34;ow&#34;&gt;in&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;posts&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;print&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;se&#34;&gt;\n\n&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;join&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;ogs&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;))&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;h2 id=&#34;og-sample&#34;&gt;OG-Sample &lt;a href=&#34;#og-sample&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://waylonwalker.com/sample/og/&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://shots.waylonwalker.com/shot/?url=https://waylonwalker.com/sample/og/&amp;amp;height=600&amp;amp;width=1200&amp;amp;scaled_width=1200&amp;amp;scaled_height=600&amp;amp;format=jpg&amp;amp;v=4&#34; alt=&#34;sample&#34;/ data-glightbox=&#34;description: sample&#34;&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://waylonwalker.com/kedro/og/&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://shots.waylonwalker.com/shot/?url=https://waylonwalker.com/kedro/og/&amp;amp;height=600&amp;amp;width=1200&amp;amp;scaled_width=1200&amp;amp;scaled_height=600&amp;amp;format=jpg&amp;amp;v=4&#34; alt=&#34;Kedro&#34;/ data-glightbox=&#34;description: Kedro&#34;&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://waylonwalker.com/weeknote-0/og/&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://shots.waylonwalker.com/shot/?url=https://waylonwalker.com/weeknote-0/og/&amp;amp;height=600&amp;amp;width=1200&amp;amp;scaled_width=1200&amp;amp;scaled_height=600&amp;amp;format=jpg&amp;amp;v=4&#34; alt=&#34;Weeknote 0&#34;/ data-glightbox=&#34;description: Weeknote 0&#34;&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://waylonwalker.com/upcoming-streams/og/&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://shots.waylonwalker.com/shot/?url=https://waylonwalker.com/upcoming-streams/og/&amp;amp;height=600&amp;amp;width=1200&amp;amp;scaled_width=1200&amp;amp;scaled_height=600&amp;amp;format=jpg&amp;amp;v=4&#34; alt=&#34;Upcoming Stream&#34;/ data-glightbox=&#34;description: Upcoming Stream&#34;&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://waylonwalker.com/codeit-bro-interview/og/&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://shots.waylonwalker.com/shot/?url=https://waylonwalker.com/codeit-bro-interview/og/&amp;amp;height=600&amp;amp;width=1200&amp;amp;scaled_width=1200&amp;amp;scaled_height=600&amp;amp;format=jpg&amp;amp;v=4&#34; alt=&#34;Codeit Bro Interview&#34;/ data-glightbox=&#34;description: Codeit Bro Interview&#34;&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://waylonwalker.com/doomlab7-homelab-argocd/og/&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://shots.waylonwalker.com/shot/?url=https://waylonwalker.com/doomlab7-homelab-argocd/og/&amp;amp;height=600&amp;amp;width=1200&amp;amp;scaled_width=1200&amp;amp;scaled_height=600&amp;amp;format=jpg&amp;amp;v=4&#34; alt=&#34;⭐ Doomlab7 homelab-argocd&#34;/ data-glightbox=&#34;description: ⭐ Doomlab7 homelab-argocd&#34;&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://waylonwalker.com/heathdbrown-python-code-tips/og/&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://shots.waylonwalker.com/shot/?url=https://waylonwalker.com/heathdbrown-python-code-tips/og/&amp;amp;height=600&amp;amp;width=1200&amp;amp;scaled_width=1200&amp;amp;scaled_height=600&amp;amp;format=jpg&amp;amp;v=4&#34; alt=&#34;⭐ heathdbrown python_code_tips&#34;/ data-glightbox=&#34;description: ⭐ heathdbrown python_code_tips&#34;&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://waylonwalker.com/making-good-documentation-in-python/og/&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://shots.waylonwalker.com/shot/?url=https://waylonwalker.com/making-good-documentation-in-python/og/&amp;amp;height=600&amp;amp;width=1200&amp;amp;scaled_width=1200&amp;amp;scaled_height=600&amp;amp;format=jpg&amp;amp;v=4&#34; alt=&#34;Making good documentation in python&#34;/ data-glightbox=&#34;description: Making good documentation in python&#34;&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://waylonwalker.com/s3-datascience/og/&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://shots.waylonwalker.com/shot/?url=https://waylonwalker.com/s3-datascience/og/&amp;amp;height=600&amp;amp;width=1200&amp;amp;scaled_width=1200&amp;amp;scaled_height=600&amp;amp;format=jpg&amp;amp;v=4&#34; alt=&#34;What DataScientists Should Know About S3&#34;/ data-glightbox=&#34;description: What DataScientists Should Know About S3&#34;&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://waylonwalker.com/nvim-treesitter-nvim-treesitter-textobjects/og/&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://shots.waylonwalker.com/shot/?url=https://waylonwalker.com/nvim-treesitter-nvim-treesitter-textobjects/og/&amp;amp;height=600&amp;amp;width=1200&amp;amp;scaled_width=1200&amp;amp;scaled_height=600&amp;amp;format=jpg&amp;amp;v=4&#34; alt=&#34;⭐ nvim-treesitter nvim-treesitter-textobjects&#34;/ data-glightbox=&#34;description: ⭐ nvim-treesitter nvim-treesitter-textobjects&#34;&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://waylonwalker.com/dataengineerone-kedro-streaming-twitter-pipeline/og/&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://shots.waylonwalker.com/shot/?url=https://waylonwalker.com/dataengineerone-kedro-streaming-twitter-pipeline/og/&amp;amp;height=600&amp;amp;width=1200&amp;amp;scaled_width=1200&amp;amp;scaled_height=600&amp;amp;format=jpg&amp;amp;v=4&#34; alt=&#34;⭐ dataengineerone kedro-streaming-twitter-pipeline&#34;/ data-glightbox=&#34;description: ⭐ dataengineerone kedro-streaming-twitter-pipeline&#34;&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://waylonwalker.com/screenshot-to-blog/og/&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://shots.waylonwalker.com/shot/?url=https://waylonwalker.com/screenshot-to-blog/og/&amp;amp;height=600&amp;amp;width=1200&amp;amp;scaled_width=1200&amp;amp;scaled_height=600&amp;amp;format=jpg&amp;amp;v=4&#34; alt=&#34;How I Quickly Capture Screenshots directly into My Blog&#34;/ data-glightbox=&#34;description: How I Quickly Capture Screenshots directly into My Blog&#34;&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://waylonwalker.com/looking-for-a-heroku-replacement/og/&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://shots.waylonwalker.com/shot/?url=https://waylonwalker.com/looking-for-a-heroku-replacement/og/&amp;amp;height=600&amp;amp;width=1200&amp;amp;scaled_width=1200&amp;amp;scaled_height=600&amp;amp;format=jpg&amp;amp;v=4&#34; alt=&#34;Looking for a Heroku replacement, What I found was shocking!&#34;/ data-glightbox=&#34;description: Looking for a Heroku replacement, What I found was shocking!&#34;&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://waylonwalker.com/thoughts-853/og/&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://shots.waylonwalker.com/shot/?url=https://waylonwalker.com/thoughts-853/og/&amp;amp;height=600&amp;amp;width=1200&amp;amp;scaled_width=1200&amp;amp;scaled_height=600&amp;amp;format=jpg&amp;amp;v=4&#34; alt=&#34;💭 My Bed Doesn’t Work Because of AWS Outage? TheStandup - YouTube&#34;/ data-glightbox=&#34;description: 💭 My Bed Doesn’t Work Because of AWS Outage? TheStandup - YouTube&#34;&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://waylonwalker.com/shots/dont-starve-together-session-one---getting-into-it-with-a-clockwork-bishop/og/&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://shots.waylonwalker.com/shot/?url=https://waylonwalker.com/shots/dont-starve-together-session-one---getting-into-it-with-a-clockwork-bishop/og/&amp;amp;height=600&amp;amp;width=1200&amp;amp;scaled_width=1200&amp;amp;scaled_height=600&amp;amp;format=jpg&amp;amp;v=4&#34; alt=&#34;Dont Starve Together Session One - Getting Into It With A Clockwork Bishop&#34;/ data-glightbox=&#34;description: Dont Starve Together Session One - Getting Into It With A Clockwork Bishop&#34;&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;h2 id=&#34;shots&#34;&gt;shots &lt;a href=&#34;#shots&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;I also do &lt;a href=&#34;/tags/shots/&#34; class=&#34;wikilink&#34; data-title=&#34;Posts tagged: shots&#34; data-description=&#34;All posts with the tag &amp;#34;shots&amp;#34;&#34; data-preview=&#34;All posts with the tag &amp;#34;shots&amp;#34;&#34;&gt;Posts tagged: shots&lt;/a&gt; posts that change the og template quite a bit by adding&#xA;the image to the page.  I’ll do the same script, but add a filter to the&#xA;images.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;kn&#34;&gt;from&lt;/span&gt; &lt;span class=&#34;nn&#34;&gt;markata&lt;/span&gt; &lt;span class=&#34;kn&#34;&gt;import&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;Markata&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;kn&#34;&gt;from&lt;/span&gt; &lt;span class=&#34;nn&#34;&gt;itertools&lt;/span&gt; &lt;span class=&#34;kn&#34;&gt;import&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;groupby&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;markata&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;Markata&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;()&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;lens&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;[{&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;length&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;nb&#34;&gt;len&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;post&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;title&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;),&lt;/span&gt; &lt;span class=&#34;s1&#34;&gt;&amp;#39;title&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;post&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;title&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;s1&#34;&gt;&amp;#39;slug&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;post&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;slug&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;}&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;for&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;post&lt;/span&gt; &lt;span class=&#34;ow&#34;&gt;in&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;m&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;filter&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;templateKey==&amp;#34;shots&amp;#34; and &amp;#34;family&amp;#34; not in tags&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;lens_sorted&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;nb&#34;&gt;sorted&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;lens&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;key&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;lambda&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;x&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;x&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;length&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;])&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;groups&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;n&#34;&gt;k&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;nb&#34;&gt;list&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;g&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;k&#34;&gt;for&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;k&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;g&lt;/span&gt; &lt;span class=&#34;ow&#34;&gt;in&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;groupby&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;lens_sorted&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;key&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;lambda&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;x&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;x&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;length&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;//&lt;/span&gt; &lt;span class=&#34;mi&#34;&gt;5&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;*&lt;/span&gt; &lt;span class=&#34;mi&#34;&gt;5&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;}&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;posts&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;g&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;0&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;for&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;g&lt;/span&gt; &lt;span class=&#34;ow&#34;&gt;in&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;groups&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;values&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;()]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;ogs&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;[&lt;/span&gt; &lt;span class=&#34;sa&#34;&gt;f&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;[![&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;post&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;title&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;}&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;](https://shots.waylonwalker.com/shot/?url=https://waylonwalker.com/&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;{&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;post&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;slug&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]&lt;/span&gt; &lt;span class=&#34;si&#34;&gt;}&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;/og/&amp;amp;height=600&amp;amp;width=1200&amp;amp;scaled_width=1200&amp;amp;scaled_height=600&amp;amp;format=jpg&amp;amp;v=4)](https://waylonwalker.com/&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;{&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;post&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;slug&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]&lt;/span&gt; &lt;span class=&#34;si&#34;&gt;}&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;/og/)&amp;#39;&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;for&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;post&lt;/span&gt; &lt;span class=&#34;ow&#34;&gt;in&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;posts&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;print&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;se&#34;&gt;\n\n&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;join&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;ogs&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;))&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;&lt;a href=&#34;https://waylonwalker.com/shots/funk-track-1/og/&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://shots.waylonwalker.com/shot/?url=https://waylonwalker.com/shots/funk-track-1/og/&amp;amp;height=600&amp;amp;width=1200&amp;amp;scaled_width=1200&amp;amp;scaled_height=600&amp;amp;format=jpg&amp;amp;v=4&#34; alt=&#34;Funk Track 1&#34;/ data-glightbox=&#34;description: Funk Track 1&#34;&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://waylonwalker.com/shots/hornet-on-a-bench/og/&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://shots.waylonwalker.com/shot/?url=https://waylonwalker.com/shots/hornet-on-a-bench/og/&amp;amp;height=600&amp;amp;width=1200&amp;amp;scaled_width=1200&amp;amp;scaled_height=600&amp;amp;format=jpg&amp;amp;v=4&#34; alt=&#34;Hornet On A Bench&#34;/ data-glightbox=&#34;description: Hornet On A Bench&#34;&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://waylonwalker.com/shots/apple-boxes-complete/og/&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://shots.waylonwalker.com/shot/?url=https://waylonwalker.com/shots/apple-boxes-complete/og/&amp;amp;height=600&amp;amp;width=1200&amp;amp;scaled_width=1200&amp;amp;scaled_height=600&amp;amp;format=jpg&amp;amp;v=4&#34; alt=&#34;Apple Boxes Complete&#34;/ data-glightbox=&#34;description: Apple Boxes Complete&#34;&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://waylonwalker.com/shots/bambu-poop-flinger-jammed/og/&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://shots.waylonwalker.com/shot/?url=https://waylonwalker.com/shots/bambu-poop-flinger-jammed/og/&amp;amp;height=600&amp;amp;width=1200&amp;amp;scaled_width=1200&amp;amp;scaled_height=600&amp;amp;format=jpg&amp;amp;v=4&#34; alt=&#34;Bambu Poop Flinger Jammed&#34;/ data-glightbox=&#34;description: Bambu Poop Flinger Jammed&#34;&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://waylonwalker.com/shots/first-fingerboard-in-the-press/og/&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://shots.waylonwalker.com/shot/?url=https://waylonwalker.com/shots/first-fingerboard-in-the-press/og/&amp;amp;height=600&amp;amp;width=1200&amp;amp;scaled_width=1200&amp;amp;scaled_height=600&amp;amp;format=jpg&amp;amp;v=4&#34; alt=&#34;First Fingerboard In The Press&#34;/ data-glightbox=&#34;description: First Fingerboard In The Press&#34;&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://waylonwalker.com/shots/wyatt-drew-a-watertower-in-aesprite/og/&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://shots.waylonwalker.com/shot/?url=https://waylonwalker.com/shots/wyatt-drew-a-watertower-in-aesprite/og/&amp;amp;height=600&amp;amp;width=1200&amp;amp;scaled_width=1200&amp;amp;scaled_height=600&amp;amp;format=jpg&amp;amp;v=4&#34; alt=&#34;Wyatt Drew A Watertower In Aesprite&#34;/ data-glightbox=&#34;description: Wyatt Drew A Watertower In Aesprite&#34;&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://waylonwalker.com/shots/design-for-bosch-colt-dust-collection-v1/og/&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://shots.waylonwalker.com/shot/?url=https://waylonwalker.com/shots/design-for-bosch-colt-dust-collection-v1/og/&amp;amp;height=600&amp;amp;width=1200&amp;amp;scaled_width=1200&amp;amp;scaled_height=600&amp;amp;format=jpg&amp;amp;v=4&#34; alt=&#34;Design For Bosch Colt Dust Collection V1&#34;/ data-glightbox=&#34;description: Design For Bosch Colt Dust Collection V1&#34;&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://waylonwalker.com/shots/dont-starve-together-session-one---nooo-luuucy/og/&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://shots.waylonwalker.com/shot/?url=https://waylonwalker.com/shots/dont-starve-together-session-one---nooo-luuucy/og/&amp;amp;height=600&amp;amp;width=1200&amp;amp;scaled_width=1200&amp;amp;scaled_height=600&amp;amp;format=jpg&amp;amp;v=4&#34; alt=&#34;Dont Starve Together Session One - Nooo Luuucy&#34;/ data-glightbox=&#34;description: Dont Starve Together Session One - Nooo Luuucy&#34;&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://waylonwalker.com/shots/dont-starve-together-session-one---setting-up-base/og/&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://shots.waylonwalker.com/shot/?url=https://waylonwalker.com/shots/dont-starve-together-session-one---setting-up-base/og/&amp;amp;height=600&amp;amp;width=1200&amp;amp;scaled_width=1200&amp;amp;scaled_height=600&amp;amp;format=jpg&amp;amp;v=4&#34; alt=&#34;Dont Starve Together Session One - Setting Up Base&#34;/ data-glightbox=&#34;description: Dont Starve Together Session One - Setting Up Base&#34;&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://waylonwalker.com/shots/dont-starve-together-session-one---opening-up-the-garden/og/&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://shots.waylonwalker.com/shot/?url=https://waylonwalker.com/shots/dont-starve-together-session-one---opening-up-the-garden/og/&amp;amp;height=600&amp;amp;width=1200&amp;amp;scaled_width=1200&amp;amp;scaled_height=600&amp;amp;format=jpg&amp;amp;v=4&#34; alt=&#34;Dont Starve Together Session One - Opening Up The Garden&#34;/ data-glightbox=&#34;description: Dont Starve Together Session One - Opening Up The Garden&#34;&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://waylonwalker.com/shots/first-encounter-with-a-tall-bird/og/&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://shots.waylonwalker.com/shot/?url=https://waylonwalker.com/shots/first-encounter-with-a-tall-bird/og/&amp;amp;height=600&amp;amp;width=1200&amp;amp;scaled_width=1200&amp;amp;scaled_height=600&amp;amp;format=jpg&amp;amp;v=4&#34; alt=&#34;Dont Starve Together Session One - First Encounter With A Tall Bird&#34;/ data-glightbox=&#34;description: Dont Starve Together Session One - First Encounter With A Tall Bird&#34;&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://waylonwalker.com/shots/dont-starve-together-session-one---getting-into-it-with-a-clockwork-bishop/og/&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://shots.waylonwalker.com/shot/?url=https://waylonwalker.com/shots/dont-starve-together-session-one---getting-into-it-with-a-clockwork-bishop/og/&amp;amp;height=600&amp;amp;width=1200&amp;amp;scaled_width=1200&amp;amp;scaled_height=600&amp;amp;format=jpg&amp;amp;v=4&#34; alt=&#34;Dont Starve Together Session One - Getting Into It With A Clockwork Bishop&#34;/ data-glightbox=&#34;description: Dont Starve Together Session One - Getting Into It With A Clockwork Bishop&#34;&gt;&lt;/a&gt;&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>POG</title>
    <id>https://waylonwalker.com/pog/</id>
    <updated>2026-01-08T20:17:27Z</updated>
    <published>2026-01-08T20:17:27Z</published>
    <link href="https://waylonwalker.com/pog/" rel="alternate" type="text/html"></link>
    <summary type="text">**: **lay **f the **ame - used to express shock or excitement after a noteworthy moment.</summary>
    <content type="html">&lt;p&gt;&lt;strong&gt;POG&lt;/strong&gt;: &lt;strong&gt;P&lt;/strong&gt;lay &lt;strong&gt;O&lt;/strong&gt;f the &lt;strong&gt;G&lt;/strong&gt;ame - used to express shock or excitement&#xA;after a noteworthy moment.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Broodmother Ending</title>
    <id>https://waylonwalker.com/shots/broodmother-ending/</id>
    <updated>2026-01-08T17:31:33Z</updated>
    <published>2026-01-08T17:31:33Z</published>
    <link href="https://waylonwalker.com/shots/broodmother-ending/" rel="alternate" type="text/html"></link>
    <summary type="text">Broodmother Ending</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/c7d45133-c8c3-469f-9572-6036704309cb.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Broodmother Ending&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/file/c7d45133-c8c3-469f-9572-6036704309cb.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/file/c7d45133-c8c3-469f-9572-6036704309cb.mp4&#34; type=&#34;video/mp4&#34;&gt;Broodmother Ending&lt;/video&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;Broodmother Ending&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Broodmother</title>
    <id>https://waylonwalker.com/shots/broodmother/</id>
    <updated>2026-01-08T17:29:43Z</updated>
    <published>2026-01-08T17:29:43Z</published>
    <link href="https://waylonwalker.com/shots/broodmother/" rel="alternate" type="text/html"></link>
    <summary type="text">Broodmother</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/33725801-44ae-45ef-85e8-a0dc802ab775.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Broodmother&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/file/33725801-44ae-45ef-85e8-a0dc802ab775.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/file/33725801-44ae-45ef-85e8-a0dc802ab775.mp4&#34; type=&#34;video/mp4&#34;&gt;Broodmother&lt;/video&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;Broodmother&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>2026 Resolutions</title>
    <id>https://waylonwalker.com/2026-resolutions/</id>
    <updated>2026-01-08T10:48:12Z</updated>
    <published>2026-01-08T10:48:12Z</published>
    <link href="https://waylonwalker.com/2026-resolutions/" rel="alternate" type="text/html"></link>
    <summary type="text">It&#39;s that time of year, Coming back to work out of a big break and thinking about big changes.</summary>
    <content type="html">&lt;p&gt;It’s that time of year, Coming back to work out of a big break and thinking&#xA;about big changes.&lt;/p&gt;&#xA;&lt;h2 id=&#34;daily-notes&#34;&gt;Daily Notes &lt;a href=&#34;#daily-notes&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;Keep up with daily notes, maybe not here, I tend to have more targeted notes&#xA;here with full blog posts, but for work daily notes is &lt;a href=&#34;/pog/&#34; class=&#34;glossary-term&#34; title=&#34;**: **lay **f the **ame - used to express shock or excitement after a noteworthy moment.&#34;&gt;POG&lt;/a&gt; and needs to be&#xA;leaned on.  LLM’s do really good at ingesting markdown and reminding me of&#xA;things that I need to do, or did, or need to follow up on.&lt;/p&gt;&#xA;&lt;h2 id=&#34;reader&#34;&gt;Reader &lt;a href=&#34;#reader&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;Social media is changing, quickly becoming enshitified, I enjoy interacting&#xA;with some of the people I’ve met online, reading their opinions, and learning&#xA;from their experiences.  I don’t need their hot takes, don’t care about their&#xA;political takes.  I like boring posts that typically fade out of whats picked&#xA;up on the algorithm.  I like a good 5-10 minute read or a long form podcast&#xA;talk.  I will be aggressively collecting more rss feeds to read and keep up&#xA;with.&lt;/p&gt;&#xA;&lt;h2 id=&#34;neovim&#34;&gt;(Neo)Vim &lt;a href=&#34;#neovim&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;I’ve had these bad habits in my config for years, from day one of using vim.&#xA;It’s time to kill these. &lt;code&gt;jjgww&lt;/code&gt;.  I killed them this morning, we will see how&#xA;long I keep typing out &lt;code&gt;jj&lt;/code&gt; all over my editor before I fix it mentally.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;-- bad habits&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;vim.keymap.set&lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;i&amp;#34;&lt;/span&gt;, &lt;span class=&#34;s2&#34;&gt;&amp;#34;jj&amp;#34;&lt;/span&gt;, &lt;span class=&#34;s2&#34;&gt;&amp;#34;&amp;lt;esc&amp;gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;vim.keymap.set&lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;i&amp;#34;&lt;/span&gt;, &lt;span class=&#34;s2&#34;&gt;&amp;#34;jk&amp;#34;&lt;/span&gt;, &lt;span class=&#34;s2&#34;&gt;&amp;#34;&amp;lt;esc&amp;gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;vim.keymap.set&lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;i&amp;#34;&lt;/span&gt;, &lt;span class=&#34;s2&#34;&gt;&amp;#34;JJ&amp;#34;&lt;/span&gt;, &lt;span class=&#34;s2&#34;&gt;&amp;#34;&amp;lt;esc&amp;gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;vim.keymap.set&lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;i&amp;#34;&lt;/span&gt;, &lt;span class=&#34;s2&#34;&gt;&amp;#34;jJ&amp;#34;&lt;/span&gt;, &lt;span class=&#34;s2&#34;&gt;&amp;#34;&amp;lt;esc&amp;gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;vim.keymap.set&lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;i&amp;#34;&lt;/span&gt;, &lt;span class=&#34;s2&#34;&gt;&amp;#34;Jj&amp;#34;&lt;/span&gt;, &lt;span class=&#34;s2&#34;&gt;&amp;#34;&amp;lt;esc&amp;gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;div class=&#34;admonition tip&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Tip&lt;/p&gt;&#xA;&lt;p&gt;I need to lean on &lt;code&gt;&amp;lt;C-o&amp;gt;&lt;/code&gt; a little more to run single commands in normal&#xA;mode from insert mode.  The pattern that is hitting me hard right now is&#xA;&lt;code&gt;jjgwwA&lt;/code&gt; insert mode, format, insert at end of line.&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;&lt;h2 id=&#34;distrobox&#34;&gt;Distrobox &lt;a href=&#34;#distrobox&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;I was a heavy user of distrobox as my primary dev environment on Bazzite and I&#xA;need to get back there. I have a lot of stuff installed on this current system.&#xA;I’ve been sloppy.  I am not sure I was planning on staying on arch/hyprland&#xA;long, I did it to do it with my son, his got borked a month ago and he is back&#xA;to bazzite, I think I’ll be back there and want to be ready to float freely&#xA;between distros.&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;clean dotfiles&lt;/li&gt;&#xA;&lt;li&gt;work from a distrobox image that I make&lt;/li&gt;&#xA;&lt;li&gt;keep working projects backed up&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;h2 id=&#34;vibe-coding&#34;&gt;&lt;a href=&#34;/vibe-coding/&#34; class=&#34;glossary-term&#34; title=&#34;A coding style popularized in 2025. It is the act of using LLMs to generate code for an application, but the author never looks at the output. The author...&#34;&gt;Vibe Coding&lt;/a&gt; &lt;a href=&#34;#vibe-coding&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;Agents are the future, people that I really trust are on both sides of the&#xA;argument.  Some saying they stopped coding months ago and claude does&#xA;everything for them.  Some in between, some are completely against.&lt;/p&gt;&#xA;&lt;p&gt;It feels like the tooling has really taken off over the past few months, the&#xA;models are getting better, but not at the same rate they were.  The tools are&#xA;really making this possible.&lt;/p&gt;&#xA;&lt;p&gt;My experience is quite mixed, I’m often impressed with what it does, and&#xA;appalled at how bad it does other things.  I just want it to do what I mean&#xA;with the fewest words possible.  I’ve been working on deeper plans more and&#xA;more, still with mixed results.  With larger plans the models seem to do more&#xA;work, but still not getting that great experience every time.&lt;/p&gt;&#xA;&lt;p&gt;I really need to get my workspaces workflow down, have models working in a&#xA;separate workspace, and be willing to throw away shit code quickly and try&#xA;again from another angle.&lt;/p&gt;&#xA;&lt;p&gt;The future is a deep understanding on what needs to be done, how do to it, and&#xA;not the syntax.  The tools are getting better.  You need to know less and less&#xA;about them, less and less about models as the auto routers get better.  The&#xA;core skills of architecture, design, and implementation are more important than&#xA;ever.&lt;/p&gt;&#xA;&lt;p&gt;Last year I was able to vibe out some POC work, but still not letting the&#xA;agents touch my production code.  It wasn’t there for me, I probably did not&#xA;have access to the really good stuff either.  Now I think what I have access to&#xA;is catching up to Claude.&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;sandbox them&lt;/li&gt;&#xA;&lt;li&gt;quick to POC&lt;/li&gt;&#xA;&lt;li&gt;quick to move on from broken attempts&lt;/li&gt;&#xA;&lt;li&gt;learn to lead&lt;/li&gt;&#xA;&lt;li&gt;learn to let go of syntax opinions&lt;/li&gt;&#xA;&lt;li&gt;learn what makes good products/tools/apis hold the vibes to this.&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;There’s something here, very respectable people are betting on this, but its&#xA;not working for me, I don’t think I have the right tools.  I already have it a&#xA;day, and got a few hundred LOC out while theo is claiming opus can do 10k.&lt;/p&gt;&#xA;&lt;h2 id=&#34;not-everything-will-be-a-side-hustle&#34;&gt;Not Everything will be a side hustle &lt;a href=&#34;#not-everything-will-be-a-side-hustle&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;I’ve tried to start too many side hustles, none of them work out.  Thinking of&#xA;them as a side hustle steals the joy of the hobby.  I have too much going on&#xA;outside of work for adding things like this not to add stress to already&#xA;stressful situations, I need to reduce stress and find the joy and happiness in&#xA;side projects and not turn everything into something more.&lt;/p&gt;&#xA;&lt;h2 id=&#34;keebs&#34;&gt;Keebs &lt;a href=&#34;#keebs&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;This one is fresh on the mind only because I just built out a new keyboard for&#xA;work.  I want to have a good robust build at home, work, and potentially have a&#xA;good backup.  I have a good design that is very cheap and fairly easy to build,&#xA;but is quite time consuming.  I am going to put some work in early this year to&#xA;get a couple of clones.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/9cf75771-e3a5-428f-a3a9-0e32fda0e037.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Open image&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/file/9cf75771-e3a5-428f-a3a9-0e32fda0e037.webp&#34; alt=&#34;&#34;/ data-glightbox=&#34;description: &#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;more-offline&#34;&gt;More Offline &lt;a href=&#34;#more-offline&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;Looking back at 2025, I actually did fairly well of doing a bit more offline.&#xA;It’s been a hard transition out of pandemic times for our family, we had a lot&#xA;of extra health precautions that lasted longer than most other people.&lt;/p&gt;&#xA;&lt;p&gt;This year I should do more of this.  More bike rides, more skate, more basement&#xA;hangouts, more art.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/46091653-f759-4a53-b3b7-e9e6226a5a12.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Open image&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/file/46091653-f759-4a53-b3b7-e9e6226a5a12.webp&#34; alt=&#34;&#34;/ data-glightbox=&#34;description: &#34;&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;New dart board in the basement&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;&lt;p&gt;More creativity.  I designed and built fingerboard obstacles to work like legos with 3/4&amp;#34; plywood last November.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/fb569b3a-d91d-4ad4-92f8-12e83c39fbda.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Open image&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/file/fb569b3a-d91d-4ad4-92f8-12e83c39fbda.webp&#34; alt=&#34;&#34;/ data-glightbox=&#34;description: &#34;&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;building a fingerboard park in the basement&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;&lt;p&gt;More building&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/f34e94d4-c6d4-4a89-96f7-14f67c954307.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Open image&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/file/f34e94d4-c6d4-4a89-96f7-14f67c954307.webp&#34; alt=&#34;&#34;/ data-glightbox=&#34;description: &#34;&gt;&lt;/a&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/48e6a2ef-a4db-462e-acda-16b270e7053d.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Open image&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/file/48e6a2ef-a4db-462e-acda-16b270e7053d.webp&#34; alt=&#34;&#34;/ data-glightbox=&#34;description: &#34;&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;building set for Jolly Holiday with Rhiannon&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/44be3230-29cc-4a5b-a495-4dd7c4e11c2b.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Open image&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/file/44be3230-29cc-4a5b-a495-4dd7c4e11c2b.webp&#34; alt=&#34;&#34;/ data-glightbox=&#34;description: &#34;&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;building boxes for Jolly Holiday with Wyatt&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;&lt;p&gt;More bike rides, fewer nice days wasted, they are relaxing and get good energy out.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/f9199d9b-74dc-4650-b1cf-2ac1ffd50e02.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Open image&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/file/f9199d9b-74dc-4650-b1cf-2ac1ffd50e02.webp&#34; alt=&#34;&#34;/ data-glightbox=&#34;description: &#34;&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;Bike Rides&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Faydown Cloak</title>
    <id>https://waylonwalker.com/shots/faydown-cloak/</id>
    <updated>2026-01-08T07:43:46Z</updated>
    <published>2026-01-08T07:43:46Z</published>
    <link href="https://waylonwalker.com/shots/faydown-cloak/" rel="alternate" type="text/html"></link>
    <summary type="text">Faydown Cloak</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/2e0c80ed-f73a-4df5-855f-a0c320a415b3.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Faydown Cloak&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/file/2e0c80ed-f73a-4df5-855f-a0c320a415b3.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/file/2e0c80ed-f73a-4df5-855f-a0c320a415b3.mp4&#34; type=&#34;video/mp4&#34;&gt;Faydown Cloak&lt;/video&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;Faydown Cloak&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 There&#39;s an Actual Reason You Can&#39;t Recycle Plastic - YouTube</title>
    <id>https://waylonwalker.com/thought-904/</id>
    <updated>2026-01-08T03:16:18Z</updated>
    <published>2026-01-08T03:16:18Z</published>
    <link href="https://waylonwalker.com/thought-904/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/watch?v=325HdQe4WM4</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;325HdQe4WM4&#34; title=&#34;There&amp;#39;s an Actual Reason You Can&amp;#39;t Recycle Plastic&#34; playlabel=&#34;Play: There&amp;#39;s an Actual Reason You Can&amp;#39;t Recycle Plastic&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;In all of the documentaries I’ve seen on how hard it is to recycle plastic, how hard it is to separate all the small pieces from each other, how expensive it is, dirty it is, how just plain ineffective we are at doing it I’ve never seen this angle.  In a nutshell the other side of the equation is that as we pull natural gas out of shale is that we pull ethylene out as a byproduct.  We don’t even ask for it, it just comes with the methane gas that we are going for.  So as we drill, Frack, and mine this out to heat our homes and create electricity we are stuck with all of this ethylene.  It’s terrible for the environment, just like methane it’s a rough greenhouse gas.  Companies are allowed to flare off a certain amount, they can push some down the pipe, but are still left with tons leftover that they practically give away.  Turns out that this stuff is very cheap and very much wants to be turned into plastic.  Very clean food grade plastic, very easily and cheaply compared to recycling.  Excess is a big problem that needs solutions, but it has hard problems at both ends of the situation that don’t make it easy for anyone trying to take care of it.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 feat: add llms.txt endpoint for LLM-optimized documentation by...</title>
    <id>https://waylonwalker.com/thought-903/</id>
    <updated>2026-01-08T01:22:02Z</updated>
    <published>2026-01-08T01:22:02Z</published>
    <link href="https://waylonwalker.com/thought-903/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://github.com/tailwindlabs/tailwindcss.com/pull/2388#issuecomment-3717222957</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://github.com/tailwindlabs/tailwindcss.com/pull/2388#issuecomment-3717222957&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img src=&#34;https://opengraph.githubassets.com/d1a3efccfb3d0d35a0b5e964bd197c3f81615743a1ebcc02f07cb5c45742233f/tailwindlabs/tailwindcss.com/pull/2388&#34; alt=&#34;feat: add llms.txt endpoint for LLM-optimized documentation by quantizor · Pull Request #2388 · tailwindlabs/tailwindcss.com — Add /llms.txt endpoint that serves a concatenated, text-only version of all Tailwind CSS documentation pages optimized for Large Language Model consumption.&#xA;&amp;lt;p&amp;gt;Extract text from MDX files, removing J…&amp;#34; loading=“lazy”&amp;gt;&#xA;&amp;lt;/div&amp;gt;&#xA;&amp;lt;div class=&#34; embed-card-content glightbox&#34;=&#34;&#34;/ data-glightbox=&#34;description: feat: add llms.txt endpoint for LLM-optimized documentation by quantizor · Pull Request #2388 · tailwindlabs/tailwindcss.com — Add /llms.txt endpoint that serves a concatenated, text-only version of all Tailwind CSS documentation pages optimized for Large Language Model consumption.&#xA;&amp;lt;p&amp;gt;Extract text from MDX files, removing J…&amp;#34; loading=“lazy”&amp;gt;&#xA;&amp;lt;/div&amp;gt;&#xA;&amp;lt;div class=&#34;&gt;&#xA;&lt;div class=&#34;embed-card-title&#34;&gt;feat: add llms.txt endpoint for LLM-optimized documentation by quantizor · Pull Request #2388 · tailwindlabs/tailwindcss.com&lt;/div&gt;&#xA;&lt;div class=&#34;embed-card-description&#34;&gt;Add /llms.txt endpoint that serves a concatenated, text-only version of all Tailwind CSS documentation pages optimized for Large Language Model consumption.&lt;p&gt;&lt;/p&gt;&#xA;&lt;p&gt;Extract text from MDX files, removing J…&lt;/p&gt;&lt;/div&gt;&#xA;&lt;div class=&#34;embed-card-meta&#34;&gt;GitHub · github.com&lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;/a&gt;&lt;p&gt;&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Damn this one is getting some reach, I’ve seen it from &lt;a href=&#34;https://simonwillison.net/2026/Jan/7/adam-wathan/#atom-everything&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/simonwillison.net.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/simonwillison.net.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;Simon Willison&lt;/a&gt; and &lt;a href=&#34;https://justin.searls.co/takes/2026-01-07-14h15m44s/&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/justin.searls.co.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/justin.searls.co.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;Justin Searls&lt;/a&gt; and &lt;a href=&#34;https://www.youtube.com/watch?v=luhgjBrRulk&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/www.youtube.com.png&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/www.youtube.com.png&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;t3.gg&lt;/a&gt;.  I feel for Adam, He has built a fantastic product that the world is running with, something we all needed.  Something that everyone laughs at turns their nose up “ppft I don’t need that” the first time they see it, but once they try people get it, and a lot of them like it and keep it.  But its something that no one really wants to pay for, no matter how big of products get built on it.  As we see more and more features coming to css, its not stopping, the work will always be there.  I really hope to see something happen to tailwind to keep it afloat. massive growth and revenue down 80% does not help.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Rune Admonition</title>
    <id>https://waylonwalker.com/rune-admonition/</id>
    <updated>2026-01-07T18:18:52Z</updated>
    <published>2026-01-07T18:18:52Z</published>
    <link href="https://waylonwalker.com/rune-admonition/" rel="alternate" type="text/html"></link>
    <content type="html">&lt;link rel=&#34;preconnect&#34; href=&#34;https://fonts.googleapis.com&#34;/&gt;&#xA;&lt;link rel=&#34;preconnect&#34; href=&#34;https://fonts.gstatic.com&#34; crossorigin=&#34;&#34;/&gt;&#xA;&lt;link href=&#34;https://fonts.googleapis.com/css2?family=Noto+Sans+Runic&amp;amp;display=swap&#34; rel=&#34;stylesheet&#34;/&gt;&#xA;&lt;style&gt;&#xA;.admonition .rune {&#xA;}&#xA;&lt;/style&gt;&#xA;&lt;p&gt;!!! Rune&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;ᚨᛚᛚᚨᛁ ᛗᚨᚾᚾᚨ ᚠᚱᛖᛁ&#xA;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt;!!! Rune&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;hi hello&#xA;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;div class=&#34;admonition tip&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Tip&lt;/p&gt;&#xA;&lt;p&gt;Here’s a tip&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Photoshop for text — Steph Ango</title>
    <id>https://waylonwalker.com/thought-902/</id>
    <updated>2026-01-06T02:48:34Z</updated>
    <published>2026-01-06T02:48:34Z</published>
    <link href="https://waylonwalker.com/thought-902/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://stephango.com/photoshop-for-text</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://stephango.com/photoshop-for-text&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://stephango.com/assets/covers/photoshop-for-text.png&#34; alt=&#34;Photoshop for text — In the near future, transforming text over an entire document will become as commonplace as filtering images.&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: Photoshop for text — In the near future, transforming text over an entire document will become as commonplace as filtering images.&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Photoshop for text&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;In the near future, transforming text over an entire document will become as commonplace as filtering images.&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;Steph Ango · stephango.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;While the non deterministic nature of llms scare the heck out of me in the sense of just cutting it loose on my writing.  letting it go through all of my files and just edit them.  I do like the idea of mundane tools like “desaturate”, “Gaussian blur”, evolving out of it for text.  I don’t yet see this with the tools we have now, but it will be interesting to see them evolve.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Hornet On A Bench</title>
    <id>https://waylonwalker.com/shots/hornet-on-a-bench/</id>
    <updated>2026-01-05T20:41:33Z</updated>
    <published>2026-01-05T20:41:33Z</published>
    <link href="https://waylonwalker.com/shots/hornet-on-a-bench/" rel="alternate" type="text/html"></link>
    <summary type="text">Hornet sitting on a bench. I 3d printed, painted, and assembled this set. I really like how the bronze bench with gold highlights turned out. The distressing on her nail and dress look great in person, and don&#39;t come through the best the way the image is lit.</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/5eb1c0c6-8f48-4b36-82ac-62a35b6063e4.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Hornet on a bench&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/file/5eb1c0c6-8f48-4b36-82ac-62a35b6063e4.webp&#34; alt=&#34;Hornet on a bench&#34;/ data-glightbox=&#34;description: Hornet on a bench&#34;&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;Hornet sitting on a bench.  I 3d printed, painted, and assembled this set.  I really like how the bronze bench with gold highlights turned out.  The distressing on her nail and dress look great in person, and don’t come through the best the way the image is lit.&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 File over app — Steph Ango</title>
    <id>https://waylonwalker.com/thought-901/</id>
    <updated>2026-01-05T18:54:06Z</updated>
    <published>2026-01-05T18:54:06Z</published>
    <link href="https://waylonwalker.com/thought-901/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://stephango.com/file-over-app</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://stephango.com/file-over-app&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://stephango.com/assets/covers/file-over-app.png&#34; alt=&#34;File over app — If you want to create digital artifacts that last, they must be files you can control, in formats that are easy to retrieve and read. Use tools that give you...&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: File over app — If you want to create digital artifacts that last, they must be files you can control, in formats that are easy to retrieve and read. Use tools that give you...&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;File over app&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;If you want to create digital artifacts that last, they must be files you can control, in formats that are easy to retrieve and read. Use tools that give you...&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;Steph Ango · stephango.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;file over app is a fantastic philosophy laid out well and concisely documented very well in this post.  The idea is that tools will change, we will want to use different tools, different editors, different computers over time.  What’s likely to outlast everything is plain text files that we can interact with a wide variety of tools.  Not encrypted in dedicated formats that die with our tools, but in plain text where a computer from 2160 is likey as capable of reading the file as one from 1960 would be.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ tpope vim-speeddating</title>
    <id>https://waylonwalker.com/tpope-vim-speeddating/</id>
    <updated>2026-01-04T23:10:42Z</updated>
    <published>2026-01-04T23:10:42Z</published>
    <link href="https://waylonwalker.com/tpope-vim-speeddating/" rel="alternate" type="text/html"></link>
    <summary type="text">I recently discovered vim-speeddating by tpope, and it&#39;s truly impressive.</summary>
    <content type="html">&lt;p&gt;I recently discovered &lt;a href=&#34;https://github.com/tpope/vim-speeddating&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;vim-speeddating&lt;/a&gt; by &lt;a href=&#34;https://github.com/tpope&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;tpope&lt;/a&gt;, and it’s truly impressive.&lt;/p&gt;&#xA;&lt;p&gt;speeddating.vim: use CTRL-A/CTRL-X to increment dates, times, and more&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ JaKooLit Wallpaper-Bank</title>
    <id>https://waylonwalker.com/jakoolit-wallpaper-bank/</id>
    <updated>2026-01-04T21:41:57Z</updated>
    <published>2026-01-04T21:41:57Z</published>
    <link href="https://waylonwalker.com/jakoolit-wallpaper-bank/" rel="alternate" type="text/html"></link>
    <summary type="text">Check out JaKooLit and their project Wallpaper-Bank.</summary>
    <content type="html">&lt;p&gt;Check out &lt;a href=&#34;https://github.com/JaKooLit&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;JaKooLit&lt;/a&gt; and their project &lt;a href=&#34;https://github.com/JaKooLit/Wallpaper-Bank&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;Wallpaper-Bank&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Additional wallpapers which will be offered to users for my hyprland scripts&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Kickflip Down The 3 Stair - Fingerboarding</title>
    <id>https://waylonwalker.com/shots/kickflip-down-the-3-stair---fingerboarding/</id>
    <updated>2026-01-04T19:55:43Z</updated>
    <published>2026-01-04T19:55:43Z</published>
    <link href="https://waylonwalker.com/shots/kickflip-down-the-3-stair---fingerboarding/" rel="alternate" type="text/html"></link>
    <summary type="text">Kickflip down the 3 set using my new hand made 5 ply fingerboard.</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/6f042a91-1e90-445d-b91d-8d4ee187af2c.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;kickflip down the 3 stair - fingerboarding&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/file/6f042a91-1e90-445d-b91d-8d4ee187af2c.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/file/6f042a91-1e90-445d-b91d-8d4ee187af2c.mp4&#34; type=&#34;video/mp4&#34;&gt;kickflip down the 3 stair - fingerboarding&lt;/video&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;Kickflip down the 3 set using my new hand made 5 ply fingerboard.&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>tpope vim-speeddating</title>
    <id>https://waylonwalker.com/til/tpope-vim-speeddating/</id>
    <updated>2026-01-04T16:59:33Z</updated>
    <published>2026-01-04T16:59:33Z</published>
    <link href="https://waylonwalker.com/til/tpope-vim-speeddating/" rel="alternate" type="text/html"></link>
    <summary type="text">Today I discovered vim-speeddating by tpope. I&#39;m sure I&#39;ve seen years ago but it did not click for my workflow until today. I often go through pictures from...</summary>
    <content type="html">&lt;p&gt;Today I discovered &lt;a href=&#34;https://github.com/tpope/vim-speeddating&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;vim-speeddating&lt;/a&gt;&#xA;by tpope.  I’m sure I’ve seen years ago but it did not click for my workflow&#xA;until today.  I often go through pictures from my phone for the past few days&#xA;and make &lt;a href=&#34;/tags/shots/&#34; class=&#34;wikilink&#34; data-title=&#34;Posts tagged: shots&#34; data-description=&#34;All posts with the tag &amp;#34;shots&amp;#34;&#34; data-preview=&#34;All posts with the tag &amp;#34;shots&amp;#34;&#34;&gt;Posts tagged: shots&lt;/a&gt; posts, but I want to date them to about when the image was&#xA;taken most of the time.  This allows me to quickly bump days up and down using&#xA;&lt;code&gt;c-a&lt;/code&gt; and &lt;code&gt;c-x&lt;/code&gt; even around the new year.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/18c876c3-02ea-4c77-9f62-cdbb1bb759a1.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Open image&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/file/18c876c3-02ea-4c77-9f62-cdbb1bb759a1.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/file/18c876c3-02ea-4c77-9f62-cdbb1bb759a1.mp4&#34; type=&#34;video/mp4&#34;&gt;Your browser does not support the video tag.&lt;/video&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;Sound on, listen to those new switches.&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>I&#39;m Loving These Akko Creamy Yellow V3s</title>
    <id>https://waylonwalker.com/shots/i&#39;m-loving-these-akko-creamy-yellow-v3s/</id>
    <updated>2026-01-04T16:22:35Z</updated>
    <published>2026-01-04T16:22:35Z</published>
    <link href="https://waylonwalker.com/shots/i&#39;m-loving-these-akko-creamy-yellow-v3s/" rel="alternate" type="text/html"></link>
    <summary type="text">my latest porta john full mx build with Akko Creamy Yellow V3s installed on the right side and a hodge podge of Durock Lupine and kaihl browns on the left.</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/cac00007-2c7a-415e-b19e-a327c04c7abd.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;I’m loving these Akko Creamy Yellow V3s&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/file/cac00007-2c7a-415e-b19e-a327c04c7abd.webp&#34; alt=&#34;I’m loving these Akko Creamy Yellow V3s&#34;/ data-glightbox=&#34;description: I’m loving these Akko Creamy Yellow V3s&#34;&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;my latest porta john full mx build with Akko Creamy Yellow V3s installed on the right side and a hodge podge of Durock Lupine and kaihl browns on the left.&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>new keeb so good</title>
    <id>https://waylonwalker.com/ping-16/</id>
    <updated>2026-01-03T21:03:13Z</updated>
    <published>2026-01-03T21:03:13Z</published>
    <link href="https://waylonwalker.com/ping-16/" rel="alternate" type="text/html"></link>
    <summary type="text">New keeb feeling so good I don&#39;t want to leave it. I&#39;m going to go from having my worse favorite at work, to having my new favorite at work.</summary>
    <content type="html">&lt;p&gt;New keeb feeling so good I don’t want to leave it.  I’m going to go from having&#xA;my worse favorite at work, to having my new favorite at work.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/9cf75771-e3a5-428f-a3a9-0e32fda0e037.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Open image&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/file/9cf75771-e3a5-428f-a3a9-0e32fda0e037.webp&#34; alt=&#34;&#34;/ data-glightbox=&#34;description: &#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 The most popular blogs of Hacker News in 2025</title>
    <id>https://waylonwalker.com/thought-900/</id>
    <updated>2026-01-03T18:14:32Z</updated>
    <published>2026-01-03T18:14:32Z</published>
    <link href="https://waylonwalker.com/thought-900/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://simonwillison.net/2026/Jan/2/most-popular-blogs-of-hacker-news/#atom-everything</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://simonwillison.net/2026/Jan/2/most-popular-blogs-of-hacker-news/#atom-everything&#34; class=&#34;embed-card-link  has-avatar has-avatar-before&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/simonwillison.net.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/simonwillison.net.ico&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;The most popular blogs of Hacker News in 2025&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Michael Lynch maintains HN Popularity Contest, a site that tracks personal blogs on Hacker News and scores them based on how well they perform on that platform. The engine behind …&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;Simon Willison’s Weblog · simonwillison.net&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Congrats Simon!  Well deserved metric for the level of content that he produces, Its remarkable the amount of high quality posts that come out of Simon Willison.  Also this looks like a really great resource to find other high quality blogs that I have not read before.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>A collection of custom mechanical keyboard keycaps, including several sets of purple, white, and other colored keycaps, are arranged on a wooden desk surface</title>
    <id>https://waylonwalker.com/shots/tmk-portajohn-switches/</id>
    <updated>2026-01-03T18:07:29Z</updated>
    <published>2026-01-03T18:07:29Z</published>
    <link href="https://waylonwalker.com/shots/tmk-portajohn-switches/" rel="alternate" type="text/html"></link>
    <summary type="text">A collection of custom mechanical keyboard keycaps, including several sets of purple, white, and other colored keycaps, are arranged on a wooden desk surface.</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;http://dropper.waylonwalker.com/file/2ac24a6b-59a7-4348-af02-e5209f236528.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;A collection of custom mechanical keyboard keycaps, including several sets of purple, white, and other colored keycaps, are arranged on a wooden desk surface.&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;http://dropper.waylonwalker.com/file/2ac24a6b-59a7-4348-af02-e5209f236528.webp&#34; alt=&#34;A collection of custom mechanical keyboard keycaps, including several sets of purple, white, and other colored keycaps, are arranged on a wooden desk surface.&#34;/ data-glightbox=&#34;description: A collection of custom mechanical keyboard keycaps, including several sets of purple, white, and other colored keycaps, are arranged on a wooden desk surface.&#34;&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;A collection of custom mechanical keyboard keycaps, including several sets of purple, white, and other colored keycaps, are arranged on a wooden desk surface.&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ steveyegge gastown</title>
    <id>https://waylonwalker.com/steveyegge-gastown/</id>
    <updated>2026-01-02T18:43:02Z</updated>
    <published>2026-01-02T18:43:02Z</published>
    <link href="https://waylonwalker.com/steveyegge-gastown/" rel="alternate" type="text/html"></link>
    <summary type="text">I&#39;m really excited about gastown, an amazing project by steveyegge. It&#39;s worth exploring!</summary>
    <content type="html">&lt;p&gt;I’m really excited about &lt;a href=&#34;https://github.com/steveyegge/gastown&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;gastown&lt;/a&gt;, an amazing project by &lt;a href=&#34;https://github.com/steveyegge&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;steveyegge&lt;/a&gt;. It’s worth exploring!&lt;/p&gt;&#xA;&lt;p&gt;Gas Town - multi-agent workspace manager&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>light mode screen recording css</title>
    <id>https://waylonwalker.com/light-mode-screen-recording-css/</id>
    <updated>2026-01-02T10:29:10Z</updated>
    <published>2026-01-02T10:29:10Z</published>
    <link href="https://waylonwalker.com/light-mode-screen-recording-css/" rel="alternate" type="text/html"></link>
    <summary type="text">Yesterday I wrote about a way to do light-mode-screen-recording to convert to light mode from dark mode with ffmpeg. I was wondering if it could be done...</summary>
    <content type="html">&lt;p&gt;Yesterday I wrote about a way to do &lt;a href=&#34;/light-mode-screen-recording/&#34; class=&#34;wikilink&#34; data-title=&#34;light mode screen recording&#34; data-description=&#34;I saw this tip from Cassidoo and had to try it out for myself. I kicked on a screen recording right from where my terminal was, converted it, and it actually...&#34; data-date=&#34;2026-01-01&#34; data-preview=&#34;I saw this tip from Cassidoo and had to try it out for myself. I kicked on a screen recording right from where my terminal was, converted it, and it actually...&#34;&gt;light mode screen recording&lt;/a&gt; to&#xA;convert to light mode from dark mode with ffmpeg.  I was wondering if it could&#xA;be done entirely on the front end for web applications.  Turns out you can.&#xA;I’m sure there are limited wikis and site builders that don’t allow adding&#xA;style like this, but it works if you can.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;&amp;lt;&lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;video&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;na&#34;&gt;src&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;&amp;#34;https://dropper.waylonwalker.com/file/1c53dbcb-4b84-4e94-9f04-a42986ab3fa1.mp4?width=800&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;na&#34;&gt;controls&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;na&#34;&gt;style&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;&amp;#34;filter: invert(1) hue-rotate(180deg) contrast(1.2) saturate(1.1);&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;p&#34;&gt;&amp;gt;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;&amp;lt;/&lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;video&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;&amp;gt;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;&lt;video src=&#34;https://dropper.waylonwalker.com/file/1c53dbcb-4b84-4e94-9f04-a42986ab3fa1.mp4?width=800&#34; controls=&#34;&#34; style=&#34;filter: invert(1) hue-rotate(0deg) contrast(1.2) saturate(1.1);&#34;&gt;&lt;/video&gt;&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;0 deg hue rotate&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;p&gt;&lt;video src=&#34;https://dropper.waylonwalker.com/file/1c53dbcb-4b84-4e94-9f04-a42986ab3fa1.mp4?width=800&#34; controls=&#34;&#34; style=&#34;filter: invert(1) hue-rotate(90deg) contrast(1.2) saturate(1.1);&#34;&gt;&lt;/video&gt;&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;90 deg hue rotate&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;p&gt;&lt;video src=&#34;https://dropper.waylonwalker.com/file/1c53dbcb-4b84-4e94-9f04-a42986ab3fa1.mp4?width=800&#34; controls=&#34;&#34; style=&#34;filter: invert(1) hue-rotate(180deg) contrast(1.2) saturate(1.1);&#34;&gt;&lt;/video&gt;&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;180 deg hue rotate&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;p&gt;&lt;video src=&#34;https://dropper.waylonwalker.com/file/1c53dbcb-4b84-4e94-9f04-a42986ab3fa1.mp4?width=800&#34; controls=&#34;&#34; style=&#34;filter: invert(1) hue-rotate(270deg) contrast(1.2) saturate(1.1);&#34;&gt;&lt;/video&gt;&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;270 deg hue rotate&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ ThePrimeagen 99</title>
    <id>https://waylonwalker.com/theprimeagen-99/</id>
    <updated>2026-01-02T04:36:11Z</updated>
    <published>2026-01-02T04:36:11Z</published>
    <link href="https://waylonwalker.com/theprimeagen-99/" rel="alternate" type="text/html"></link>
    <summary type="text">Check out 99 by ThePrimeagen. It&#39;s a well-crafted project with great potential.</summary>
    <content type="html">&lt;p&gt;Check out &lt;a href=&#34;https://github.com/ThePrimeagen/99&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;99&lt;/a&gt; by &lt;a href=&#34;https://github.com/ThePrimeagen&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;ThePrimeagen&lt;/a&gt;. It’s a well-crafted project with great potential.&lt;/p&gt;&#xA;&lt;p&gt;Neovim AI agent done right&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Portajohn3 Ironing Issues</title>
    <id>https://waylonwalker.com/shots/portajohn3-ironing/</id>
    <updated>2026-01-01T21:51:26Z</updated>
    <published>2026-01-01T21:51:26Z</published>
    <link href="https://waylonwalker.com/shots/portajohn3-ironing/" rel="alternate" type="text/html"></link>
    <summary type="text">I turned on ironing on the Portajohn3 print and it did not turn out good</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;http://dropper.waylonwalker.com/file/d575f8a8-a9e2-4eef-ab1c-7ff335ff6516.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;A photo of a custom mechanical keyboard with colored keycaps. Visible text: (No visible text).&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;http://dropper.waylonwalker.com/file/d575f8a8-a9e2-4eef-ab1c-7ff335ff6516.webp&#34; alt=&#34;A photo of a custom mechanical keyboard with colored keycaps. Visible text: (No visible text).&#34;/ data-glightbox=&#34;description: A photo of a custom mechanical keyboard with colored keycaps. Visible text: (No visible text).&#34;&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;A close-up view of portajohn3 during build, it has most but not all keycaps installed.&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;&lt;p&gt;This photo really highlights how bad the 3d printer did on ironing the top of&#xA;this keyboard.  Luckily I had printed it has a lower profile, and am putting&#xA;full size keys in it, so for it to sit flush I need to print some extra blocks&#xA;to fill it in anyways.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Convert a video from dark mode to light mode with FFmpeg!</title>
    <id>https://waylonwalker.com/thought-899/</id>
    <updated>2026-01-01T18:00:56Z</updated>
    <published>2026-01-01T18:00:56Z</published>
    <link href="https://waylonwalker.com/thought-899/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://cassidoo.co/post/ffmpeg-dark-light/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://cassidoo.co/post/ffmpeg-dark-light/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://cassidoo.co/og-image/ffmpeg-dark-light.png&#34; alt=&#34;Convert a video from dark mode to light mode with FFmpeg! — Here&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: Convert a video from dark mode to light mode with FFmpeg! — Here&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Convert a video from dark mode to light mode with FFmpeg!&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Here&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;cassidoo.co&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Converting video from dark mode to light mode after the fact is a pretty great idea, I’m surprised at how well it does.  Its definitely not perfect, but looks really good.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Portajohn3 Keyboard Plate</title>
    <id>https://waylonwalker.com/shots/portajohn3-plate/</id>
    <updated>2026-01-01T17:18:39Z</updated>
    <published>2026-01-01T17:18:39Z</published>
    <link href="https://waylonwalker.com/shots/portajohn3-plate/" rel="alternate" type="text/html"></link>
    <summary type="text">A black keyboard plate with multiple switch sockets, awaiting switches and PCB.</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;http://dropper.waylonwalker.com/file/c01f0997-9a5a-4d8e-b1ad-384ad48f099c.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;A custom mechanical keyboard plate, showing multiple sets of switch holes for hot-swapping.&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;http://dropper.waylonwalker.com/file/c01f0997-9a5a-4d8e-b1ad-384ad48f099c.webp&#34; alt=&#34;A custom mechanical keyboard plate, showing multiple sets of switch holes for hot-swapping.&#34;/ data-glightbox=&#34;description: A custom mechanical keyboard plate, showing multiple sets of switch holes for hot-swapping.&#34;&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;A black keyboard plate with multiple switch sockets, awaiting switches and PCB.&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>light mode screen recording</title>
    <id>https://waylonwalker.com/light-mode-screen-recording/</id>
    <updated>2026-01-01T10:14:17Z</updated>
    <published>2026-01-01T10:14:17Z</published>
    <link href="https://waylonwalker.com/light-mode-screen-recording/" rel="alternate" type="text/html"></link>
    <summary type="text">I saw this tip from Cassidoo and had to try it out for myself. I kicked on a screen recording right from where my terminal was, converted it, and it actually...</summary>
    <content type="html">&lt;p&gt;I saw this tip from&#xA;&lt;a href=&#34;https://cassidoo.co/post/ffmpeg-dark-light/&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/cassidoo.co.png&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/cassidoo.co.png&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;Cassidoo&lt;/a&gt;&#xA;and had to try it out for myself.  I kicked on a&#xA;screen recording right from where my terminal&#xA;was, converted it, and it actually looks pretty&#xA;good.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;ffmpeg &lt;span class=&#34;se&#34;&gt;\&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;   -i screenrecording-2026-01-01_10-10-49.mp4 &lt;span class=&#34;se&#34;&gt;\&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;   -vf &lt;span class=&#34;s2&#34;&gt;&amp;#34;negate,hue=h=180,eq=contrast=1.2:saturation=1.1&amp;#34;&lt;/span&gt; &lt;span class=&#34;se&#34;&gt;\&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;   screenrecording-2026-01-01_10-10-49-light.mp4&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/1c53dbcb-4b84-4e94-9f04-a42986ab3fa1.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Open image&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/file/1c53dbcb-4b84-4e94-9f04-a42986ab3fa1.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/file/1c53dbcb-4b84-4e94-9f04-a42986ab3fa1.mp4&#34; type=&#34;video/mp4&#34;&gt;Your browser does not support the video tag.&lt;/video&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;Dark Mode&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/de4e3378-6df2-45b1-84d5-0cc773ceb3c5.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Open image&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/file/de4e3378-6df2-45b1-84d5-0cc773ceb3c5.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/file/de4e3378-6df2-45b1-84d5-0cc773ceb3c5.mp4&#34; type=&#34;video/mp4&#34;&gt;Your browser does not support the video tag.&lt;/video&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;Light Mode&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;&lt;p&gt;There are a few unsettling things about it, but&#xA;overall I feel like it was a success.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Custom Keyboard Keycaps and 3D Printer</title>
    <id>https://waylonwalker.com/shots/custom-keyboard-keycaps-and-3d-printer/</id>
    <updated>2025-12-29T22:16:37Z</updated>
    <published>2025-12-29T22:16:37Z</published>
    <link href="https://waylonwalker.com/shots/custom-keyboard-keycaps-and-3d-printer/" rel="alternate" type="text/html"></link>
    <summary type="text">Portajohn3 on the printer</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;http://dropper.waylonwalker.com/file/f7fcdb62-b212-484b-978a-6988f1fdde28.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;A 3d printer printing the body of a keyboard&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;http://dropper.waylonwalker.com/file/f7fcdb62-b212-484b-978a-6988f1fdde28.webp&#34; alt=&#34;A 3d printer printing the body of a keyboard&#34;/ data-glightbox=&#34;description: A 3d printer printing the body of a keyboard&#34;&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;Portajohn3 getting printed on a bambu lab A1 printer&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>My First Hand Pressed Fingerboard Complete</title>
    <id>https://waylonwalker.com/shots/my-first-hand-pressed-fingerboard-complete/</id>
    <updated>2025-12-29T19:37:27Z</updated>
    <published>2025-12-29T19:37:27Z</published>
    <link href="https://waylonwalker.com/shots/my-first-hand-pressed-fingerboard-complete/" rel="alternate" type="text/html"></link>
    <summary type="text">My first hand pressed fingerboard with teak tuning trucks. It has a purple bottom layer. Sitting on the bottom of a 3-stair.</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/ad3118cc-8425-4462-a2de-5f5aefd645b5.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;my first hand pressed fingerboard complete&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/file/ad3118cc-8425-4462-a2de-5f5aefd645b5.webp&#34; alt=&#34;my first hand pressed fingerboard complete&#34;/ data-glightbox=&#34;description: my first hand pressed fingerboard complete&#34;&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;My first hand pressed fingerboard with teak tuning trucks.  It has a purple bottom layer. Sitting on the bottom of a 3-stair.&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>New Dart Board In The Basement</title>
    <id>https://waylonwalker.com/shots/new-dart-board-in-the-basement/</id>
    <updated>2025-12-29T15:55:20Z</updated>
    <published>2025-12-29T15:55:20Z</published>
    <link href="https://waylonwalker.com/shots/new-dart-board-in-the-basement/" rel="alternate" type="text/html"></link>
    <summary type="text">I got a new dart board in the basement for Christmas, It&#39;s been super fun to play with the kids. We are getting a pretty good setup down there.</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/46091653-f759-4a53-b3b7-e9e6226a5a12.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;New Dart Board in the Basement&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/file/46091653-f759-4a53-b3b7-e9e6226a5a12.webp&#34; alt=&#34;New Dart Board in the Basement&#34;/ data-glightbox=&#34;description: New Dart Board in the Basement&#34;&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;I got a new dart board in the basement for Christmas, It’s been super fun to play with the kids.  We are getting a pretty good setup down there.&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>First Fingerboard In The Press</title>
    <id>https://waylonwalker.com/shots/first-fingerboard-in-the-press/</id>
    <updated>2025-12-28T19:41:06Z</updated>
    <published>2025-12-28T19:41:06Z</published>
    <link href="https://waylonwalker.com/shots/first-fingerboard-in-the-press/" rel="alternate" type="text/html"></link>
    <summary type="text">5 layers of plywood pressed into a 3d printed fingerboard press.</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/fb569b3a-d91d-4ad4-92f8-12e83c39fbda.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;First Fingerboard in the Press&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/file/fb569b3a-d91d-4ad4-92f8-12e83c39fbda.webp&#34; alt=&#34;First Fingerboard in the Press&#34;/ data-glightbox=&#34;description: First Fingerboard in the Press&#34;&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;5 layers of plywood pressed into a 3d printed fingerboard press.&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Garmond And Zaza</title>
    <id>https://waylonwalker.com/shots/garmond-and-zaza/</id>
    <updated>2025-12-25T09:50:44Z</updated>
    <published>2025-12-25T09:50:44Z</published>
    <link href="https://waylonwalker.com/shots/garmond-and-zaza/" rel="alternate" type="text/html"></link>
    <summary type="text">Garmond And Zaza</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/a6bd5277-c605-43c7-aa4c-d6166d74cfff.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Garmond And Zaza&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/file/a6bd5277-c605-43c7-aa4c-d6166d74cfff.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/file/a6bd5277-c605-43c7-aa4c-d6166d74cfff.mp4&#34; type=&#34;video/mp4&#34;&gt;Garmond And Zaza&lt;/video&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;Garmond And Zaza&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 RAM Prices Are Getting Worse - YouTube</title>
    <id>https://waylonwalker.com/thought-898/</id>
    <updated>2025-12-24T02:34:55Z</updated>
    <published>2025-12-24T02:34:55Z</published>
    <link href="https://waylonwalker.com/thought-898/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/watch?v=R5B0fjG55Fw</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;R5B0fjG55Fw&#34; title=&#34;RAM Prices Are Getting Worse&#34; playlabel=&#34;Play: RAM Prices Are Getting Worse&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;I actually like linus’s take here.  My parents dropped $4k (~$8k in todays money) on a computer when I was a kid, (which turned into something too $$ to let me touch at that point).  I played some educational games that no one else has heard of and I’ve long forgotten along with an early ciivilization game.  It was e-waste in 2 years we maybe kept it 5, and it was barely working.  Contrast this to my PC now I spent $2k on 3 years ago refurb from 2017, and it has no signs of age from me, does everything I need it to.  Ram crisis sucks, the outright reason behind it sucks.  But on the bright side you can still get a baller build for less than you could late 90s without inflation.  The industry is not there for consumers right now, we had better times, but its still not bad times.  Keep the hope alive that good times will come.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Smartphones are black holes</title>
    <id>https://waylonwalker.com/thought-897/</id>
    <updated>2025-12-24T02:29:01Z</updated>
    <published>2025-12-24T02:29:01Z</published>
    <link href="https://waylonwalker.com/thought-897/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://kerkour.com/smartphones-blackhole</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://kerkour.com/smartphones-blackhole&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://kerkour.com/icon-256.png&#34; alt=&#34;Smartphones are black holes — They can bend spacetime without you even realizing it. People often get offended when I tell them that I don&amp;amp;#39;t have a phone, thinking that I&amp;amp;#39;m lying and I just&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: Smartphones are black holes — They can bend spacetime without you even realizing it. People often get offended when I tell them that I don&amp;amp;#39;t have a phone, thinking that I&amp;amp;#39;m lying and I just&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Smartphones are black holes&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;They can bend spacetime without you even realizing it. People often get offended when I tell them that I don&amp;amp;#39;t have a phone, thinking that I&amp;amp;#39;m lying and I just&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;Sylvain Kerkour · kerkour.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;This sounds great…. I’m sick AF right now and dont want to do anything but watch YouTube, and let opencode do my work.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Simon Says Bell Ending</title>
    <id>https://waylonwalker.com/shots/simon-says-bell-ending/</id>
    <updated>2025-12-23T18:59:11Z</updated>
    <published>2025-12-23T18:59:11Z</published>
    <link href="https://waylonwalker.com/shots/simon-says-bell-ending/" rel="alternate" type="text/html"></link>
    <summary type="text">Simon Says Bell Ending</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/e90ea894-c7d6-4025-b916-0b0b264b30ec.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Simon Says Bell Ending&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/file/e90ea894-c7d6-4025-b916-0b0b264b30ec.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/file/e90ea894-c7d6-4025-b916-0b0b264b30ec.mp4&#34; type=&#34;video/mp4&#34;&gt;Simon Says Bell Ending&lt;/video&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;Simon Says Bell Ending&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Simon Says Bell</title>
    <id>https://waylonwalker.com/shots/simon-says-bell/</id>
    <updated>2025-12-23T18:58:08Z</updated>
    <published>2025-12-23T18:58:08Z</published>
    <link href="https://waylonwalker.com/shots/simon-says-bell/" rel="alternate" type="text/html"></link>
    <summary type="text">Simon Says Bell</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/fdfd27ba-bfc3-4134-994f-91d034b6a0be.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Simon Says Bell&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/file/fdfd27ba-bfc3-4134-994f-91d034b6a0be.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/file/fdfd27ba-bfc3-4134-994f-91d034b6a0be.mp4&#34; type=&#34;video/mp4&#34;&gt;Simon Says Bell&lt;/video&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;Simon Says Bell&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ jdx usage</title>
    <id>https://waylonwalker.com/jdx-usage/</id>
    <updated>2025-12-22T16:42:40Z</updated>
    <published>2025-12-22T16:42:40Z</published>
    <link href="https://waylonwalker.com/jdx-usage/" rel="alternate" type="text/html"></link>
    <summary type="text">The work on usage by jdx.</summary>
    <content type="html">&lt;p&gt;The work on &lt;a href=&#34;https://github.com/jdx/usage&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;usage&lt;/a&gt; by &lt;a href=&#34;https://github.com/jdx&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;jdx&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;A specification for CLIs&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ jdx pitchfork</title>
    <id>https://waylonwalker.com/jdx-pitchfork/</id>
    <updated>2025-12-22T16:42:37Z</updated>
    <published>2025-12-22T16:42:37Z</published>
    <link href="https://waylonwalker.com/jdx-pitchfork/" rel="alternate" type="text/html"></link>
    <summary type="text">I&#39;m impressed by pitchfork from jdx.</summary>
    <content type="html">&lt;p&gt;I’m impressed by &lt;a href=&#34;https://github.com/jdx/pitchfork&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;pitchfork&lt;/a&gt; from &lt;a href=&#34;https://github.com/jdx&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;jdx&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Daemons with DX&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Using stderr/stdout correctly - YouTube</title>
    <id>https://waylonwalker.com/thought-896/</id>
    <updated>2025-12-22T15:35:30Z</updated>
    <published>2025-12-22T15:35:30Z</published>
    <link href="https://waylonwalker.com/thought-896/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://youtu.be/XDAfpzjBYJQ?t=353</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;XDAfpzjBYJQ&#34; title=&#34;Jeff Dickey - Mise, Usage, and Pitchfork and the Future of Polyglot Tools&#34; playlabel=&#34;Play: Jeff Dickey - Mise, Usage, and Pitchfork and the Future of Polyglot Tools&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;Yeah there’s some basics, you know things you might expect like using standard error and standard out correctly. One thing I’ll say on that because I think this is commonly misunderstood, standard error is not for errors, it’s for any information that isn’t part of the normal output. So you know often times that’s warnings and errors, but it might just be progress information. You know anytime that you just need to have something go to the user that’s what it’s there for.&amp;#34; (6:15 - 6:42)&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;p&gt;I’ve definitely done this sin in my own tooling before, and it does make things harder to use.  I think I still take err/out at face value.  I really like the translation Jeff gave here, one is for normal output, i.e. what the user asked for and the other is extra information.  So if I wanted to list something and pipe it into something else, stdout only captures the list, thats it.  if you have a bunch of information about config warnings, showing environment, are you sure questions, none of that is captured.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>big slow diskcache</title>
    <id>https://waylonwalker.com/big-slow-diskcache/</id>
    <updated>2025-12-22T14:12:26Z</updated>
    <published>2025-12-22T14:12:26Z</published>
    <link href="https://waylonwalker.com/big-slow-diskcache/" rel="alternate" type="text/html"></link>
    <content type="text">&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Codeium Is Cooked</title>
    <id>https://waylonwalker.com/shots/codeium-is-cooked/</id>
    <updated>2025-12-22T10:13:08Z</updated>
    <published>2025-12-22T10:13:08Z</published>
    <link href="https://waylonwalker.com/shots/codeium-is-cooked/" rel="alternate" type="text/html"></link>
    <summary type="text">Codeium what are you doing? It&#39;s spamming I&#39;m a little bit of a nerd in the completion.</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/1a0b746e-091f-47b5-b4d3-b931f43da801.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;codeium is cooked&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/file/1a0b746e-091f-47b5-b4d3-b931f43da801.webp&#34; alt=&#34;codeium is cooked&#34;/ data-glightbox=&#34;description: codeium is cooked&#34;&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;Codeium what are you doing?  It’s spamming I’m a little bit of a nerd in the completion.&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>YouTube Gemini is Actually Useful</title>
    <id>https://waylonwalker.com/youtube-gemini-is-actually-useful/</id>
    <updated>2025-12-22T10:09:55Z</updated>
    <published>2025-12-22T10:09:55Z</published>
    <link href="https://waylonwalker.com/youtube-gemini-is-actually-useful/" rel="alternate" type="text/html"></link>
    <summary type="text">I&#39;ve found Gemini to be very useful lately, especially for finding information within long form content.</summary>
    <content type="html">&lt;p&gt;I’ve found Gemini to be very useful lately, especially for finding information&#xA;within long form content.&lt;/p&gt;&#xA;&lt;p&gt;When writing &lt;a href=&#34;https://thoughts.waylonwalker.com/post/896&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/thoughts.waylonwalker.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/thoughts.waylonwalker.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;thought-896&lt;/a&gt;, I&#xA;wanted to use a direct quote from Jeff Dickey, Gemini popped it out very&#xA;quickly.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;give me a quote from jeff just before the timestamp I&amp;#39;m at the interviewer&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;asked what makes a good cli and he started talking about stdout/stderr&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;In another case, my wife and I are huge Good Eats fans.  Alton Brown taught us&#xA;how to cook during college and on.  We watched every single good eats episode&#xA;nearly 10 years after they aired.  He is back with some updates to those those&#xA;shows on his Youtube.  Gemini gives very good detailed responses with&#xA;timestamps.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Alton Brown had a recent YouTube video for cooking turkey. Can you get the&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;instructions from the video?&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Ping 15</title>
    <id>https://waylonwalker.com/ping-15/</id>
    <updated>2025-12-22T08:55:20Z</updated>
    <published>2025-12-22T08:55:20Z</published>
    <link href="https://waylonwalker.com/ping-15/" rel="alternate" type="text/html"></link>
    <summary type="text">mise looks like what I wanted nix to be for me.</summary>
    <content type="html">&lt;p&gt;&lt;a href=&#34;https://mise.jdx.dev/getting-started.html&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/mise.jdx.dev.png&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/mise.jdx.dev.png&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;mise&lt;/a&gt; looks like what I wanted nix to be for me.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ jdx mise</title>
    <id>https://waylonwalker.com/jdx-mise/</id>
    <updated>2025-12-21T16:18:10Z</updated>
    <published>2025-12-21T16:18:10Z</published>
    <link href="https://waylonwalker.com/jdx-mise/" rel="alternate" type="text/html"></link>
    <summary type="text">The work on mise by jdx.</summary>
    <content type="html">&lt;p&gt;The work on &lt;a href=&#34;https://github.com/jdx/mise&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;mise&lt;/a&gt; by &lt;a href=&#34;https://github.com/jdx&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;jdx&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;dev tools, env vars, task runner&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Mise looks promising</title>
    <id>https://waylonwalker.com/ping-14/</id>
    <updated>2025-12-21T10:52:57Z</updated>
    <published>2025-12-21T10:52:57Z</published>
    <link href="https://waylonwalker.com/ping-14/" rel="alternate" type="text/html"></link>
    <summary type="text">I&#39;ve been all in on just for a while now, but mise looks so good it might be my next move.</summary>
    <content type="html">&lt;p&gt;I’ve been all in on just for a while now, but mise looks so good it might&#xA;be my next move.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Phantom End</title>
    <id>https://waylonwalker.com/shots/phantom-end/</id>
    <updated>2025-12-21T09:35:34Z</updated>
    <published>2025-12-21T09:35:34Z</published>
    <link href="https://waylonwalker.com/shots/phantom-end/" rel="alternate" type="text/html"></link>
    <summary type="text">Phantom End</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/ec9d19ec-68b9-4b2f-ae6b-fee1559b384a.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Phantom End&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/file/ec9d19ec-68b9-4b2f-ae6b-fee1559b384a.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/file/ec9d19ec-68b9-4b2f-ae6b-fee1559b384a.mp4&#34; type=&#34;video/mp4&#34;&gt;Phantom End&lt;/video&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;Phantom End&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Phantom Fight</title>
    <id>https://waylonwalker.com/shots/phantom-fight/</id>
    <updated>2025-12-21T09:33:48Z</updated>
    <published>2025-12-21T09:33:48Z</published>
    <link href="https://waylonwalker.com/shots/phantom-fight/" rel="alternate" type="text/html"></link>
    <summary type="text">Phantom Fight</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/16a4dfa0-38a1-4ed9-843a-c0077e7e7e75.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Phantom Fight&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/file/16a4dfa0-38a1-4ed9-843a-c0077e7e7e75.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/file/16a4dfa0-38a1-4ed9-843a-c0077e7e7e75.mp4&#34; type=&#34;video/mp4&#34;&gt;Phantom Fight&lt;/video&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;Phantom Fight&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Phantom</title>
    <id>https://waylonwalker.com/shots/phantom/</id>
    <updated>2025-12-21T09:31:50Z</updated>
    <published>2025-12-21T09:31:50Z</published>
    <link href="https://waylonwalker.com/shots/phantom/" rel="alternate" type="text/html"></link>
    <summary type="text">Phantom</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/71d8ce54-c5cd-4101-ad36-80a8ccf4adf9.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Phantom&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/file/71d8ce54-c5cd-4101-ad36-80a8ccf4adf9.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/file/71d8ce54-c5cd-4101-ad36-80a8ccf4adf9.mp4&#34; type=&#34;video/mp4&#34;&gt;Phantom&lt;/video&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;Phantom&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ Maxteabag sqlit</title>
    <id>https://waylonwalker.com/maxteabag-sqlit/</id>
    <updated>2025-12-21T05:47:39Z</updated>
    <published>2025-12-21T05:47:39Z</published>
    <link href="https://waylonwalker.com/maxteabag-sqlit/" rel="alternate" type="text/html"></link>
    <summary type="text">Maxteabag has done a fantastic job with sqlit. Highly recommend taking a look.</summary>
    <content type="html">&lt;p&gt;&lt;a href=&#34;https://github.com/Maxteabag&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;Maxteabag&lt;/a&gt; has done a fantastic job with &lt;a href=&#34;https://github.com/Maxteabag/sqlit&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;sqlit&lt;/a&gt;. Highly recommend taking a look.&lt;/p&gt;&#xA;&lt;p&gt;A user friendly TUI for SQL databases. Written in python. Supports SQL server, Mysql, PostreSQL and SQLite, Turso and more.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ webinstall webi-installers</title>
    <id>https://waylonwalker.com/webinstall-webi-installers/</id>
    <updated>2025-12-20T19:52:27Z</updated>
    <published>2025-12-20T19:52:27Z</published>
    <link href="https://waylonwalker.com/webinstall-webi-installers/" rel="alternate" type="text/html"></link>
    <summary type="text">webi-installers by webinstall is a game-changer in its space. Excited to see how it evolves.</summary>
    <content type="html">&lt;p&gt;&lt;a href=&#34;https://github.com/webinstall/webi-installers&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;webi-installers&lt;/a&gt; by &lt;a href=&#34;https://github.com/webinstall&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;webinstall&lt;/a&gt; is a game-changer in its space. Excited to see how it evolves.&lt;/p&gt;&#xA;&lt;p&gt;Primary and community-submitted packages for webinstall.dev&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Fixing The Marquee For Jolly Holiday</title>
    <id>https://waylonwalker.com/shots/fixing-the-marquee-for-jolly-holiday/</id>
    <updated>2025-12-20T18:06:34Z</updated>
    <published>2025-12-20T18:06:34Z</published>
    <link href="https://waylonwalker.com/shots/fixing-the-marquee-for-jolly-holiday/" rel="alternate" type="text/html"></link>
    <summary type="text">Waylon up at the Marquee of the theater fixing the fallen letters before the night show.</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/48e6a2ef-a4db-462e-acda-16b270e7053d.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Fixing the Marquee for Jolly Holiday&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/file/48e6a2ef-a4db-462e-acda-16b270e7053d.webp&#34; alt=&#34;Fixing the Marquee for Jolly Holiday&#34;/ data-glightbox=&#34;description: Fixing the Marquee for Jolly Holiday&#34;&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;Waylon up at the Marquee of the theater fixing the fallen letters before the night show.&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 You Might Also Like: My Notes Blog - Jim Nielsen’s Blog</title>
    <id>https://waylonwalker.com/thought-895/</id>
    <updated>2025-12-19T16:11:31Z</updated>
    <published>2025-12-19T16:11:31Z</published>
    <link href="https://waylonwalker.com/thought-895/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://blog.jim-nielsen.com/2025/you-might-also-like-my-notes-blog/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://blog.jim-nielsen.com/2025/you-might-also-like-my-notes-blog/&#34; class=&#34;embed-card-link  has-avatar has-avatar-before&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/blog.jim-nielsen.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/blog.jim-nielsen.com.ico&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;You Might Also Like: My Notes Blog&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Writing about the big beautiful mess that is making things for the world wide web.&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;blog.jim-nielsen.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;I really like a good link blog, it’s the old timers version of a reaction video.  It gives me new posts to discover from other writers, and gives additional perspectives from ones I trust enough to add to my RSS.&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;It’s nice to have a place where I can jot down a few notes, fire off my reaction, and nobody can respond to it lol. At least, not in any easy, friction-less way. You’d have to go out of your way to read my commentary, find my contact info, and fire off a message (critiquing or praising). That’s how I like it. Cuts through the noise.&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;p&gt;Ditto Jim.  I’ve oddly found mine more useful to search than blog posts, zettlekaten, notes, whatever you want to call them.  For me writing something down makes it more concrete in my brain that I’m less likely to need to go reference, but I often need to re read or references posts from others, this is where &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;Thoughts&lt;/a&gt; comes in handy for me&lt;/p&gt;&#xA;&lt;p&gt;Like Jim I have a bunch of &lt;a href=&#34;/feeds/&#34; class=&#34;wikilink&#34; data-title=&#34;feeds&#34; data-description=&#34;I have several feeds that you can consume my content with. Many posts will cross between them, so if you would like to follow a certain stream of content in...&#34; data-date=&#34;2024-04-02&#34; data-preview=&#34;I have several feeds that you can consume my content with. Many posts will cross between them, so if you would like to follow a certain stream of content in...&#34;&gt;feeds&lt;/a&gt; you can subscribe to if you want some or all of my stuff, but I aggregate everything to the same root site.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Gross phone</title>
    <id>https://waylonwalker.com/ping-13/</id>
    <updated>2025-12-19T09:51:00Z</updated>
    <published>2025-12-19T09:51:00Z</published>
    <link href="https://waylonwalker.com/ping-13/" rel="alternate" type="text/html"></link>
    <summary type="text">Is there a world that giving my phone to my kids does not result in it being covered in peanut butter and snot?</summary>
    <content type="html">&lt;p&gt;Is there a world that giving my phone to my kids does not result in it being&#xA;covered in peanut butter and snot?&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Developer Vs Artist Ai</title>
    <id>https://waylonwalker.com/developer-vs-artist-ai/</id>
    <updated>2025-12-19T09:44:00Z</updated>
    <published>2025-12-19T09:44:00Z</published>
    <link href="https://waylonwalker.com/developer-vs-artist-ai/" rel="alternate" type="text/html"></link>
    <summary type="text">The other day I was watching [thePrimeTimeagen]https://youtube.com/@theprimetimeagen?si=jVcp23FbfQSFZfDc) and he talked about devs loving ai and artists...</summary>
    <content type="html">&lt;p&gt;The other day I was watching [thePrimeTimeagen]https://youtube.com/@theprimetimeagen?si=jVcp23FbfQSFZfDc) and he talked about devs loving ai and artists revolting.  There was some discussion in chat about art being more creative and prime quickly squashed that.  He ended with being oddly confused why developers are jumping on board and artists are not.  Both had their art stolen to build out the models.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/e0f9e8bf-bc51-415c-ad25-6f2cd473e6d0.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Open image&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/file/e0f9e8bf-bc51-415c-ad25-6f2cd473e6d0.webp&#34; alt=&#34;&#34;/ data-glightbox=&#34;description: &#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;my own vibes&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;I&amp;#39;m writing this from my phone without further research, all vibes, personal experience, and thoughts,  no research.&#xA;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;/div&gt;&#xA;&lt;h2 id=&#34;good-tools&#34;&gt;Good Tools &lt;a href=&#34;#good-tools&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;First I want to argue that artists have had some form of ai in their tools for years.  Idk, probably not ai as we know it today but functionally similar.  Content aware fill.  This is a Photoshop feature from Adobe, as far as I know it’s one of the special things you get from Adobe that you don’t get from the FOSS alternatives easily.&lt;/p&gt;&#xA;&lt;p&gt;This is an example of a good took that is well loves by the community and widely used, if you put ai in it to make it better no one would care, if it made things look oddly ai it would get rejected.&lt;/p&gt;&#xA;&lt;h2 id=&#34;taking-the-brush&#34;&gt;taking the brush &lt;a href=&#34;#taking-the-brush&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;Here is the critical difference that I see between the communities.  Software development has made great tools for itself in a wide spectrum, from hands off vibe code no code to better auto complete.  There’s something for everyone and every situation.  This feels very obvious the minute you try to look at how to do it.  In fact we started with better autocomplete.  This autocomplete is really good at recognizing patterns in your document and continuing your current thought for you.&lt;/p&gt;&#xA;&lt;p&gt;Art is a complete 180.  It started with prompt engineering.  Hands off let the tool do everything, you do nothing but prompt it.  If it’s wrong reprompt.  Diffusion is the worst because it generates completely new results every time nothing like what you had before.  The newer stuff from openai and nano banana are not diffusion and do much better text and edits, but it’s not the same.&lt;/p&gt;&#xA;&lt;h2 id=&#34;hands-off-is-frustrating&#34;&gt;hands off is frustrating &lt;a href=&#34;#hands-off-is-frustrating&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;Anyone who has tried to get something specific from ai art or code gen without touching it themselves knows the frustration that you ask it to do one thing that takes 3 prompts to get it to understand what your asking and by the time it’s right it’s wrecked something else.  It’s not fun, it’s soul sucking and ripe for meme content.&lt;/p&gt;&#xA;&lt;h2 id=&#34;freedom-of-expression&#34;&gt;freedom of expression &lt;a href=&#34;#freedom-of-expression&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;Software development has made a really good effort to make really great tools for itself.  We have a wide spectrum that allow you to prototype fast, get something complex working in hours not month, but riddles with issues.  Allowing us to get better scoped work from PMs who have put their hands on a semi working prototype.  We have the ability to slice out parts and refactor with ease, and when things really matter we can right the code ourselves with ai there to take away the boilerplate repetition that finds it’s way into some modules.&lt;/p&gt;&#xA;&lt;p&gt;I’m sure there is better ai art tools out there that allow artists to keep their brush in hand and enhance their skills, but I have not seen them.  Ive seen in painting, but its not discoverable as it’s first experience, is hard to setup, might cost a lot, and doesn’t quite fit in to where you work with it.  It’s still all or nothing prompt engineering, just a bit more focused in.&lt;/p&gt;&#xA;&lt;h2 id=&#34;ai-video&#34;&gt;ai video &lt;a href=&#34;#ai-video&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;I haven’t even thought much about things like sora throughout this.  I can say for sure I’m enjoying editors for small time creators having the ability to throw in short clips to enhance the story.  Especially for story telling style content that is impossible to get real video of, and would cost a fortune to build set, costume, and cast.  It makes no sense for this scale.  The McDonald’s and coke videos im on the fence on.  They seem &lt;em&gt;fine&lt;/em&gt;, they don’t feel inspiring, great, or terrible to me.&lt;/p&gt;&#xA;&lt;h2 id=&#34;fin&#34;&gt;fin &lt;a href=&#34;#fin&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;Developers naturally started with great tools here, and artist were given tools for developers to do art with, nothing tools for them.&lt;/p&gt;&#xA;&lt;p&gt;Please tell me I’m wrong, artists have great tools you just haven’t seen them.  I’d love to be wrong.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>nginx accepts markdown</title>
    <id>https://waylonwalker.com/nginx-accepts-markdown/</id>
    <updated>2025-12-18T15:31:49Z</updated>
    <published>2025-12-18T15:31:49Z</published>
    <link href="https://waylonwalker.com/nginx-accepts-markdown/" rel="alternate" type="text/html"></link>
    <content type="text">&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 “You should never build a CMS” | Sanity</title>
    <id>https://waylonwalker.com/thought-894/</id>
    <updated>2025-12-17T15:21:41Z</updated>
    <published>2025-12-17T15:21:41Z</published>
    <link href="https://waylonwalker.com/thought-894/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.sanity.io/blog/you-should-never-build-a-cms</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://www.sanity.io/blog/you-should-never-build-a-cms&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://www.sanity.io/static/images/opengraph/social.png&#34; alt=&#34;“You should never build a CMS” | Sanity — Lee Robinson migrated cursor.com off Sanity. He made good points. Here&amp;#39;s what he missed.&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: “You should never build a CMS” | Sanity — Lee Robinson migrated cursor.com off Sanity. He made good points. Here&amp;#39;s what he missed.&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;“You should never build a CMS” | Sanity&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Lee Robinson migrated cursor.com off Sanity. He made good points. Here&amp;#39;s what he missed.&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;Sanity.io · sanity.io&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Such a good breakdown of the leerob article, that is hitting everywhere right now.  Feels like sanity was just a bit late to getting things right and it would have just worked for them how leerob was trying to use it, but MCP sucked so he jumped.&lt;/p&gt;&#xA;&lt;p&gt;Reading their loose descriptions of a CMS, its an interesting realization to realize I’m rolling my own cms.  I kinda feel like theres a few inspiration features to take from here, but I have no regrets.  As a developer I like being able to build my own tools, I like being able to search and edit from nvim, and not have to write GROQ queries, and transforms.  There were some really good points here that as I get more and more content on my personal site, I do kinda feel it.  I’m surprised there is not more tooling that does some of these things for piles of markdown.&lt;/p&gt;&#xA;&lt;p&gt;pinning this to re-read later, feels like a lot of good tidbits here.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 The Github Tax (I can&#39;t believe they actually did this...) - Y...</title>
    <id>https://waylonwalker.com/thought-893/</id>
    <updated>2025-12-17T15:04:09Z</updated>
    <published>2025-12-17T15:04:09Z</published>
    <link href="https://waylonwalker.com/thought-893/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/watch?v=xTSar1SEmIU</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;xTSar1SEmIU&#34; title=&#34;The Github Tax (I can&amp;#39;t believe they actually did this...)&#34; playlabel=&#34;Play: The Github Tax (I can&amp;#39;t believe they actually did this...)&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;It really feels like M$ is coming down hard on GH lately to make some unfavorable decisions for users.  Maybe there is good reason for all of these changes from a business perspective, I can’t judge that.  But right now there are some really great alternatives out there.  I’m so grateful for what forgejo and gittea offer, and at the same time seeing the community get split up from GH is sad.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Ping 12</title>
    <id>https://waylonwalker.com/ping-12/</id>
    <updated>2025-12-16T11:44:47Z</updated>
    <published>2025-12-16T11:44:47Z</published>
    <link href="https://waylonwalker.com/ping-12/" rel="alternate" type="text/html"></link>
    <summary type="text">Is new teen lingo? My kid is starting to say _ in every sentence.</summary>
    <content type="html">&lt;p&gt;Is &lt;code&gt;bet&lt;/code&gt; new teen lingo?  My kid is starting to say &lt;em&gt;bet&lt;/em&gt; in every sentence.&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;So he explained it as “I’m down”, “You bet”, “Yes”, “I like that”, “You betcha”&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Ping 11</title>
    <id>https://waylonwalker.com/ping-11/</id>
    <updated>2025-12-16T08:11:43Z</updated>
    <published>2025-12-16T08:11:43Z</published>
    <link href="https://waylonwalker.com/ping-11/" rel="alternate" type="text/html"></link>
    <summary type="text">Naming things is hard, pings will now be numbered.</summary>
    <content type="html">&lt;p&gt;Naming things is hard, pings will now be numbered.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Hollow Knight: Silksong - Sea of Sorrow Teaser</title>
    <id>https://waylonwalker.com/thought-892/</id>
    <updated>2025-12-16T04:28:37Z</updated>
    <published>2025-12-16T04:28:37Z</published>
    <link href="https://waylonwalker.com/thought-892/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/watch?v=qDFEeeLy6ws</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;qDFEeeLy6ws&#34; title=&#34;Hollow Knight: Silksong - Sea of Sorrow Teaser&#34; playlabel=&#34;Play: Hollow Knight: Silksong - Sea of Sorrow Teaser&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Silksong DLC announcement already, we waited 8 years for the game, and are getting DLC’s months after launch.  Dudes I haven’t even finished the game get, maybe not even half way.  It’s amazing.  Its amazing that these three make such a kick ass game with great art, story, voice, gameplay, and now drop a free dlc in 2026.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>I&#39;m being gaslit by the ai</title>
    <id>https://waylonwalker.com/i-m-being-gaslit-by-the-ai/</id>
    <updated>2025-12-15T16:16:12Z</updated>
    <published>2025-12-15T16:16:12Z</published>
    <link href="https://waylonwalker.com/i-m-being-gaslit-by-the-ai/" rel="alternate" type="text/html"></link>
    <summary type="text">I&#39;m being gaslit by the ai. It just did a big hard change, now cant do a seemingly basic change, and assures me that that its fixed my issue on every iteration.</summary>
    <content type="html">&lt;p&gt;I’m being gaslit by the ai.  It just did a big hard change, now cant do a seemingly basic change, and assures me that that its fixed my issue on every iteration.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Finished Elf House</title>
    <id>https://waylonwalker.com/shots/finished-elf-house/</id>
    <updated>2025-12-14T13:27:43Z</updated>
    <published>2025-12-14T13:27:43Z</published>
    <link href="https://waylonwalker.com/shots/finished-elf-house/" rel="alternate" type="text/html"></link>
    <summary type="text">Waylon and Rhiannon standing in front of a mostly finished elf house built for the Jolly Holiday Performance at the local theater.</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/f34e94d4-c6d4-4a89-96f7-14f67c954307.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Finished Elf House&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/file/f34e94d4-c6d4-4a89-96f7-14f67c954307.webp&#34; alt=&#34;Finished Elf House&#34;/ data-glightbox=&#34;description: Finished Elf House&#34;&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;Waylon and Rhiannon standing in front of a mostly finished elf house built for the Jolly Holiday Performance at the local theater.&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Cogwork Saved Pill</title>
    <id>https://waylonwalker.com/shots/cogwork-saved-pill/</id>
    <updated>2025-12-14T09:26:19Z</updated>
    <published>2025-12-14T09:26:19Z</published>
    <link href="https://waylonwalker.com/shots/cogwork-saved-pill/" rel="alternate" type="text/html"></link>
    <summary type="text">Cogwork Saved Pill</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/080351b9-a5f9-4103-b5c8-fbcbe1e0b2b7.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Cogwork Saved Pill&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/file/080351b9-a5f9-4103-b5c8-fbcbe1e0b2b7.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/file/080351b9-a5f9-4103-b5c8-fbcbe1e0b2b7.mp4&#34; type=&#34;video/mp4&#34;&gt;Cogwork Saved Pill&lt;/video&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;Cogwork Saved Pill&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>numbered posts in obsidian</title>
    <id>https://waylonwalker.com/numbered-posts-in-obsidian/</id>
    <updated>2025-12-13T22:28:28Z</updated>
    <published>2025-12-13T22:28:28Z</published>
    <link href="https://waylonwalker.com/numbered-posts-in-obsidian/" rel="alternate" type="text/html"></link>
    <summary type="text">I&#39;ve been using this one for awhile now, I have a post type that I only edit from my phone, but I have all the post numbered. I set up a template in obsidian...</summary>
    <content type="html">&lt;p&gt;I’ve been using this one for awhile now, I have a post type that I only edit&#xA;from my phone, but I have all the post numbered.  I set up a template in&#xA;obsidian for using templater, the template goes right in the static site repo,&#xA;I point templater to the templates directory and this has been working pretty&#xA;seamlessly for awhile.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;---&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;date: &amp;lt;% tp.date.now(&amp;#34;YYYY-MM-DD HH:mm:ss&amp;#34;) %&amp;gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;templateKey: myposttype&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;published: true&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;tags:&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;-&lt;/span&gt; myposttype&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&amp;lt;%*&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;const folder = &amp;#34;pages/myposttype&amp;#34;;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;// get all files in the vault, keep only those inside the folder&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;const files = app.vault.getFiles().filter(f =&amp;gt; f.path.startsWith(folder + &amp;#34;/&amp;#34;));&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;// extract numeric suffixes from filenames like myposttype-123.md&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;const nums = files.map(f =&amp;gt; {&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  const m = f.basename.match(/^myposttype-(\d+)$/);&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  return m ? parseInt(m[1], 10) : null;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;}).filter(n =&amp;gt; n !== null);&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;// next number (start at 1 if none exist)&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;const next = (nums.length ? Math.max(...nums) : 0) + 1;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;// include the .md extension when moving&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;const newPath = &lt;span class=&#34;sb&#34;&gt;`${folder}/myposttype-${next}`&lt;/span&gt;;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;await tp.file.move(newPath);&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;%&amp;gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;---&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 AI, DevOps, and Kubernetes: Kelsey Hightower on What’s Next - ...</title>
    <id>https://waylonwalker.com/thought-891/</id>
    <updated>2025-12-13T04:07:15Z</updated>
    <published>2025-12-13T04:07:15Z</published>
    <link href="https://waylonwalker.com/thought-891/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/watch?v=HdUbTyvrfKo</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;HdUbTyvrfKo&#34; title=&#34;AI, DevOps, and Kubernetes: Kelsey Hightower on What’s Next&#34; playlabel=&#34;Play: AI, DevOps, and Kubernetes: Kelsey Hightower on What’s Next&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Kelsey has a really good lightbulb moment here about platform engineering.&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;“if you had to do all the deployments for the entire company what questions would you ask of the development team?”&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;p&gt;That’s your api, your platform, this is your product as a platform engineer.  It’s not images, docker, terraform, hcl, yaml, kubernetes, It’s building out the right api for your company to deploy its products effectively.&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://www.youtube.com/watch?v=HdUbTyvrfKo&amp;amp;t=429s&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/www.youtube.com.png&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/www.youtube.com.png&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;https://www.youtube.com/watch?v=HdUbTyvrfKo&amp;amp;t=429s&lt;/a&gt;&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;timestamped&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ andrii-kryvoviaz slink</title>
    <id>https://waylonwalker.com/andrii-kryvoviaz-slink/</id>
    <updated>2025-12-12T13:40:24Z</updated>
    <published>2025-12-12T13:40:24Z</published>
    <link href="https://waylonwalker.com/andrii-kryvoviaz-slink/" rel="alternate" type="text/html"></link>
    <summary type="text">Check out andrii-kryvoviaz and their project slink.</summary>
    <content type="html">&lt;p&gt;Check out &lt;a href=&#34;https://github.com/andrii-kryvoviaz&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;andrii-kryvoviaz&lt;/a&gt; and their project &lt;a href=&#34;https://github.com/andrii-kryvoviaz/slink&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;slink&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;/self-host/&#34; class=&#34;glossary-term&#34; title=&#34;Self hosting is the act of hosting your own applications and services without using a SAS provider. This is typically done with your own hardware, but there...&#34;&gt;Self-hosted&lt;/a&gt; image sharing service&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>notifications for static site builds</title>
    <id>https://waylonwalker.com/notifications-for-static-site-builds/</id>
    <updated>2025-12-12T08:28:45Z</updated>
    <published>2025-12-12T08:28:45Z</published>
    <link href="https://waylonwalker.com/notifications-for-static-site-builds/" rel="alternate" type="text/html"></link>
    <summary type="text">This morning I set up notifications for changes to my static site builds leveraging git-name-status and ntfy.</summary>
    <content type="html">&lt;p&gt;This morning I set up notifications for changes to my static site builds&#xA;leveraging &lt;a href=&#34;/git-name-status/&#34; class=&#34;wikilink&#34; data-title=&#34;git name status&#34; data-description=&#34;is a great way to see what files have changed in a git diff alongside the status code. I recently used this in a script to create a report of new and...&#34; data-date=&#34;2025-12-12&#34; data-preview=&#34;is a great way to see what files have changed in a git diff alongside the status code. I recently used this in a script to create a report of new and...&#34;&gt;git name status&lt;/a&gt; and ntfy.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/1c69e648-5aa3-4f66-9085-a045b99450a5.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;notification of changes&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/file/1c69e648-5aa3-4f66-9085-a045b99450a5.webp&#34; alt=&#34;notification of changes&#34;/ data-glightbox=&#34;description: notification of changes&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>git name status</title>
    <id>https://waylonwalker.com/git-name-status/</id>
    <updated>2025-12-12T07:53:57Z</updated>
    <published>2025-12-12T07:53:57Z</published>
    <link href="https://waylonwalker.com/git-name-status/" rel="alternate" type="text/html"></link>
    <summary type="text">is a great way to see what files have changed in a git diff alongside the status code. I recently used this in a script to create a report of new and...</summary>
    <content type="html">&lt;p&gt;&lt;code&gt;--name-status&lt;/code&gt; is a great way to see what files have changed in a &lt;a href=&#34;/glossary/git/&#34; class=&#34;glossary-term&#34; title=&#34;Git is a version control system for tracking changes in source code during software development. In the beginning there were many, some were licensed. As...&#34;&gt;git&lt;/a&gt; diff&#xA;alongside the status code.  I recently used this in a script to create a report&#xA;of new and modified files during a build.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;git diff --name-status&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;git diff --name-status origin/main&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;git diff --name-status --staged&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;git diff --name-status &lt;span class=&#34;s1&#34;&gt;&amp;#39;HEAD@{3 days ago}&amp;#39;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Dude Locked In</title>
    <id>https://waylonwalker.com/shots/dude-is-focused/</id>
    <updated>2025-12-11T11:50:07Z</updated>
    <published>2025-12-11T11:50:07Z</published>
    <link href="https://waylonwalker.com/shots/dude-is-focused/" rel="alternate" type="text/html"></link>
    <summary type="text">My son wanted to help shovel snow, usually this means, I&#39;ll piddle around, have Fun, maybe make things worse, but it&#39;s ok cause I&#39;ll make it a good time. Tonight he was LOCKED IN and got a good chunk of the neighbors drive and entire sidewalk done.</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/dfaeb218-e2cc-4d2f-a4dc-4d8bcfb3a5b5.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Dude is focused&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/file/dfaeb218-e2cc-4d2f-a4dc-4d8bcfb3a5b5.webp&#34; alt=&#34;Dude is focused&#34;/ data-glightbox=&#34;description: Dude is focused&#34;&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;My son wanted to help shovel snow, usually this means, I’ll piddle around, have Fun, maybe make things worse, but it’s ok cause I’ll make it a good time.  Tonight he was LOCKED IN and got a good chunk of the neighbors drive and entire sidewalk done.&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>fast changing dev server today</title>
    <id>https://waylonwalker.com/fast-changing-dev-server-today/</id>
    <updated>2025-12-10T13:45:49Z</updated>
    <published>2025-12-10T13:45:49Z</published>
    <link href="https://waylonwalker.com/fast-changing-dev-server-today/" rel="alternate" type="text/html"></link>
    <summary type="text">The dev server is cooking today, I&#39;ve dropped markata builds from 2m40s (hot cache) in prod to 15s (hot cache) in dev. Currently building 2745 posts and 274...</summary>
    <content type="html">&lt;p&gt;The dev server is cooking today, I’ve dropped markata builds from 2m40s (hot cache) in prod&#xA;to 15s (hot cache) in dev. Currently building 2745 posts and 274 feeds.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/c3e8b9de-d4be-4c7c-ab9b-a13a25c7673c.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;screenshot of the dev builds from k9s&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/file/c3e8b9de-d4be-4c7c-ab9b-a13a25c7673c.webp&#34; alt=&#34;screenshot of the dev builds from k9s&#34;/ data-glightbox=&#34;description: screenshot of the dev builds from k9s&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>The Right Reasons To Run Kubernetes In Your Homelab</title>
    <id>https://waylonwalker.com/the-right-reasons-to-run-kubernetes-in-your-homelab/</id>
    <updated>2025-12-10T09:48:14Z</updated>
    <published>2025-12-10T09:48:14Z</published>
    <link href="https://waylonwalker.com/the-right-reasons-to-run-kubernetes-in-your-homelab/" rel="alternate" type="text/html"></link>
    <summary type="text">Running kubernetes in your homelab is a fantastic way to learn, explore, express yourself, and run services that you use.</summary>
    <content type="html">&lt;p&gt;Running kubernetes in your &lt;a href=&#34;/homelab/&#34; class=&#34;glossary-term&#34; title=&#34;A place to self host applications. For me this is primarily self built web applications, and applications for sharing files with my family. Techno Tim has a...&#34;&gt;homelab&lt;/a&gt; is a fantastic way to learn, explore, express&#xA;yourself, and run services that you use.&lt;/p&gt;&#xA;&lt;h2 id=&#34;the-right-reasons-to-run-kubernetes-in-your-homelab&#34;&gt;The Right Reasons To Run Kubernetes In Your Homelab &lt;a href=&#34;#the-right-reasons-to-run-kubernetes-in-your-homelab&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;&lt;em&gt;There are not many&lt;/em&gt;&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;You want to learn kubernetes&lt;/li&gt;&#xA;&lt;li&gt;You like kubernetes&lt;/li&gt;&#xA;&lt;li&gt;You want to &lt;strong&gt;learn&lt;/strong&gt; to scale&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;There are also &lt;a href=&#34;/the-wrong-reasons-to-run-kubernetes-in-your-homelab/&#34; class=&#34;wikilink&#34; data-title=&#34;The Wrong Reasons To Run Kubernetes In Your Homelab&#34; data-description=&#34;Running kubernetes in your homelab is complex, time consuming, there are almost no docs to help you (homelab focused docs for things you want to install),...&#34; data-date=&#34;2025-12-06&#34; data-preview=&#34;Running kubernetes in your homelab is complex, time consuming, there are almost no docs to help you (homelab focused docs for things you want to install),...&#34;&gt;The Wrong Reasons To Run Kubernetes In Your Homelab&lt;/a&gt;&lt;/p&gt;&#xA;&lt;h2 id=&#34;you-want-to-learn-kubernetes&#34;&gt;You want to learn kubernetes &lt;a href=&#34;#you-want-to-learn-kubernetes&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;Homelabbing is a such a great way to learn new skills, deploy real apps that&#xA;you use.  Create new custom apps for your specific use cases that no one else&#xA;has.  You should absolutely run kubernetes in your homelab if you want to learn it.&lt;/p&gt;&#xA;&lt;p&gt;I would recommend to start locally, pull up kind, minikube, or k3d and start&#xA;from your local machine before putting it on a server.&lt;/p&gt;&#xA;&lt;p&gt;When you decide you are ready for a server, you probably don’t need any crazy&#xA;hardware.  You can probably run on some old retired Dell Optiplex or an old&#xA;desktop someone is throwing out as it no longer runs windows.&lt;/p&gt;&#xA;&lt;h2 id=&#34;you-like-kubernetes&#34;&gt;You like kubernetes &lt;a href=&#34;#you-like-kubernetes&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;Hell Yeah Brother, 100% no better reason to run kubernetes at home than because&#xA;you enjoy it.  I’m with you.  There’s nothing quite like having &lt;a href=&#34;/glossary/git/&#34; class=&#34;glossary-term&#34; title=&#34;Git is a version control system for tracking changes in source code during software development. In the beginning there were many, some were licensed. As...&#34;&gt;git&lt;/a&gt; ops kick in&#xA;and deploy new services, updates, watching deployments rollover with zero&#xA;downtime.  Watching your cluster heal itself when a node goes down.  Never&#xA;ssh-ing in to do deployments.  Still owning your entire hardware.&lt;/p&gt;&#xA;&lt;h2 id=&#34;you-want-to-learn-to-scale&#34;&gt;You want to learn to scale &lt;a href=&#34;#you-want-to-learn-to-scale&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;This is probably a stretch reason, maybe not a good one, there are probably&#xA;better ways, but here we go.&lt;/p&gt;&#xA;&lt;p&gt;Don’t claim that you &lt;strong&gt;need&lt;/strong&gt; scale in your homelab, you don’t.  But it sure is&#xA;fun to run a cluster of nodes, and load balancing services that run across&#xA;them.  Solving these hard problems to scale across machines is hard.  There’s&#xA;no way around it, there’s a lot to think about.  Doing so in a low stakes&#xA;environment that you have skin in the game is a great way to learn.&lt;/p&gt;&#xA;&lt;h2 id=&#34;i-run-kubernetes-in-my-homelab&#34;&gt;I run kubernetes in my homelab &lt;a href=&#34;#i-run-kubernetes-in-my-homelab&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;I run it and I really like it&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;What flavor of autism did you guys get, I got the kind where I run kubernetes in my basement.&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;p&gt;Here are some things I really like about it, and Yes I know you can achieve&#xA;most of these without kubernetes.&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;I don’t have to ssh, hardly ever.&lt;/li&gt;&#xA;&lt;li&gt;I can see everything I’m running, and its defined in a manifest&lt;/li&gt;&#xA;&lt;li&gt;k9s is amazing, and I use it all the time.&#xA;&lt;ul&gt;&#xA;&lt;li&gt;shell into running pods&lt;/li&gt;&#xA;&lt;li&gt;restart deployments&lt;/li&gt;&#xA;&lt;li&gt;scale deployments&lt;/li&gt;&#xA;&lt;li&gt;trigger cronjobs&lt;/li&gt;&#xA;&lt;li&gt;watch logs&lt;/li&gt;&#xA;&lt;li&gt;I can scale our minecraft server to 0 in seconds if we are in a different season of life&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;/li&gt;&#xA;&lt;li&gt;ArgoCD is amazing&#xA;&lt;ul&gt;&#xA;&lt;li&gt;I ❤️ gitops&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;/li&gt;&#xA;&lt;li&gt;Ingress just works&lt;/li&gt;&#xA;&lt;li&gt;Longhorn&#xA;&lt;ul&gt;&#xA;&lt;li&gt;makes snapshots and backups easy&lt;/li&gt;&#xA;&lt;li&gt;makes multi node easy&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;/li&gt;&#xA;&lt;li&gt;zero-downtime deployments&lt;/li&gt;&#xA;&lt;li&gt;self healing health checks&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;I mostly do very simple things, deployments with a container, a volume and&#xA;ingress.  Probably things that you could easily run on fly.io.  Theres nothing&#xA;really fancy.  I just like how easy this setup works for &lt;strong&gt;me&lt;/strong&gt;.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/f8e88b6b-a668-4cea-9792-65339860b07f.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;She’s our friend and she’s crazy&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/file/f8e88b6b-a668-4cea-9792-65339860b07f.webp&#34; alt=&#34;She’s our friend and she’s crazy&#34;/ data-glightbox=&#34;description: She’s our friend and she’s crazy&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>minecraft server memory</title>
    <id>https://waylonwalker.com/minecraft-server-memory/</id>
    <updated>2025-12-10T08:46:36Z</updated>
    <published>2025-12-10T08:46:36Z</published>
    <link href="https://waylonwalker.com/minecraft-server-memory/" rel="alternate" type="text/html"></link>
    <summary type="text">I learned to today that setting on your minecraft server causes the JVM to egregiously allocate all of that memory. Not setting it causes slow downs and...</summary>
    <content type="html">&lt;p&gt;I learned to today that setting &lt;code&gt;MEMORY&lt;/code&gt; on your minecraft server causes the&#xA;JVM to egregiously allocate all of that memory.  Not setting it causes slow&#xA;downs and potential crashes, but setting &lt;code&gt;INIT_MEMORY&lt;/code&gt; and &lt;code&gt;MAX_MEMORY&lt;/code&gt; gives&#xA;us the best of both worlds.  It is allowed to use more, but does not gobble it&#xA;all up on startup.&lt;/p&gt;&#xA;&lt;p&gt;In this economy we need to save all the memory we can!&lt;/p&gt;&#xA;&lt;p&gt;Here is a non-working snippet for a minecraft server deployment in kubernetes.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;      &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;containers&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;        &lt;/span&gt;- &lt;span class=&#34;nt&#34;&gt;name&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;l&#34;&gt;dungeon&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;          &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;image&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;l&#34;&gt;itzg/minecraft-server&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;          &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;env&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;            &lt;/span&gt;- &lt;span class=&#34;nt&#34;&gt;name&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;l&#34;&gt;EULA&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;              &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;value&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;true&amp;#34;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;            &lt;/span&gt;- &lt;span class=&#34;nt&#34;&gt;name&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;l&#34;&gt;INIT_MEMORY&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;              &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;value&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;512M&amp;#34;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;            &lt;/span&gt;- &lt;span class=&#34;nt&#34;&gt;name&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;l&#34;&gt;MAX_MEMORY&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;              &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;value&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;3G&amp;#34;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;and in docker compose&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;dungeon&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;    &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;image&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;l&#34;&gt;itzg/minecraft-server&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;    &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;environment&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;      &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;EULA&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;true&amp;#34;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;      &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;INIT_MEMORY&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;512M&amp;#34;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;      &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;MAX_MEMORY&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;3G&amp;#34;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Cogwork Core Gang Fight</title>
    <id>https://waylonwalker.com/shots/cogwork-core-gang-fight/</id>
    <updated>2025-12-09T20:32:01Z</updated>
    <published>2025-12-09T20:32:01Z</published>
    <link href="https://waylonwalker.com/shots/cogwork-core-gang-fight/" rel="alternate" type="text/html"></link>
    <summary type="text">Cogwork Core Gang Fight</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/5279af87-077a-4d40-82ce-b5c805844c05.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Cogwork Core Gang Fight&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/file/5279af87-077a-4d40-82ce-b5c805844c05.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/file/5279af87-077a-4d40-82ce-b5c805844c05.mp4&#34; type=&#34;video/mp4&#34;&gt;Cogwork Core Gang Fight&lt;/video&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;Cogwork Core Gang Fight&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Why is Everyone So Wrong About AI Water Use?? - YouTube</title>
    <id>https://waylonwalker.com/thought-890/</id>
    <updated>2025-12-09T14:39:18Z</updated>
    <published>2025-12-09T14:39:18Z</published>
    <link href="https://waylonwalker.com/thought-890/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/watch?v=H_c6MWk7PQc</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;H_c6MWk7PQc&#34; title=&#34;Why is Everyone So Wrong About AI Water Use??&#34; playlabel=&#34;Play: Why is Everyone So Wrong About AI Water Use??&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;I did not realize all the places to be considered as AI water usage.  Hank goes deep highlighting all of the sources he is aware of, most reports leave off a lot of these sources, some reports go maybe too far adding sources that may not make sense depending on the question you are asking.&lt;/p&gt;&#xA;&lt;p&gt;As someone that runs computers with gpus in their house, and watching LTT make AIO installs on GPUs I’ve wondered what would AI use water for, now I understand that its a lot. No where near agriculture, but a lot.&lt;/p&gt;&#xA;&lt;p&gt;Unlike running a gpu in your house, potentially with a closed loop AIO, data centers are filled with hardware making heat and it all must go somewhere.  Current technology has this done with evaporative cooling, i.e. its not a closed loop, the water goes into the sky.&lt;/p&gt;&#xA;&lt;p&gt;He goes on to point out that its not just the data center, using water, but also chip fab and power plants.&lt;/p&gt;&#xA;&lt;p&gt;Something I hadn’t put a lot of thought into is the type of water.  While a lot of agriculture and power applications do not use municipal water, a lot of data centers do, putting excess strain on water treatment.&lt;/p&gt;&#xA;&lt;p&gt;Something I find interesting is that Altman is doing the same thing here that he does on his financial numbers.  Stating they use almost nothing on inference.  Missing training, missing training for models that turned out to be a flop and never made it anywhere, but they learned how to make better models from it.  Missing chip fab, construction, transportation, and power.  The way report numbers bases on a small subset of their entire business feels wrong.&lt;/p&gt;&#xA;&lt;p&gt;Anyways Hank does a great job at saying this is not a simple answer, its complicated.  Things are moving so fast that its hard to be accurate, its hard for infrastructure to keep up.  There’s a lot more to think about than the water use on a single query.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Notes – 05:09 Tue 9 Dec 2025 – David Bushell – Web Dev (UK)</title>
    <id>https://waylonwalker.com/thought-889/</id>
    <updated>2025-12-09T14:08:20Z</updated>
    <published>2025-12-09T14:08:20Z</published>
    <link href="https://waylonwalker.com/thought-889/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://dbushell.com/notes/2025-12-09T05:09Z/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://dbushell.com/notes/2025-12-09T05:09Z/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://dbushell.com/assets/images/ogimage.png&#34; alt=&#34;Notes – 05:09 Tue 9 Dec 2025 — Notes – 05:09 Tue 9 Dec 2025&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: Notes – 05:09 Tue 9 Dec 2025 — Notes – 05:09 Tue 9 Dec 2025&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Notes – 05:09 Tue 9 Dec 2025&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Notes – 05:09 Tue 9 Dec 2025&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;dbushell.com · dbushell.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Age verification hitting bluesky?? At least its not yet requiring your govt issued id or anything, but stepping that direction.  I don’t know how I feel about age checks, does it actually protect kids when parents aren’t involved?  I can’t say anything there, but it really does feel like its about ready to hurt the rest of us, requiring us to whip out ids and personal data for anything done online.  This is a real problem that is hard to solve, and reasons why it has not been solved yet.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Deprecations via warnings don’t work for Python libraries</title>
    <id>https://waylonwalker.com/thought-888/</id>
    <updated>2025-12-09T14:01:29Z</updated>
    <published>2025-12-09T14:01:29Z</published>
    <link href="https://waylonwalker.com/thought-888/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://simonwillison.net/2025/Dec/9/deprecations-via-warnings/#atom-everything</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://simonwillison.net/2025/Dec/9/deprecations-via-warnings/#atom-everything&#34; class=&#34;embed-card-link  has-avatar has-avatar-before&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/simonwillison.net.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/simonwillison.net.ico&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Deprecations via warnings don’t work for Python libraries&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Seth Larson reports that urllib3 2.6.0 released on the 5th of December and finally removed the HTTPResponse.getheaders() and HTTPResponse.getheader(name, default) methods, which have been marked as...&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;Simon Willison’s Weblog · simonwillison.net&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Deprecation warnings are so easy to miss, ignore, become numb to.  Creating tools and processes to catch and address these issues is important.  I’m surprised such big projects let deprecations just hang around for years.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 A quote from Claude</title>
    <id>https://waylonwalker.com/thought-887/</id>
    <updated>2025-12-09T13:56:30Z</updated>
    <published>2025-12-09T13:56:30Z</published>
    <link href="https://waylonwalker.com/thought-887/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://simonwillison.net/2025/Dec/9/claude/#atom-everything</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://simonwillison.net/2025/Dec/9/claude/#atom-everything&#34; class=&#34;embed-card-link  has-avatar has-avatar-before&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/simonwillison.net.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/simonwillison.net.ico&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;A quote from Claude&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;I found the problem and it&amp;#39;s really bad. Looking at your log, here&amp;#39;s the catastrophic command that was run: rm -rf tests/ patches/ plan/ ~/ See that ~/ at the …&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;Simon Willison’s Weblog · simonwillison.net&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;damn this is a rough one.  A users entire home directory removed by claude code from an rm command.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;rm -rf tests/ patches/ plan/ ~/&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Reading the first half of that command it LGTM.  If you had approved rm, you are hosed.  If  this is inside a larger script its running, you really gotta read close.  This one still feels pretty obvious, but I can imagine some bash doing some nasty things I miss if I read it and understand it let alone glance at it.&lt;/p&gt;&#xA;&lt;p&gt;I’ll take this as a reminder that I really need to be paying full-ass attention to agents, and moving towards a better sandbox for them, something in docker, maybe something like distrobox that is a magic wrapper over podman that just gives you the things you need for what it does.  Something that starts up with access to start web servers, run agentic cli of choice, see project, &lt;a href=&#34;/glossary/git/&#34; class=&#34;glossary-term&#34; title=&#34;Git is a version control system for tracking changes in source code during software development. In the beginning there were many, some were licensed. As...&#34;&gt;git&lt;/a&gt; commit.  It feels like the right thing has a lot of what distrobox does, but distrobox has too much and would be prone to this using it as I’ve used it in the past.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Cogwork Dancers Fight</title>
    <id>https://waylonwalker.com/shots/cogwork-dancers-fight/</id>
    <updated>2025-12-09T13:51:16Z</updated>
    <published>2025-12-09T13:51:16Z</published>
    <link href="https://waylonwalker.com/shots/cogwork-dancers-fight/" rel="alternate" type="text/html"></link>
    <summary type="text">Cogwork Dancers Fight</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/835f8578-52d7-4a6f-ab05-9462658444b7.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Cogwork Dancers Fight&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/file/835f8578-52d7-4a6f-ab05-9462658444b7.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/file/835f8578-52d7-4a6f-ab05-9462658444b7.mp4&#34; type=&#34;video/mp4&#34;&gt;Cogwork Dancers Fight&lt;/video&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;Cogwork Dancers Fight&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>og</title>
    <id>https://waylonwalker.com/og/</id>
    <updated>2025-12-09T12:49:21Z</updated>
    <published>2025-12-09T12:49:21Z</published>
    <link href="https://waylonwalker.com/og/" rel="alternate" type="text/html"></link>
    <summary type="text">OG is short for open graph, a set of standard meta tags that are used for social media sharing. This is what tells other websites how to describe and display...</summary>
    <content type="html">&lt;p&gt;OG is short for open graph, a set of standard meta tags that are used for&#xA;social media sharing.  This is what tells other websites how to describe and&#xA;display your site when shared on social media, text messages, or discord.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>One Year Of Shots</title>
    <id>https://waylonwalker.com/one-year-of-shots/</id>
    <updated>2025-12-09T12:44:39Z</updated>
    <published>2025-12-09T12:44:39Z</published>
    <link href="https://waylonwalker.com/one-year-of-shots/" rel="alternate" type="text/html"></link>
    <summary type="text">I&#39;ve been running my shot scraper api for a year now. It creates og images for my website and thumbnails for my reader using a headless chrome instance.</summary>
    <content type="html">&lt;p&gt;I’ve been running my shot scraper api for a year now.  It creates &lt;a href=&#34;/og/&#34; class=&#34;glossary-term&#34; title=&#34;OG is short for open graph, a set of standard meta tags that are used for social media sharing. This is what tells other websites how to describe and display...&#34;&gt;og&lt;/a&gt; images for&#xA;my website and thumbnails for my [[ reader ]] using a headless chrome instance.&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;25870 shots&lt;/li&gt;&#xA;&lt;li&gt;73 shots per day on average&lt;/li&gt;&#xA;&lt;li&gt;12-09-2025 first shot taken&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;h2 id=&#34;histogram&#34;&gt;Histogram &lt;a href=&#34;#histogram&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/63705078-3342-4807-b5fd-46a0860efc27.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;histogram of shots&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/file/63705078-3342-4807-b5fd-46a0860efc27.webp&#34; alt=&#34;histogram of shots&#34;/ data-glightbox=&#34;description: histogram of shots&#34;&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;a histogram of shot counts by day&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;&lt;p&gt;You can see in the histogram that I’ve had a few big spike days, This has been&#xA;mostly for days that I’ve integrated into a new service or changed the&#xA;endpoint.  On February 13, 2025 I swapped over from using the post to using&#xA;template specific to open graph images.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;gd&#34;&gt;-content = &amp;#34;https://shots.waylonwalker.com/shot/?url={{ config.url }}{{ post.slug }}&amp;amp;height=600&amp;amp;width=1200&amp;amp;scaled_width=1200&amp;amp;scaled_height=600&amp;#34;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;gi&#34;&gt;+content = &amp;#34;https://shots.waylonwalker.com/shot/?url={{ config.url }}{{ post.slug }}/og/&amp;amp;height=600&amp;amp;width=1200&amp;amp;scaled_width=1200&amp;amp;scaled_height=600&amp;#34;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;div class=&#34;admonition vsplit&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Image Comparison&lt;/p&gt;&#xA;&lt;div class=&#34;admonition vsplit&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Original Post Image&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://shots.waylonwalker.com/shot/?url=https://dev.waylonwalker.com/one-year-of-shots/&amp;amp;height=600&amp;amp;width=1200&amp;amp;scaled_width=1200&amp;amp;scaled_height=600&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Open image&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://shots.waylonwalker.com/shot/?url=https://dev.waylonwalker.com/one-year-of-shots/&amp;amp;height=600&amp;amp;width=1200&amp;amp;scaled_width=1200&amp;amp;scaled_height=600&#34; alt=&#34;&#34;/ data-glightbox=&#34;description: &#34;&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;originally I simply used an image of the post itself&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;&lt;/div&gt;&#xA;&lt;div class=&#34;admonition vsplit&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;New OG Image&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://shots.waylonwalker.com/shot/?url=https://dev.waylonwalker.com/one-year-of-shots/og/&amp;amp;height=600&amp;amp;width=1200&amp;amp;scaled_width=1200&amp;amp;scaled_height=600&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Open image&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://shots.waylonwalker.com/shot/?url=https://dev.waylonwalker.com/one-year-of-shots/og/&amp;amp;height=600&amp;amp;width=1200&amp;amp;scaled_width=1200&amp;amp;scaled_height=600&#34; alt=&#34;&#34;/ data-glightbox=&#34;description: &#34;&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;In Feb 2025 I made OG specific templates to use for the OG images.&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;&lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;Swapping to og images&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;h2 id=&#34;collage&#34;&gt;Collage &lt;a href=&#34;#collage&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;For fun I made a collage of all the shots.  It’s cool to see all of these&#xA;together, I remember a lot of the thumbnails and posts.  Many of them from my&#xA;rss reader.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/5d4b46a6-79d6-4320-bf7d-f917c862c57d.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;collage of shots&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/file/5d4b46a6-79d6-4320-bf7d-f917c862c57d.webp&#34; alt=&#34;collage of shots&#34;/ data-glightbox=&#34;description: collage of shots&#34;&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;collage of all shots, click to see full size&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;&lt;p&gt;I tried to make a video collage, but turns out it takes a long time to show all&#xA;25k shots in video form.  It also turned out to be a bit of a strobe as I don’t&#xA;yet have it figured out how to dark mode in headless chrome.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/1c629d32-4284-4c71-a4f7-62d82e445c7d.webm&#34; class=&#34;glightbox-link&#34; aria-label=&#34;video collage of shots&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/file/1c629d32-4284-4c71-a4f7-62d82e445c7d.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/file/1c629d32-4284-4c71-a4f7-62d82e445c7d.webm&#34; type=&#34;video/webm&#34;&gt;video collage of shots&lt;/video&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;video collage of 600 shots, I tried to include all, but even at 20fps its a 20 minute video.&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>web snow fall</title>
    <id>https://waylonwalker.com/web-snow-fall/</id>
    <updated>2025-12-09T10:21:17Z</updated>
    <published>2025-12-09T10:21:17Z</published>
    <link href="https://waylonwalker.com/web-snow-fall/" rel="alternate" type="text/html"></link>
    <summary type="text">I found snow-fall component from zachleat, and its beautiful... to me. I like the way it looks, its simple and whimsical.</summary>
    <content type="html">&lt;p&gt;I found snow-fall component from&#xA;&lt;a href=&#34;https://www.zachleat.com/web/snow-fall/&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/www.zachleat.com.jpg&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/www.zachleat.com.jpg&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;zachleat&lt;/a&gt;, and its beautiful… to&#xA;me.  I like the way it looks, its simple and whimsical.&lt;/p&gt;&#xA;&lt;h2 id=&#34;install&#34;&gt;Install &lt;a href=&#34;#install&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;There is an npm package &lt;code&gt;@zachleat/snow-fall&lt;/code&gt; if that’s your thing.  I like&#xA;vendoring in small things like this.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;curl -o static/snow-fall.js https://raw.githubusercontent.com/zachleat/snow-fall/refs/heads/main/snow-fall.js&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;I generally save it in my justfile so that I remember how I got it and how to&#xA;update…. yaya I could use npm, but I don’t for no build sites.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;get-snowfall:&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    curl -o static/snow-fall.js https://raw.githubusercontent.com/zachleat/snow-fall/refs/heads/main/snow-fall.js&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;h2 id=&#34;usage&#34;&gt;Usage &lt;a href=&#34;#usage&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;Now add the component to your page.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c&#34;&gt;&amp;lt;!-- This belongs somewhere inside &amp;lt;head&amp;gt; --&amp;gt;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;&amp;lt;&lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;script&lt;/span&gt; &lt;span class=&#34;na&#34;&gt;type&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;&amp;#34;module&amp;#34;&lt;/span&gt; &lt;span class=&#34;na&#34;&gt;src&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;&amp;#34;snow-fall.js&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;&amp;gt;&amp;lt;/&lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;script&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;&amp;gt;&lt;/span&gt; &lt;span class=&#34;c&#34;&gt;&amp;lt;!-- Adjust the src to your path --&amp;gt;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c&#34;&gt;&amp;lt;!-- This belongs somewhere inside &amp;lt;body&amp;gt; --&amp;gt;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c&#34;&gt;&amp;lt;!-- Anything before will be below the snow. --&amp;gt;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;&amp;lt;&lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;snow-fall&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;&amp;gt;&amp;lt;/&lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;snow-fall&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;&amp;gt;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c&#34;&gt;&amp;lt;!-- Anything after will show above the snow. --&amp;gt;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>check your kubeconfig expire time</title>
    <id>https://waylonwalker.com/check-your-kubeconfig-expire-time/</id>
    <updated>2025-12-08T20:59:27Z</updated>
    <published>2025-12-08T20:59:27Z</published>
    <link href="https://waylonwalker.com/check-your-kubeconfig-expire-time/" rel="alternate" type="text/html"></link>
    <summary type="text">Today I learned an important lesson that you should periodically check on your kubeconfigs expiration date. It&#39;s easy to do. You can ask for the...</summary>
    <content type="html">&lt;p&gt;Today I learned an important lesson that you should periodically check on your&#xA;kubeconfigs expiration date.  It’s easy to do.  You can ask for the&#xA;client-certificate-data from your kubeconfig, decode it, and use openssl to get&#xA;the expiration date.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;kubectl config view --raw -o &lt;span class=&#34;nv&#34;&gt;jsonpath&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;{.users[0].user.client-certificate-data}&amp;#39;&lt;/span&gt; &lt;span class=&#34;se&#34;&gt;\&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt; base64 -d 2&amp;gt;/dev/null &lt;span class=&#34;se&#34;&gt;\&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt; openssl x509 -noout -dates&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This will only work for the first user, if you have more than one user or&#xA;context defined in your kubeconfig you will need to adjust.&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Not every print needs supports</title>
    <id>https://waylonwalker.com/not-every-print-needs-supports/</id>
    <updated>2025-12-08T14:17:05Z</updated>
    <published>2025-12-08T14:17:05Z</published>
    <link href="https://waylonwalker.com/not-every-print-needs-supports/" rel="alternate" type="text/html"></link>
    <summary type="text">Not every print needs supports. So many models default to having it on, whether needed or not. Well designed parts, designed for 3d printing almost never...</summary>
    <content type="html">&lt;p&gt;Not every print needs supports.  So many models default to having it on,&#xA;whether needed or not.  Well designed parts, designed for 3d printing almost&#xA;never need supports (depending on constraints).&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Slab Fight</title>
    <id>https://waylonwalker.com/shots/slab-fight/</id>
    <updated>2025-12-08T12:17:45Z</updated>
    <published>2025-12-08T12:17:45Z</published>
    <link href="https://waylonwalker.com/shots/slab-fight/" rel="alternate" type="text/html"></link>
    <summary type="text">Slab Fight</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/13ceff65-f819-4204-a254-56df6bdff889.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Slab Fight&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/file/13ceff65-f819-4204-a254-56df6bdff889.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/file/13ceff65-f819-4204-a254-56df6bdff889.mp4&#34; type=&#34;video/mp4&#34;&gt;Slab Fight&lt;/video&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;Slab Fight&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Stolen Dress</title>
    <id>https://waylonwalker.com/shots/stolen-dress/</id>
    <updated>2025-12-08T12:14:16Z</updated>
    <published>2025-12-08T12:14:16Z</published>
    <link href="https://waylonwalker.com/shots/stolen-dress/" rel="alternate" type="text/html"></link>
    <summary type="text">Stolen Dress</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/60a62671-be5e-4b5d-b140-ebf92d771a60.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Stolen Dress&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/file/60a62671-be5e-4b5d-b140-ebf92d771a60.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/file/60a62671-be5e-4b5d-b140-ebf92d771a60.mp4&#34; type=&#34;video/mp4&#34;&gt;Stolen Dress&lt;/video&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;Stolen Dress&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Moss Mother 2 Fight</title>
    <id>https://waylonwalker.com/shots/moss-mother-2-fight/</id>
    <updated>2025-12-08T12:11:58Z</updated>
    <published>2025-12-08T12:11:58Z</published>
    <link href="https://waylonwalker.com/shots/moss-mother-2-fight/" rel="alternate" type="text/html"></link>
    <summary type="text">Moss Mother 2 Fight</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/cb5103d7-f414-4fa0-9cd1-4a8470fa0070.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Moss Mother 2 Fight&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/file/cb5103d7-f414-4fa0-9cd1-4a8470fa0070.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/file/cb5103d7-f414-4fa0-9cd1-4a8470fa0070.mp4&#34; type=&#34;video/mp4&#34;&gt;Moss Mother 2 Fight&lt;/video&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;Moss Mother 2 Fight&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>reminder Include steps to reproduce</title>
    <id>https://waylonwalker.com/reminder-include-steps-to-reproduce/</id>
    <updated>2025-12-08T10:09:23Z</updated>
    <published>2025-12-08T10:09:23Z</published>
    <link href="https://waylonwalker.com/reminder-include-steps-to-reproduce/" rel="alternate" type="text/html"></link>
    <summary type="text">Include steps to reproduce your bug when you file a bug report or issue. You may quickly forget how you got there, and no one can fix a bug that is not...</summary>
    <content type="html">&lt;p&gt;Include steps to reproduce your bug when you file a bug report or issue.  You&#xA;may quickly forget how you got there, and no one can fix a bug that is not&#xA;reproducible.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 3d Printing a Geared Vice - Will It work? - YouTube</title>
    <id>https://waylonwalker.com/thought-886/</id>
    <updated>2025-12-07T21:28:39Z</updated>
    <published>2025-12-07T21:28:39Z</published>
    <link href="https://waylonwalker.com/thought-886/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/watch?v=9z8XdJnQp1A</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;9z8XdJnQp1A&#34; title=&#34;3d Printing a Geared Vice - Will It work?&#34; playlabel=&#34;Play: 3d Printing a Geared Vice - Will It work?&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;This looks like a really good low cost option for some workholding.  There is never a shortage of workholding in the shop and everything has a place.  Having something low cost that you can have a bunch of makes a lot of sense.  Maybe you still need a super scucum unit for really clamping the shit out of something, but this easily covers most use cases in a garage workshop.  I want to build it.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Moorwing</title>
    <id>https://waylonwalker.com/shots/moorwing/</id>
    <updated>2025-12-07T21:18:30Z</updated>
    <published>2025-12-07T21:18:30Z</published>
    <link href="https://waylonwalker.com/shots/moorwing/" rel="alternate" type="text/html"></link>
    <summary type="text">Moorwing</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/8b8230f7-c641-41c9-a772-a597dcd499e1.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Moorwing&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/file/8b8230f7-c641-41c9-a772-a597dcd499e1.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/file/8b8230f7-c641-41c9-a772-a597dcd499e1.mp4&#34; type=&#34;video/mp4&#34;&gt;Moorwing&lt;/video&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;Moorwing&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Steam Machine CAN Start at $399 with THIS SKU! | Cut Down Yiel...</title>
    <id>https://waylonwalker.com/thought-885/</id>
    <updated>2025-12-07T17:24:50Z</updated>
    <published>2025-12-07T17:24:50Z</published>
    <link href="https://waylonwalker.com/thought-885/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/watch?v=v1JN8nCD1JM</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;v1JN8nCD1JM&#34; title=&#34;Steam Machine Barebones Edition: Choice Born From Desperation! | Cut Down Yields&#34; playlabel=&#34;Play: Steam Machine Barebones Edition: Choice Born From Desperation! | Cut Down Yields&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Moore’s Law is Dead pitches a pretty ingenious sku for the new gabecube aka steam machine.  I fully support repairability and ewaste reduction. most of these components have not had &lt;strong&gt;MAJOR&lt;/strong&gt; improvements in years, hence his channel name.  There is a possibility here that Valve could ship with their unique hardware, (apu, psu, case, ports, networking) and let you bring your own ssd and ram from an old device that you might not use anymore.  I love this idea.  At the same time it feels like entering the star wars universe where there are no more new manufacturing and everything is cobbled together from old hardware made long ago.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>All I want for Christmas is, filliment</title>
    <id>https://waylonwalker.com/all-i-want-for-christmas-is-filliment/</id>
    <updated>2025-12-07T16:38:30Z</updated>
    <published>2025-12-07T16:38:30Z</published>
    <link href="https://waylonwalker.com/all-i-want-for-christmas-is-filliment/" rel="alternate" type="text/html"></link>
    <summary type="text">All I want for Christmas is filament</summary>
    <content type="html">&lt;p&gt;All I want for Christmas is filament&lt;/p&gt;&#xA;&lt;p&gt;I don’t need gifts or fancy things&lt;/p&gt;&#xA;&lt;p&gt;I just wanna model, tinker, and print,&lt;/p&gt;&#xA;&lt;p&gt;watch layers stack just right.&lt;/p&gt;&#xA;&lt;p&gt;Santa, if you’re listening… PLA, PETG, ABS will do.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Needle Strike</title>
    <id>https://waylonwalker.com/shots/needle-strike/</id>
    <updated>2025-12-07T15:53:09Z</updated>
    <published>2025-12-07T15:53:09Z</published>
    <link href="https://waylonwalker.com/shots/needle-strike/" rel="alternate" type="text/html"></link>
    <summary type="text">Needle Strike</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/4022942b-b96e-4575-9fd4-ccece18bda0c.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Needle Strike&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/file/4022942b-b96e-4575-9fd4-ccece18bda0c.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/file/4022942b-b96e-4575-9fd4-ccece18bda0c.mp4&#34; type=&#34;video/mp4&#34;&gt;Needle Strike&lt;/video&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;Needle Strike&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Conchflies Fight</title>
    <id>https://waylonwalker.com/shots/conchflies-fight/</id>
    <updated>2025-12-07T15:52:02Z</updated>
    <published>2025-12-07T15:52:02Z</published>
    <link href="https://waylonwalker.com/shots/conchflies-fight/" rel="alternate" type="text/html"></link>
    <summary type="text">Conchflies Fight</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/0ba195cf-dd6c-48e2-853b-3199e8d37262.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Conchflies Fight&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/file/0ba195cf-dd6c-48e2-853b-3199e8d37262.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/file/0ba195cf-dd6c-48e2-853b-3199e8d37262.mp4&#34; type=&#34;video/mp4&#34;&gt;Conchflies Fight&lt;/video&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;Conchflies Fight&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>gh auth switch</title>
    <id>https://waylonwalker.com/gh-auth-switch/</id>
    <updated>2025-12-07T10:55:55Z</updated>
    <published>2025-12-07T10:55:55Z</published>
    <link href="https://waylonwalker.com/gh-auth-switch/" rel="alternate" type="text/html"></link>
    <summary type="text">When using two GitHub accounts the gh cli gives very easy workflow from the cli.</summary>
    <content type="html">&lt;p&gt;When using two GitHub accounts the gh cli gives very easy &lt;code&gt;gh auth switch&lt;/code&gt; workflow from the cli.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition hint&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;from the docs&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;gh auth switch –help&#xA;Switch the active account for a GitHub host.&lt;/p&gt;&#xA;&lt;p&gt;This command changes the authentication configuration that will&#xA;be used when running commands targeting the specified GitHub host.&lt;/p&gt;&#xA;&lt;p&gt;If the specified host has two accounts, the active account will be switched&#xA;automatically. If there are more than two accounts, disambiguation will be&#xA;required either through the &lt;code&gt;--user&lt;/code&gt; flag or an interactive prompt.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# list accounts&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;gh auth status&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# switch accounds (interactive if more than 2, i&amp;#39;ve never seen this personally)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;gh auth switch&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ basecamp fizzy</title>
    <id>https://waylonwalker.com/basecamp-fizzy/</id>
    <updated>2025-12-07T05:04:49Z</updated>
    <published>2025-12-07T05:04:49Z</published>
    <link href="https://waylonwalker.com/basecamp-fizzy/" rel="alternate" type="text/html"></link>
    <summary type="text">Check out basecamp and their project fizzy.</summary>
    <content type="html">&lt;p&gt;Check out &lt;a href=&#34;https://github.com/basecamp&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;basecamp&lt;/a&gt; and their project &lt;a href=&#34;https://github.com/basecamp/fizzy&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;fizzy&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Kanban as it should be. Not as it has been.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 You’ll own NOTHING and be happy? - YouTube</title>
    <id>https://waylonwalker.com/thought-884/</id>
    <updated>2025-12-06T21:33:15Z</updated>
    <published>2025-12-06T21:33:15Z</published>
    <link href="https://waylonwalker.com/thought-884/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/watch?v=S45rLuY48w4</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;S45rLuY48w4&#34; title=&#34;You’ll own NOTHING and be happy?&#34; playlabel=&#34;Play: You’ll own NOTHING and be happy?&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;What a heart breaking video to listen to.  I’m trying to do a better job of being positive right now.  I’m trying to look at the world in what I have control over (not much more than my attitude about it).  AI is killing so much right now I’m trying to look at it as the good tools the engineers made it to be.  Ownership is dying around every goddamn corner.  Hats off to Edison, this guy gets it.  We need more companies like this taking a stand for the average person who wants to make it out there.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 The Secret of the AWS Outage | The Standup - YouTube</title>
    <id>https://waylonwalker.com/thought-883/</id>
    <updated>2025-12-06T21:29:48Z</updated>
    <published>2025-12-06T21:29:48Z</published>
    <link href="https://waylonwalker.com/thought-883/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/watch?v=r3bPmtEP9SQ</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;r3bPmtEP9SQ&#34; title=&#34;The Secret of the AWS Outage | The Standup&#34; playlabel=&#34;Play: The Secret of the AWS Outage | The Standup&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;What a great campfire story Casey stumbled into.  Whether any of this is true few will ever know, but its very reasonable that a race condition and a stalled job to apply configuration caused by someone who left the company 10 years ago caused an outage.  I find it hilarious that they call this guy he answers, yup I still know the password, but how do I know you’re legit, I’m not just handing out the password.  Casey did a stand up job telling this story.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Building the PERFECT Linux PC with Linus Torvalds - YouTube</title>
    <id>https://waylonwalker.com/thought-882/</id>
    <updated>2025-12-06T21:23:37Z</updated>
    <published>2025-12-06T21:23:37Z</published>
    <link href="https://waylonwalker.com/thought-882/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/watch?v=mfv0V1SxbNA</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;mfv0V1SxbNA&#34; title=&#34;Building the PERFECT Linux PC with Linus Torvalds&#34; playlabel=&#34;Play: Building the PERFECT Linux PC with Linus Torvalds&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Linus is &lt;a href=&#34;/techbrophobic/&#34; class=&#34;wikilink&#34; data-title=&#34;Techbrophobic&#34; data-description=&#34;I just heard someone drop the this term and it kinda fits a lot of shit on the internet right now. Arguing that its OK to question AI, its OK to like it, its...&#34; data-date=&#34;2025-11-09&#34; data-preview=&#34;I just heard someone drop the this term and it kinda fits a lot of shit on the internet right now. Arguing that its OK to question AI, its OK to like it, its...&#34;&gt;Techbrophobic&lt;/a&gt; like the rest of us.  This is such an unexpectedly mild take from him.  I expected some threat to the mother of the vibe coder, but he gave a pretty great middle of the road take.  The industry sucks, it smells off, we know a lot wrong with it, it feels like theres a lot more wrong than we know.  But the tools that its making are really good when used in the right ways.  They are not a replacement for anything, they are assistive.  They can lift someone from not knowing how to code to making a small webapp for their use.  Someone who wants to write backend and give them a decent front end, someone who whats to write front end and give them a decent backend.&lt;/p&gt;&#xA;&lt;p&gt;Great take from someone with more experience than most can ever dream of having, worth a listen.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>setup bambu-studio in distrobox</title>
    <id>https://waylonwalker.com/setup-bambu-studio-in-distrobox/</id>
    <updated>2025-12-06T21:17:39Z</updated>
    <published>2025-12-06T21:17:39Z</published>
    <link href="https://waylonwalker.com/setup-bambu-studio-in-distrobox/" rel="alternate" type="text/html"></link>
    <summary type="text">gpus-are-awesome and I need one for Bambu Studio to be usable in a distrobox. Adding the flag to bind mounts the nvidia devices and sets up the necessary...</summary>
    <content type="html">&lt;p&gt;&lt;a href=&#34;/gpus-are-awesome/&#34; class=&#34;wikilink&#34; data-title=&#34;gpus are awesome&#34; data-description=&#34;GPU&amp;#39;s are awesome. I just added gpu support to my bambu-studio distrobox and its flying! On my wayland based system the native package has never worked,...&#34; data-date=&#34;2025-12-03&#34; data-preview=&#34;GPU&amp;#39;s are awesome. I just added gpu support to my bambu-studio distrobox and its flying! On my wayland based system the native package has never worked,...&#34;&gt;gpus are awesome&lt;/a&gt; and I need one for Bambu Studio to be usable in a&#xA;distrobox.  Adding the &lt;code&gt;--nvidia&lt;/code&gt; flag to &lt;code&gt;distrobox create&lt;/code&gt; bind mounts the&#xA;nvidia &lt;code&gt;/dev/&lt;/code&gt; devices and sets up the necessary environment variables.  Once&#xA;we are in there are a couple of packages to install to make it work.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;distrobox create --name bambu-studio --image archlinux:latest --nvidia&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;distrobox enter bambu-studio&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo pacman -S nvidia-utils lib32-nvidia-utils vulkan-icd-loader&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;nvidia-smi&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;glxinfo &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt; gprep OpenGL&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo pacman -Syu --needed base-devel git&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;git clone https://aur.archlinux.org/paru-bin.git&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;cd&lt;/span&gt; paru-bin&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;makepkg -si&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;paru -S bambustudio-bin&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;bambu-studio&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;distrobox-export --app bambu-studio&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ Zeioth garbage-day.nvim</title>
    <id>https://waylonwalker.com/zeioth-garbage-day-nvim/</id>
    <updated>2025-12-06T17:04:13Z</updated>
    <published>2025-12-06T17:04:13Z</published>
    <link href="https://waylonwalker.com/zeioth-garbage-day-nvim/" rel="alternate" type="text/html"></link>
    <summary type="text">Check out garbage-day.nvim by Zeioth. It&#39;s a well-crafted project with great potential.</summary>
    <content type="html">&lt;p&gt;Check out &lt;a href=&#34;https://github.com/Zeioth/garbage-day.nvim&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;garbage-day.nvim&lt;/a&gt; by &lt;a href=&#34;https://github.com/Zeioth&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;Zeioth&lt;/a&gt;. It’s a well-crafted project with great potential.&lt;/p&gt;&#xA;&lt;p&gt;Garbage collector that stops inactive LSP clients to free RAM&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 snow-fall Web Component—zachleat.com</title>
    <id>https://waylonwalker.com/thought-881/</id>
    <updated>2025-12-06T15:25:11Z</updated>
    <published>2025-12-06T15:25:11Z</published>
    <link href="https://waylonwalker.com/thought-881/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.zachleat.com/web/snow-fall/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://www.zachleat.com/web/snow-fall/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://screenshot.11ty.app/https%3A%2F%2Fwww.zachleat.com%2Fopengraph%2Fweb%2Fsnow-fall%2F%3Fcache%3D_20251031/opengraph/&#34; alt=&#34;snow-fall Web Component—zachleat.com — A post by Zach Leatherman (zachleat)&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: snow-fall Web Component—zachleat.com — A post by Zach Leatherman (zachleat)&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;snow-fall Web Component—zachleat.com&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;A post by Zach Leatherman (zachleat)&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;Zach Leatherman · zachleat.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;This is a very fun way to add some whimsy to your site, added it to mine immediately when I saw it.  This is what digital gardens are for, Fun, entertainment, and self-exxpression.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 The 3D Printed Ball Vise Every Creative Should Own - YouTube</title>
    <id>https://waylonwalker.com/thought-880/</id>
    <updated>2025-12-06T15:22:45Z</updated>
    <published>2025-12-06T15:22:45Z</published>
    <link href="https://waylonwalker.com/thought-880/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/watch?v=bQhVKB64r4U</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;bQhVKB64r4U&#34; title=&#34;The 3D Printed Ball Vise Every Creative Should Own&#34; playlabel=&#34;Play: The 3D Printed Ball Vise Every Creative Should Own&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;This ball vise Idea is incredible and I want one.  Its a heavy workholding unit that can accept a variety of tools and manipulate things to a lot of angles while working on them.  This looks really good for painting miniatures soldering or generally working on small 3d printed parts that I do.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Forebrothers Fight</title>
    <id>https://waylonwalker.com/shots/forebrothers-fight/</id>
    <updated>2025-12-06T14:55:15Z</updated>
    <published>2025-12-06T14:55:15Z</published>
    <link href="https://waylonwalker.com/shots/forebrothers-fight/" rel="alternate" type="text/html"></link>
    <summary type="text">Forebrothers Fight</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/f9d90fd7-c50b-4276-83ad-70b4318d281b.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Forebrothers Fight&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/file/f9d90fd7-c50b-4276-83ad-70b4318d281b.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/file/f9d90fd7-c50b-4276-83ad-70b4318d281b.mp4&#34; type=&#34;video/mp4&#34;&gt;Forebrothers Fight&lt;/video&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;Forebrothers Fight&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Forebrothers Full</title>
    <id>https://waylonwalker.com/shots/forebrothers-full/</id>
    <updated>2025-12-06T14:53:00Z</updated>
    <published>2025-12-06T14:53:00Z</published>
    <link href="https://waylonwalker.com/shots/forebrothers-full/" rel="alternate" type="text/html"></link>
    <summary type="text">Forebrothers Full</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/40caadf6-fae1-4cfd-be73-c515127ed0c4.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Forebrothers Full&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/file/40caadf6-fae1-4cfd-be73-c515127ed0c4.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/file/40caadf6-fae1-4cfd-be73-c515127ed0c4.mp4&#34; type=&#34;video/mp4&#34;&gt;Forebrothers Full&lt;/video&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;Forebrothers Full&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Forebrothers</title>
    <id>https://waylonwalker.com/shots/forebrothers/</id>
    <updated>2025-12-06T14:46:02Z</updated>
    <published>2025-12-06T14:46:02Z</published>
    <link href="https://waylonwalker.com/shots/forebrothers/" rel="alternate" type="text/html"></link>
    <summary type="text">Forebrothers</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/07408375-3c1b-4bc8-8e10-76006a898839.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Forebrothers&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/file/07408375-3c1b-4bc8-8e10-76006a898839.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/file/07408375-3c1b-4bc8-8e10-76006a898839.mp4&#34; type=&#34;video/mp4&#34;&gt;Forebrothers&lt;/video&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;Forebrothers&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Bambu Poop Flinger Unjammed</title>
    <id>https://waylonwalker.com/shots/bambu-poop-flinger-unjammed/</id>
    <updated>2025-12-06T11:13:07Z</updated>
    <published>2025-12-06T11:13:07Z</published>
    <link href="https://waylonwalker.com/shots/bambu-poop-flinger-unjammed/" rel="alternate" type="text/html"></link>
    <summary type="text">Here is a video clip of my Bambu A1 poop flinger fixed and not jamming during operation after my fix.</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/5fdd4b5b-8651-4f37-9e56-1b10c3b276eb.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Bambu Poop Flinger Unjammed&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/file/5fdd4b5b-8651-4f37-9e56-1b10c3b276eb.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/file/5fdd4b5b-8651-4f37-9e56-1b10c3b276eb.mp4&#34; type=&#34;video/mp4&#34;&gt;Bambu Poop Flinger Unjammed&lt;/video&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;Here is a video clip of my Bambu A1 poop flinger fixed and not jamming during operation after my fix.&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Bambu Poop Flinger Jammed</title>
    <id>https://waylonwalker.com/shots/bambu-poop-flinger-jammed/</id>
    <updated>2025-12-06T11:11:53Z</updated>
    <published>2025-12-06T11:11:53Z</published>
    <link href="https://waylonwalker.com/shots/bambu-poop-flinger-jammed/" rel="alternate" type="text/html"></link>
    <summary type="text">My bambu A1 poop flinger has been getting jammed up for awhile now, here is an image of it in the jammed position.</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/4225fa8a-65cd-48fe-81aa-31ad3ac86dc4.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;bambu poop flinger jammed&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/file/4225fa8a-65cd-48fe-81aa-31ad3ac86dc4.webp&#34; alt=&#34;bambu poop flinger jammed&#34;/ data-glightbox=&#34;description: bambu poop flinger jammed&#34;&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;My bambu A1 poop flinger has been getting jammed up for awhile now, here is an image of it in the jammed position.&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>git worktrees are needed</title>
    <id>https://waylonwalker.com/git-worktrees-are-needed/</id>
    <updated>2025-12-06T09:58:06Z</updated>
    <published>2025-12-06T09:58:06Z</published>
    <link href="https://waylonwalker.com/git-worktrees-are-needed/" rel="alternate" type="text/html"></link>
    <summary type="text">git worktrees are goated, and must be leaned on moving forward.</summary>
    <content type="html">&lt;p&gt;&lt;a href=&#34;/glossary/git/&#34; class=&#34;glossary-term&#34; title=&#34;Git is a version control system for tracking changes in source code during software development. In the beginning there were many, some were licensed. As...&#34;&gt;git&lt;/a&gt; worktrees are goated, and must be leaned on moving forward.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>The Wrong Reasons To Run Kubernetes In Your Homelab</title>
    <id>https://waylonwalker.com/the-wrong-reasons-to-run-kubernetes-in-your-homelab/</id>
    <updated>2025-12-06T09:46:47Z</updated>
    <published>2025-12-06T09:46:47Z</published>
    <link href="https://waylonwalker.com/the-wrong-reasons-to-run-kubernetes-in-your-homelab/" rel="alternate" type="text/html"></link>
    <summary type="text">Running kubernetes in your homelab is complex, time consuming, there are almost no docs to help you (homelab focused docs for things you want to install),...</summary>
    <content type="html">&lt;p&gt;Running kubernetes in your &lt;a href=&#34;/homelab/&#34; class=&#34;glossary-term&#34; title=&#34;A place to self host applications. For me this is primarily self built web applications, and applications for sharing files with my family. Techno Tim has a...&#34;&gt;homelab&lt;/a&gt; is complex, time consuming, there are almost&#xA;no docs to help you (homelab focused docs for things you want to install), and&#xA;nothing is copy paste.  You have to make everything happen yourself.&lt;/p&gt;&#xA;&lt;h2 id=&#34;the-wrong-reasons-to-run-kubernetes-in-your-homelab&#34;&gt;The Wrong Reasons To Run Kubernetes In Your Homelab &lt;a href=&#34;#the-wrong-reasons-to-run-kubernetes-in-your-homelab&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;I run compose and think kubernetes is the next logical step&lt;/li&gt;&#xA;&lt;li&gt;Techno Tim runs it&lt;/li&gt;&#xA;&lt;li&gt;I heard it’s what cool kids do&lt;/li&gt;&#xA;&lt;li&gt;Kubernetes BTW&lt;/li&gt;&#xA;&lt;li&gt;Talos Linux looks cool&lt;/li&gt;&#xA;&lt;li&gt;I found a cool helm chart on GitHub&lt;/li&gt;&#xA;&lt;li&gt;I need scale&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;There are also &lt;a href=&#34;/the-right-reasons-to-run-kubernetes-in-your-homelab/&#34; class=&#34;wikilink&#34; data-title=&#34;The Right Reasons To Run Kubernetes In Your Homelab&#34; data-description=&#34;Running kubernetes in your homelab is a fantastic way to learn, explore, express yourself, and run services that you use.&#34; data-date=&#34;2025-12-10&#34; data-preview=&#34;Running kubernetes in your homelab is a fantastic way to learn, explore, express yourself, and run services that you use.&#34;&gt;The Right Reasons To Run Kubernetes In Your Homelab&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;h2 id=&#34;i-run-compose-and-think-kubernetes-is-the-next-logical-step&#34;&gt;I run compose and think kubernetes is the next logical step &lt;a href=&#34;#i-run-compose-and-think-kubernetes-is-the-next-logical-step&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;No it’s not.  It’s much different than running docker, compose, swarm.  It’s&#xA;meant for scale, it’s complex, it’s made for enterprise, not your local&#xA;development or your homelab.  It can do these things, it can do them quite&#xA;well, but it’s not the target audience.&lt;/p&gt;&#xA;&lt;h2 id=&#34;techno-tim-runs-it&#34;&gt;Techno Tim runs it &lt;a href=&#34;#techno-tim-runs-it&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;&lt;em&gt;I heard it’s what cool kids do&lt;/em&gt;&lt;/p&gt;&#xA;&lt;p&gt;You need to rethink who the cool kids are, touch some grass.  Tim also does it&#xA;for his job, he likes it, he knows it, he wants to lean on it and learn more.&lt;/p&gt;&#xA;&lt;h2 id=&#34;kubernetes-btw&#34;&gt;Kubernetes BTW &lt;a href=&#34;#kubernetes-btw&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;Kubernetes does not make you look cool, it makes you look like you are trying&#xA;to over optimize and over engineer your life.  It’s not worth it, in fact&#xA;nothing in life is worth worrying about what everyone else thinks of you.&lt;/p&gt;&#xA;&lt;h2 id=&#34;talos-linux-looks-cool&#34;&gt;Talos Linux looks cool &lt;a href=&#34;#talos-linux-looks-cool&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;Talos is an S tier OS wherever you deploy it.  It is a secure, minimal,&#xA;kubernetes first OS.  They also have some really great people working there&#xA;putting Talos in some really cool places like&#xA;&lt;a href=&#34;https://justingarrison.com/blog/petaflop-cluster/&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/justingarrison.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/justingarrison.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;backpack&lt;/a&gt; or &lt;a href=&#34;https://justingarrison.com/cubernetes/&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/justingarrison.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/justingarrison.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;Apple Power&#xA;Mac&lt;/a&gt;&lt;/p&gt;&#xA;&lt;h2 id=&#34;i-found-a-cool-helm-chart-on-github&#34;&gt;I found a cool helm chart on GitHub &lt;a href=&#34;#i-found-a-cool-helm-chart-on-github&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;No you didn’t.  Everything in homelab is compose first.  A few things have a&#xA;k8s option, but almost nothing is k8s first.&lt;/p&gt;&#xA;&lt;h2 id=&#34;i-need-scale&#34;&gt;I need scale &lt;a href=&#34;#i-need-scale&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;No.  You’re homelab does not need scale.  If you think it does, you have some&#xA;real shit hardware, some bad optimizations, or somehow you have a startup you&#xA;need to launch cause you got more users than most.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>my home row</title>
    <id>https://waylonwalker.com/my-home-row/</id>
    <updated>2025-12-05T21:27:55Z</updated>
    <published>2025-12-05T21:27:55Z</published>
    <link href="https://waylonwalker.com/my-home-row/" rel="alternate" type="text/html"></link>
    <summary type="text">My home row layout. It&#39;s not quite home row mods.</summary>
    <content type="html">&lt;p&gt;My home row layout. It’s not quite home row mods.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/4a7971fc-8d22-49b9-ae77-5551f5c8d914.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Open image&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/file/4a7971fc-8d22-49b9-ae77-5551f5c8d914.webp&#34; alt=&#34;&#34;/ data-glightbox=&#34;description: &#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://dropper.waylonwalker.com/file/fd74f80e-ff5e-4548-8419-bd407144bb6c.excalidraw&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/dropper.waylonwalker.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/dropper.waylonwalker.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;https://dropper.waylonwalker.com/file/fd74f80e-ff5e-4548-8419-bd407144bb6c.excalidraw&lt;/a&gt;&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>I got the kubernetes in my basement autism</title>
    <id>https://waylonwalker.com/i-got-the-kubernetes-in-my-basement-autism/</id>
    <updated>2025-12-05T21:13:03Z</updated>
    <published>2025-12-05T21:13:03Z</published>
    <link href="https://waylonwalker.com/i-got-the-kubernetes-in-my-basement-autism/" rel="alternate" type="text/html"></link>
    <summary type="text">What flavor of autism did you guys get, I got the kind where I run kubernetes in my basement.</summary>
    <content type="html">&lt;p&gt;What flavor of autism did you guys get, I got the kind where I run kubernetes in my basement.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/49b356bc-f32c-4332-85ea-0eb2b7860091.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;My homelab as June 2025&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/file/49b356bc-f32c-4332-85ea-0eb2b7860091.webp&#34; alt=&#34;My homelab as June 2025&#34;/ data-glightbox=&#34;description: My homelab as June 2025&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://www.youtube.com/shorts/5Cac-cf5MOE&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/www.youtube.com.png&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/www.youtube.com.png&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;https://www.youtube.com/shorts/5Cac-cf5MOE&lt;/a&gt;&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>k3s system-upgrade minor by minor</title>
    <id>https://waylonwalker.com/k3s-system-upgrade-minor-by-minor/</id>
    <updated>2025-12-05T09:25:39Z</updated>
    <published>2025-12-05T09:25:39Z</published>
    <link href="https://waylonwalker.com/k3s-system-upgrade-minor-by-minor/" rel="alternate" type="text/html"></link>
    <summary type="text">The k3s system-upgrade controller is a fantastic tool for upgrading k3s automatically. It has done a fantastic job for me every time I&#39;ve used it. Today I...</summary>
    <content type="html">&lt;p&gt;The k3s system-upgrade controller is a fantastic tool for upgrading k3s&#xA;automatically.  It has done a fantastic job for me every time I’ve used it.&#xA;Today I ran it on a cluster that needed to upgrade several minors and I&#xA;learned that the controller does not pick up on changes to the channel url if&#xA;you change from minor to minor.&lt;/p&gt;&#xA;&lt;p&gt;The solution I came up with was to name the plan with the version it supports.&#xA;Then on each patch upgrade, change both the plan name and the channel.  I use&#xA;gitops with argocd, it automcatically cleaned up old plans, created new plans,&#xA;and the system-upgrade-controller picked up the plan and started applying&#xA;immediately.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c&#34;&gt;# Server plan&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nt&#34;&gt;apiVersion&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;l&#34;&gt;upgrade.cattle.io/v1&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nt&#34;&gt;kind&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;l&#34;&gt;Plan&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nt&#34;&gt;metadata&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;name&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;l&#34;&gt;server-plan-v1.33&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;c&#34;&gt;# &amp;lt;- This is important if you want to change the channel name&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;namespace&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;l&#34;&gt;system-upgrade&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nt&#34;&gt;spec&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;concurrency&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;m&#34;&gt;1&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;cordon&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;kc&#34;&gt;true&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;nodeSelector&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;    &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;matchExpressions&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;    &lt;/span&gt;- &lt;span class=&#34;nt&#34;&gt;key&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;l&#34;&gt;node-role.kubernetes.io/control-plane&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;      &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;operator&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;l&#34;&gt;In&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;      &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;values&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;      &lt;/span&gt;- &lt;span class=&#34;s2&#34;&gt;&amp;#34;true&amp;#34;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;serviceAccountName&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;l&#34;&gt;system-upgrade&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;upgrade&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;    &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;image&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;l&#34;&gt;rancher/k3s-upgrade&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;channel&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;l&#34;&gt;https://update.k3s.io/v1-release/channels/v1.33&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nn&#34;&gt;---&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c&#34;&gt;# Agent plan&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nt&#34;&gt;apiVersion&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;l&#34;&gt;upgrade.cattle.io/v1&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nt&#34;&gt;kind&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;l&#34;&gt;Plan&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nt&#34;&gt;metadata&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;name&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;l&#34;&gt;agent-plan-v1.33&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;c&#34;&gt;# &amp;lt;- This is important if you want to change the channel name&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;namespace&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;l&#34;&gt;system-upgrade&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nt&#34;&gt;spec&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;concurrency&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;m&#34;&gt;1&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;cordon&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;kc&#34;&gt;true&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;nodeSelector&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;    &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;matchExpressions&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;    &lt;/span&gt;- &lt;span class=&#34;nt&#34;&gt;key&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;l&#34;&gt;node-role.kubernetes.io/control-plane&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;      &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;operator&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;l&#34;&gt;DoesNotExist&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;prepare&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;    &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;args&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;    &lt;/span&gt;- &lt;span class=&#34;l&#34;&gt;prepare&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;    &lt;/span&gt;- &lt;span class=&#34;l&#34;&gt;server-plan&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;    &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;image&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;l&#34;&gt;rancher/k3s-upgrade&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;serviceAccountName&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;l&#34;&gt;system-upgrade&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;upgrade&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;    &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;image&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;l&#34;&gt;rancher/k3s-upgrade&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;channel&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;l&#34;&gt;https://update.k3s.io/v1-release/channels/v1.33&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;I’d love to see a better way if you have a way to upgrade through minors, or&#xA;manually control the minor of your cluster let me know.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Deleting Code for Performance – David Bushell – Web Dev (UK)</title>
    <id>https://waylonwalker.com/thought-879/</id>
    <updated>2025-12-04T16:12:19Z</updated>
    <published>2025-12-04T16:12:19Z</published>
    <link href="https://waylonwalker.com/thought-879/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://dbushell.com/2025/12/04/deleting-code-for-performance/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://dbushell.com/2025/12/04/deleting-code-for-performance/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://dbushell.com/images/articles/2025-12-04-deleting-code-for-performance.png&#34; alt=&#34;Deleting Code for Performance — The one where I clean up an asynchronous mess&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: Deleting Code for Performance — The one where I clean up an asynchronous mess&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Deleting Code for Performance&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;The one where I clean up an asynchronous mess&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;dbushell.com · dbushell.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;I did not realize that David’s site was built on a homegrown Static Site Generator.  As someone who also does this myself I appreciate the effort.  I build my site on &lt;a href=&#34;/markata/&#34; class=&#34;wikilink&#34; data-title=&#34;markata&#34; data-description=&#34;This post is a work in progress.&#34; data-date=&#34;2024-05-30&#34; data-preview=&#34;This post is a work in progress.&#34;&gt;markata&lt;/a&gt;.  It started as a project to learn a set of tools and has become a project that I depend on everywhere and cant put down.  It’s a great tool, but you probably shouldn’t use it.  Anyways, I feel this &lt;strong&gt;really&lt;/strong&gt; shows on David’s site. His site is filled with custom features that make it very unique, one off, and always a pleasure to read.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>gpus are awesome</title>
    <id>https://waylonwalker.com/gpus-are-awesome/</id>
    <updated>2025-12-03T20:21:14Z</updated>
    <published>2025-12-03T20:21:14Z</published>
    <link href="https://waylonwalker.com/gpus-are-awesome/" rel="alternate" type="text/html"></link>
    <summary type="text">GPU&#39;s are awesome. I just added gpu support to my bambu-studio distrobox and its flying! On my wayland based system the native package has never worked,...</summary>
    <content type="html">&lt;p&gt;GPU’s are awesome.  I just added gpu support to my bambu-studio distrobox and&#xA;its flying!  On my wayland based system the native package has never worked,&#xA;(arch or bazzite), but running in a distrobox does. Outside of distrobox the 3d&#xA;rendering canvas is black, no output.  It used to work fine without gpu&#xA;support, was snappy enough, complex models were a bit sluggish, but fine.&#xA;Lately something happened and simple models bring it to its knees.  It got&#xA;unusable!&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/a06bbf8b-abea-472e-8d96-4255d522444d.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Open image&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/file/a06bbf8b-abea-472e-8d96-4255d522444d.webp&#34; alt=&#34;&#34;/ data-glightbox=&#34;description: &#34;&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;The print I happen to be working on is some custom designed gumdrops for a&#xA;theater set.  The ui is working and not lagging 30s between clicks causing&#xA;clicks to happen on the wrong ui element.&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ searlsco posse_party</title>
    <id>https://waylonwalker.com/searlsco-posse_party/</id>
    <updated>2025-12-03T03:22:49Z</updated>
    <published>2025-12-03T03:22:49Z</published>
    <link href="https://waylonwalker.com/searlsco-posse_party/" rel="alternate" type="text/html"></link>
    <summary type="text">I recently discovered posse_party by searlsco, and it&#39;s truly impressive.</summary>
    <content type="html">&lt;p&gt;I recently discovered &lt;a href=&#34;https://github.com/searlsco/posse_party&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;posse_party&lt;/a&gt; by &lt;a href=&#34;https://github.com/searlsco&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;searlsco&lt;/a&gt;, and it’s truly impressive.&lt;/p&gt;&#xA;&lt;p&gt;Quit social media by posting more&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Self-hosting Github</title>
    <id>https://waylonwalker.com/thought-877/</id>
    <updated>2025-12-02T03:45:10Z</updated>
    <published>2025-12-02T03:45:10Z</published>
    <link href="https://waylonwalker.com/thought-877/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/shorts/MhZQTnfo8Ok</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;MhZQTnfo8Ok&#34; title=&#34;Self-hosting Github&#34; playlabel=&#34;Play: Self-hosting Github&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Niche companies will rise from the ashes.  Companies that want to build good products for customers.  Companies that will get hundreds of users.  They will treat them right and make enough money to support themselves, maybe.&lt;/p&gt;&#xA;&lt;p&gt;Alongside them we will &lt;a href=&#34;/self-host/&#34; class=&#34;glossary-term&#34; title=&#34;Self hosting is the act of hosting your own applications and services without using a SAS provider. This is typically done with your own hardware, but there...&#34;&gt;self host&lt;/a&gt;.  We will run our own services out of our basement.  There will be downtime, but its ok.  We will enjoy ourselves. We will tell everyone how much better it is BTW&lt;/p&gt;&#xA;&lt;p&gt;Next to that is a firehose of shit piling back into the circular snakes mouth as all of your data flows freely between any company that can get their hands on it.  These companies will spend and make money hand over fist. Most people will continue to use these services until enough is enough and unplug from everything.&lt;/p&gt;&#xA;&lt;p&gt;In this world I don’t see how we sustain the amount of engineers we have created.  Small companies run lean, small, and allow slow organic growth happen.&lt;/p&gt;&#xA;&lt;p&gt;It will be interesting to see play out.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/95ae2a95-308b-4d1d-bff8-8ce6194db132.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Open image&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/file/95ae2a95-308b-4d1d-bff8-8ce6194db132.webp&#34; alt=&#34;&#34;/ data-glightbox=&#34;description: &#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ ZeroLu awesome-nanobanana-pro</title>
    <id>https://waylonwalker.com/zerolu-awesome-nanobanana-pro/</id>
    <updated>2025-12-02T02:38:25Z</updated>
    <published>2025-12-02T02:38:25Z</published>
    <link href="https://waylonwalker.com/zerolu-awesome-nanobanana-pro/" rel="alternate" type="text/html"></link>
    <summary type="text">I&#39;m impressed by awesome-nanobanana-pro from ZeroLu.</summary>
    <content type="html">&lt;p&gt;I’m impressed by &lt;a href=&#34;https://github.com/ZeroLu/awesome-nanobanana-pro&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;awesome-nanobanana-pro&lt;/a&gt; from &lt;a href=&#34;https://github.com/ZeroLu&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;ZeroLu&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;🚀 An awesome list of curated Nano Banana pro prompts and examples. Your go-to resource for mastering prompt engineering and exploring the creative potential of the Nano banana pro(Nano banana 2) AI image model.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Malicious Traffic and Static Sites - Jim Nielsen’s Blog</title>
    <id>https://waylonwalker.com/thought-876/</id>
    <updated>2025-12-01T21:41:03Z</updated>
    <published>2025-12-01T21:41:03Z</published>
    <link href="https://waylonwalker.com/thought-876/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://blog.jim-nielsen.com/2025/malicious-traffic-on-static-sites/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://blog.jim-nielsen.com/2025/malicious-traffic-on-static-sites/&#34; class=&#34;embed-card-link  has-avatar has-avatar-before&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/blog.jim-nielsen.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/blog.jim-nielsen.com.ico&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Malicious Traffic and Static Sites&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Writing about the big beautiful mess that is making things for the world wide web.&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;blog.jim-nielsen.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;These look like fun endpoints to add anti-maliciously, give good stuff for the sleezy things to read.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 A ChatGPT prompt equals about 5.1 seconds of Netflix</title>
    <id>https://waylonwalker.com/thought-875/</id>
    <updated>2025-12-01T21:34:30Z</updated>
    <published>2025-12-01T21:34:30Z</published>
    <link href="https://waylonwalker.com/thought-875/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://simonwillison.net/2025/Nov/29/chatgpt-netflix</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://simonwillison.net/2025/Nov/29/chatgpt-netflix&#34; class=&#34;embed-card-link  has-avatar has-avatar-before&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/simonwillison.net.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/simonwillison.net.ico&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;A ChatGPT prompt equals about 5.1 seconds of Netflix&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;In June 2025 Sam Altman claimed about ChatGPT that &amp;#34;the average query uses about 0.34 watt-hours&amp;#34;. In March 2020 George Kamiya of the International Energy Agency estimated that &amp;#34;streaming a …&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;Simon Willison’s Weblog · simonwillison.net&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;This feels very promising for the future as we enter a world that is more and more dependent on AI that inference is so cheap.  I did not understand the scale to how much cheaper inference is compared to training.  As we get better with training I imagine this gets significantly better as well.  I know they all claim to be profitable on inference, but scrolling through Simon’s feed here you see several articles on the stark difference.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 A pretty good email scam</title>
    <id>https://waylonwalker.com/thought-874/</id>
    <updated>2025-12-01T18:22:02Z</updated>
    <published>2025-12-01T18:22:02Z</published>
    <link href="https://waylonwalker.com/thought-874/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://cassidoo.co/post/email-settings-scam/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://cassidoo.co/post/email-settings-scam/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://cassidoo.co/og-image/email-settings-scam.png&#34; alt=&#34;A pretty good email scam — How I helped family recover from a clever email scam that hid behind sneaky account settings&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: A pretty good email scam — How I helped family recover from a clever email scam that hid behind sneaky account settings&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;A pretty good email scam&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;How I helped family recover from a clever email scam that hid behind sneaky account settings&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;cassidoo.co&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;scams suck.  This is a good story, sorry to hear that it happened to a real person.  If you or anyone in your family has a compromised email, add these to your checklist to fix.&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;automatic forwards&lt;/li&gt;&#xA;&lt;li&gt;2-factor email&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 2025-11-27 Notes</title>
    <id>https://waylonwalker.com/thought-873/</id>
    <updated>2025-12-01T17:28:13Z</updated>
    <published>2025-12-01T17:28:13Z</published>
    <link href="https://waylonwalker.com/thought-873/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://pype.dev/2025-11-27-notes/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://pype.dev/2025-11-27-notes/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://cdn.statically.io/gh/pypeaday/pype.dev/main/pages/media/og-02.png&#34; alt=&#34;2025-11-27 Notes | Nic Payne — yesterday: [[2025-11-26-notes]] Big Changes Got my workspaces script in working order It&amp;#39;s not quite configurable yet This will allow an easy way to setup&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: 2025-11-27 Notes | Nic Payne — yesterday: [[2025-11-26-notes]] Big Changes Got my workspaces script in working order It&amp;#39;s not quite configurable yet This will allow an easy way to setup&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;2025-11-27 Notes | Nic Payne&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;yesterday: [[2025-11-26-notes]] Big Changes Got my workspaces script in working order It&amp;#39;s not quite configurable yet This will allow an easy way to setup &lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;pype.dev&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Nic is also building out a similar workspaces script.  This feels like such a great thing to have ai work on fully customized tools for your personal workflow.  Also Nice shout out!&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ Freika dawarich</title>
    <id>https://waylonwalker.com/freika-dawarich/</id>
    <updated>2025-12-01T14:15:22Z</updated>
    <published>2025-12-01T14:15:22Z</published>
    <link href="https://waylonwalker.com/freika-dawarich/" rel="alternate" type="text/html"></link>
    <summary type="text">Check out dawarich by Freika. It&#39;s a well-crafted project with great potential.</summary>
    <content type="html">&lt;p&gt;Check out &lt;a href=&#34;https://github.com/Freika/dawarich&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;dawarich&lt;/a&gt; by &lt;a href=&#34;https://github.com/Freika&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;Freika&lt;/a&gt;. It’s a well-crafted project with great potential.&lt;/p&gt;&#xA;&lt;p&gt;Your favorite self-hostable alternative to Google Timeline (Google Location History)&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 K8s Diagram Builder - Free Visual Kubernetes Architecture Desi...</title>
    <id>https://waylonwalker.com/thought-872/</id>
    <updated>2025-12-01T14:10:55Z</updated>
    <published>2025-12-01T14:10:55Z</published>
    <link href="https://waylonwalker.com/thought-872/" rel="alternate" type="text/html"></link>
    <summary type="text">!http://k8sdiagram.fun/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;http://k8sdiagram.fun/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://k8sdiagram.fun/banner.png&#34; alt=&#34;K8s Diagram Builder - Visual Kubernetes YAML Generator — Free Kubernetes diagram builder with drag-and-drop design. Auto-generate production-ready YAML for Ingress, Services, Deployments, ConfigMaps, Secrets &amp;amp; more. No signup required.&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: K8s Diagram Builder - Visual Kubernetes YAML Generator — Free Kubernetes diagram builder with drag-and-drop design. Auto-generate production-ready YAML for Ingress, Services, Deployments, ConfigMaps, Secrets &amp;amp; more. No signup required.&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;K8s Diagram Builder - Visual Kubernetes YAML Generator&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Free Kubernetes diagram builder with drag-and-drop design. Auto-generate production-ready YAML for Ingress, Services, Deployments, ConfigMaps, Secrets &amp;amp; more. No signup required.&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;K8s Diagram Builder · k8sdiagram.fun&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;This looks like great prototyping tool for k8s. I too often ask ai to get me going with the things I need.  I’ve used k8s long enough that I can generally remember all the things I need, roughly where they go, would probably forget a few things and need to iterate, but I cannot remember exactly what goes where and need examples at a minimum.  I need to give this a go from desktop and see if it will work for me.  Right now looking through mobile looks promising.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Apple Boxes Complete</title>
    <id>https://waylonwalker.com/shots/apple-boxes-complete/</id>
    <updated>2025-11-28T20:39:11Z</updated>
    <published>2025-11-28T20:39:11Z</published>
    <link href="https://waylonwalker.com/shots/apple-boxes-complete/" rel="alternate" type="text/html"></link>
    <summary type="text">A complete stack of apple boxes for the local theater.</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/af7b072c-e40b-42fd-b243-8b09ba652a75.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Apple Boxes Complete&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/file/af7b072c-e40b-42fd-b243-8b09ba652a75.webp&#34; alt=&#34;Apple Boxes Complete&#34;/ data-glightbox=&#34;description: Apple Boxes Complete&#34;&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;A complete stack of apple boxes for the local theater.&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Design For Bosch Colt Dust Collection V1</title>
    <id>https://waylonwalker.com/shots/design-for-bosch-colt-dust-collection-v1/</id>
    <updated>2025-11-28T20:36:48Z</updated>
    <published>2025-11-28T20:36:48Z</published>
    <link href="https://waylonwalker.com/shots/design-for-bosch-colt-dust-collection-v1/" rel="alternate" type="text/html"></link>
    <summary type="text">Isometric view of the Bosch Colt dust collection design.</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/f7a46bc1-60fb-48c7-94bb-5e9bdb4b5f04.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Design for bosch colt dust collection v1&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/file/f7a46bc1-60fb-48c7-94bb-5e9bdb4b5f04.webp&#34; alt=&#34;Design for bosch colt dust collection v1&#34;/ data-glightbox=&#34;description: Design for bosch colt dust collection v1&#34;&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;Isometric view of the Bosch Colt dust collection design.&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Dust Collection For Bosch Colt V0</title>
    <id>https://waylonwalker.com/shots/dust-collection-for-bosch-colt-v0/</id>
    <updated>2025-11-28T20:32:47Z</updated>
    <published>2025-11-28T20:32:47Z</published>
    <link href="https://waylonwalker.com/shots/dust-collection-for-bosch-colt-v0/" rel="alternate" type="text/html"></link>
    <summary type="text">Dust Collection for Bosch Colt router v0 made of 3/4&#34; plywood.</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/3fe2aba3-30bc-4734-b75e-1c0b7e7c3d18.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Dust Collection for Bosch Colt v0&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/file/3fe2aba3-30bc-4734-b75e-1c0b7e7c3d18.webp&#34; alt=&#34;Dust Collection for Bosch Colt v0&#34;/ data-glightbox=&#34;description: Dust Collection for Bosch Colt v0&#34;&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;Dust Collection for Bosch Colt router v0 made of 3/4&amp;#34; plywood.&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/d8a8e8ec-8368-4100-9708-e0b6e0095105.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Dust Collection for Bosch Colt v0 installed in the router, showing the back&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/file/d8a8e8ec-8368-4100-9708-e0b6e0095105.webp&#34; alt=&#34;Dust Collection for Bosch Colt v0 installed in the router, showing the back&#34;/ data-glightbox=&#34;description: Dust Collection for Bosch Colt v0 installed in the router, showing the back&#34;&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;Installed in the router and showing the back&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/6afc7f52-5842-47ca-a67b-1b6792e39c33.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Dust Collection for Bosch Colt v0 installed in the router, showing the front&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/file/6afc7f52-5842-47ca-a67b-1b6792e39c33.webp&#34; alt=&#34;Dust Collection for Bosch Colt v0 installed in the router, showing the front&#34;/ data-glightbox=&#34;description: Dust Collection for Bosch Colt v0 installed in the router, showing the front&#34;&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;Installed in the router and showing the front&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ chr15m runprompt</title>
    <id>https://waylonwalker.com/chr15m-runprompt/</id>
    <updated>2025-11-28T19:33:57Z</updated>
    <published>2025-11-28T19:33:57Z</published>
    <link href="https://waylonwalker.com/chr15m-runprompt/" rel="alternate" type="text/html"></link>
    <summary type="text">chr15m has done a fantastic job with runprompt. Highly recommend taking a look.</summary>
    <content type="html">&lt;p&gt;&lt;a href=&#34;https://github.com/chr15m&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;chr15m&lt;/a&gt; has done a fantastic job with &lt;a href=&#34;https://github.com/chr15m/runprompt&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;runprompt&lt;/a&gt;. Highly recommend taking a look.&lt;/p&gt;&#xA;&lt;p&gt;Run LLM prompts from your shell&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>COLUMNS env var</title>
    <id>https://waylonwalker.com/columns-env-var/</id>
    <updated>2025-11-26T13:24:38Z</updated>
    <published>2025-11-26T13:24:38Z</published>
    <link href="https://waylonwalker.com/columns-env-var/" rel="alternate" type="text/html"></link>
    <summary type="text">setting env var to a number greater than 0 will make the terminal resize to that number of columns.</summary>
    <content type="html">&lt;p&gt;setting &lt;code&gt;COLUMNS&lt;/code&gt; env var to a number greater than 0 will make the terminal resize to that number of columns.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nv&#34;&gt;COLUMNS&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;m&#34;&gt;80&lt;/span&gt; uvx --from rich-cli rich myscript.py&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;Not all programs respct the &lt;code&gt;COLUMNS&lt;/code&gt; env var, but rich does, and a lot of&#xA;stuff I’m building uses rich.&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;I discovered this when I was trying to make a low effort readme generated from&#xA;the code, but did not depend on the size of terminal it was ran on.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# justfile&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;readme:&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;nb&#34;&gt;echo&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;# Workspaces&amp;#34;&lt;/span&gt; &amp;gt; README.md&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;nb&#34;&gt;echo&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;&amp;#34;&lt;/span&gt; &amp;gt;&amp;gt; README.md&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;nb&#34;&gt;echo&lt;/span&gt; &lt;span class=&#34;s1&#34;&gt;&amp;#39;``` bash&amp;#39;&lt;/span&gt; &amp;gt;&amp;gt; README.md&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;nv&#34;&gt;COLUMNS&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;m&#34;&gt;80&lt;/span&gt; ./workspaces.py --help &amp;gt;&amp;gt; README.md&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;nb&#34;&gt;echo&lt;/span&gt; &lt;span class=&#34;s1&#34;&gt;&amp;#39;```&amp;#39;&lt;/span&gt; &amp;gt;&amp;gt; README.md&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ grafana alloy-scenarios</title>
    <id>https://waylonwalker.com/grafana-alloy-scenarios/</id>
    <updated>2025-11-24T02:04:24Z</updated>
    <published>2025-11-24T02:04:24Z</published>
    <link href="https://waylonwalker.com/grafana-alloy-scenarios/" rel="alternate" type="text/html"></link>
    <summary type="text">I&#39;m really excited about alloy-scenarios, an amazing project by grafana. It&#39;s worth exploring!</summary>
    <content type="html">&lt;p&gt;I’m really excited about &lt;a href=&#34;https://github.com/grafana/alloy-scenarios&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;alloy-scenarios&lt;/a&gt;, an amazing project by &lt;a href=&#34;https://github.com/grafana&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;grafana&lt;/a&gt;. It’s worth exploring!&lt;/p&gt;&#xA;&lt;p&gt;A collection of working Alloy scenarios&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>tea login flag</title>
    <id>https://waylonwalker.com/tea-login-flag/</id>
    <updated>2025-11-23T21:09:36Z</updated>
    <published>2025-11-23T21:09:36Z</published>
    <link href="https://waylonwalker.com/tea-login-flag/" rel="alternate" type="text/html"></link>
    <summary type="text">The tea command for gitea (used by forgejo) has a flag for login. With gitea you can have multiple accounts logged in. When you try to run a command such as...</summary>
    <content type="html">&lt;p&gt;The tea command for gitea (used by forgejo) has a flag for login.  With gitea&#xA;you can have multiple accounts logged in.  When you try to run a command such&#xA;as &lt;code&gt;repo create&lt;/code&gt; it will prompt you which login to use, but I learned that you&#xA;can bake it in to all of them with &lt;code&gt;--login &amp;lt;login-name&amp;gt;&lt;/code&gt;&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;❯ tea repo create --name deleteme --description &lt;span class=&#34;s1&#34;&gt;&amp;#39;for example&amp;#39;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;┃ NOTE: no gitea login detected, whether falling back to login &lt;span class=&#34;s1&#34;&gt;&amp;#39;git.waylonwalker.com&amp;#39;&lt;/span&gt;?&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/11dc820d-1680-414c-9624-cd970b057a74.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;image showing message NOTE: no gitea login detected, whether falling back to login ‘git.waylonwalker.com’?&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/file/11dc820d-1680-414c-9624-cd970b057a74.webp&#34; alt=&#34;image showing message NOTE: no gitea login detected, whether falling back to login ‘git.waylonwalker.com’?&#34;/ data-glightbox=&#34;description: image showing message NOTE: no gitea login detected, whether falling back to login ‘git.waylonwalker.com’?&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;tea repo create --name deleteme --description &lt;span class=&#34;s1&#34;&gt;&amp;#39;for example&amp;#39;&lt;/span&gt; --login git.wayl.one&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ WaylonWalker wyattbubbylee.com</title>
    <id>https://waylonwalker.com/waylonwalker-wyattbubbylee-com/</id>
    <updated>2025-11-23T17:08:03Z</updated>
    <published>2025-11-23T17:08:03Z</published>
    <link href="https://waylonwalker.com/waylonwalker-wyattbubbylee-com/" rel="alternate" type="text/html"></link>
    <summary type="text">Looking for inspiration? wyattbubbylee.com by WaylonWalker.</summary>
    <content type="html">&lt;p&gt;Looking for inspiration? &lt;a href=&#34;https://github.com/WaylonWalker/wyattbubbylee.com&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;wyattbubbylee.com&lt;/a&gt; by &lt;a href=&#34;https://github.com/WaylonWalker&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;WaylonWalker&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;No description available.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ WaylonWalker qmk_firmware</title>
    <id>https://waylonwalker.com/waylonwalker-qmk_firmware/</id>
    <updated>2025-11-23T17:08:01Z</updated>
    <published>2025-11-23T17:08:01Z</published>
    <link href="https://waylonwalker.com/waylonwalker-qmk_firmware/" rel="alternate" type="text/html"></link>
    <summary type="text">If you&#39;re into interesting projects, don&#39;t miss out on qmk_firmware, created by WaylonWalker.</summary>
    <content type="html">&lt;p&gt;If you’re into interesting projects, don’t miss out on &lt;a href=&#34;https://github.com/WaylonWalker/qmk_firmware&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;qmk_firmware&lt;/a&gt;, created by &lt;a href=&#34;https://github.com/WaylonWalker&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;WaylonWalker&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Open-source keyboard firmware for Atmel AVR and Arm USB families&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>2025-11-21 Notes</title>
    <id>https://waylonwalker.com/2025-11-21-notes/</id>
    <updated>2025-11-21T14:25:59Z</updated>
    <published>2025-11-21T14:25:59Z</published>
    <link href="https://waylonwalker.com/2025-11-21-notes/" rel="alternate" type="text/html"></link>
    <summary type="text">Learned about nginx_auth today. Feels good to unlock a new skill that I did not quite understand before. I don&#39;t think I grasped that there is a backend...</summary>
    <content type="html">&lt;p&gt;Learned about nginx_auth today.  Feels good to unlock a new skill that I did not quite understand before.  I don’t think I grasped that there is a backend server in this flow to handle every request.  I could not fathom how this was secure with nginx alone.&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://git.wayl.one/waylon/learn-nginx-auth&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/git.wayl.one.png&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/git.wayl.one.png&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;https://git.wayl.one/waylon/learn-nginx-auth&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;I’m excited to give this a try in my &lt;a href=&#34;/homelab/&#34; class=&#34;glossary-term&#34; title=&#34;A place to self host applications. For me this is primarily self built web applications, and applications for sharing files with my family. Techno Tim has a...&#34;&gt;homelab&lt;/a&gt; with k3s ingress next.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ octelium octelium</title>
    <id>https://waylonwalker.com/octelium-octelium/</id>
    <updated>2025-11-20T01:02:04Z</updated>
    <published>2025-11-20T01:02:04Z</published>
    <link href="https://waylonwalker.com/octelium-octelium/" rel="alternate" type="text/html"></link>
    <summary type="text">Check out octelium by octelium. It&#39;s a well-crafted project with great potential.</summary>
    <content type="html">&lt;p&gt;Check out &lt;a href=&#34;https://github.com/octelium/octelium&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;octelium&lt;/a&gt; by &lt;a href=&#34;https://github.com/octelium&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;octelium&lt;/a&gt;. It’s a well-crafted project with great potential.&lt;/p&gt;&#xA;&lt;p&gt;A next-gen FOSS &lt;a href=&#34;/self-host/&#34; class=&#34;glossary-term&#34; title=&#34;Self hosting is the act of hosting your own applications and services without using a SAS provider. This is typically done with your own hardware, but there...&#34;&gt;self-hosted&lt;/a&gt; unified zero trust secure access platform that can operate as a remote access VPN, a ZTNA platform, API/AI/MCP gateway, a PaaS, an ngrok-alternative and a &lt;a href=&#34;/homelab/&#34; class=&#34;glossary-term&#34; title=&#34;A place to self host applications. For me this is primarily self built web applications, and applications for sharing files with my family. Techno Tim has a...&#34;&gt;homelab&lt;/a&gt; infrastructure.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>2025-11-19 Notes</title>
    <id>https://waylonwalker.com/2025-11-19-notes/</id>
    <updated>2025-11-19T18:55:14Z</updated>
    <published>2025-11-19T18:55:14Z</published>
    <link href="https://waylonwalker.com/2025-11-19-notes/" rel="alternate" type="text/html"></link>
    <summary type="text">Making progress on dropper this week.</summary>
    <content type="html">&lt;p&gt;Making progress on dropper this week.&lt;/p&gt;&#xA;&lt;p&gt;In prod.&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;resize for image and video&lt;/li&gt;&#xA;&lt;li&gt;File feed with paging&lt;/li&gt;&#xA;&lt;li&gt;New plain filesystem backend&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;In dev&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;Robust video conversion that seems to work on all my test videos&lt;/li&gt;&#xA;&lt;li&gt;Duplicate file detection&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;Thinking about kedro pipelines from my phone in a parking lot here. I’m thinking about big picture what’s next for my pipelines.  I want an effective Dr plan. I want to create telemetry endpoints for catalog.  This will enable the Dr plan to identify  critical data that is not created by a pipeline and communication points to other teams.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Another Big Cloud Outage Nov 2025</title>
    <id>https://waylonwalker.com/another-big-cloud-outage-nov-2025/</id>
    <updated>2025-11-18T18:39:00Z</updated>
    <published>2025-11-18T18:39:00Z</published>
    <link href="https://waylonwalker.com/another-big-cloud-outage-nov-2025/" rel="alternate" type="text/html"></link>
    <summary type="text">Today I woke up to finding out that cloudflare hade a widespread outage. My Reader uses tailwind cdn for styles and it was down. Otherwise it was not so...</summary>
    <content type="html">&lt;p&gt;Today I woke up to finding out that cloudflare hade a widespread outage.  My [[Reader]] uses tailwind cdn for styles and it was down. Otherwise it was not so impactful to me and felt kike they were quick to have it up.&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;I’m not really researching here, just jotting thoughts down from a parking lot waiting for pickup.&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;p&gt;It feels like we are seeing a lot of these lately.  They feel much more frequent.  It feels like a whole industry was sold on 9’s and reliability of big cloud that we just aren’t getting.&lt;/p&gt;&#xA;&lt;p&gt;There’s a huge push to go back to self hosting, racking and stacking.  I think this is great.  I love it.  I’m a big proponent for ownership and self hosting.  It’s not the right move for everything and everyone, and is certainly not something to make a knee jerk reaction about in the moment of frustration.&lt;/p&gt;&#xA;&lt;p&gt;There’s a lot of things that are just impossible to do yourself, cdn caching, edge compute, ddos protection.&lt;/p&gt;&#xA;&lt;p&gt;These companies are not magic they are vulnerable to changes just like you and I.  It really feels like more and more of these are due to misconfigurations, and small bugs introduced.  As we see big tech downsize and lean more on ai that likes to do big code changes I dont see it getting better soon.  Theres a lot of things we can all armchair quarterback about here, better testing, review, canary deployment, staged rollouts, rigorous review.  All great things.  I can hear Uncle Bob talking about rigor, giving a shit, and following principles.&lt;/p&gt;&#xA;&lt;p&gt;We are at odds of reliability and speed.  This critical infrastructure runs so many important things in our lives it feels like it deserves a professional engineer signoff on changes.  Documentation of changes and testing done between changes.  This would all but hault forward progress, taking us back to the level of physical components and manufacturing.&lt;/p&gt;&#xA;&lt;p&gt;How do you decide what needs this rigor and how to regulate it when companies are incentized by number go up.&lt;/p&gt;&#xA;&lt;p&gt;The answer right now is that we can’t and if you are managing critical infrastructure you need to take these outages into account in your disaster recovery plan and understand what you are willing to allow go down on failure.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Microsoft keeps losing - YouTube</title>
    <id>https://waylonwalker.com/thought-870/</id>
    <updated>2025-11-15T17:51:23Z</updated>
    <published>2025-11-15T17:51:23Z</published>
    <link href="https://waylonwalker.com/thought-870/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://youtu.be/AyuMdNoL1Vs?si=QQ3BoV33nXR_TPnC</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;AyuMdNoL1Vs&#34; title=&#34;Microsoft keeps losing&#34; playlabel=&#34;Play: Microsoft keeps losing&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;👏👏👏preach it prime!  M$ continues to prove that they are not making products for you something else is affoot and shit you don’t want is shoved down your throat and forced on you.&lt;/p&gt;&#xA;&lt;p&gt;Prime points out that the agentic is prompt injected itself😂.  Rather than making a better os experience it’s assuming you are stupid and need everything done for you.  But what I don’t get here in the text scaling example.  Why the F does it not just fix it for me.  When I ask the machine to make text bigger it puts a flashy circle where to click.  This is a one time setup for someone who gives no fucks to remember how to do it.  Why is the machine doing this weird hand holding watching us do it’s work rather than just doing it? I like the pattern when you change display setting it gives you a counter that reverts everything if for some reason shit is so bad you can’t even see it.  Do that, not this help me click bs.&lt;/p&gt;&#xA;&lt;p&gt;Now in parallel we have steam making Linux desktop better and better.  Allowing you to just access the hardware you own to do what you want to do with it.  Providing a fantastic hands off out of the box experience for the price of the hardware.  No ongoing fees, no upgrade cycle, soft lock, aribraray cutoff date, tpm bs requirements.  Good stuff as it was supposed to be created.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 PETaflop cluster - Justin Garrison</title>
    <id>https://waylonwalker.com/thought-869/</id>
    <updated>2025-11-12T17:44:41Z</updated>
    <published>2025-11-12T17:44:41Z</published>
    <link href="https://waylonwalker.com/thought-869/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://justingarrison.com/blog/petaflop-cluster/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://justingarrison.com/blog/petaflop-cluster/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://justingarrison.com/img/petaflop-banner.jpg&#34; alt=&#34;PETaflop cluster — AI is a pain in the back.&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: PETaflop cluster — AI is a pain in the back.&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;PETaflop cluster&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;AI is a pain in the back.&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt; Justin Garrison · justingarrison.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Justin makes the coolest kubernetes clusters wishing I could see it in the flesh at Kubecon.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 ChatGPT made me delusional</title>
    <id>https://waylonwalker.com/thought-868/</id>
    <updated>2025-11-12T02:35:21Z</updated>
    <published>2025-11-12T02:35:21Z</published>
    <link href="https://waylonwalker.com/thought-868/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/watch?v=VRjgNgJms3Q</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;VRjgNgJms3Q&#34; title=&#34;ChatGPT made me delusional&#34; playlabel=&#34;Play: ChatGPT made me delusional&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Absolutely banger of a video, what a wild idea to send gippity a bit off course and just see how far off the rails it will go.  Dude did a banger of an edit on it.  I’ll admit that I listened to the whole thing, but did not watch much, saving here as I might go back when I have time to really watch it.  It was really weird how easy it was for chat to say something that could be true, but nearly no chance of it actually happening over and over and just keep it going down this dark spiral of conspiracies.  It was ready to electrocute him and separate him from anyone who had a chance of being a non believer.  At any moment was ready to say that those closest to him might be his problem.  gipity is not your friend, or your therapist.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>side effect of just stars</title>
    <id>https://waylonwalker.com/side-effect-of-just-stars/</id>
    <updated>2025-11-11T21:33:33Z</updated>
    <published>2025-11-11T21:33:33Z</published>
    <link href="https://waylonwalker.com/side-effect-of-just-stars/" rel="alternate" type="text/html"></link>
    <summary type="text">I found an interesting side effect of manually running my script to generate stars posts is that you get notified when one gets renamed. Today I noticed that...</summary>
    <content type="html">&lt;p&gt;I found an interesting side effect of manually running my script to generate [[&#xA;stars ]] posts is that you get notified when one gets renamed.  Today I noticed&#xA;that Ned Batchelder created a coveragepy org.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/cf6dd0cc-5a74-40bf-8512-f62471ea1e56.png&#34; class=&#34;glightbox-link&#34; aria-label=&#34;screenshot-2025-11-12T03-33-12-967Z.png&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/cf6dd0cc-5a74-40bf-8512-f62471ea1e56.png&#34; alt=&#34;screenshot-2025-11-12T03-33-12-967Z.png&#34;/ data-glightbox=&#34;description: screenshot-2025-11-12T03-33-12-967Z.png&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>pydantic settings alias choices</title>
    <id>https://waylonwalker.com/pydantic-settings-alias-choices/</id>
    <updated>2025-11-11T21:23:58Z</updated>
    <published>2025-11-11T21:23:58Z</published>
    <link href="https://waylonwalker.com/pydantic-settings-alias-choices/" rel="alternate" type="text/html"></link>
    <summary type="text">Today I learned how to use AliasChoices with pydantic settings to setup common aliases for the same field. I&#39;m bad about remembering these things, and hate...</summary>
    <content type="html">&lt;p&gt;Today I learned how to use AliasChoices with pydantic settings to setup common&#xA;aliases for the same field.  I’m bad about remembering these things, and hate&#xA;looking up the docs.  I like things to be intuitive and just do the thing I&#xA;want it to do.  Especially when they get configured through something like yaml&#xA;and do not have a direct lsp look up right from my editor.  I figured out how&#xA;to support what might be common aliases for a storage directory.  These can be&#xA;set up as environment variables and used by config.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;kn&#34;&gt;from&lt;/span&gt; &lt;span class=&#34;nn&#34;&gt;pathlib&lt;/span&gt; &lt;span class=&#34;kn&#34;&gt;import&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;Path&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;kn&#34;&gt;from&lt;/span&gt; &lt;span class=&#34;nn&#34;&gt;pydantic&lt;/span&gt; &lt;span class=&#34;kn&#34;&gt;import&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;Field&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;kn&#34;&gt;from&lt;/span&gt; &lt;span class=&#34;nn&#34;&gt;pydantic&lt;/span&gt; &lt;span class=&#34;kn&#34;&gt;import&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;AliasChoices&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;kn&#34;&gt;from&lt;/span&gt; &lt;span class=&#34;nn&#34;&gt;pydantic_settings&lt;/span&gt; &lt;span class=&#34;kn&#34;&gt;import&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;BaseSettings&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;class&lt;/span&gt; &lt;span class=&#34;nc&#34;&gt;Settings&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;BaseSettings&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;):&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;n&#34;&gt;storage_dir&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;Path&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;|&lt;/span&gt; &lt;span class=&#34;kc&#34;&gt;None&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;Field&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;n&#34;&gt;default&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;kc&#34;&gt;None&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;n&#34;&gt;validation_alias&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;AliasChoices&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;            &lt;span class=&#34;s2&#34;&gt;&amp;#34;STORAGE_DIR&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;STORAGE_DIRECTORY&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;STORAGE_PATH&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;STORAGE_PATHNAME&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;            &lt;span class=&#34;s2&#34;&gt;&amp;#34;DROPPER_STORAGE_DIR&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;DROPPER_STORAGE_DIRECTORY&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;DROPPER_STORAGE_PATH&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;DROPPER_STORAGE_PATHNAME&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;p&#34;&gt;),&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;n&#34;&gt;description&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;Directory for stored files&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>3d-Printed Corner Clamp</title>
    <id>https://waylonwalker.com/3d-printed-corner-clamp/</id>
    <updated>2025-11-11T21:13:07Z</updated>
    <published>2025-11-11T21:13:07Z</published>
    <link href="https://waylonwalker.com/3d-printed-corner-clamp/" rel="alternate" type="text/html"></link>
    <summary type="text">Getting ready to batch out 18 apple boxes for the local theater. Need to step up my woodworking tool game here quick on a low budget. Whipped this up up and...</summary>
    <content type="html">&lt;p&gt;Getting ready to batch out 18 apple boxes for the local theater.  Need to step&#xA;up my woodworking tool game here quick on a low budget.  Whipped this up up and&#xA;built the prototype box , went really well. We have 4 in the arsenal now, might&#xA;do 4 more if we need more assembly capacity.  Pretty proud of the first 3d&#xA;printed thread project here.  The design for good 3d prints can be quite&#xA;different with its anisotropic strength and hollow sections being nearly&#xA;weightless when compared to traditional manufacturing methods.  Its so fun to&#xA;be able to do it for almost no cost right in my home office.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/2701fb29-5a35-4249-a66d-8a84a774fb0c.jpg&#34; class=&#34;glightbox-link&#34; aria-label=&#34;PXL_20251112_030154891-cropped.jpg&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/2701fb29-5a35-4249-a66d-8a84a774fb0c.jpg&#34; alt=&#34;PXL_20251112_030154891-cropped.jpg&#34;/ data-glightbox=&#34;description: PXL_20251112_030154891-cropped.jpg&#34;&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;3d-printed corner clamp printed in black pla.&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/6a0c5ef1-4f8b-4b4d-9def-60e3168a464c.png&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Corner Clamp V1 isometric&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/6a0c5ef1-4f8b-4b4d-9def-60e3168a464c.png&#34; alt=&#34;Corner Clamp V1 isometric&#34;/ data-glightbox=&#34;description: Corner Clamp V1 isometric&#34;&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;Isometric view of my corner clamp v1 that supports up to 3/4&amp;#34; sheets and includes slots for dowell points on 3/4&amp;#34; and 1/2&amp;#34; material.&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Post | LinkedIn</title>
    <id>https://waylonwalker.com/thought-867/</id>
    <updated>2025-11-11T02:43:05Z</updated>
    <published>2025-11-11T02:43:05Z</published>
    <link href="https://waylonwalker.com/thought-867/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.linkedin.com/posts/anton-martyniuk_source=share&amp;utm_desktop&amp;rcm=ACoAACM7I2cBosNBb12iAVlY0IZbLYYHgFOyIg4</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://www.linkedin.com/posts/anton-martyniuk_mark-zuckerberg-scaled-facebook-in-2005-activity-7393550498584371201-iqDA/?utm_source=share&amp;amp;utm_medium=member_desktop&amp;amp;rcm=ACoAACM7I2cBosNBb12iAVlY0IZbLYYHgFOyIg4&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img src=&#34;https://media.licdn.com/dms/image/v2/D4E22AQFEJ1tbZxs6oQ/feedshare-image-high-res/B4EZpsq0GuKcAo-/0/1762759756836?e=2147483647&amp;amp;v=beta&amp;amp;t=gzUYR-OfjpPk-K4yYzhHY-DHTG6rSF5PdijOyB0twOE&#34; alt=&#34;Mark Zuckerberg scaled Facebook in 2005 - without Kubernetes, Serverless Functions, Redis, Managed Auth, Rust, or Kafka.&#xA;&amp;lt;p&amp;gt;No fancy orchestration.&#xA;No distributed event streams.&#xA;No cloud-native… | Anton Martyniuk | 270 comments — Mark Zuckerberg scaled Facebook in 2005 - without Kubernetes, Serverless Functions, Redis, Managed Auth, Rust, or Kafka.&amp;lt;/p&amp;gt;&#xA;&amp;lt;p&amp;gt;No fancy orchestration.&#xA;No distributed event streams.&#xA;No cloud-native anything.&amp;lt;/p&amp;gt;&#xA;&amp;lt;p&amp;gt;Modern devs love to over-engineer.&#xA;We build as if our projects will scale to 1 million users tomorrow.&amp;lt;/p&amp;gt;&#xA;&amp;lt;p&amp;gt;But here&amp;#34; loading=“lazy”&amp;gt;&#xA;&amp;lt;/div&amp;gt;&#xA;&amp;lt;div class=&#34; embed-card-content glightbox&#34;=&#34;&#34;/ data-glightbox=&#34;description: Mark Zuckerberg scaled Facebook in 2005 - without Kubernetes, Serverless Functions, Redis, Managed Auth, Rust, or Kafka.&#xA;&amp;lt;p&amp;gt;No fancy orchestration.&#xA;No distributed event streams.&#xA;No cloud-native… | Anton Martyniuk | 270 comments — Mark Zuckerberg scaled Facebook in 2005 - without Kubernetes, Serverless Functions, Redis, Managed Auth, Rust, or Kafka.&amp;lt;/p&amp;gt;&#xA;&amp;lt;p&amp;gt;No fancy orchestration.&#xA;No distributed event streams.&#xA;No cloud-native anything.&amp;lt;/p&amp;gt;&#xA;&amp;lt;p&amp;gt;Modern devs love to over-engineer.&#xA;We build as if our projects will scale to 1 million users tomorrow.&amp;lt;/p&amp;gt;&#xA;&amp;lt;p&amp;gt;But here&amp;#34; loading=“lazy”&amp;gt;&#xA;&amp;lt;/div&amp;gt;&#xA;&amp;lt;div class=&#34;&gt;&#xA;&lt;div class=&#34;embed-card-title&#34;&gt;Mark Zuckerberg scaled Facebook in 2005 - without Kubernetes, Serverless Functions, Redis, Managed Auth, Rust, or Kafka.&lt;p&gt;&lt;/p&gt;&#xA;&lt;p&gt;No fancy orchestration.&#xA;No distributed event streams.&#xA;No cloud-native… | Anton Martyniuk | 270 comments&lt;/p&gt;&lt;/div&gt;&#xA;&lt;div class=&#34;embed-card-description&#34;&gt;Mark Zuckerberg scaled Facebook in 2005 - without Kubernetes, Serverless Functions, Redis, Managed Auth, Rust, or Kafka.&lt;p&gt;&lt;/p&gt;&#xA;&lt;p&gt;No fancy orchestration.&#xA;No distributed event streams.&#xA;No cloud-native anyth…&lt;/p&gt;&lt;/div&gt;&#xA;&lt;div class=&#34;embed-card-meta&#34;&gt;LinkedIn · linkedin.com&lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;/a&gt;&lt;p&gt;&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Lean on your skills and your goals. If your goals are to have fun, use whatever you want. If you are looking for a job, Lean on tech that bridges the gap between your resume and the job you want. If you want to build a good product use the tech you are best at. No one in their right mind would throw away 20 years of tech progression because Zuck built facebook ftping php to a server.&lt;/p&gt;&#xA;&lt;p&gt;The sentiment in this post is fine at best the picture feels triggering and oversimplies  way too much.  If you like kubernetes &lt;a href=&#34;/just-fucking-use-kubernetes/&#34; class=&#34;wikilink&#34; data-title=&#34;just fucking use kubernetes&#34; data-description=&#34;You want to run containers?&#34; data-date=&#34;2025-07-01&#34; data-preview=&#34;You want to run containers?&#34;&gt;just fucking use kubernetes&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;This topic deserves a full on post, maybe later.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Techbrophobic</title>
    <id>https://waylonwalker.com/techbrophobic/</id>
    <updated>2025-11-09T20:13:33Z</updated>
    <published>2025-11-09T20:13:33Z</published>
    <link href="https://waylonwalker.com/techbrophobic/" rel="alternate" type="text/html"></link>
    <summary type="text">I just heard someone drop the this term and it kinda fits a lot of shit on the internet right now. Arguing that its OK to question AI, its OK to like it, its...</summary>
    <content type="html">&lt;p&gt;I just heard someone drop the this term and it kinda fits a lot of shit on the&#xA;internet right now.  Arguing that its OK to question AI, its OK to like it, its&#xA;OK to question if it needs to be in every goddamn thing we do, question its&#xA;morality on training and the slop being pushed at us all the time.&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;I’m not Technophobic I’m Techbrophobic&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;p&gt;I heard this and it kinda hit with a lot of things that I’ve resonated with&#xA;lately.  Tech bros of today have been compared to Steve Jobs in a lot of ways.&#xA;Whether its style or the way he was so good at marketing, but this feels&#xA;different.  When Jobs launched the iPhone as this next great thing, He fucking&#xA;made the thing.&lt;/p&gt;&#xA;&lt;p&gt;No broken promises of being sold something with hopes that it&#xA;will do more tomorrow.&lt;/p&gt;&#xA;&lt;p&gt;No pushing around insane amounts of money with the hope&#xA;to become profitable years down the line.&lt;/p&gt;&#xA;&lt;p&gt;No fear pushing that if you are not&#xA;doing X today your business will be dead in 6 months.&lt;/p&gt;&#xA;&lt;p&gt;Giving us the promise that it was about to create an entire industry of careers&#xA;through building software that brought us real value, real entertainment, Not&#xA;the promise of that.&lt;/p&gt;&#xA;&lt;p&gt;This tech made it easier to do the mundane, no longer carrying out dated maps&#xA;in your glove box, everyone now has a flashlight, a calculator, a camera, a way&#xA;to video call your mom.&lt;/p&gt;&#xA;&lt;p&gt;I’m not a complete Luddite, I see value in being able to lean on AI for&#xA;generating code, asking questions, helping change the tone of your messages.&lt;/p&gt;&#xA;&lt;p&gt;There are so many issues with AI currently even looking past the stolen works,&#xA;copyright, and power consumption.  The messaging does not pass the vibe check.&#xA;High up folks are getting the impression that they can remove humans from the&#xA;workforce.  Deploy the same features with fewer headcount.  It’s doing our art,&#xA;writing our code, communicating with our colleagues.  It’s not doing protein&#xA;folding and cancer research.  No matter how many promises we get its not&#xA;driving our vehicles.&lt;/p&gt;&#xA;&lt;p&gt;I do believe there is a world in which it makes us more efficient.  It fills in&#xA;the gaps of our knowledge.  It helps us learn.  It helps solve complex&#xA;problems.  It allows humans to flourish and create things they never could&#xA;have.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Ford Thinks We&#39;re Cooked, I agree- YouTube</title>
    <id>https://waylonwalker.com/thought-866/</id>
    <updated>2025-11-06T16:35:18Z</updated>
    <published>2025-11-06T16:35:18Z</published>
    <link href="https://waylonwalker.com/thought-866/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://youtu.be/TyCR8YpvqhE?si=VmV389UaBzGbjdO-</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;TyCR8YpvqhE&#34; title=&#34;Ford Thinks We&amp;#39;re Cooked, I Agree&#34; playlabel=&#34;Play: Ford Thinks We&amp;#39;re Cooked, I Agree&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Are we cooked?  Are we?  Yes the consumers are cooked there are no more affordable cars with basic shit that you need to go point a to point b.  Ford make us cars we can afford and you won’t be cooked by this dumb shit.  If you can market it?&lt;/p&gt;&#xA;&lt;p&gt;Most people don’t care what sticker price is and only the monthly payment.  This is why we are cooked.  We stopped caring that these things cost way too much.  I’m probably in a small minority that just want an affordable reliable vehicle and could care less about features past climate control.  I don’t use them.  My phone has maps and music I don’t need a screen in my vehicle for anything.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Mcat Anything</title>
    <id>https://waylonwalker.com/mcat-anything/</id>
    <updated>2025-11-05T20:10:02Z</updated>
    <published>2025-11-05T20:10:02Z</published>
    <link href="https://waylonwalker.com/mcat-anything/" rel="alternate" type="text/html"></link>
    <summary type="text">I&#39;ve long looked for a way to cat anything in the terminal. I&#39;m am terminally in the terminal. I manage all of my projects, code, website, notes, files,...</summary>
    <content type="html">&lt;p&gt;I’ve long looked for a way to cat anything in the terminal.   I’m am terminally&#xA;in the terminal.  I manage all of my projects, code, website, notes, files,&#xA;servers, infrastructure, almost everything from the terminal.  I occasionally&#xA;open a file manager, mostly at home, only so that I can browse images.&lt;/p&gt;&#xA;&lt;p&gt;Compounding my issue, I’m a tmux user. It works great for me, and I barely have&#xA;to think about it at this point. The keybindings are second nature to me.  I&#xA;can go between server, terminal, nvim, and between projects instantly, no&#xA;loader, no lag, no animation, it just works for everything that really matters&#xA;to me for really getting things done.&lt;/p&gt;&#xA;&lt;h2 id=&#34;mcat&#34;&gt;Mcat &lt;a href=&#34;#mcat&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;&lt;code&gt;mcat&lt;/code&gt; is a new tool that seems like it can cat anything in the terminal, code,&#xA;files, images, markdown, markdown with images, and even video, without leaving&#xA;tmux!&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;mcat static/8bitcc.png&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;curl https://r.jina.ai/https://waylonwalker.com/store/ &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt; mcat --theme dracula --md-image all&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;curl https://r.jina.ai/https://waylonwalker.com/shots/ &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt; mcat --theme dracula&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;mcat ~/git/dropper/data/01b21044-0bf8-4b06-9db1-a002c0519df6.mp4&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;mcat ~/git/dropper/data/0e659c05-1c12-4524-aa54-ef52ba680865.webm&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;!-- ![1fa2e162-deeb-4bb5-b1c5-961632abd452.mp4](https://dropper.waylonwalker.com/api/file/1fa2e162-deeb-4bb5-b1c5-961632abd452.mp4) --&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/663a3793-6426-4b91-a7df-835540d16910.webm&#34; class=&#34;glightbox-link&#34; aria-label=&#34;1fa2e162-deeb-4bb5-b1c5-961632abd452.webm&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/663a3793-6426-4b91-a7df-835540d16910.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/663a3793-6426-4b91-a7df-835540d16910.webm&#34; type=&#34;video/webm&#34;&gt;1fa2e162-deeb-4bb5-b1c5-961632abd452.webm&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;but-it-doesnt-always-work&#34;&gt;But it doesn’t always work &lt;a href=&#34;#but-it-doesnt-always-work&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;The keen eyed of you will notice the blank screen at the start of the demo&#xA;above, not sure what happened, but resizing the terminal fixed something.&#xA;Sometimes video comes up as an image, sometimes it core dumps, once even it&#xA;crashed my system…&lt;/p&gt;&#xA;&lt;p&gt;The hope is there, I’ll continue to use it occasionally, but right now it feels&#xA;like a novelty that is fun to look at when it works.  For now I’m going to&#xA;stick to my kitty/tmux combo that works even though they seem to hate each&#xA;other and I’m going to be happy just getting shit done.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Missing Thoughts</title>
    <id>https://waylonwalker.com/missing-thoughts-on-main/</id>
    <updated>2025-11-05T07:23:35Z</updated>
    <published>2025-11-05T07:23:35Z</published>
    <link href="https://waylonwalker.com/missing-thoughts-on-main/" rel="alternate" type="text/html"></link>
    <summary type="text">No one is perfect, this is why we have things like checkpoints or gates in the form of pull requests, linting, type checking, and tests. What happens when...</summary>
    <content type="html">&lt;p&gt;No one is perfect, this is why we have things like checkpoints or gates in the&#xA;form of pull requests, linting, type checking, and tests.  What happens when&#xA;you work on small side projects by yourself that try to be content focused?&#xA;What happens when you end up building a lot of the tech under that site and&#xA;build it on the bleeding edge of all the tech you make? They are likely missing&#xA;these things and occasionally there are some periods of regression.  This is&#xA;one reason I really like the term digital garden to describe one’s small corner&#xA;of the internet where they share their thoughts.&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;There will be regressions&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;h2 id=&#34;the-signs&#34;&gt;The Signs &lt;a href=&#34;#the-signs&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;There were signs, signs I did not notice&lt;/p&gt;&#xA;&lt;div class=&#34;admonition chat&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Chat&lt;/p&gt;&#xA;&lt;p&gt;is your rss feed broken?&lt;/p&gt;&#xA;&lt;p&gt;I’m not seeing anything show up in my rss reader&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;&lt;div class=&#34;admonition chat-reply&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;me&lt;/p&gt;&#xA;&lt;p&gt;Do I not put thoughts in my rss feed, I swore I did.&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;&lt;div class=&#34;admonition chat&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Chat&lt;/p&gt;&#xA;&lt;p&gt;my fault, Turns out I must have already clicked it in my reader.&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;&lt;div class=&#34;admonition chat-reply&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;me&lt;/p&gt;&#xA;&lt;p&gt;great, glat it’s working&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;…But it wasn’t&lt;/p&gt;&#xA;&lt;p&gt;Later this week comes the next sign that I also choose to ignore… Google&#xA;search has unindexed a number of pages due to a soft 404.  I don’t look at all&#xA;of the emails from search console, but I did happen to see this one, and&#xA;thought “Huh, that’s odd” and went on with my day without another thought on the&#xA;issue.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/5601435b-2c87-4598-b01f-57e5eb737ebe.png&#34; class=&#34;glightbox-link&#34; aria-label=&#34;screenshot-2025-11-04T02-59-44-259Z.png&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/5601435b-2c87-4598-b01f-57e5eb737ebe.png&#34; alt=&#34;screenshot-2025-11-04T02-59-44-259Z.png&#34;/ data-glightbox=&#34;description: screenshot-2025-11-04T02-59-44-259Z.png&#34;&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;Huh, that’s odd&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;the-discovery&#34;&gt;The Discovery &lt;a href=&#34;#the-discovery&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;I didn’t realize I even had an issue until later that week when I went to my [[&#xA;archive ]] myself and noticed the shape of it looks off.  When I opened up my&#xA;feed something felt off, it was only the big posts.  Thoughts show up as a&#xA;different kind of card&lt;/p&gt;&#xA;&lt;p&gt;Then it hit me.&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;Something just felt off&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;p&gt;Thoughts are Gone!&lt;/p&gt;&#xA;&lt;h2 id=&#34;the-fix&#34;&gt;The Fix &lt;a href=&#34;#the-fix&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;I popped open my config and immediately knew what happened.  I turned off some&#xA;plugins locally for faster build iteration and that change found its way into&#xA;production…. because I have nothing to check myself on other than me.  The&#xA;plugin is now back and thoughts are flowing from thoughts.waylonwalker.com to&#xA;waylonwalker.com, no problem.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;❯ git log -p&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;commit adeb9812f7ecf4d9a68c6aa5e01e549e4dd91285 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;HEAD -&amp;gt; main, origin/main, origin/HEAD&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Author: Waylon S. Walker &amp;lt;waylon@waylonwalker.com&amp;gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Date:   Mon Nov &lt;span class=&#34;m&#34;&gt;3&lt;/span&gt; 19:56:40 &lt;span class=&#34;m&#34;&gt;2025&lt;/span&gt; -0600&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    thoughts were missing&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;diff --git a/markata.toml b/markata.toml&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;index 59539bab..a55a494d &lt;span class=&#34;m&#34;&gt;100644&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;--- a/markata.toml&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;+++ b/markata.toml&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;@@ -31,7 +31,7 @@ &lt;span class=&#34;nv&#34;&gt;hooks&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;     &lt;span class=&#34;s1&#34;&gt;&amp;#39;plugins.chartjs&amp;#39;&lt;/span&gt;,&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;     &lt;span class=&#34;s1&#34;&gt;&amp;#39;plugins.md_video&amp;#39;&lt;/span&gt;,&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;     &lt;span class=&#34;s1&#34;&gt;&amp;#39;plugins.post_model&amp;#39;&lt;/span&gt;,&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;-    &lt;span class=&#34;c1&#34;&gt;# &amp;#39;plugins.thoughts&amp;#39;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;+    &lt;span class=&#34;s1&#34;&gt;&amp;#39;plugins.thoughts&amp;#39;&lt;/span&gt;,&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;     &lt;span class=&#34;c1&#34;&gt;# &amp;#34;plugins.wikilink_hover&amp;#34;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;     &lt;span class=&#34;c1&#34;&gt;# &amp;#34;plugins.wa_wikilink_hover&amp;#34;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;     &lt;span class=&#34;s2&#34;&gt;&amp;#34;plugins.tippy_wikilink_hover&amp;#34;&lt;/span&gt;,&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;h2 id=&#34;owning-everything-has-a-cost&#34;&gt;Owning Everything has a cost &lt;a href=&#34;#owning-everything-has-a-cost&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;You see here I am a one man show.  I own the content, the build, the infra that&#xA;does the build.  I love it, but there is so much to do for one persons side&#xA;project passion project.  Did I bite off more than I can chew? Did I choose the&#xA;wrong abstraction level for my needs?  Should I have better tests in place? Or&#xA;is this just a digital garden that has ebs and flows, growing weeds and pruning&#xA;them every few months?&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ Skardyy mcat</title>
    <id>https://waylonwalker.com/skardyy-mcat/</id>
    <updated>2025-11-04T23:36:51Z</updated>
    <published>2025-11-04T23:36:51Z</published>
    <link href="https://waylonwalker.com/skardyy-mcat/" rel="alternate" type="text/html"></link>
    <summary type="text">mcat by Skardyy is a game-changer in its space. Excited to see how it evolves.</summary>
    <content type="html">&lt;p&gt;&lt;a href=&#34;https://github.com/Skardyy/mcat&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;mcat&lt;/a&gt; by &lt;a href=&#34;https://github.com/Skardyy&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;Skardyy&lt;/a&gt; is a game-changer in its space. Excited to see how it evolves.&lt;/p&gt;&#xA;&lt;p&gt;Terminal image, video, directory, and Markdown viewer&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>2025-11-04 Notes</title>
    <id>https://waylonwalker.com/2025-11-04-notes/</id>
    <updated>2025-11-04T18:43:38Z</updated>
    <published>2025-11-04T18:43:38Z</published>
    <link href="https://waylonwalker.com/2025-11-04-notes/" rel="alternate" type="text/html"></link>
    <summary type="text">Today I gave mcat a try and it&#39;s so sick. It can anything right in the terminal, pdf, image, even video. It even works inside tmux unlike almost anything...</summary>
    <content type="html">&lt;p&gt;Today I gave mcat a try and it’s so sick.  It can &lt;code&gt;cat&lt;/code&gt; anything right in the&#xA;terminal, pdf, image, even video.  It even works inside tmux unlike almost&#xA;anything else that I’ve tried.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 I refuse to change the way I play… 😂🔥 #comedy #videogames #min...</title>
    <id>https://waylonwalker.com/thought-865/</id>
    <updated>2025-11-02T16:12:02Z</updated>
    <published>2025-11-02T16:12:02Z</published>
    <link href="https://waylonwalker.com/thought-865/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/watch?v=2TUER4JftGA</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;2TUER4JftGA&#34; title=&#34;I refuse to change the way I play… 😂🔥 #comedy #videogames &amp;lt;a href=&#34; tags=&#34;&#34; minecraft=&#34;&#34; &#34;=&#34;&#34; class=&#34;hashtag-tag&#34; data-tag=&#34;minecraft&#34; data-count=&#34;28&#34; data-reading-time=&#34;32&#34; data-reading-time-text=&#34;32 minutes&#34;&gt;#minecraft&amp;#34; playlabel=&amp;#34;Play: I refuse to change the way I play… 😂🔥 #comedy #videogames &lt;a href=&#34;/tags/minecraft/&#34; class=&#34;hashtag-tag&#34; data-tag=&#34;minecraft&#34; data-count=&#34;28&#34; data-reading-time=&#34;32&#34; data-reading-time-text=&#34;32 minutes&#34;&gt;#minecraft&lt;/a&gt;&amp;#34;&amp;gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Microsoft has been addding features to Minecraft for over 10 years now.  Idk if there was momentum from the mojang theme, but we’ve barely paid attention to any updates in the last five years.  The ocean update was huge, caves and cliffs were huge then it trailed off to we play each release on release day, use commands to try out new features, then never touch them again either to play minecraft as we always have or to play a modded pack with crazy new features that really make an impact on gameplay.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Rewriting SQLite from prison with Preston Thorpe - YouTube</title>
    <id>https://waylonwalker.com/thought-864/</id>
    <updated>2025-11-02T15:46:38Z</updated>
    <published>2025-11-02T15:46:38Z</published>
    <link href="https://waylonwalker.com/thought-864/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/watch?v=AEPf9zUI_fQ</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;AEPf9zUI_fQ&#34; title=&#34;Rewriting SQLite from prison with Preston Thorpe&#34; playlabel=&#34;Play: Rewriting SQLite from prison with Preston Thorpe&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Absolutely incredible what Preston is doing with his time.  What a life changing experience this must be for him.  Good job to Turso for making this happen.  We are going to end up with very feature rich file based databases out of this that the whole world will benefit from.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 STOP. Using AI Right now - YouTube</title>
    <id>https://waylonwalker.com/thought-863/</id>
    <updated>2025-11-02T15:42:29Z</updated>
    <published>2025-11-02T15:42:29Z</published>
    <link href="https://waylonwalker.com/thought-863/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/watch?v=qw4fDU18RcU</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;qw4fDU18RcU&#34; title=&#34;STOP. Using AI Right now&#34; playlabel=&#34;Play: STOP. Using AI Right now&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Absolutely love this selfhosted arc of pewdiepie that is going on right now.  It’s crazy to witness now fast he is picking up linux / self hosting, and sounds like soon will be programming.  In this one he built a $20k AI beast that crushes gippity with power, speed, proximity, and security.  No one to take your data, no latency to the data center, no one else bogging down your prompts, just raw speed.  It looks absolutely wild.  He implemented RAG and gave it a bunch of data about himself and its able to spit out his wife’s name and phone number in under a second.  It writes code at blazing pace.  This may be the future that we get over the next few years as things shift towards AI there will be more affordable options, and a larger second hand market for building out these highly capable machines.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 The Glorious Pipe Operator (Elixir for PHP Devs) | Jesse Leite</title>
    <id>https://waylonwalker.com/thought-862/</id>
    <updated>2025-11-02T15:36:24Z</updated>
    <published>2025-11-02T15:36:24Z</published>
    <link href="https://waylonwalker.com/thought-862/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://jesseleite.com/2025/the-glorious-pipe-operator</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://jesseleite.com/2025/the-glorious-pipe-operator&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://jesseleite.com/img/asset/YXNzZXRzL3Nlby9vZy1pbWFnZS1iYWctZW5kLnBuZw/og-image-bag-end.png?p=seo_pro_og&amp;amp;s=345669cb43e131dd75d795dca9edb0c7&#34; alt=&#34;The Glorious Pipe Operator (Elixir for PHP Devs) — Let&amp;#39;s talk about how how the functional pipe operator helps to simplify and improve code readability and composability, and how it contrasts with the fluent interface design pattern commonly used in OOP.&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: The Glorious Pipe Operator (Elixir for PHP Devs) — Let&amp;#39;s talk about how how the functional pipe operator helps to simplify and improve code readability and composability, and how it contrasts with the fluent interface design pattern commonly used in OOP.&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;The Glorious Pipe Operator (Elixir for PHP Devs)&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Let&amp;#39;s talk about how how the functional pipe operator helps to simplify and improve code readability and composability, and how it contrasts with the fluent interface design pattern commonly used i...&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;Jesse Leite · jesseleite.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;I’m so glad that python supports method chaining out of the box, very similar to the pipe operator that Jesse mentions here.  It makes everything much more readable to follow the flow rather than needing to parse nested funcion calls &lt;code&gt;out(inside())&lt;/code&gt;.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 is AI ruining opensource? - YouTube</title>
    <id>https://waylonwalker.com/thought-861/</id>
    <updated>2025-11-02T15:31:24Z</updated>
    <published>2025-11-02T15:31:24Z</published>
    <link href="https://waylonwalker.com/thought-861/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/watch?v=kP93L683UOE</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;kP93L683UOE&#34; title=&#34;is AI ruining opensource?&#34; playlabel=&#34;Play: is AI ruining opensource?&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;I greatly appreciated the wide variety of experienced maintainers of large oss projects.  From webdev to desktop application.  The most common sentiment here was don’t contribute to open source just to contribute to open source. Bring something meaningful to the project.  Find a project you like, look at the discussions/issues for work or start some discussions.  If there are no meaningful features that you can add to projects that you use and love, make your own thing.  Adam from tailwind really hit on this one several times.  He has made tailwind extensible so that you &lt;strong&gt;don’t&lt;/strong&gt; have to contribute to tailwind to get new capabilities, you can probably just extend tailwind with your thing.  Its likely that it makes a lot more sense or your use case, and if it turns out that it makes sense for everyone have the discussion about bringing it in.  The upside to small oss projects is that you can move at whatever pace you want and break them all you want when the user base is just you.  As you move your stuff into tailwind you have to be very careful not to break the massive tailwind user base and you have to bend to the release schedule of tailwind.&lt;/p&gt;&#xA;&lt;p&gt;The other adjacent topic that kept coming back is that low effort Prs are definitely on the rise with some of the projects.  Refactor PRs get automatically closed because they are likely LLM driven, bring little to no value to the project, but bring a ton of risk.  Don’t do this to maintiners.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Corner Clamp V1 Isometric</title>
    <id>https://waylonwalker.com/shots/corner-clamp-v1-isometric/</id>
    <updated>2025-11-01T13:39:02Z</updated>
    <published>2025-11-01T13:39:02Z</published>
    <link href="https://waylonwalker.com/shots/corner-clamp-v1-isometric/" rel="alternate" type="text/html"></link>
    <summary type="text">Isometric view of my corner clamp v1 that supports up to 3/4&#34; sheets and includes slots for dowell points on 3/4&#34; and 1/2&#34; material.</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/6a0c5ef1-4f8b-4b4d-9def-60e3168a464c.png&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Corner Clamp V1 isometric&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/6a0c5ef1-4f8b-4b4d-9def-60e3168a464c.png&#34; alt=&#34;Corner Clamp V1 isometric&#34;/ data-glightbox=&#34;description: Corner Clamp V1 isometric&#34;&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;Isometric view of my corner clamp v1 that supports up to 3/4&amp;#34; sheets and includes slots for dowell points on 3/4&amp;#34; and 1/2&amp;#34; material.&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Act Ii</title>
    <id>https://waylonwalker.com/shots/act-ii/</id>
    <updated>2025-11-01T10:13:03Z</updated>
    <published>2025-11-01T10:13:03Z</published>
    <link href="https://waylonwalker.com/shots/act-ii/" rel="alternate" type="text/html"></link>
    <summary type="text">Act Ii</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/6128f50f-7d0d-4d9f-abf6-a471350704ab.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Act Ii&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/file/6128f50f-7d0d-4d9f-abf6-a471350704ab.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/file/6128f50f-7d0d-4d9f-abf6-a471350704ab.mp4&#34; type=&#34;video/mp4&#34;&gt;Act Ii&lt;/video&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;Act Ii&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Last Judge</title>
    <id>https://waylonwalker.com/shots/last-judge/</id>
    <updated>2025-11-01T10:12:13Z</updated>
    <published>2025-11-01T10:12:13Z</published>
    <link href="https://waylonwalker.com/shots/last-judge/" rel="alternate" type="text/html"></link>
    <summary type="text">Last Judge</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/b83801b8-f203-4344-a429-dd36f95784cc.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Last Judge&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/file/b83801b8-f203-4344-a429-dd36f95784cc.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/file/b83801b8-f203-4344-a429-dd36f95784cc.mp4&#34; type=&#34;video/mp4&#34;&gt;Last Judge&lt;/video&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;Last Judge&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ rustfs rustfs</title>
    <id>https://waylonwalker.com/rustfs-rustfs/</id>
    <updated>2025-10-31T12:38:49Z</updated>
    <published>2025-10-31T12:38:49Z</published>
    <link href="https://waylonwalker.com/rustfs-rustfs/" rel="alternate" type="text/html"></link>
    <summary type="text">rustfs by rustfs is a game-changer in its space. Excited to see how it evolves.</summary>
    <content type="html">&lt;p&gt;&lt;a href=&#34;https://github.com/rustfs/rustfs&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;rustfs&lt;/a&gt; by &lt;a href=&#34;https://github.com/rustfs&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;rustfs&lt;/a&gt; is a game-changer in its space. Excited to see how it evolves.&lt;/p&gt;&#xA;&lt;p&gt;🚀 RustFS is an open-source, S3-compatible high-performance object storage system supporting migration and coexistence with other S3-compatible platforms such as MinIO and Ceph.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Rules</title>
    <id>https://waylonwalker.com/rules/</id>
    <updated>2025-10-30T08:38:48Z</updated>
    <published>2025-10-30T08:38:48Z</published>
    <link href="https://waylonwalker.com/rules/" rel="alternate" type="text/html"></link>
    <summary type="text">There is no such thing as magic 1. Be ready to roll back live deployments 1. If CI was too fast be suspicious 1. Always be available after a release. 1. No...</summary>
    <content type="html">&lt;ol&gt;&#xA;&lt;li&gt;There is no such thing as magic&lt;/li&gt;&#xA;&lt;li&gt;Be ready to roll back live deployments&lt;/li&gt;&#xA;&lt;li&gt;If CI was too fast be suspicious&lt;/li&gt;&#xA;&lt;li&gt;Always be available after a release.&lt;/li&gt;&#xA;&lt;li&gt;No one wants to read your slop, if you are too lazy to write it don’t send&#xA;it.&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 You already have a git server: (Maurycy&#39;s blog)</title>
    <id>https://waylonwalker.com/thought-860/</id>
    <updated>2025-10-29T13:04:20Z</updated>
    <published>2025-10-29T13:04:20Z</published>
    <link href="https://waylonwalker.com/thought-860/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://maurycyz.com/misc/easy_git/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://maurycyz.com/misc/easy_git/&#34; class=&#34;embed-card-link  has-avatar has-avatar-before&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/maurycyz.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/maurycyz.com.ico&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;You already have a git server: (Maurycy&amp;#39;s blog)&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;maurycyz.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;It’s so easy to forget low level tech sometimes.  Things that are dead simple and just work without a hitch.  &lt;code&gt;git&lt;/code&gt; is one of those rock solid things thats very easy to remember all that it does, this is a classic use case.&lt;/p&gt;&#xA;&lt;p&gt;This just works&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;cd&lt;/span&gt; /parent/directory/for/repo&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;git clone ssh://username@server/path/to/repo&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;In order to recieve you must update the remote to allow recieve.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;git config receive.denyCurrentBranch updateInstead&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Now you can pull update push.&lt;/p&gt;&#xA;&lt;p&gt;It’s funny how this was the way I first learned to do Continuous Deployment to a RHEL7 machine, also how Heroku worked, but its so easy to forget this solution is there.  I come across it every few years and immediately have a few use cases in mind.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Please don&#39;t give Reflect Orbital money: (Maurycy&#39;s blog)</title>
    <id>https://waylonwalker.com/thought-859/</id>
    <updated>2025-10-29T12:45:07Z</updated>
    <published>2025-10-29T12:45:07Z</published>
    <link href="https://waylonwalker.com/thought-859/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://maurycyz.com/misc/sunlight_a_service/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://maurycyz.com/misc/sunlight_as_a_service/&#34; class=&#34;embed-card-link  has-avatar has-avatar-before&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/maurycyz.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/maurycyz.com.ico&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Please don&amp;#39;t give Reflect Orbital money: (Maurycy&amp;#39;s blog)&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;maurycyz.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Well done write up about reflecting solar energy back to earth from low orbit space.  I did not know this was a thing, apparently it is/isn’t.  Solar is a great technology, its largest limitations are that its not consistent.  This tech does not fix this problem, what does is efficient long term storage.  I’ve seen some crazy ideas going back to my days in school, maybe elementry school.  Theres a lot of innovative ways to store potential energy by moving heavy objects uphill whether fluid or solid.  The issue is that energy storage at grid scale is HUGE and not efficient enough.  Even assuming this idea had any legs at all, it still doesn’t solve the problem of inconsistent power because it still cant go through clouds!&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Post by @letitmelo.bsky.social — Bluesky</title>
    <id>https://waylonwalker.com/thought-858/</id>
    <updated>2025-10-29T03:29:25Z</updated>
    <published>2025-10-29T03:29:25Z</published>
    <link href="https://waylonwalker.com/thought-858/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://bsky.app/profile/letitmelo.bsky.social/post/3m4bxweqs3k2u</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://bsky.app/profile/letitmelo.bsky.social/post/3m4bxweqs3k2u&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img src=&#34;https://cdn.bsky.app/img/feed_thumbnail/plain/did:plc:4cssogwxqtgf2ogidyq63x7r/bafkreicpsrr7vctapomg533uvr5ai2zwnbvxn6hfhzousicozmrjv3tz7y&#34; alt=&#34;Melo (@letitmelo.bsky.social) — I legitimately didn&amp;#39;t know they were competing with Steam and it&amp;#39;s crazy to me that they burnt so much money on what sounds like something with very little (or wildly misguided) market research.&#xA;&amp;lt;p&amp;gt;[contains quote post or other embedded content]&amp;#34; loading=“lazy”&amp;gt;&#xA;&amp;lt;/div&amp;gt;&#xA;&amp;lt;div class=&#34; embed-card-content glightbox&#34;=&#34;&#34;/ data-glightbox=&#34;description: Melo (@letitmelo.bsky.social) — I legitimately didn&amp;#39;t know they were competing with Steam and it&amp;#39;s crazy to me that they burnt so much money on what sounds like something with very little (or wildly misguided) market research.&#xA;&amp;lt;p&amp;gt;[contains quote post or other embedded content]&amp;#34; loading=“lazy”&amp;gt;&#xA;&amp;lt;/div&amp;gt;&#xA;&amp;lt;div class=&#34;&gt;&#xA;&lt;div class=&#34;embed-card-title&#34;&gt;Melo (@letitmelo.bsky.social)&lt;/div&gt;&#xA;&lt;div class=&#34;embed-card-description&#34;&gt;I legitimately didn&amp;#39;t know they were competing with Steam and it&amp;#39;s crazy to me that they burnt so much money on what sounds like something with very little (or wildly misguided) market research.&lt;p&gt;&lt;/p&gt;&#xA;&lt;p&gt;[…&lt;/p&gt;&lt;/div&gt;&#xA;&lt;div class=&#34;embed-card-meta&#34;&gt;Bluesky Social · bsky.app&lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;/a&gt;&lt;p&gt;&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Wild to see the LinkedIn post linked here to see how out of touch this feels.  I find it astonishing that they have something so ingrained into gaming culture as twitch, yet build something like Prime Gaming.  Maybe I have no idea what Prime gaming is, but it feels like the opposite of ownership.  What I get from steam is a sense of ownership.  I own the desktop/laptop/handheld, no one &lt;strong&gt;cough&lt;/strong&gt; &lt;em&gt;nintendo&lt;/em&gt; &lt;strong&gt;cough cough&lt;/strong&gt; cant remotely disable my device for using it inappropriately.  I have a sense of trust with steam that as long as Gabe is alive I own what I paid for and will be able to open up and play anything at any time on any device I want.  It might be a $100 dell workstation raised out of the coorporate refurb bin, it might be a high end machine, It could be my 2010 gateway or my 2045 custom build and they are all likely to play a good amount of my library at some level.  I still understand that I really own nothing and the moment steam turns off its servers its quite likely  that everything is broken, but its by far the best we have.  Far from the status quo we are headed towards with subscription and cloud based gaming.  If they wanted to disrupt steam they did not understand their audience.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Bazzite on X: &#34;@thesvpanda @_Messier_33 @LeagueOfLegends Unfor...</title>
    <id>https://waylonwalker.com/thought-857/</id>
    <updated>2025-10-28T21:46:30Z</updated>
    <published>2025-10-28T21:46:30Z</published>
    <link href="https://waylonwalker.com/thought-857/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://x.com/bazzite_gg/status/1983204433627623590</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://x.com/bazzite_gg/status/1983204433627623590&#34; class=&#34;embed-card-link  has-avatar has-avatar-before&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/x.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/x.com.ico&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;External Link&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;X (formerly Twitter) · x.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;ROASTED&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;Unfortunately that game uses some of the worst spyware in the industry, it will never work outside of &amp;gt; Windows with secure boot enabled and TPM hardware.&lt;/p&gt;&#xA;&lt;p&gt;Consider Dota 2 or other mobas by competent developers&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Post by @meredithmeredith.bsky.social — Bluesky</title>
    <id>https://waylonwalker.com/thought-855/</id>
    <updated>2025-10-28T02:16:52Z</updated>
    <published>2025-10-28T02:16:52Z</published>
    <link href="https://waylonwalker.com/thought-855/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://bsky.app/profile/meredithmeredith.bsky.social/post/3m46a2fm5ac23</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://bsky.app/profile/meredithmeredith.bsky.social/post/3m46a2fm5ac23&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img src=&#34;https://cdn.bsky.app/img/avatar_thumbnail/plain/did:plc:so5r7asbd26pmnnoerksklor/bafkreihm5jczz7o5i5mlgxpvrevjo5ognicavscbohsorgqjw5el5d3dmu&#34; alt=&#34;Meredith Whittaker  (@meredithmeredith.bsky.social) — 📣THREAD: It’s surprising to me that so many people were surprised to learn that Signal runs partly on AWS (something we can do because we use encryption to make sure no one but you–not AWS, not Signal, not anyone–can access your comms). &#xA;&amp;lt;p&amp;gt;It’s also concerning. 1/&amp;lt;/p&amp;gt;&#xA;&amp;lt;p&amp;gt;[contains quote post or other embedded content]&amp;#34; loading=“lazy”&amp;gt;&#xA;&amp;lt;/div&amp;gt;&#xA;&amp;lt;div class=&#34; embed-card-content glightbox&#34;=&#34;&#34;/ data-glightbox=&#34;description: Meredith Whittaker  (@meredithmeredith.bsky.social) — 📣THREAD: It’s surprising to me that so many people were surprised to learn that Signal runs partly on AWS (something we can do because we use encryption to make sure no one but you–not AWS, not Signal, not anyone–can access your comms). &#xA;&amp;lt;p&amp;gt;It’s also concerning. 1/&amp;lt;/p&amp;gt;&#xA;&amp;lt;p&amp;gt;[contains quote post or other embedded content]&amp;#34; loading=“lazy”&amp;gt;&#xA;&amp;lt;/div&amp;gt;&#xA;&amp;lt;div class=&#34;&gt;&#xA;&lt;div class=&#34;embed-card-title&#34;&gt;Meredith Whittaker  (@meredithmeredith.bsky.social)&lt;/div&gt;&#xA;&lt;div class=&#34;embed-card-description&#34;&gt;📣THREAD: It’s surprising to me that so many people were surprised to learn that Signal runs partly on AWS (something we can do because we use encryption to make sure no one but you–not AWS, …&lt;/div&gt;&#xA;&lt;div class=&#34;embed-card-meta&#34;&gt;Bluesky Social · bsky.app&lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;/a&gt;&lt;p&gt;&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Great justification for using the cloud.  The infrastructure requirement for signal to be such a great app would be massive for a small team with low budget.  The cloud is fantastic at unknown scaling, bursts beyond reasonable capacity to run yourself, getting compute &lt;strong&gt;everywhere&lt;/strong&gt; in the world, and offloading huge infrastructure management costs.&lt;/p&gt;&#xA;&lt;p&gt;DHH is 100% right that we have gone too far, too many things come out cloud first for services that can be ran locally &lt;strong&gt;cough&lt;/strong&gt; &lt;em&gt;such as your bed&lt;/em&gt; &lt;strong&gt;cough cough&lt;/strong&gt;.  One week ago when the world came to a hault, I did not bat an eye at these small teams with complex requirements going down with AWS.&lt;/p&gt;&#xA;&lt;p&gt;Their own products seem quite damning to me.  It signals that they cannot themselves become resilient to themselves.  It shows how hard this problem is, how much cost in complexity and resources it requires.  I’m sure there are fail overs that happened successfully that we will never hear about, critical products with large engineering overhead.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ schollz croc</title>
    <id>https://waylonwalker.com/schollz-croc/</id>
    <updated>2025-10-27T12:33:54Z</updated>
    <published>2025-10-27T12:33:54Z</published>
    <link href="https://waylonwalker.com/schollz-croc/" rel="alternate" type="text/html"></link>
    <summary type="text">Just starred croc by schollz. It&#39;s an exciting project with a lot to offer.</summary>
    <content type="html">&lt;p&gt;Just starred &lt;a href=&#34;https://github.com/schollz/croc&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;croc&lt;/a&gt; by &lt;a href=&#34;https://github.com/schollz&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;schollz&lt;/a&gt;. It’s an exciting project with a lot to offer.&lt;/p&gt;&#xA;&lt;p&gt;Easily and securely send things from one computer to another 🐊 📦&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>uv s3 sync with dotenv</title>
    <id>https://waylonwalker.com/uv-s3-sync-with-dotenv/</id>
    <updated>2025-10-26T10:16:41Z</updated>
    <published>2025-10-26T10:16:41Z</published>
    <link href="https://waylonwalker.com/uv-s3-sync-with-dotenv/" rel="alternate" type="text/html"></link>
    <summary type="text">I often want to run an s3 sync in an isolated environment, I don&#39;t want to set any environment variables, I don&#39;t want anything secret in my history, and I...</summary>
    <content type="html">&lt;p&gt;I often want to run an s3 sync in an isolated environment, I don’t want to set&#xA;any environment variables, I don’t want anything secret in my history, and I&#xA;don’t want to change my dotenv into something that exports variables, I just&#xA;want s3 sync to work.  &lt;code&gt;dotenv run&lt;/code&gt; is the tool that I’ve been using for this,&#xA;and this uv one liner lets it run fully isolated from the project.&lt;/p&gt;&#xA;&lt;h2 id=&#34;one-liner&#34;&gt;one liner &lt;a href=&#34;#one-liner&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;uv tool run --from &lt;span class=&#34;s1&#34;&gt;&amp;#39;python-dotenv[cli]&amp;#39;&lt;/span&gt; dotenv run -- uv tool run --from awscli aws s3 sync s3://bucket data&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;h2 id=&#34;multi-line&#34;&gt;multi-line &lt;a href=&#34;#multi-line&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;same thing formatted for readability&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;uv tool run &lt;span class=&#34;se&#34;&gt;\&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  --from &lt;span class=&#34;s1&#34;&gt;&amp;#39;python-dotenv[cli]&amp;#39;&lt;/span&gt; &lt;span class=&#34;se&#34;&gt;\&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  dotenv run -- &lt;span class=&#34;se&#34;&gt;\&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;uv tool run &lt;span class=&#34;se&#34;&gt;\&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  --from awscli &lt;span class=&#34;se&#34;&gt;\&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  aws s3 sync s3://dropper data&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;There are probably 10 ways to skin this cat, but this is what I did, if you&#xA;have a better way let me know, I’ll link you below.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>First 3d Printed Threads</title>
    <id>https://waylonwalker.com/first-3d-printed-threads/</id>
    <updated>2025-10-24T14:19:49Z</updated>
    <published>2025-10-24T14:19:49Z</published>
    <link href="https://waylonwalker.com/first-3d-printed-threads/" rel="alternate" type="text/html"></link>
    <summary type="text">Working on an upcoming project that requires some threaded screws. Trying to keep a low budget on this one with as much to come off of the printer as I can....</summary>
    <content type="html">&lt;p&gt;Working on an upcoming project that requires some threaded screws.  Trying to&#xA;keep a low budget on this one with as much to come off of the printer as I can.&#xA;It might become a slant3d portals product if it works out.  I always like&#xA;making test prints for stuff like this especially to see how the feel is off of&#xA;the printer that is going to print the final product and take much longer.&#xA;First try was a success.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/21498d89-41e1-45de-9b35-e3dd059de505.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;b485b759-719a-4aa0-aa8d-f98e0a5e1ac3-1080p.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/21498d89-41e1-45de-9b35-e3dd059de505.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/21498d89-41e1-45de-9b35-e3dd059de505.mp4&#34; type=&#34;video/mp4&#34;&gt;b485b759-719a-4aa0-aa8d-f98e0a5e1ac3-1080p.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;what-worked&#34;&gt;What worked &lt;a href=&#34;#what-worked&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;I started out looking up standard half inch thread pitch and size, but ran out&#xA;of time to get the exact profile of a half inch bolt, so I will need to fix&#xA;that later.  Th&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/376691bc-8aec-40f7-9137-9338cc2265b2.png&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Boolean operation to remove threads from the block with 0.1mm offset&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/376691bc-8aec-40f7-9137-9338cc2265b2.png&#34; alt=&#34;Boolean operation to remove threads from the block with 0.1mm offset&#34;/ data-glightbox=&#34;description: Boolean operation to remove threads from the block with 0.1mm offset&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;p&gt;The print orientation is critical for strength here.  This part is a full 1/2:&#xA;so it should be strong either way, but to make sure we are printing the bolt&#xA;horizontally to get nice long print layers.  To do this we have to give it a&#xA;bit of a flat spot on the top and bottom.  This does not hurt performance, if&#xA;anything it probably helps give some room for poor tolerances.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/60f37fc2-7e4b-4671-9bb4-582715e1534d.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Print orientation of the test parts&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/60f37fc2-7e4b-4671-9bb4-582715e1534d.webp&#34; alt=&#34;Print orientation of the test parts&#34;/ data-glightbox=&#34;description: Print orientation of the test parts&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;.5&amp;#34; od&lt;/li&gt;&#xA;&lt;li&gt;13tpi pitch&lt;/li&gt;&#xA;&lt;li&gt;non-standard profile… kids needed me and I called it good enough to run a test.&lt;/li&gt;&#xA;&lt;li&gt;0.1mm offset on all surfaces&lt;/li&gt;&#xA;&lt;li&gt;external threads printed horizontally&lt;/li&gt;&#xA;&lt;li&gt;internal threads printed vertically&lt;/li&gt;&#xA;&lt;li&gt;Chamfer all lead-in/lead-out&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Ellie Huxtable on evolving Atuin (her shell history tool) for ...</title>
    <id>https://waylonwalker.com/thought-854/</id>
    <updated>2025-10-24T00:53:16Z</updated>
    <published>2025-10-24T00:53:16Z</published>
    <link href="https://waylonwalker.com/thought-854/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/watch?v=OK3HrqDXqtU&amp;t=1675s</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;OK3HrqDXqtU&#34; title=&#34;Ellie Huxtable on evolving Atuin (her shell history tool) for the desktop with Rust and Tauri&#34; playlabel=&#34;Play: Ellie Huxtable on evolving Atuin (her shell history tool) for the desktop with Rust and Tauri&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Atuin desktop sounds dope AF, tried to install it off the &lt;a href=&#34;/aur/&#34; class=&#34;glossary-term&#34; title=&#34;Arch User Repository, a collection of community maintained packages for archlinux.&#34;&gt;AUR&lt;/a&gt; and it was broken for me.  Seems early and the dev team is all in on mac.  They have an official .deb and .rpm.  I’ll have to try again later, maybe the binary will work.&lt;/p&gt;&#xA;&lt;p&gt;The idea of building out runbooks from my Atuin data sounds dope AF.  It sounds like a mix of markdown and executable cells like a jupyter notebook, but not.  Really pitching hard to those of us in the system administration, dev ops, SRE space.  Having something that you walk through when a system goes down and you are feeling panicked in DR mode sounds relieving.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 My Bed Doesn&#39;t Work Because of AWS Outage? TheStandup - YouTube</title>
    <id>https://waylonwalker.com/thought-853/</id>
    <updated>2025-10-24T00:48:31Z</updated>
    <published>2025-10-24T00:48:31Z</published>
    <link href="https://waylonwalker.com/thought-853/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/watch?v=J893_8HlkPM</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;J893_8HlkPM&#34; title=&#34;AWS Outage And ANOTHER AI BROWSER???? - TheStandup&#34; playlabel=&#34;Play: AWS Outage And ANOTHER AI BROWSER???? - TheStandup&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Cloud is cooked bois.  Seriously too much dumb shit relies on the cloud.  Too much critical shit relies on single AZ’s.  If normies are literally loosing sleep over an AWS outage (queue the Uncle Roger Voice), You’ve Fucked up.  It’s wild to even think about a bed relying on the cloud let alone fully stop working when UE-1 goes down.  I want to live in a world of opt in FEATURES, things that bring value to a product because it makes it better.  Somehow a bed smells suspiciously like a cash grab for a subscription because its cloud connected.  And yet for some reason it takes 16GeeeBee’s per month.  I don’t own one of these, and I don’t want to.  I don’t want a subscription for everything, I want my shit to just work.  The future we are headed towards a world that is ever more reliant on a few key clouds.  Which is fine.  It’s fantastic that small companies can start and scale without owning an infrastructure team.  It’s great that they have the ability to give us many nines of reliability.  Some things just don’t need the cloud.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 #artificialintelligence #hiring | Gary Vaynerchuk | 20 comments</title>
    <id>https://waylonwalker.com/thought-852/</id>
    <updated>2025-10-24T00:39:49Z</updated>
    <published>2025-10-24T00:39:49Z</published>
    <link href="https://waylonwalker.com/thought-852/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.linkedin.com/posts/garyvaynerchuk_artificialintelligence-hiring-activity-7387261666289373184-BOIo</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://www.linkedin.com/posts/garyvaynerchuk_artificialintelligence-hiring-activity-7387261666289373184-BOIo&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img src=&#34;https://dms.licdn.com/playlist/vid/v2/D4E05AQEiRS8X3qmy3w/thumbnail-with-play-button-overlay-high/B4EZoTTPiyKcDg-/0/1761260417550?e=2147483647&amp;amp;v=beta&amp;amp;t=LG9qTvyFlSMZDW8IaFInudCqgiIrc2EiWOeM1UcV8TE&#34; alt=&#34;#artificialintelligence #hiring | Gary Vaynerchuk | 120 comments — I care about humanity first, THEN skills .. and in this AI-scaled world, human sh*t will win 🔑&#xA;&amp;lt;p&amp;gt;#artificialintelligence #hiring | 120 comments on LinkedIn&amp;#34; loading=“lazy”&amp;gt;&#xA;&amp;lt;/div&amp;gt;&#xA;&amp;lt;div class=&#34; embed-card-content glightbox&#34;=&#34;&#34;/ data-glightbox=&#34;description: #artificialintelligence #hiring | Gary Vaynerchuk | 120 comments — I care about humanity first, THEN skills .. and in this AI-scaled world, human sh*t will win 🔑&#xA;&amp;lt;p&amp;gt;#artificialintelligence #hiring | 120 comments on LinkedIn&amp;#34; loading=“lazy”&amp;gt;&#xA;&amp;lt;/div&amp;gt;&#xA;&amp;lt;div class=&#34;&gt;&#xA;&lt;div class=&#34;embed-card-title&#34;&gt;#artificialintelligence #hiring | Gary Vaynerchuk | 120 comments&lt;/div&gt;&#xA;&lt;div class=&#34;embed-card-description&#34;&gt;I care about humanity first, THEN skills .. and in this AI-scaled world, human sh*t will win 🔑&lt;p&gt;&lt;/p&gt;&#xA;&lt;p&gt;#artificialintelligence #hiring | 120 comments on LinkedIn&lt;/p&gt;&lt;/div&gt;&#xA;&lt;div class=&#34;embed-card-meta&#34;&gt;LinkedIn · linkedin.com&lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;/a&gt;&lt;p&gt;&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;More Human stuff that’s what we will be doing.  Less looking at docs, more architecting (which suspiciously looks like writing docs), more decision making, more explaining.  This is a good positive take on AI right now.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>3d Printed Thread Test</title>
    <id>https://waylonwalker.com/shots/3d-printed-thread-test/</id>
    <updated>2025-10-23T14:53:33Z</updated>
    <published>2025-10-23T14:53:33Z</published>
    <link href="https://waylonwalker.com/shots/3d-printed-thread-test/" rel="alternate" type="text/html"></link>
    <summary type="text">Spinning a 3d printed test block on a threaded t handle.</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/21498d89-41e1-45de-9b35-e3dd059de505.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;3d printed thread test&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/21498d89-41e1-45de-9b35-e3dd059de505.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/21498d89-41e1-45de-9b35-e3dd059de505.mp4&#34; type=&#34;video/mp4&#34;&gt;3d printed thread test&lt;/video&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;Spinning a 3d printed test block on a threaded t handle.&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>fastapi</title>
    <id>https://waylonwalker.com/fastapi/</id>
    <updated>2025-10-22T09:26:17Z</updated>
    <published>2025-10-22T09:26:17Z</published>
    <link href="https://waylonwalker.com/fastapi/" rel="alternate" type="text/html"></link>
    <summary type="text">FastAPI is a modern and efficient web framework for Python, built on top of the Starlette web framework, and pydantic for data validation and serialization.</summary>
    <content type="html">&lt;p&gt;FastAPI is a modern and efficient web framework for Python, built on top of the&#xA;Starlette web framework, and pydantic for data validation and serialization.&lt;/p&gt;&#xA;&lt;h2 id=&#34;from-the-fastapi-documentationhttpsfastapitiangolocom&#34;&gt;From the &lt;a href=&#34;https://fastapi.tiangolo.com/&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/fastapi.tiangolo.com.png&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/fastapi.tiangolo.com.png&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;FastAPI documentation&lt;/a&gt; &lt;a href=&#34;#from-the-fastapi-documentationhttpsfastapitiangolocom&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;FastAPI is a modern, fast (high-performance), web framework for building APIs with Python based on standard Python type hints.&lt;/p&gt;&#xA;&lt;p&gt;The key features are:&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;Fast: Very high performance, on par with NodeJS and Go (thanks to Starlette and Pydantic). One of the fastest Python frameworks available.&lt;/li&gt;&#xA;&lt;li&gt;Fast to code: Increase the speed to develop features by about 200% to 300%. *&lt;/li&gt;&#xA;&lt;li&gt;Fewer bugs: Reduce about 40% of human (developer) induced errors. *&lt;/li&gt;&#xA;&lt;li&gt;Intuitive: Great editor support. Completion everywhere. Less time debugging.&lt;/li&gt;&#xA;&lt;li&gt;Easy: Designed to be easy to use and learn. Less time reading docs.&lt;/li&gt;&#xA;&lt;li&gt;Short: Minimize code duplication. Multiple features from each parameter declaration. Fewer bugs.&lt;/li&gt;&#xA;&lt;li&gt;Robust: Get production-ready code. With automatic interactive documentation.&lt;/li&gt;&#xA;&lt;li&gt;Standards-based: Based on (and fully compatible with) the open standards for APIs: OpenAPI (previously known as Swagger) and JSON Schema.&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;h2 id=&#34;mentioned-in-2025-stack-overflow-surveyhttpssurveystackoverflowco2025technology1-web-frameworks-and-technologies&#34;&gt;Mentioned in &lt;a href=&#34;https://survey.stackoverflow.co/2025/technology/#1-web-frameworks-and-technologies&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/survey.stackoverflow.co.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/survey.stackoverflow.co.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;2025 Stack Overflow Survey&lt;/a&gt; &lt;a href=&#34;#mentioned-in-2025-stack-overflow-surveyhttpssurveystackoverflowco2025technology1-web-frameworks-and-technologies&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;The +5 point increase for FastAPI is one of the most significant shifts in the&#xA;web framework space. This signals a strong trend towards using Python for&#xA;building performant APIs and reflects the overall strength of the Python&#xA;ecosystem.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>starlette head request</title>
    <id>https://waylonwalker.com/starlette-head-request/</id>
    <updated>2025-10-22T09:11:31Z</updated>
    <published>2025-10-22T09:11:31Z</published>
    <link href="https://waylonwalker.com/starlette-head-request/" rel="alternate" type="text/html"></link>
    <summary type="text">Starlette has a head request that works right along side your get requests. This morning I fiddled around with custom routes for and , but had to manually...</summary>
    <content type="html">&lt;p&gt;&lt;a href=&#34;/starlette/&#34; class=&#34;glossary-term&#34; title=&#34;Starlette is a low level web framework for modern (as of 2025) async python development most famously used by &lt;a href=&#34;/fastapi/&#34; class=&#34;glossary-term&#34; title=&#34;FastAPI is a modern and efficient web framework for Python, built on top of the Starlette web framework, and pydantic for data validation and serialization.&#34;&gt;FastAPI&lt;/a&gt;.&#34;&gt;Starlette&lt;/a&gt; has a head request that works right along side your get requests.&#xA;This morning I fiddled around with custom routes for &lt;code&gt;GET&lt;/code&gt; and &lt;code&gt;HEAD&lt;/code&gt;, but had&#xA;to manually set some things about the file, and was still missing &lt;code&gt;e-tag&lt;/code&gt; in&#xA;the end.  Turns out as a developer you can &lt;a href=&#34;/just/&#34; class=&#34;wikilink&#34; data-title=&#34;just&#34; data-description=&#34;I just never quite understood why the word can send people over the top. I get it when you don&amp;#39;t know someone, you don&amp;#39;t have history with them, and they...&#34; data-date=&#34;2025-06-23&#34; data-preview=&#34;I just never quite understood why the word can send people over the top. I get it when you don&amp;#39;t know someone, you don&amp;#39;t have history with them, and they...&#34;&gt;just&lt;/a&gt; add a &lt;code&gt;head&lt;/code&gt; route to&#xA;your &lt;code&gt;get&lt;/code&gt; routes and starlette will strip the content for you, while&#xA;preserving all of those good headers that fastapi &lt;code&gt;FileResponse&lt;/code&gt; created&#xA;automatically for you.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;kn&#34;&gt;from&lt;/span&gt; &lt;span class=&#34;nn&#34;&gt;fastapi&lt;/span&gt; &lt;span class=&#34;kn&#34;&gt;import&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;APIRouter&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;kn&#34;&gt;from&lt;/span&gt; &lt;span class=&#34;nn&#34;&gt;fastapi.response&lt;/span&gt; &lt;span class=&#34;kn&#34;&gt;import&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;FileResponse&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;kn&#34;&gt;from&lt;/span&gt; &lt;span class=&#34;nn&#34;&gt;fastapi&lt;/span&gt; &lt;span class=&#34;kn&#34;&gt;import&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;Request&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;kn&#34;&gt;from&lt;/span&gt; &lt;span class=&#34;nn&#34;&gt;pathlib&lt;/span&gt; &lt;span class=&#34;kn&#34;&gt;import&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;Path&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;router&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;APIRouter&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;()&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nd&#34;&gt;@router.get&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;/file/&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;{filename}&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nd&#34;&gt;@router.head&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;/file/&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;{filename}&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;async&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;def&lt;/span&gt; &lt;span class=&#34;nf&#34;&gt;get_file&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;filename&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;nb&#34;&gt;str&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;request&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;Request&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,):&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;n&#34;&gt;headers&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;      &lt;span class=&#34;s2&#34;&gt;&amp;#34;Cache-Control&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;no-cache, no-store, must-revalidate&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;p&#34;&gt;}&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;kn&#34;&gt;from&lt;/span&gt; &lt;span class=&#34;nn&#34;&gt;pathlib&lt;/span&gt; &lt;span class=&#34;kn&#34;&gt;import&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;Path&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;n&#34;&gt;filename&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;Path&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;sa&#34;&gt;f&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;data/&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;filename&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;}&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;k&#34;&gt;if&lt;/span&gt; &lt;span class=&#34;ow&#34;&gt;not&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;filename&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;exists&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;():&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;k&#34;&gt;raise&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;HTTPException&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;status_code&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;404&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;detail&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;File not found&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;k&#34;&gt;return&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;FileResponse&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;filename&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;headers&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;headers&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Here is an example of the response with curl.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;❯ curl -I -L &lt;span class=&#34;s2&#34;&gt;&amp;#34;http://localhost:8100/api/file/e5523925-1565-454c-bab3-c70c4deabc83.webp?width=250&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;HTTP/1.1 &lt;span class=&#34;m&#34;&gt;200&lt;/span&gt; OK&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;date: Wed, &lt;span class=&#34;m&#34;&gt;22&lt;/span&gt; Oct &lt;span class=&#34;m&#34;&gt;2025&lt;/span&gt; 14:16:03 GMT&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;server: uvicorn&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;cache-control: no-cache, no-store, must-revalidate&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;content-type: image/webp&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;content-length: &lt;span class=&#34;m&#34;&gt;17206&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;last-modified: Tue, &lt;span class=&#34;m&#34;&gt;23&lt;/span&gt; Sep &lt;span class=&#34;m&#34;&gt;2025&lt;/span&gt; 14:03:20 GMT&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;etag: f891660c1543feb1af7564f08abdd511&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;❯ curl -I -L &lt;span class=&#34;s2&#34;&gt;&amp;#34;http://localhost:8100/api/file/unknown-file.webp?width=250&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;HTTP/1.1 &lt;span class=&#34;m&#34;&gt;404&lt;/span&gt; Not Found&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;date: Wed, &lt;span class=&#34;m&#34;&gt;22&lt;/span&gt; Oct &lt;span class=&#34;m&#34;&gt;2025&lt;/span&gt; 14:16:11 GMT&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;server: uvicorn&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;content-length: &lt;span class=&#34;m&#34;&gt;27&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;content-type: application/json&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Don&#39;t copy your gitignore to stignore</title>
    <id>https://waylonwalker.com/dont-copy-your-gitignore-to-stignore/</id>
    <updated>2025-10-21T18:43:00Z</updated>
    <published>2025-10-21T18:43:00Z</published>
    <link href="https://waylonwalker.com/dont-copy-your-gitignore-to-stignore/" rel="alternate" type="text/html"></link>
    <summary type="text">Today I learned that while and look very similar they are not. My obsidian directory had been locked up for a few weeks and I had no idea why until I logged...</summary>
    <content type="html">&lt;p&gt;Today I learned that while &lt;code&gt;.stignore&lt;/code&gt; and &lt;code&gt;.gitignore&lt;/code&gt; look very similar they&#xA;are not.  My obsidian directory had been locked up for a few weeks and I had no&#xA;idea why until I logged into the web ui and saw errors.  The errors were some&#xA;confusing regex validator not matching.  I don’t know what the exact error was,&#xA;but I went in and only ignored the files I cared about instead of the entire&#xA;gitignore.  Primarily I was getting conflicts in my &lt;code&gt;.git&lt;/code&gt; directory.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ pytauri pytauri</title>
    <id>https://waylonwalker.com/pytauri-pytauri/</id>
    <updated>2025-10-16T12:19:42Z</updated>
    <published>2025-10-16T12:19:42Z</published>
    <link href="https://waylonwalker.com/pytauri-pytauri/" rel="alternate" type="text/html"></link>
    <summary type="text">pytauri has done a fantastic job with pytauri. Highly recommend taking a look.</summary>
    <content type="html">&lt;p&gt;&lt;a href=&#34;https://github.com/pytauri&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;pytauri&lt;/a&gt; has done a fantastic job with &lt;a href=&#34;https://github.com/pytauri/pytauri&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;pytauri&lt;/a&gt;. Highly recommend taking a look.&lt;/p&gt;&#xA;&lt;p&gt;Tauri binding for Python through Pyo3&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ FullControlXYZ fullcontrol</title>
    <id>https://waylonwalker.com/fullcontrolxyz-fullcontrol/</id>
    <updated>2025-10-15T00:04:22Z</updated>
    <published>2025-10-15T00:04:22Z</published>
    <link href="https://waylonwalker.com/fullcontrolxyz-fullcontrol/" rel="alternate" type="text/html"></link>
    <summary type="text">The work on fullcontrol by FullControlXYZ.</summary>
    <content type="html">&lt;p&gt;The work on &lt;a href=&#34;https://github.com/FullControlXYZ/fullcontrol&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;fullcontrol&lt;/a&gt; by &lt;a href=&#34;https://github.com/FullControlXYZ&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;FullControlXYZ&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Python version of FullControl for toolpath design (and more) - the readme below is best source of information&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ zauberzeug nicegui</title>
    <id>https://waylonwalker.com/zauberzeug-nicegui/</id>
    <updated>2025-10-12T23:12:28Z</updated>
    <published>2025-10-12T23:12:28Z</published>
    <link href="https://waylonwalker.com/zauberzeug-nicegui/" rel="alternate" type="text/html"></link>
    <summary type="text">I&#39;m impressed by nicegui from zauberzeug.</summary>
    <content type="html">&lt;p&gt;I’m impressed by &lt;a href=&#34;https://github.com/zauberzeug/nicegui&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;nicegui&lt;/a&gt; from &lt;a href=&#34;https://github.com/zauberzeug&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;zauberzeug&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Create web-based user interfaces with Python. The nice way.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>3d Printed Dovetails Fanned Out</title>
    <id>https://waylonwalker.com/shots/3d-printed-dovetails-fanned-out/</id>
    <updated>2025-10-12T20:39:17Z</updated>
    <published>2025-10-12T20:39:17Z</published>
    <link href="https://waylonwalker.com/shots/3d-printed-dovetails-fanned-out/" rel="alternate" type="text/html"></link>
    <summary type="text">Experimental slices of 3d printed dovetails laid out in a fan. Each have sharpie notes written on them.</summary>
    <content type="html">&lt;p&gt;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/4a90cbe1-9124-4a6b-baf9-1545afe3dd00.webp&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/e23a6965-a84b-4eb0-9d84-73ddc831949f.webp&#34; alt=&#34;PXL_20251013_011946949.webp&#34;/ data-glightbox=&#34;description: PXL_20251013_011946949.webp&#34;&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;Experimental slices of 3d printed dovetails laid out in a fan.  Each have sharpie notes written on them.&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>3d Printing Dovetails Experiment</title>
    <id>https://waylonwalker.com/3d-printing-dovetails-experiment/</id>
    <updated>2025-10-12T20:34:35Z</updated>
    <published>2025-10-12T20:34:35Z</published>
    <link href="https://waylonwalker.com/3d-printing-dovetails-experiment/" rel="alternate" type="text/html"></link>
    <summary type="text">I hit an issue with 3d printing oversized parts that I have not hit before. I&#39;m working on some jigs for an upcoming woodworking project that will involve a...</summary>
    <content type="html">&lt;p&gt;I hit an issue with 3d printing oversized parts that I have not hit before.&#xA;I’m working on some jigs for an upcoming woodworking project that will involve&#xA;a lot of repetition.  We want to utilize some dowel joinery and jigs for&#xA;consistency.  These parts will be up to 20in  in length this is much larger&#xA;than my print bed.&lt;/p&gt;&#xA;&lt;h2 id=&#34;ive-fit-things-together-before&#34;&gt;I’ve fit things together before &lt;a href=&#34;#ive-fit-things-together-before&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;Here’s where I went wrong, I wasn’t really thinking through my previous&#xA;applications.  They’ve all been slip fit, primarily print in place joints that&#xA;need to move.  My go to offset for print in place on my printer is 0.2mm,&#xA;sometimes 0.1mm depending on the scale.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/30335f07-9cac-4e66-b908-f0e3cfbf7582.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;knife sharpener double hinge first try&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/30335f07-9cac-4e66-b908-f0e3cfbf7582.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/30335f07-9cac-4e66-b908-f0e3cfbf7582.mp4&#34; type=&#34;video/mp4&#34;&gt;knife sharpener double hinge first try&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;p&gt;A live hinged [[ knife-sharpener-double-hinge-first-try ]].&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/ea421e67-5cb0-4a9f-be14-08a5004df493.jpg&#34; class=&#34;glightbox-link&#34; aria-label=&#34;a box of caps and a macropad&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/ea421e67-5cb0-4a9f-be14-08a5004df493.jpg&#34; alt=&#34;a box of caps and a macropad&#34;/ data-glightbox=&#34;description: a box of caps and a macropad&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;p&gt;And in the hinges of [[ a-box-of-caps-and-a-macropad ]].&lt;/p&gt;&#xA;&lt;h2 id=&#34;experimenting-for-feel&#34;&gt;Experimenting for feel &lt;a href=&#34;#experimenting-for-feel&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;Fitment like this is a lot dependent on the tolerences of your printer and the&#xA;feel you are going for.  I went to school as a mechanical engineer and theres a&#xA;lot of science behind press fit joints, that’s not happening in my house on my&#xA;desktop printer.  Most of us don’t have that kind of ability to gauge our&#xA;outputs so I’m doing like a cook in the kitchen and going for feel.&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/4a90cbe1-9124-4a6b-baf9-1545afe3dd00.webp&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/e23a6965-a84b-4eb0-9d84-73ddc831949f.webp&#34; alt=&#34;PXL_20251013_011946949.webp&#34;/ data-glightbox=&#34;description: PXL_20251013_011946949.webp&#34;&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;Here are all of the experiements lined up.&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;h2 id=&#34;fillets&#34;&gt;Fillets &lt;a href=&#34;#fillets&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;I again, I feel like I should have known better.  3d printers generally have&#xA;0.4mm nozzles, common sizes you can get 0.2mm, 0.4mm, 0.6mm, and 0.8mm.  This&#xA;leaves us with the sharpest corner we can do at 0.2mm.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/5533d56c-00e4-486d-b2a0-a994bbd1f1a4.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;b49ea6a6-115b-44f8-99c0-d5f58f7c9940.webp&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/5533d56c-00e4-486d-b2a0-a994bbd1f1a4.webp&#34; alt=&#34;b49ea6a6-115b-44f8-99c0-d5f58f7c9940.webp&#34;/ data-glightbox=&#34;description: b49ea6a6-115b-44f8-99c0-d5f58f7c9940.webp&#34;&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;Diagram courtesy of gpt-5.&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;&lt;h3 id=&#34;potentially-overkill&#34;&gt;Potentially overkill &lt;a href=&#34;#potentially-overkill&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h3&gt;&#xA;&lt;p&gt;In order to make sure that the flat edges of the dovetails are what are making&#xA;contact and not corners binding I made the inside fillet 0.6mm and the outside&#xA;0.4mm.  This 0.4mm radius (0.8mm diameter) is double my nozzle size, and will&#xA;cause the printer to follow a smooth curve rather than start and stop and&#xA;potentially overflow a bit.  This difference in fillet size will also leave a&#xA;little room for error and allow the important flat faces to mate together.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/ec3a9841-9b39-4180-96e4-613be79ee793.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;fillets.webp&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/ec3a9841-9b39-4180-96e4-613be79ee793.webp&#34; alt=&#34;fillets.webp&#34;/ data-glightbox=&#34;description: fillets.webp&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;p&gt;Here are the test results after filleting the edges of the dovetails to&#xA;compensate for printer errors.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition vsplit&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Fillets&lt;/p&gt;&#xA;&lt;div class=&#34;admonition vsplit&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Before Fillets&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/a289064c-960c-4f83-8b92-ec8524f51690.webp&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/3ed04466-6303-4e72-b292-0f446785c9cb.webp&#34; alt=&#34;PXL_20251013_014851451.webp&#34;/ data-glightbox=&#34;description: PXL_20251013_014851451.webp&#34;&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;&lt;div class=&#34;admonition vsplit&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;After Fillets&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/ea3f4651-68b7-4aac-a00d-2f11db1f11a3.webp&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/149a93d0-bce7-45df-845d-77c7a16c3218.webp&#34; alt=&#34;PXL_20251013_014909663.webp&#34;/ data-glightbox=&#34;description: PXL_20251013_014909663.webp&#34;&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;h2 id=&#34;tldr-what-works-for-me&#34;&gt;TLDR What works for me &lt;a href=&#34;#tldr-what-works-for-me&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;After all of this, turns out that common sense kinda just works here, 0mm&#xA;offset works really well on my printer, and leaving room in the corners to keep&#xA;them from binding up helps a bit, but is probably unnecessary.&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;0mm offset&lt;/li&gt;&#xA;&lt;li&gt;0.6mm inside fillet&lt;/li&gt;&#xA;&lt;li&gt;0.4mm outside fillet&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 This Web Server Is 100% Solar Powered - YouTube</title>
    <id>https://waylonwalker.com/thought-851/</id>
    <updated>2025-10-11T22:21:38Z</updated>
    <published>2025-10-11T22:21:38Z</published>
    <link href="https://waylonwalker.com/thought-851/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/watch?v=Gz56Cm-B6kg</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;Gz56Cm-B6kg&#34; title=&#34;This Web Server Is 100% Solar Powered&#34; playlabel=&#34;Play: This Web Server Is 100% Solar Powered&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;This is super cool, thanks to Brodie for reading me this content as I do household chores.  &lt;a href=&#34;https://solar.lowtechmagazine.com/&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/solar.lowtechmagazine.com.svg&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/solar.lowtechmagazine.com.svg&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;lowtech magazine&lt;/a&gt; is a website ran completely on solar power with only enough battery backup to cover most days.  Adding enough to cover all days would increase its carbon footprint and negate the carbon offset of the solar panels it runs on.&lt;/p&gt;&#xA;&lt;p&gt;It’s fascinating to see a web server running completely off grid in a close power system.  These interesting websites are fascinating keep em coming Brodie.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 2025 The Year Of The Linux Desktop - YouTube</title>
    <id>https://waylonwalker.com/thought-850/</id>
    <updated>2025-10-10T13:14:37Z</updated>
    <published>2025-10-10T13:14:37Z</published>
    <link href="https://waylonwalker.com/thought-850/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/watch?v=GQJZ96l-XQ4</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;GQJZ96l-XQ4&#34; title=&#34;Apple Introduces The Year Of The Linux Desktop!&#34; playlabel=&#34;Play: Apple Introduces The Year Of The Linux Desktop!&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;The Year of the Linux Desktop is a meme, every year is the year of the Linux desktop as it gains rounding errors of market share.  Outside of Linux nerds, developers that use servers on the regular, cheap asses reviving old hardware that is dead in the eyes of other OS’s, the average user wont even notice a difference with the right distro.  I ran bazzite with plasma for over a year, It would be super beginner friendly while allowing users customization on levels never seen on non-Linux machines.  Other than adobe, roblox, and EA games with easy anti-cheat most users probably aren’t going to run in to any issues.  They probably wont even notice at this point, which is where the meme comes in.  Why would anyone switch if its not noticeably different for the average user, they wont, until what is working for them stops working for them.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Handle Jig Alignment Window</title>
    <id>https://waylonwalker.com/shots/handle-jig-alignment-window/</id>
    <updated>2025-10-10T08:49:02Z</updated>
    <published>2025-10-10T08:49:02Z</published>
    <link href="https://waylonwalker.com/shots/handle-jig-alignment-window/" rel="alternate" type="text/html"></link>
    <summary type="text">Handle jig for theater boxes. The image shows the centerline lineup. This jig came out with a handle a little bit too big, going to go with a smaller one for the real boxes.</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/10a83121-6c3f-4171-9c63-1bae742c88a2.jpg&#34; class=&#34;glightbox-link&#34; aria-label=&#34;handle jig alignment window&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/10a83121-6c3f-4171-9c63-1bae742c88a2.jpg&#34; alt=&#34;handle jig alignment window&#34;/ data-glightbox=&#34;description: handle jig alignment window&#34;&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;Handle jig for theater boxes. The image shows the centerline lineup.  This jig came out with a handle a little bit too big, going to go with a smaller one for the real boxes.&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ Mordoria unnamed_game_1_v2</title>
    <id>https://waylonwalker.com/mordoria-unnamed_game_1_v2/</id>
    <updated>2025-10-09T12:57:37Z</updated>
    <published>2025-10-09T12:57:37Z</published>
    <link href="https://waylonwalker.com/mordoria-unnamed_game_1_v2/" rel="alternate" type="text/html"></link>
    <summary type="text">Looking for inspiration? unnamed_1_v2 by Mordoria.</summary>
    <content type="html">&lt;p&gt;Looking for inspiration? &lt;a href=&#34;https://github.com/Mordoria/unnamed_game_1_v2&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;unnamed_game_1_v2&lt;/a&gt; by &lt;a href=&#34;https://github.com/Mordoria&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;Mordoria&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;The Release of Mordoria&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Litewind</title>
    <id>https://waylonwalker.com/thought-849/</id>
    <updated>2025-10-05T01:12:20Z</updated>
    <published>2025-10-05T01:12:20Z</published>
    <link href="https://waylonwalker.com/thought-849/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://litewindcss.com/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://litewindcss.com/&#34; class=&#34;embed-card-link  has-avatar has-avatar-before&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/litewindcss.com.png&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/litewindcss.com.png&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Litewind&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Litewind is Tailwind without the build step&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;litewindcss.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;This is a sick no-build version of tailwind.  I have a couple of projects that the build step of tailwind is cumbersome on, mostly because they are for non-js devs.  Some are for backend python devs, some are for folks that mostly want markdown with some styles.  This is a perfect no-build tailwind alternative.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>python extras are for shipping</title>
    <id>https://waylonwalker.com/python-extras-are-for-shipping/</id>
    <updated>2025-10-03T20:18:23Z</updated>
    <published>2025-10-03T20:18:23Z</published>
    <link href="https://waylonwalker.com/python-extras-are-for-shipping/" rel="alternate" type="text/html"></link>
    <summary type="text">Python has two ways of adding optional dependencies to your projects pyproject.toml file and .</summary>
    <content type="html">&lt;p&gt;Python has two ways of adding optional dependencies to your projects&#xA;pyproject.toml file &lt;code&gt;dependency-groups&lt;/code&gt; and &lt;code&gt;optional-dependencies&lt;/code&gt;.&lt;/p&gt;&#xA;&lt;h2 id=&#34;dependency-groups&#34;&gt;dependency-groups &lt;a href=&#34;#dependency-groups&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;&lt;em&gt;for development&lt;/em&gt;&lt;/p&gt;&#xA;&lt;p&gt;Dependency grooups are used when working on the project, they do not ship with&#xA;the project, users cannot select to install them with the project.  These are&#xA;for things like running tests, linting, or docs.  You might want to run these&#xA;in ci, or keep your dev machines tight.  For the most part you can probably&#xA;keep these in &lt;code&gt;dev&lt;/code&gt;.  Depending on your team, fluency, and tolerance for slower&#xA;installs extra packages.  Adding too many tight groups might make it hard for&#xA;the team to remember all the groups and which one to use and end up with them&#xA;using &lt;code&gt;--all-groups&lt;/code&gt; anyways.&lt;/p&gt;&#xA;&lt;h2 id=&#34;optional-dependencies&#34;&gt;optional-dependencies &lt;a href=&#34;#optional-dependencies&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;&lt;em&gt;for users&lt;/em&gt;&lt;/p&gt;&#xA;&lt;p&gt;Optional dependencies are for shipping.  These are for your users, not your&#xA;development team.  This is used for dependencies that are clearly not needed&#xA;for all or main use cases.  It is annoying to use projects that you need to add&#xA;optionals to just to use at all so use them a bit sparingly.&lt;/p&gt;&#xA;&lt;h2 id=&#34;example-&lt;a href=&#34;/fastapi/&#34; class=&#34;glossary-term&#34; title=&#34;FastAPI is a modern and efficient web framework for Python, built on top of the Starlette web framework, and pydantic for data validation and serialization.&#34;&gt;fastapi&lt;/a&gt;&#34;&gt;example fastapi &lt;a href=&#34;#example-fastapi&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://github.com/fastapi/fastapi/blob/master/pyproject.toml&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;fastapi&lt;/a&gt;&#xA;provides a very simple example. &lt;code&gt;fastapi&lt;/code&gt; itself provides almost everything you&#xA;need with optional-dependencies for &lt;code&gt;standard&lt;/code&gt;,&#xA;&lt;code&gt;standard-no-fastapi-cloud-cli&lt;/code&gt;, and &lt;code&gt;all&lt;/code&gt;.  These primarily add support for&#xA;uvicorn websockets and multipart forms.&lt;/p&gt;&#xA;&lt;h2 id=&#34;example-pandas&#34;&gt;example pandas &lt;a href=&#34;#example-pandas&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://github.com/pandas-dev/pandas/blob/main/pyproject.toml&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;Pandas&lt;/a&gt; is a&#xA;very good example here.  As a data processing library there are a lot of&#xA;different sources for data that you might want to use, but you probably won’t&#xA;need most of them, and often don’t need them to &lt;a href=&#34;/just/&#34; class=&#34;wikilink&#34; data-title=&#34;just&#34; data-description=&#34;I just never quite understood why the word can send people over the top. I get it when you don&amp;#39;t know someone, you don&amp;#39;t have history with them, and they...&#34; data-date=&#34;2025-06-23&#34; data-preview=&#34;I just never quite understood why the word can send people over the top. I get it when you don&amp;#39;t know someone, you don&amp;#39;t have history with them, and they...&#34;&gt;just&lt;/a&gt; get a &lt;code&gt;DataFrame&lt;/code&gt;&#xA;going.  They offer a long list of optional dependencies such as &lt;code&gt;pyarrow&lt;/code&gt;,&#xA;&lt;code&gt;aws&lt;/code&gt;, &lt;code&gt;gcp&lt;/code&gt;, &lt;code&gt;postgresql&lt;/code&gt; and many more.&lt;/p&gt;&#xA;&lt;h2 id=&#34;example-kedro-datasets&#34;&gt;example kedro-datasets &lt;a href=&#34;#example-kedro-datasets&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;Very similar to pandas &lt;code&gt;kedro-datasets&lt;/code&gt; uses a similar pattern to pandas but at&#xA;a higher level.  A dataset is an abstraction of a datasource that get defined&#xA;in the catalog, and primarily provide the framework with &lt;code&gt;load&lt;/code&gt; and &lt;code&gt;save&lt;/code&gt;&#xA;methods for datasets. There are many optionals for data providers like pandas,&#xA;but also many for each dataframe abstraction like &lt;code&gt;pandas&lt;/code&gt;, &lt;code&gt;polars&lt;/code&gt;, &lt;code&gt;dask&lt;/code&gt;,&#xA;&lt;code&gt;databricks&lt;/code&gt;.&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://github.com/kedro-org/kedro-plugins/blob/main/kedro-datasets/pyproject.toml&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;kedro-datasets&lt;/a&gt;&lt;/p&gt;&#xA;&lt;h2 id=&#34;lets-build-a-package&#34;&gt;let’s build a package &lt;a href=&#34;#lets-build-a-package&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;Let’s make a package called &lt;code&gt;learn-uv&lt;/code&gt; that implements these dependency features.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;mkdir /tmp/learn-uv&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;cd&lt;/span&gt; /tmp/learn-uv&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;uv init --package&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;uv add httpx&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# add development dependencies&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;uv add --dev pytest&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;uv add --group dev ipython&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# add documentation dependencies to the docs group&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;uv add --group docs markata&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# add optional dependencies&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# these are dependencies that a user could install&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# python -m pip install &amp;#39;learn-uv[data-science]&amp;#39;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;uv add --optional data-science pandas&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# add extra dependencies&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# this adds the jupyter extra from rich&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# similar to `python -m pip install &amp;#39;learn-uv[jupyter]&amp;#39;`&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;uv add --extra jupyter rich&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;This will result in the following pyproject.toml.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;nx&#34;&gt;project&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nx&#34;&gt;name&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;learn-uv&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nx&#34;&gt;version&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;0.1.0&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nx&#34;&gt;description&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;Add your description here&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nx&#34;&gt;readme&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;README.md&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nx&#34;&gt;authors&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt; &lt;span class=&#34;nx&#34;&gt;name&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;Waylon S. Walker&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;nx&#34;&gt;email&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;hello@waylonwalker.com&amp;#34;&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;}&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nx&#34;&gt;requires-python&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;&amp;gt;=3.13&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nx&#34;&gt;dependencies&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;c&#34;&gt;# uv add httpx&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;s2&#34;&gt;&amp;#34;httpx&amp;gt;=0.28.1&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;c&#34;&gt;# uv add --extra jupyter rich&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;s2&#34;&gt;&amp;#34;rich[jupyter]&amp;gt;=14.1.0&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;nx&#34;&gt;project&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nx&#34;&gt;scripts&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nx&#34;&gt;learn-uv&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;learn_uv:main&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;nx&#34;&gt;project&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nx&#34;&gt;optional-dependencies&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nx&#34;&gt;data-science&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;c&#34;&gt;# uv add --optional data-science pandas&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;s2&#34;&gt;&amp;#34;pandas&amp;gt;=2.3.3&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;nx&#34;&gt;build-system&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nx&#34;&gt;requires&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;uv_build&amp;gt;=0.8.22,&amp;lt;0.9.0&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nx&#34;&gt;build-backend&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;uv_build&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;nx&#34;&gt;dependency-groups&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nx&#34;&gt;dev&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;c&#34;&gt;# uv add --group dev ipython&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;s2&#34;&gt;&amp;#34;ipython&amp;gt;=9.6.0&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;c&#34;&gt;# uv add --dev pytest&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;s2&#34;&gt;&amp;#34;pytest&amp;gt;=8.4.2&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nx&#34;&gt;docs&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;c&#34;&gt;# uv add --group docs markata&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;s2&#34;&gt;&amp;#34;markata&amp;gt;=0.9.1&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;h2 id=&#34;using-the-project&#34;&gt;Using the project &lt;a href=&#34;#using-the-project&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;Let’s start off with one common point of confusion.  &lt;code&gt;uv tool run&lt;/code&gt; or its alias&#xA;&lt;code&gt;uvx&lt;/code&gt; does not install any dependencies or anything from the project.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;uv tool run ipython&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;ul&gt;&#xA;&lt;li&gt;✅ ipython&lt;/li&gt;&#xA;&lt;li&gt;❌ learn_uv&lt;/li&gt;&#xA;&lt;li&gt;❌ httpx&lt;/li&gt;&#xA;&lt;li&gt;❌ pytest&lt;/li&gt;&#xA;&lt;li&gt;❌ markata&lt;/li&gt;&#xA;&lt;li&gt;❌ pandas&lt;/li&gt;&#xA;&lt;li&gt;❌ rich&lt;/li&gt;&#xA;&lt;li&gt;❌ ipywidgets (from rich[jupyter])&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;Using &lt;code&gt;uv run&lt;/code&gt; is project aware, installs the dependencies from the&#xA;pyproject.toml.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;uv run ipython&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;ul&gt;&#xA;&lt;li&gt;✅ ipython&lt;/li&gt;&#xA;&lt;li&gt;✅ learn_uv&lt;/li&gt;&#xA;&lt;li&gt;✅ httpx&lt;/li&gt;&#xA;&lt;li&gt;✅ pytest&lt;/li&gt;&#xA;&lt;li&gt;❌ markata&lt;/li&gt;&#xA;&lt;li&gt;❌ pandas&lt;/li&gt;&#xA;&lt;li&gt;✅ rich&lt;/li&gt;&#xA;&lt;li&gt;✅ ipywidgets (from rich[jupyter])&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;uv run --group docs markata&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;ul&gt;&#xA;&lt;li&gt;✅ ipython&lt;/li&gt;&#xA;&lt;li&gt;✅ learn_uv&lt;/li&gt;&#xA;&lt;li&gt;✅ httpx&lt;/li&gt;&#xA;&lt;li&gt;✅ pytest&lt;/li&gt;&#xA;&lt;li&gt;✅ markata&lt;/li&gt;&#xA;&lt;li&gt;❌ pandas&lt;/li&gt;&#xA;&lt;li&gt;✅ rich&lt;/li&gt;&#xA;&lt;li&gt;✅ ipywidgets (from rich[jupyter])&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;Installing the optional dependency extra &lt;code&gt;data-science&lt;/code&gt; gives me &lt;code&gt;pandas&lt;/code&gt; in&#xA;this project.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;uv run --extra data-science ipython&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;ul&gt;&#xA;&lt;li&gt;✅ ipython&lt;/li&gt;&#xA;&lt;li&gt;✅ learn_uv&lt;/li&gt;&#xA;&lt;li&gt;✅ httpx&lt;/li&gt;&#xA;&lt;li&gt;✅ pytest&lt;/li&gt;&#xA;&lt;li&gt;✅ markata&lt;/li&gt;&#xA;&lt;li&gt;✅ pandas&lt;/li&gt;&#xA;&lt;li&gt;✅ rich&lt;/li&gt;&#xA;&lt;li&gt;✅ ipywidgets (from rich[jupyter])&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;h2 id=&#34;everything&#34;&gt;everything &lt;a href=&#34;#everything&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;There are many combinations of include/exclude that you can use, check &lt;code&gt;uv run --help&lt;/code&gt; to see all of the options.  Here is the nuclear option to include&#xA;everything.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;uv run --all-groups --all-extras ipython&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;h2 id=&#34;potential-uv-bug&#34;&gt;Potential &lt;code&gt;uv&lt;/code&gt; bug &lt;a href=&#34;#potential-uv-bug&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;At the time of writing once a dependency group is used it persists in the&#xA;&lt;a href=&#34;/virtual-environment/&#34; class=&#34;glossary-term&#34; title=&#34;Virtual Environment is term for a sandboxed environment commonly associated with the python programming language. If you are installing any sort of python...&#34;&gt;virtual environment&lt;/a&gt; for the rest of the project.  This is not the case with&#xA;&lt;code&gt;extras&lt;/code&gt; it only includes the &lt;code&gt;extras&lt;/code&gt; you ask for on each run.  The state is&#xA;clean and consistent with &lt;code&gt;extras&lt;/code&gt;, but &lt;code&gt;groups&lt;/code&gt; depend on what you have ran&#xA;before in the project.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;❯ uv --version&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;uv 0.8.22 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;ade2bdbd2 2025-09-23&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;example&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# install docs group&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;uv sync --group docs&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# docs dependencies are available&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;uv run markata&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# sync resets the environment&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;uv sync&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# docs dependencies are not available&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;uv run markata&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;error: Failed to spawn: &lt;span class=&#34;sb&#34;&gt;`&lt;/span&gt;markata&lt;span class=&#34;sb&#34;&gt;`&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  Caused by: Permission denied &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;os error 13&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Sister Splinter</title>
    <id>https://waylonwalker.com/shots/sister-splinter/</id>
    <updated>2025-10-03T18:04:34Z</updated>
    <published>2025-10-03T18:04:34Z</published>
    <link href="https://waylonwalker.com/shots/sister-splinter/" rel="alternate" type="text/html"></link>
    <summary type="text">Sister Splinter</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/e4d2843c-efeb-4965-b627-3e834db6378a.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Sister Splinter&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/file/e4d2843c-efeb-4965-b627-3e834db6378a.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/file/e4d2843c-efeb-4965-b627-3e834db6378a.mp4&#34; type=&#34;video/mp4&#34;&gt;Sister Splinter&lt;/video&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;Sister Splinter&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Cling Grip Bind</title>
    <id>https://waylonwalker.com/shots/cling-grip-bind/</id>
    <updated>2025-10-03T18:02:33Z</updated>
    <published>2025-10-03T18:02:33Z</published>
    <link href="https://waylonwalker.com/shots/cling-grip-bind/" rel="alternate" type="text/html"></link>
    <summary type="text">Cling Grip Bind</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/fa7bd8cb-7311-446f-82eb-9b31cd5b2101.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Cling Grip Bind&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/file/fa7bd8cb-7311-446f-82eb-9b31cd5b2101.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/file/fa7bd8cb-7311-446f-82eb-9b31cd5b2101.mp4&#34; type=&#34;video/mp4&#34;&gt;Cling Grip Bind&lt;/video&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;Cling Grip Bind&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 python 3.14 highlights! - YouTube</title>
    <id>https://waylonwalker.com/thought-848/</id>
    <updated>2025-10-03T01:04:57Z</updated>
    <published>2025-10-03T01:04:57Z</published>
    <link href="https://waylonwalker.com/thought-848/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/watch?v=-Z-BDux-TRk</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;-Z-BDux-TRk&#34; title=&#34;python 3.14 highlights!&#34; playlabel=&#34;Play: python 3.14 highlights!&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;anthony has some of the best python highlight videos each year.  This might be a good sign, but each year there seems to be less and less that I am chomping at the bit to get to.  I thought the remote debugger looked every interesting, his use case for &lt;code&gt;babi&lt;/code&gt; seemed very interesting.  I wonder what textual would look like built in a 3.14 world, would it still have built its own debugger/console?&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;uv tool run --python&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;3.14 babi&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Without a process flag you need sudo permissions to attach a pdb debugger similar to gdb.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;ps -ef &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt; grep babi&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;uv tool run --python&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;3.14 python -m pdb -p8605&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/b5e1a34d-c198-440a-ab30-4498bfa6962a.png&#34; class=&#34;glightbox-link&#34; aria-label=&#34;screenshot-2025-10-03T01-11-02-918Z.png&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/b5e1a34d-c198-440a-ab30-4498bfa6962a.png&#34; alt=&#34;screenshot-2025-10-03T01-11-02-918Z.png&#34;/ data-glightbox=&#34;description: screenshot-2025-10-03T01-11-02-918Z.png&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 This $15 Fingerboard Mold from Amazon SHOCKED me!! - YouTube</title>
    <id>https://waylonwalker.com/thought-847/</id>
    <updated>2025-10-03T00:59:29Z</updated>
    <published>2025-10-03T00:59:29Z</published>
    <link href="https://waylonwalker.com/thought-847/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/watch?v=GAudJhMrqwo</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;GAudJhMrqwo&#34; title=&#34;I bought a $15 Fingerboard Mold from Amazon! Is it Worth it?&#34; playlabel=&#34;Play: I bought a $15 Fingerboard Mold from Amazon! Is it Worth it?&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;This is a pretty sick result, good fingerboards are stupid expensive.  This looks like a fun way to make some good ones on the cheap.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Kraft-Coordinates</title>
    <id>https://waylonwalker.com/kraft-coordinates/</id>
    <updated>2025-10-02T16:52:02Z</updated>
    <published>2025-10-02T16:52:02Z</published>
    <link href="https://waylonwalker.com/kraft-coordinates/" rel="alternate" type="text/html"></link>
    <summary type="text">Handy reference for coordinates in the kraft world.</summary>
    <content type="html">&lt;p&gt;Handy reference for coordinates in the &lt;a href=&#34;/kraft/&#34; class=&#34;wikilink&#34; data-title=&#34;kraft&#34; data-description=&#34;Kraft is the family gaming server that we started early 2025.&#34; data-date=&#34;2025-06-01&#34; data-preview=&#34;Kraft is the family gaming server that we started early 2025.&#34;&gt;kraft&lt;/a&gt; world.&lt;/p&gt;&#xA;&lt;h2 id=&#34;home&#34;&gt;Home &lt;a href=&#34;#home&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;Overworld:-208 71 -291&#xA;Nether:-26 9 -36&lt;/p&gt;&#xA;&lt;h2 id=&#34;ocean-monument&#34;&gt;Ocean Monument &lt;a href=&#34;#ocean-monument&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;Overworld: 209 62 -752&#xA;Nether:26 1 -94&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 PEP 735 – Dependency Groups in pyproject.toml | peps.python.org</title>
    <id>https://waylonwalker.com/thought-846/</id>
    <updated>2025-10-01T16:25:57Z</updated>
    <published>2025-10-01T16:25:57Z</published>
    <link href="https://waylonwalker.com/thought-846/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://peps.python.org/pep-0735/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://peps.python.org/pep-0735/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://peps.python.org/_static/og-image.png&#34; alt=&#34;PEP 735 – Dependency Groups in pyproject.toml | peps.python.org — This PEP specifies a mechanism for storing package requirements in pyproject.toml files such that they are not included in any built distribution of the project.&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: PEP 735 – Dependency Groups in pyproject.toml | peps.python.org — This PEP specifies a mechanism for storing package requirements in pyproject.toml files such that they are not included in any built distribution of the project.&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;PEP 735 – Dependency Groups in pyproject.toml | peps.python.org&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;This PEP specifies a mechanism for storing package requirements in pyproject.toml files such that they are not included in any built distribution of the project.&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;Python Enhancement Proposals (PEPs) · peps.python.org&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;PEP 735 describes dependency groups as sets of optional dependencies that are not shipped with the package but intended for development purposes.&lt;/p&gt;&#xA;&lt;p&gt;The PEP includes an example for groups that include test, docs, typing, and a combo typing-test.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;nx&#34;&gt;dependency-groups&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nx&#34;&gt;test&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;pytest&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;coverage&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nx&#34;&gt;docs&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;sphinx&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;sphinx-rtd-theme&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nx&#34;&gt;typing&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;mypy&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;types-requests&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nx&#34;&gt;typing-test&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;[{&lt;/span&gt;&lt;span class=&#34;nx&#34;&gt;include-group&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;typing&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;},&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;nx&#34;&gt;include-group&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;test&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;},&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;useful-types&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;This is implemented in uv and can be used by several of their commands.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;uv sync --group &lt;span class=&#34;nb&#34;&gt;test&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;uv run --group &lt;span class=&#34;nb&#34;&gt;test&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;uv add --group &lt;span class=&#34;nb&#34;&gt;test&lt;/span&gt; pytest&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;uv remove --group &lt;span class=&#34;nb&#34;&gt;test&lt;/span&gt; pytest&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;uv &lt;span class=&#34;nb&#34;&gt;export&lt;/span&gt; --group &lt;span class=&#34;nb&#34;&gt;test&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;uv tree --group &lt;span class=&#34;nb&#34;&gt;test&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;h2 id=&#34;dependency-groups-are-not-extras&#34;&gt;Dependency Groups are not Extras &lt;a href=&#34;#dependency-groups-are-not-extras&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;The docs describe extras as being intended to ship with the application and dependency groups intended for development.  The spec allows both to exist with the same name, but care should be taken as tools may have different implementations.&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;Tools MAY choose to provide the same interfaces for installing Dependency Groups as they do for installing extras.&lt;/p&gt;&#xA;&lt;p&gt;Note that this specification does not forbid having an extra whose name matches a Dependency Group.&lt;/p&gt;&#xA;&lt;p&gt;Users are advised to avoid creating Dependency Groups whose names match extras. Tools MAY treat such matching as an error.&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Running Software on Software You’ve Never Run</title>
    <id>https://waylonwalker.com/thought-845/</id>
    <updated>2025-09-29T18:54:45Z</updated>
    <published>2025-09-29T18:54:45Z</published>
    <link href="https://waylonwalker.com/thought-845/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://blog.jim-nielsen.com/2025/run-software-on-software-youve-never-run/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://blog.jim-nielsen.com/2025/run-software-on-software-youve-never-run/&#34; class=&#34;embed-card-link  has-avatar has-avatar-before&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/blog.jim-nielsen.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/blog.jim-nielsen.com.ico&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Running Software on Software You’ve Never Run&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Writing about the big beautiful mess that is making things for the world wide web.&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;blog.jim-nielsen.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Running software applications in production today is crazy.  One point release opens up for supply chain attacks.  What’s crazier is not running your production applications without a lock file, potentially running dependencies you’ve never ran before for the first time in prod.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Using Litestream to Restore My Database for Easy Development</title>
    <id>https://waylonwalker.com/thought-844/</id>
    <updated>2025-09-29T18:49:12Z</updated>
    <published>2025-09-29T18:49:12Z</published>
    <link href="https://waylonwalker.com/thought-844/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://pype.dev/using-litestream-to-restore-my-database-for-easy-development/#Update</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://pype.dev/using-litestream-to-restore-my-database-for-easy-development/#Update&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://cdn.statically.io/gh/pypeaday/images.pype.dev/main/blog-media/20250807213014_2a14556e.png&#34; alt=&#34;Using Litestream to Restore My Database for Easy Development | Nic Payne — Litestream see [[using-litestream-to-backup-quadtasks-sqlite-db]] for how I setup litestream replication for [[quadtask]] I have the entrypoint to my app contai&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: Using Litestream to Restore My Database for Easy Development | Nic Payne — Litestream see [[using-litestream-to-backup-quadtasks-sqlite-db]] for how I setup litestream replication for [[quadtask]] I have the entrypoint to my app contai&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Using Litestream to Restore My Database for Easy Development | Nic Payne&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Litestream see [[using-litestream-to-backup-quadtasks-sqlite-db]] for how I setup litestream replication for [[quadtask]] I have the entrypoint to my app contai&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;pype.dev&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;I really like how well the local dev is setup to run off of production data here.  I’ll use this as a reminder that I need to set up lite stream on a few of my projects that it’s missing from and include a nice sync prod data &lt;a href=&#34;/tags/justfile/&#34; class=&#34;wikilink&#34; data-title=&#34;Posts tagged: justfile&#34; data-description=&#34;All posts with the tag &amp;#34;justfile&amp;#34;&#34; data-preview=&#34;All posts with the tag &amp;#34;justfile&amp;#34;&#34;&gt;Posts tagged: justfile&lt;/a&gt; recipe.&lt;/p&gt;&#xA;&lt;p&gt;Litestreams interface always throws me for a loop.  It works fantastic,  but the global config stored in /etc and some of the commands break my brain.  It’s not you it’s me.&lt;/p&gt;&#xA;&lt;p&gt;Using real data when you can is goated.  Fake data is so often a perfect example of what someone thinks the backend should look like and does not include things that users actually do, running pipelines for days, or setting titles to paragraphs worth of text.  Obviously this is not possible everywhere and the more sensitive your data the harder that process becomes.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 TIL: Loading .env files with uv run</title>
    <id>https://waylonwalker.com/thought-843/</id>
    <updated>2025-09-29T18:42:01Z</updated>
    <published>2025-09-29T18:42:01Z</published>
    <link href="https://waylonwalker.com/thought-843/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://daniel.feldroy.com/posts/til-2025-09-env-files-with-uv-run</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://daniel.feldroy.com/posts/til-2025-09-env-files-with-uv-run&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://f004.backblazeb2.com/file/daniel-feldroy-com/public/logos/til-1.png&#34; alt=&#34;TIL: Loading .env files with uv run — Replacing python-dotenv with uv&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: TIL: Loading .env files with uv run — Replacing python-dotenv with uv&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;TIL: Loading .env files with uv run&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Replacing python-dotenv with uv&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;https://daniel.feldroy.com · daniel.feldroy.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;I smell a dependency to &lt;code&gt;python-dotenv&lt;/code&gt; dying in my workflow.  I originally read the title of the post and thought, “I know how to manage .env and almost skipped it”.  I’m leaning more and more on &lt;code&gt;uv run&lt;/code&gt; these days, so this should &lt;a href=&#34;/just/&#34; class=&#34;wikilink&#34; data-title=&#34;just&#34; data-description=&#34;I just never quite understood why the word can send people over the top. I get it when you don&amp;#39;t know someone, you don&amp;#39;t have history with them, and they...&#34; data-date=&#34;2025-06-23&#34; data-preview=&#34;I just never quite understood why the word can send people over the top. I get it when you don&amp;#39;t know someone, you don&amp;#39;t have history with them, and they...&#34;&gt;just&lt;/a&gt; go in my [[ just file ]] to make it easy to run.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ folke sidekick.nvim</title>
    <id>https://waylonwalker.com/folke-sidekick-nvim/</id>
    <updated>2025-09-29T16:14:21Z</updated>
    <published>2025-09-29T16:14:21Z</published>
    <link href="https://waylonwalker.com/folke-sidekick-nvim/" rel="alternate" type="text/html"></link>
    <summary type="text">Check out sidekick.nvim by folke. It&#39;s a well-crafted project with great potential.</summary>
    <content type="html">&lt;p&gt;Check out &lt;a href=&#34;https://github.com/folke/sidekick.nvim&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;sidekick.nvim&lt;/a&gt; by &lt;a href=&#34;https://github.com/folke&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;folke&lt;/a&gt;. It’s a well-crafted project with great potential.&lt;/p&gt;&#xA;&lt;p&gt;Your Neovim AI sidekick&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ jfernandez mdserve</title>
    <id>https://waylonwalker.com/jfernandez-mdserve/</id>
    <updated>2025-09-28T13:34:12Z</updated>
    <published>2025-09-28T13:34:12Z</published>
    <link href="https://waylonwalker.com/jfernandez-mdserve/" rel="alternate" type="text/html"></link>
    <summary type="text">I&#39;m really excited about mdserve, an amazing project by jfernandez. It&#39;s worth exploring!</summary>
    <content type="html">&lt;p&gt;I’m really excited about &lt;a href=&#34;https://github.com/jfernandez/mdserve&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;mdserve&lt;/a&gt;, an amazing project by &lt;a href=&#34;https://github.com/jfernandez&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;jfernandez&lt;/a&gt;. It’s worth exploring!&lt;/p&gt;&#xA;&lt;p&gt;Fast markdown preview server with live reload and theme support.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 A quote from Dan Abramov</title>
    <id>https://waylonwalker.com/thought-842/</id>
    <updated>2025-09-27T16:11:23Z</updated>
    <published>2025-09-27T16:11:23Z</published>
    <link href="https://waylonwalker.com/thought-842/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://simonwillison.net/2025/Sep/27/dan-abramov/#atom-everything</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://simonwillison.net/2025/Sep/27/dan-abramov/#atom-everything&#34; class=&#34;embed-card-link  has-avatar has-avatar-before&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/simonwillison.net.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/simonwillison.net.ico&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;A quote from Dan Abramov&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Conceptually, Mastodon is a bunch of copies of the same webapp emailing each other. There is no realtime global aggregation across the network so it can only offer a fragmented …&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;Simon Willison’s Weblog · simonwillison.net&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Interesting catch from the HN discussion over his &lt;a href=&#34;https://overreacted.io/open-social/&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/overreacted.io.png&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/overreacted.io.png&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;article&lt;/a&gt; that came out yestereday.  I scanned it yesterday and it has some really fascinating diagrams showing different phases of the web being open, to being siloed, to somewhere that we are trying to make it easy to publish, and retain ownership.  I don’t know enough about bluesky, but the core is build on the AT protocol, you can &lt;a href=&#34;/self-host/&#34; class=&#34;glossary-term&#34; title=&#34;Self hosting is the act of hosting your own applications and services without using a SAS provider. This is typically done with your own hardware, but there...&#34;&gt;self host&lt;/a&gt; your own instance, you can build different front ends for it.  So rather than having siloed instagram, FB, twitter, there are clones of those platforms that read the same data from everyones data, that they have the option of self hosting.&lt;/p&gt;&#xA;&lt;p&gt;I like this distinction between Mastadon here.  Mastadon can also be self host, but its data aggregation is decentralized, so each instance is fragmented and cannot have a complete view of the data.  The way that the ATproto does its aggregation is quite fascinating and feels right for an open social platform.  I’m probably missing something, but if you are posting to one of these platfoms publically, why not have the data available to all of them, if you don’t want it shared it probably belongs somewhere more private anyways and there are platforms for that.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Wanderers Crest Bind</title>
    <id>https://waylonwalker.com/shots/wanderers-crest-bind/</id>
    <updated>2025-09-27T10:46:39Z</updated>
    <published>2025-09-27T10:46:39Z</published>
    <link href="https://waylonwalker.com/shots/wanderers-crest-bind/" rel="alternate" type="text/html"></link>
    <summary type="text">Wanderers Crest Bind</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/320d1bf2-4e55-44b7-b352-dc898a5313c7.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Wanderers Crest Bind&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/file/320d1bf2-4e55-44b7-b352-dc898a5313c7.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/file/320d1bf2-4e55-44b7-b352-dc898a5313c7.mp4&#34; type=&#34;video/mp4&#34;&gt;Wanderers Crest Bind&lt;/video&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;Wanderers Crest Bind&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Reapers Crest Gangfight</title>
    <id>https://waylonwalker.com/shots/reapers-crest-gangfight/</id>
    <updated>2025-09-27T10:45:25Z</updated>
    <published>2025-09-27T10:45:25Z</published>
    <link href="https://waylonwalker.com/shots/reapers-crest-gangfight/" rel="alternate" type="text/html"></link>
    <summary type="text">Reapers Crest Gangfight</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/7f055638-af55-4c35-81c5-5a34e7a1428b.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Reapers Crest Gangfight&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/file/7f055638-af55-4c35-81c5-5a34e7a1428b.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/file/7f055638-af55-4c35-81c5-5a34e7a1428b.mp4&#34; type=&#34;video/mp4&#34;&gt;Reapers Crest Gangfight&lt;/video&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;Reapers Crest Gangfight&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Violent Flintbeetle 2</title>
    <id>https://waylonwalker.com/shots/violent-flintbeetle-2/</id>
    <updated>2025-09-27T10:38:25Z</updated>
    <published>2025-09-27T10:38:25Z</published>
    <link href="https://waylonwalker.com/shots/violent-flintbeetle-2/" rel="alternate" type="text/html"></link>
    <summary type="text">Violent Flintbeetle 2</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/861803a9-f97f-417e-b0e3-50618396ed1d.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Violent Flintbeetle 2&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/file/861803a9-f97f-417e-b0e3-50618396ed1d.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/file/861803a9-f97f-417e-b0e3-50618396ed1d.mp4&#34; type=&#34;video/mp4&#34;&gt;Violent Flintbeetle 2&lt;/video&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;Violent Flintbeetle 2&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Violent Flintbeetle Granted</title>
    <id>https://waylonwalker.com/shots/violent-flintbeetle-granted/</id>
    <updated>2025-09-27T10:36:16Z</updated>
    <published>2025-09-27T10:36:16Z</published>
    <link href="https://waylonwalker.com/shots/violent-flintbeetle-granted/" rel="alternate" type="text/html"></link>
    <summary type="text">Violent Flintbeetle Granted</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/bf0a8d2f-dee8-4d46-9509-99d2ad2eb524.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Violent Flintbeetle Granted&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/file/bf0a8d2f-dee8-4d46-9509-99d2ad2eb524.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/file/bf0a8d2f-dee8-4d46-9509-99d2ad2eb524.mp4&#34; type=&#34;video/mp4&#34;&gt;Violent Flintbeetle Granted&lt;/video&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;Violent Flintbeetle Granted&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Violent Flintbeetle 3</title>
    <id>https://waylonwalker.com/shots/violent-flintbeetle-3/</id>
    <updated>2025-09-27T10:34:45Z</updated>
    <published>2025-09-27T10:34:45Z</published>
    <link href="https://waylonwalker.com/shots/violent-flintbeetle-3/" rel="alternate" type="text/html"></link>
    <summary type="text">Violent Flintbeetle 3</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/4dc2bfb2-b742-4c7d-a7fb-30c5b8e7b6c3.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Violent Flintbeetle 3&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/file/4dc2bfb2-b742-4c7d-a7fb-30c5b8e7b6c3.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/file/4dc2bfb2-b742-4c7d-a7fb-30c5b8e7b6c3.mp4&#34; type=&#34;video/mp4&#34;&gt;Violent Flintbeetle 3&lt;/video&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;Violent Flintbeetle 3&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 This printed design holds a steel tube where the tube goes. #o...</title>
    <id>https://waylonwalker.com/thought-841/</id>
    <updated>2025-09-27T02:16:06Z</updated>
    <published>2025-09-27T02:16:06Z</published>
    <link href="https://waylonwalker.com/thought-841/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/shorts/PWyZB1nha_o</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;PWyZB1nha_o&#34; title=&#34;This printed design holds a steel tube where the tube goes. #opensourcehardware #conduit&#34; playlabel=&#34;Play: This printed design holds a steel tube where the tube goes. #opensourcehardware #conduit&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;This is a super cool movement, I like the idea of giving access to composable components like we have in open source.  You want to build a website you have a bunch of options from raw dogging assembly all the way up to predefined templates that just need your content.  Idk if the analogy is perfect but there are aspects of it that work.  I see where right now we are somewhere in raw dogging c or python.   We have cheap nuts and bolts and some low level things, but once someone needs some coupler like this it’s dropping down to drawing it by hand.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Violent Flintbeetle 1</title>
    <id>https://waylonwalker.com/shots/violent-flintbeetle-1/</id>
    <updated>2025-09-26T18:34:35Z</updated>
    <published>2025-09-26T18:34:35Z</published>
    <link href="https://waylonwalker.com/shots/violent-flintbeetle-1/" rel="alternate" type="text/html"></link>
    <summary type="text">Violent Flintbeetle 1</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/8b865091-3fa9-4f40-bc0d-10723a0e7e85.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Violent Flintbeetle 1&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/file/8b865091-3fa9-4f40-bc0d-10723a0e7e85.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/file/8b865091-3fa9-4f40-bc0d-10723a0e7e85.mp4&#34; type=&#34;video/mp4&#34;&gt;Violent Flintbeetle 1&lt;/video&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;Violent Flintbeetle 1&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Print over Part - YouTube</title>
    <id>https://waylonwalker.com/thought-840/</id>
    <updated>2025-09-26T14:15:24Z</updated>
    <published>2025-09-26T14:15:24Z</published>
    <link href="https://waylonwalker.com/thought-840/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://youtube.com/shorts/ED2olTp8wGw?si=UU_E2dlREhavlzJc</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;ED2olTp8wGw&#34; title=&#34;No More Glue&#34; playlabel=&#34;Play: No More Glue&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Wow, I’ve never seen or thought of multi setup parts this is very thought provoking, not sure how useful it is as we have good adhesives and stuff for printed parts.  I definitely want to try this though&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Haiden Deegan IN for Motocross of Nations?! | The Blair Matthe...</title>
    <id>https://waylonwalker.com/thought-839/</id>
    <updated>2025-09-26T12:36:26Z</updated>
    <published>2025-09-26T12:36:26Z</published>
    <link href="https://waylonwalker.com/thought-839/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/watch?v=kZvk4dUyWVs</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;kZvk4dUyWVs&#34; title=&#34;Haiden Deegan IN for Motocross of Nations?! | The Blair Matthes Project 032&#34; playlabel=&#34;Play: Haiden Deegan IN for Motocross of Nations?! | The Blair Matthes Project 032&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;I can’t believe this thing is so devicive.  I kinda can’t belive that I sit on the same side as Mathes and his always against the grain, non corporate influenced response.  So many others have praised Haiden for bringing back the real gladiator bloodsport that SX is, is it that though??  It’s a race to the finish.  different than a lot of other racing its very unpredictable takeout moves happen, occasionally as an accident, often taking both riders down at the same time.&lt;/p&gt;&#xA;&lt;p&gt;Also different than MANY sports we have a huge industry of weekend warriors, Some of which make it into the night show of the biggest race on TV.  You see we only bring 20 riders from each class, the top half to top quarter are “Factory” riders, the rest are privateers, sometimes these privateers are completely their on their own.&lt;/p&gt;&#xA;&lt;p&gt;There is also something called a last chance qualifier.  This is your last chance to get into the night show, often fought by these privateers out of box vans with their brother as a mechanic.  Often that last spot is filled by sketchy on edge riding and takeout moves from a rider that looks like he is barely making it, but would run circles around anyone at your local race.&lt;/p&gt;&#xA;&lt;p&gt;We celebrate these as a fight to the finish, anything goes, you just gotta cross the finishline.&lt;/p&gt;&#xA;&lt;p&gt;What’s different here from last weekend (someone could really write a book on the build up of tension, shit talking, lack of harsh penalties in the rules) is really that Haiden had zero shot at the championship.  He was winning the race, Joe in Second with a secure championship.  This is when Haiden started riding behind him, slowing down for Joe to catch up, and taking shots at Joe until he broke his own collarbone.  He went out knowing he needed to knock Joe down enough to cover the points deficit and the penalty.  This was not a pass for the win, or a pass for the last spot in the night show, this was a pass to clear a deficit which required Joe on the ground.&lt;/p&gt;&#xA;&lt;p&gt;This seems to be celebrated by half the industry, but dude you had already lost going into this night this aint cool, you lost this one put on a face let Joe have his moment, make your statement by going one one and crushing these dudes by 30 seconds metaphorically, not literally crushing them.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ doganarif fastapi-radar</title>
    <id>https://waylonwalker.com/doganarif-fastapi-radar/</id>
    <updated>2025-09-25T19:10:17Z</updated>
    <published>2025-09-25T19:10:17Z</published>
    <link href="https://waylonwalker.com/doganarif-fastapi-radar/" rel="alternate" type="text/html"></link>
    <summary type="text">I&#39;m impressed by fastapi-radar from doganarif.</summary>
    <content type="html">&lt;p&gt;I’m impressed by &lt;a href=&#34;https://github.com/doganarif/fastapi-radar&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;fastapi-radar&lt;/a&gt; from &lt;a href=&#34;https://github.com/doganarif&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;doganarif&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;A powerful debugging dashboard for &lt;a href=&#34;/fastapi/&#34; class=&#34;glossary-term&#34; title=&#34;FastAPI is a modern and efficient web framework for Python, built on top of the Starlette web framework, and pydantic for data validation and serialization.&#34;&gt;FastAPI&lt;/a&gt; applications. Monitor HTTP requests, SQL queries, and exceptions in real-time with a beautiful React UI. One-line integration, zero configuration needed.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Covetous Pilgrim</title>
    <id>https://waylonwalker.com/shots/covetous-pilgrim/</id>
    <updated>2025-09-23T20:17:30Z</updated>
    <published>2025-09-23T20:17:30Z</published>
    <link href="https://waylonwalker.com/shots/covetous-pilgrim/" rel="alternate" type="text/html"></link>
    <summary type="text">Covetous Pilgrim</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/a87a67b1-f9a1-4a13-988a-5fd219d60c8f.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Covetous Pilgrim&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/file/a87a67b1-f9a1-4a13-988a-5fd219d60c8f.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/file/a87a67b1-f9a1-4a13-988a-5fd219d60c8f.mp4&#34; type=&#34;video/mp4&#34;&gt;Covetous Pilgrim&lt;/video&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;Covetous Pilgrim&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Sherwood Gangfight</title>
    <id>https://waylonwalker.com/shots/sherwood-gangfight/</id>
    <updated>2025-09-23T20:12:09Z</updated>
    <published>2025-09-23T20:12:09Z</published>
    <link href="https://waylonwalker.com/shots/sherwood-gangfight/" rel="alternate" type="text/html"></link>
    <summary type="text">Sherwood Gangfight</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/98dd720b-c2d3-4239-a858-16f83f8d60cb.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Sherwood Gangfight&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/file/98dd720b-c2d3-4239-a858-16f83f8d60cb.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/file/98dd720b-c2d3-4239-a858-16f83f8d60cb.mp4&#34; type=&#34;video/mp4&#34;&gt;Sherwood Gangfight&lt;/video&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;Sherwood Gangfight&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Long Pin</title>
    <id>https://waylonwalker.com/shots/long-pin/</id>
    <updated>2025-09-23T20:07:54Z</updated>
    <published>2025-09-23T20:07:54Z</published>
    <link href="https://waylonwalker.com/shots/long-pin/" rel="alternate" type="text/html"></link>
    <summary type="text">Long Pin</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/4a2e073e-2054-4485-a52b-e4a5e42b5ce7.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Long Pin&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/file/4a2e073e-2054-4485-a52b-e4a5e42b5ce7.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/file/4a2e073e-2054-4485-a52b-e4a5e42b5ce7.mp4&#34; type=&#34;video/mp4&#34;&gt;Long Pin&lt;/video&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;Long Pin&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Halfway Home Gang Fight</title>
    <id>https://waylonwalker.com/shots/halfway-home-gang-fight/</id>
    <updated>2025-09-21T17:20:48Z</updated>
    <published>2025-09-21T17:20:48Z</published>
    <link href="https://waylonwalker.com/shots/halfway-home-gang-fight/" rel="alternate" type="text/html"></link>
    <summary type="text">Halfway Home Gang Fight</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/d8616fc1-d271-4819-ac32-49980218221d.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Halfway Home Gang Fight&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/file/d8616fc1-d271-4819-ac32-49980218221d.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/file/d8616fc1-d271-4819-ac32-49980218221d.mp4&#34; type=&#34;video/mp4&#34;&gt;Halfway Home Gang Fight&lt;/video&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;Halfway Home Gang Fight&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Rosary String</title>
    <id>https://waylonwalker.com/shots/rosary-string/</id>
    <updated>2025-09-21T17:17:31Z</updated>
    <published>2025-09-21T17:17:31Z</published>
    <link href="https://waylonwalker.com/shots/rosary-string/" rel="alternate" type="text/html"></link>
    <summary type="text">Rosary String</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/5e4ac436-79b1-43ea-b76a-af9d505cded1.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Rosary String&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/file/5e4ac436-79b1-43ea-b76a-af9d505cded1.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/file/5e4ac436-79b1-43ea-b76a-af9d505cded1.mp4&#34; type=&#34;video/mp4&#34;&gt;Rosary String&lt;/video&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;Rosary String&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Threefold Pin</title>
    <id>https://waylonwalker.com/shots/threefold-pin/</id>
    <updated>2025-09-21T17:15:39Z</updated>
    <published>2025-09-21T17:15:39Z</published>
    <link href="https://waylonwalker.com/shots/threefold-pin/" rel="alternate" type="text/html"></link>
    <summary type="text">Threefold Pin</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/872d4fa9-c691-463e-bff5-bf4d53bc626a.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Threefold Pin&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/file/872d4fa9-c691-463e-bff5-bf4d53bc626a.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/file/872d4fa9-c691-463e-bff5-bf4d53bc626a.mp4&#34; type=&#34;video/mp4&#34;&gt;Threefold Pin&lt;/video&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;Threefold Pin&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Thread Storm</title>
    <id>https://waylonwalker.com/shots/thread-storm/</id>
    <updated>2025-09-21T17:14:04Z</updated>
    <published>2025-09-21T17:14:04Z</published>
    <link href="https://waylonwalker.com/shots/thread-storm/" rel="alternate" type="text/html"></link>
    <summary type="text">Thread Storm</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/59e4f22e-e59f-46e6-80ba-ff8a626e93ba.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Thread Storm&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/file/59e4f22e-e59f-46e6-80ba-ff8a626e93ba.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/file/59e4f22e-e59f-46e6-80ba-ff8a626e93ba.mp4&#34; type=&#34;video/mp4&#34;&gt;Thread Storm&lt;/video&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;Thread Storm&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Funk Track 1</title>
    <id>https://waylonwalker.com/shots/funk-track-1/</id>
    <updated>2025-09-21T15:52:07Z</updated>
    <published>2025-09-21T15:52:07Z</published>
    <link href="https://waylonwalker.com/shots/funk-track-1/" rel="alternate" type="text/html"></link>
    <summary type="text">Progress so far on the Funk server elytra track. It goes through two sea lanturn lit caves so far.</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/ab41d5f8-92a5-4fde-966b-f791ff84f776.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;funk-track-1-1080p.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/ab41d5f8-92a5-4fde-966b-f791ff84f776.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/ab41d5f8-92a5-4fde-966b-f791ff84f776.mp4&#34; type=&#34;video/mp4&#34;&gt;funk-track-1-1080p.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;Progress so far on the Funk server elytra track.  It goes through two sea lanturn lit caves so far.&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Shots Get An Upgrade To the Main Feed</title>
    <id>https://waylonwalker.com/shots-get-an-upgrade/</id>
    <updated>2025-09-20T20:19:57Z</updated>
    <published>2025-09-20T20:19:57Z</published>
    <link href="https://waylonwalker.com/shots-get-an-upgrade/" rel="alternate" type="text/html"></link>
    <summary type="text">Today I updated my jinja templates and feeds to include shots posts in the main feed. These posts will prominently show the image in the feed with a small...</summary>
    <content type="html">&lt;p&gt;Today I updated my jinja templates and feeds to include shots posts in the main&#xA;feed.  These posts will prominently show the image in the feed with a small&#xA;post for each one.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/37dea007-e66f-42a5-bd90-6722dd1084dd.png&#34; class=&#34;glightbox-link&#34; aria-label=&#34;screenshot-2025-09-21T01-19-39-934Z.png&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/37dea007-e66f-42a5-bd90-6722dd1084dd.png&#34; alt=&#34;screenshot-2025-09-21T01-19-39-934Z.png&#34;/ data-glightbox=&#34;description: screenshot-2025-09-21T01-19-39-934Z.png&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://waylonwalker.com/shots/&#34;&gt;Shots&lt;/a&gt; are instagram style imge posts&#xA;inspired by &lt;a href=&#34;https://justin.searls.co/shots/&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/justin.searls.co.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/justin.searls.co.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;https://justin.searls.co/shots/&lt;/a&gt;.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>A Full Cheese Board</title>
    <id>https://waylonwalker.com/shots/a-full-cheese-board/</id>
    <updated>2025-09-20T20:02:58Z</updated>
    <published>2025-09-20T20:02:58Z</published>
    <link href="https://waylonwalker.com/shots/a-full-cheese-board/" rel="alternate" type="text/html"></link>
    <summary type="text">A macropad filled with cheese keycaps placed in random orientations.</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/9155b4f8-0028-45e5-a83f-52918174772c.jpg&#34; class=&#34;glightbox-link&#34; aria-label=&#34;A full Cheese Board&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/9155b4f8-0028-45e5-a83f-52918174772c.jpg&#34; alt=&#34;A full Cheese Board&#34;/ data-glightbox=&#34;description: A full Cheese Board&#34;&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;A macropad filled with cheese keycaps placed in random orientations.&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Full Box Of Cheese Caps</title>
    <id>https://waylonwalker.com/shots/full-box-of-cheese-caps/</id>
    <updated>2025-09-20T20:00:00Z</updated>
    <published>2025-09-20T20:00:00Z</published>
    <link href="https://waylonwalker.com/shots/full-box-of-cheese-caps/" rel="alternate" type="text/html"></link>
    <summary type="text">A full box of 9 keycaps sit behind a cap placed in front, they are custom wedge of cheese caps.</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/176f26ea-8ed7-46b6-9762-e18a68938caf.jpg&#34; class=&#34;glightbox-link&#34; aria-label=&#34;full box of cheese caps&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/176f26ea-8ed7-46b6-9762-e18a68938caf.jpg&#34; alt=&#34;full box of cheese caps&#34;/ data-glightbox=&#34;description: full box of cheese caps&#34;&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;A full box of 9 keycaps sit behind a cap placed in front, they are custom wedge of cheese caps.&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Printing A Full Plate Of Cheese Hats</title>
    <id>https://waylonwalker.com/shots/printing-a-full-plate-of-cheese-hats/</id>
    <updated>2025-09-20T19:58:16Z</updated>
    <published>2025-09-20T19:58:16Z</published>
    <link href="https://waylonwalker.com/shots/printing-a-full-plate-of-cheese-hats/" rel="alternate" type="text/html"></link>
    <summary type="text">A Bambu Lab Printer is working on the first few layers of cheese hats to be placed on top of keycaps.</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/69ce1210-bbff-474f-9507-787d9043dc36.jpg&#34; class=&#34;glightbox-link&#34; aria-label=&#34;printing a full plate of cheese hats&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/69ce1210-bbff-474f-9507-787d9043dc36.jpg&#34; alt=&#34;printing a full plate of cheese hats&#34;/ data-glightbox=&#34;description: printing a full plate of cheese hats&#34;&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;A Bambu Lab Printer is working on the first few layers of cheese hats to be placed on top of keycaps.&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Cheese Cap On A Macropad</title>
    <id>https://waylonwalker.com/shots/cheese-cap-on-a-macropad/</id>
    <updated>2025-09-20T19:57:12Z</updated>
    <published>2025-09-20T19:57:12Z</published>
    <link href="https://waylonwalker.com/shots/cheese-cap-on-a-macropad/" rel="alternate" type="text/html"></link>
    <summary type="text">A cheese keycap placed in the middle of a macropad, currounded by black/purple caps in a blue case.</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/4b2c0fb1-3216-4c5c-a659-fbaf9ef189ae.jpg&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Cheese cap on a macropad&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/4b2c0fb1-3216-4c5c-a659-fbaf9ef189ae.jpg&#34; alt=&#34;Cheese cap on a macropad&#34;/ data-glightbox=&#34;description: Cheese cap on a macropad&#34;&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;A cheese keycap placed in the middle of a macropad, currounded by black/purple caps in a blue case.&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Chris Joslin 360 Flips El Toro!!!!! - YouTube</title>
    <id>https://waylonwalker.com/thought-838/</id>
    <updated>2025-09-20T15:58:45Z</updated>
    <published>2025-09-20T15:58:45Z</published>
    <link href="https://waylonwalker.com/thought-838/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/watch?v=5cRKSwWSd5U&amp;t=631s</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;5cRKSwWSd5U&#34; title=&#34;Chris Joslin 360 Flips El Toro!!!!!&#34; playlabel=&#34;Play: Chris Joslin 360 Flips El Toro!!!!!&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Epic that this Joslin came back 7 years later to complete this.  I thought el Toro was dead, aparantly not.  Dude got robbed by a broke ass truck, this must have been eating his soul for the last 7 years.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>A Box Of Caps And A Macropad</title>
    <id>https://waylonwalker.com/shots/a-box-of-caps-and-a-macropad/</id>
    <updated>2025-09-19T19:55:50Z</updated>
    <published>2025-09-19T19:55:50Z</published>
    <link href="https://waylonwalker.com/shots/a-box-of-caps-and-a-macropad/" rel="alternate" type="text/html"></link>
    <summary type="text">A macropad with a pixel heart and mlg glasses sit on a clean white background.</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/ea421e67-5cb0-4a9f-be14-08a5004df493.jpg&#34; class=&#34;glightbox-link&#34; aria-label=&#34;a box of caps and a macropad&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/ea421e67-5cb0-4a9f-be14-08a5004df493.jpg&#34; alt=&#34;a box of caps and a macropad&#34;/ data-glightbox=&#34;description: a box of caps and a macropad&#34;&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;A macropad with a pixel heart and mlg glasses sit on a clean white background.&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Heart Of A Macropad</title>
    <id>https://waylonwalker.com/shots/heart-of-a-macropad/</id>
    <updated>2025-09-19T19:54:33Z</updated>
    <published>2025-09-19T19:54:33Z</published>
    <link href="https://waylonwalker.com/shots/heart-of-a-macropad/" rel="alternate" type="text/html"></link>
    <summary type="text">A pixel heart kecap in the center of a macropad, the macropad is admittedly dirty, filled with small bits of fuzz.</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/c924cd8b-7bfc-411f-af71-4b7c0f2005bc.jpg&#34; class=&#34;glightbox-link&#34; aria-label=&#34;heart of a macropad&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/c924cd8b-7bfc-411f-af71-4b7c0f2005bc.jpg&#34; alt=&#34;heart of a macropad&#34;/ data-glightbox=&#34;description: heart of a macropad&#34;&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;A pixel heart kecap in the center of a macropad, the macropad is admittedly dirty, filled with small bits of fuzz.&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>First Cap Hat, It&#39;s A Heart</title>
    <id>https://waylonwalker.com/shots/first-cap-hat,-it&#39;s-a-heart/</id>
    <updated>2025-09-19T19:52:54Z</updated>
    <published>2025-09-19T19:52:54Z</published>
    <link href="https://waylonwalker.com/shots/first-cap-hat,-it&#39;s-a-heart/" rel="alternate" type="text/html"></link>
    <summary type="text">A 3d printed keycap with a heart glued to the top of it. The heart resembles a pixelated game asset.</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/485cb6ed-520b-46f0-98a0-fed231a8626d.jpg&#34; class=&#34;glightbox-link&#34; aria-label=&#34;First Cap Hat, It’s a heart&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/485cb6ed-520b-46f0-98a0-fed231a8626d.jpg&#34; alt=&#34;First Cap Hat, It’s a heart&#34;/ data-glightbox=&#34;description: First Cap Hat, It’s a heart&#34;&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;A 3d printed keycap with a heart glued to the top of it.  The heart resembles a pixelated game asset.&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Big W: A Family Tradition</title>
    <id>https://waylonwalker.com/thought-837/</id>
    <updated>2025-09-19T14:03:04Z</updated>
    <published>2025-09-19T14:03:04Z</published>
    <link href="https://waylonwalker.com/thought-837/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.bigwengineering.com/post/big-w-a-family-tradition?utm_medium=blog.post-promoter&amp;utm_campaign=b9f7c31c-6725-4253-bb37-b10502942676</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://www.bigwengineering.com/post/big-w-a-family-tradition?utm_source=linkedin&amp;amp;utm_medium=blog.post-promoter&amp;amp;utm_campaign=b9f7c31c-6725-4253-bb37-b10502942676&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://static.wixstatic.com/media/e46759_badd51748b734eb19edcf39a0a9830ad~mv2.jpg/v1/fill/w_1000,h_753,al_c,q_85,usm_0.66_1.00_0.01/e46759_badd51748b734eb19edcf39a0a9830ad~mv2.jpg&#34; alt=&#34;Big W:  A Family Tradition — A quick look into where we came from and what inspires us to do what it takes to build a solid reputation.&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: Big W:  A Family Tradition — A quick look into where we came from and what inspires us to do what it takes to build a solid reputation.&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Big W:  A Family Tradition&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;A quick look into where we came from and what inspires us to do what it takes to build a solid reputation.&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;Big W Engineering Solutions · bigwengineering.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;I first met Adam in college, he seemed like quite a character on the outside, but was always quite smart and often leaned towards realistic solutions to problems rather than over complicating things.  He was part of the SAE Formula car, well known for taking a simple problem and trying to turn it into a real formula one carbon fiber solution.  I remember a period where he was a fan of old world blacksmithing as they would say at the time.  He even got a few very simple and light parts on the car that were easy to make unlike the carbon fiber alternatives.  By the time I was there he was more of a leader and did not do a lot of design on any whole system, but would take out class projects for a component or help with some hard problems.  This company feels like it is a great extension of who he was a that time, with about 15 years of professional experience tacked on.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ unhappychoice gittype</title>
    <id>https://waylonwalker.com/unhappychoice-gittype/</id>
    <updated>2025-09-18T23:32:00Z</updated>
    <published>2025-09-18T23:32:00Z</published>
    <link href="https://waylonwalker.com/unhappychoice-gittype/" rel="alternate" type="text/html"></link>
    <summary type="text">If you&#39;re into interesting projects, don&#39;t miss out on gittype, created by unhappychoice.</summary>
    <content type="html">&lt;p&gt;If you’re into interesting projects, don’t miss out on &lt;a href=&#34;https://github.com/unhappychoice/gittype&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;gittype&lt;/a&gt;, created by &lt;a href=&#34;https://github.com/unhappychoice&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;unhappychoice&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;A CLI code-typing game that turns your source code into typing challenges&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>First Box Of Caps</title>
    <id>https://waylonwalker.com/shots/first-box-of-caps/</id>
    <updated>2025-09-18T19:51:18Z</updated>
    <published>2025-09-18T19:51:18Z</published>
    <link href="https://waylonwalker.com/shots/first-box-of-caps/" rel="alternate" type="text/html"></link>
    <summary type="text">A print in place box sitting on the printer bed used as a raft for the 9 caps perectly nestled inside in a 3 by 3 pattern.</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/203f0838-be6d-43d6-b88f-430c940cb642.jpg&#34; class=&#34;glightbox-link&#34; aria-label=&#34;first box of caps&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/203f0838-be6d-43d6-b88f-430c940cb642.jpg&#34; alt=&#34;first box of caps&#34;/ data-glightbox=&#34;description: first box of caps&#34;&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;A print in place box sitting on the printer bed used as a raft for the 9 caps perectly nestled inside in a 3 by 3 pattern.&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Fourth Chorus</title>
    <id>https://waylonwalker.com/shots/fourth-chorus/</id>
    <updated>2025-09-17T20:34:16Z</updated>
    <published>2025-09-17T20:34:16Z</published>
    <link href="https://waylonwalker.com/shots/fourth-chorus/" rel="alternate" type="text/html"></link>
    <summary type="text">Fourth Chorus</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/528a899c-9eb1-4237-a5de-0ddaa2190b94.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Fourth Chorus&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/file/528a899c-9eb1-4237-a5de-0ddaa2190b94.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/file/528a899c-9eb1-4237-a5de-0ddaa2190b94.mp4&#34; type=&#34;video/mp4&#34;&gt;Fourth Chorus&lt;/video&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;Fourth Chorus&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>zmk two hand hold down</title>
    <id>https://waylonwalker.com/zmk-two-hand-hold-down/</id>
    <updated>2025-09-17T20:04:36Z</updated>
    <published>2025-09-17T20:04:36Z</published>
    <link href="https://waylonwalker.com/zmk-two-hand-hold-down/" rel="alternate" type="text/html"></link>
    <summary type="text">I don&#39;t know about you, but I don&#39;t re-flash my keyboard enough to ever remember where I put the bootloader. Sometimes its the last thing I think about in a...</summary>
    <content type="html">&lt;p&gt;I don’t know about you, but I don’t re-flash my keyboard enough to ever remember&#xA;where I put the bootloader.  Sometimes its  the last thing I think about in a&#xA;refactor and I end up cornering myself into a place where I cant get into that&#xA;layer anymore.  I’ve started putting hardware switches on my newer builds, but&#xA;some older builds don’t have a hardware one, so it requires disassembly and&#xA;jumping the microcontroller.  Even when I have one though, I gotta flip my&#xA;board over and its annoying sometimes, so I prefer to have a keystroke for it.&lt;/p&gt;&#xA;&lt;h2 id=&#34;two-hand-hold-down&#34;&gt;Two Hand hold down &lt;a href=&#34;#two-hand-hold-down&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;What I’ve landed on recently is the idea of a two hand hold down combo for the&#xA;bootloader.  These combos are ones that there is no way I can hit without&#xA;picking my hands up from their normal homerow position and pressing four keys&#xA;simultaneously with pointer and thumbs.&lt;/p&gt;&#xA;&lt;p&gt;Here are some example layouts from &lt;a href=&#34;https://nickcoutsos.github.io/keymap-editor/&#34;&gt;keymap-editor&lt;/a&gt;&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/fd4d31aa-b151-4bce-b411-8e4480898b83.png&#34; class=&#34;glightbox-link&#34; aria-label=&#34;screenshot-2025-09-17T01-06-16-427Z.png&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/fd4d31aa-b151-4bce-b411-8e4480898b83.png&#34; alt=&#34;screenshot-2025-09-17T01-06-16-427Z.png&#34;/ data-glightbox=&#34;description: screenshot-2025-09-17T01-06-16-427Z.png&#34;&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;40% layout - similar to corne&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/74626408-cb1e-43bd-8c4c-7fb2abb16ea2.png&#34; class=&#34;glightbox-link&#34; aria-label=&#34;screenshot-2025-09-17T01-05-02-298Z.png&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/74626408-cb1e-43bd-8c4c-7fb2abb16ea2.png&#34; alt=&#34;screenshot-2025-09-17T01-05-02-298Z.png&#34;/ data-glightbox=&#34;description: screenshot-2025-09-17T01-05-02-298Z.png&#34;&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;Here it is on my Son’s 3x5 macropad&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/8afdd2cd-c362-40cb-b9ef-9cd70ba4b0cb.png&#34; class=&#34;glightbox-link&#34; aria-label=&#34;screenshot-2025-09-17T01-05-30-687Z.png&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/8afdd2cd-c362-40cb-b9ef-9cd70ba4b0cb.png&#34; alt=&#34;screenshot-2025-09-17T01-05-30-687Z.png&#34;/ data-glightbox=&#34;description: screenshot-2025-09-17T01-05-30-687Z.png&#34;&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;Here it is on my 3x3 macropad&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;timing&#34;&gt;Timing &lt;a href=&#34;#timing&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;You can even give it a long prior timeout to really make sure that its not an&#xA;accidental hit.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/4a0c7dc0-f096-4be2-9b4d-e89cb787179a.png&#34; class=&#34;glightbox-link&#34; aria-label=&#34;screenshot-2025-09-17T01-10-22-100Z.png&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/4a0c7dc0-f096-4be2-9b4d-e89cb787179a.png&#34; alt=&#34;screenshot-2025-09-17T01-10-22-100Z.png&#34;/ data-glightbox=&#34;description: screenshot-2025-09-17T01-10-22-100Z.png&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Lace</title>
    <id>https://waylonwalker.com/shots/lace/</id>
    <updated>2025-09-17T08:46:06Z</updated>
    <published>2025-09-17T08:46:06Z</published>
    <link href="https://waylonwalker.com/shots/lace/" rel="alternate" type="text/html"></link>
    <summary type="text">Lace</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/bb9fa98a-da2b-4dfe-95a8-3ad9a88650ef.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Lace&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/file/bb9fa98a-da2b-4dfe-95a8-3ad9a88650ef.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/file/bb9fa98a-da2b-4dfe-95a8-3ad9a88650ef.mp4&#34; type=&#34;video/mp4&#34;&gt;Lace&lt;/video&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;Lace&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Beginning Of Little Boxes</title>
    <id>https://waylonwalker.com/shots/beginning-of-little-boxes/</id>
    <updated>2025-09-16T21:04:44Z</updated>
    <published>2025-09-16T21:04:44Z</published>
    <link href="https://waylonwalker.com/shots/beginning-of-little-boxes/" rel="alternate" type="text/html"></link>
    <summary type="text">Four little 3d printed boxes laying on a white background, one contains a painted lid that says M 2x5.</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/ce5b4e0b-9164-4588-b0df-176e33fa2824.jpg&#34; class=&#34;glightbox-link&#34; aria-label=&#34;beginning of little boxes&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/ce5b4e0b-9164-4588-b0df-176e33fa2824.jpg&#34; alt=&#34;beginning of little boxes&#34;/ data-glightbox=&#34;description: beginning of little boxes&#34;&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;Four little 3d printed boxes laying on a white background, one contains a painted lid that says M 2x5.&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Why Make a Website in 2025</title>
    <id>https://waylonwalker.com/why-make-a-website-in-2025/</id>
    <updated>2025-09-16T19:37:23Z</updated>
    <published>2025-09-16T19:37:23Z</published>
    <link href="https://waylonwalker.com/why-make-a-website-in-2025/" rel="alternate" type="text/html"></link>
    <summary type="text">Inspired by Jim and Dave</summary>
    <content type="html">&lt;p&gt;Inspired by&#xA;&lt;a href=&#34;https://blog.jim-nielsen.com/2025/why-make-a-website-in-2025/&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/blog.jim-nielsen.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/blog.jim-nielsen.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;Jim&lt;/a&gt; and&#xA;&lt;a href=&#34;https://daverupert.com/2025/09/why-would-anybody-start-a-website/&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/daverupert.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/daverupert.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;Dave&lt;/a&gt;&lt;/p&gt;&#xA;&lt;h2 id=&#34;its-fun&#34;&gt;It’s Fun &lt;a href=&#34;#its-fun&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;If it’s not something that you enjoy, you might as well move on there are far&#xA;better ways to spend your time in 2025.  Only the weirdos read this shit&#xA;anymore, the masses have long moved on to curated social media feeds, and on to&#xA;chatting with llms.  I enjoy spending some time in the digital garden every&#xA;once in awhile tweaking templates, creating &lt;a href=&#34;/markata/&#34; class=&#34;wikilink&#34; data-title=&#34;markata&#34; data-description=&#34;This post is a work in progress.&#34; data-date=&#34;2024-05-30&#34; data-preview=&#34;This post is a work in progress.&#34;&gt;markata&lt;/a&gt; plugins to do&#xA;interesting things.  I enjoy expressing my thoughts, or at least shouting them&#xA;into the ether.&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;I’ll be the first to admit that I often go to an llm for first pass at many&#xA;things that I could look up in a guide or 😲 the docs.&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;h2 id=&#34;i-enjoy-reading-others&#34;&gt;I enjoy reading others &lt;a href=&#34;#i-enjoy-reading-others&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;This year I have made extra effort to add more and more people into my&#xA;[[reader]].  I enjoy reading content from people I chose to follow and can&#xA;remove whenever I want.  I enjoy reading actual human thoughts and not ai&#xA;generated content all day.&lt;/p&gt;&#xA;&lt;p&gt;I even will create &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;Thoughts&lt;/a&gt; based on these posts that I find interesting,&#xA;and want to further share to others.  I want to give these people that took&#xA;time to make something a little boost.&lt;/p&gt;&#xA;&lt;h2 id=&#34;not-perfection&#34;&gt;Not Perfection &lt;a href=&#34;#not-perfection&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;The last thing we need in 2025 is perfection.  We have enough ai generated slop&#xA;that is far from perfectly accurate that sits behind a veil of mostly clean&#xA;look, semi consistent feel, and a narrow set of tone.  I see it in gen z there&#xA;is something about the imperfect that is coming out.  Not perfectly cut video&#xA;or audio.  I just heard Gary Vee mention this morning that a siren going off in&#xA;the background of NYC has a somewhat natural human feel to it now.&lt;/p&gt;&#xA;&lt;h2 id=&#34;ownership&#34;&gt;Ownership &lt;a href=&#34;#ownership&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://daverupert.com/2025/09/why-would-anybody-start-a-website/&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/daverupert.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/daverupert.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;Dave&lt;/a&gt;&#xA;points out that the first thought for most people trying to make a business or&#xA;pop off as an influencer is TikTok, then a few similar apps.  If you are trying&#xA;to reach a large audience and swim in the big pond with the big fish thats&#xA;where you need to go.&lt;/p&gt;&#xA;&lt;p&gt;But you don’t own that content anymore.  Some posts will pop, some will be lost&#xA;to the algorithm for nothing more that the first few eyes that got it swiped&#xA;past too fast.  The whole platform can go, or choose to not show your content,&#xA;its their platform.  You don’t pay them for anything.  They are allowed to do&#xA;what they want.&lt;/p&gt;&#xA;&lt;p&gt;If you want some ownership to keep your content alive, curate a small, focused,&#xA;core audience, also put that on a website.&lt;/p&gt;&#xA;&lt;h2 id=&#34;not-for-the-faint-of-heart&#34;&gt;Not for the faint of heart &lt;a href=&#34;#not-for-the-faint-of-heart&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;It’s not easy to manage hundreds of posts, images, builds, servers.  Theres&#xA;probably a hundred ways to make it easier, but if you really want full control,&#xA;full DIY, it takes time to do.&lt;/p&gt;&#xA;&lt;h2 id=&#34;learn-a-skill&#34;&gt;Learn a skill &lt;a href=&#34;#learn-a-skill&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;This can go a few different ways, One is that you can make a blog or site about&#xA;a topic, deep dive into this topic.  Create blogs, videos, images, about this&#xA;topic.  Create real content that real people find interesting.&lt;/p&gt;&#xA;&lt;p&gt;OR a bit meta, you can learn more about tech.  This site is built with &lt;a href=&#34;/markata/&#34; class=&#34;wikilink&#34; data-title=&#34;markata&#34; data-description=&#34;This post is a work in progress.&#34; data-date=&#34;2024-05-30&#34; data-preview=&#34;This post is a work in progress.&#34;&gt;markata&lt;/a&gt;, its a static site generator that I built myself mostly to make this&#xA;site.  I’ve learned a ton about markdown, &lt;a href=&#34;/html/&#34; class=&#34;glossary-term&#34; title=&#34;HTML (HyperText Markup Language) is the standard markup language used to create and design documents on the World Wide Web. It structures web content by...&#34;&gt;html&lt;/a&gt;, ast, python, plugin&#xA;architecture in doing so.  I build this site in kubernetes, another skill that&#xA;I wanted to develop, and owning my own services that I have real skin in the&#xA;game for is a great way to do so.&lt;/p&gt;&#xA;&lt;h2 id=&#34;just-build-websites&#34;&gt;Just Build Websites &lt;a href=&#34;#just-build-websites&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;As the opening to &lt;a href=&#34;https://shoptalkshow.com/&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/shoptalkshow.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/shoptalkshow.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;shoptalkshow&lt;/a&gt; says, just make&#xA;websites.  Who the fuck cares why or how.  The important thing is that you&#xA;built something, maybe it is for an audience of one or one million, doesn’t&#xA;matter, keep the internet alive and just build something.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Meet Gor on X: &#34;SQLite added generated columns in 3.31 (around...</title>
    <id>https://waylonwalker.com/thought-836/</id>
    <updated>2025-09-16T13:54:52Z</updated>
    <published>2025-09-16T13:54:52Z</published>
    <link href="https://waylonwalker.com/thought-836/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://x.com/MeetGor21/status/1967818642768470447</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://x.com/MeetGor21/status/1967818642768470447&#34; class=&#34;embed-card-link  has-avatar has-avatar-before&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/x.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/x.com.ico&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;External Link&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;X (formerly Twitter) · x.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;I’ve never tried generated columns, but it is something that I’m interested in.  It is nice to have things computed and in the database if you ever need to query on them.  My brain is now churning with possibilities and quesions, does this work with Alembic? How does this compare to views?&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/2b763b3d-1709-47e6-a13d-bfec7baef47d.png&#34; class=&#34;glightbox-link&#34; aria-label=&#34;screenshot-2025-09-16T13-52-48-868Z.png&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/2b763b3d-1709-47e6-a13d-bfec7baef47d.png&#34; alt=&#34;screenshot-2025-09-16T13-52-48-868Z.png&#34;/ data-glightbox=&#34;description: screenshot-2025-09-16T13-52-48-868Z.png&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>vanilla html hover text</title>
    <id>https://waylonwalker.com/vanilla-html-hover-text/</id>
    <updated>2025-09-16T11:39:41Z</updated>
    <published>2025-09-16T11:39:41Z</published>
    <link href="https://waylonwalker.com/vanilla-html-hover-text/" rel="alternate" type="text/html"></link>
    <summary type="text">I needed to display some hover text in a web app that I am using tailwind and jinja on. It has no js, and no build other than the tailwind. I want this to...</summary>
    <content type="html">&lt;p&gt;I needed to display some hover text in a web app that I am using tailwind and&#xA;jinja on.  It has no js, and no build other than the tailwind. I want this to&#xA;remain &lt;span style=&#34;cursor: help; color:yellow;&#34; title=&#34;respective to the&#xA;python developer I am and the team it is used for&#34;&gt;simple&lt;/span&gt;. Turns out&#xA;that you can use a span with a title attribute to get hover text in&#xA;&lt;a href=&#34;/html/&#34; class=&#34;glossary-term&#34; title=&#34;HTML (HyperText Markup Language) is the standard markup language used to create and design documents on the World Wide Web. It structures web content by...&#34;&gt;HTML&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;&amp;lt;&lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;p&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;&amp;gt;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;I needed to display some hover text in a web app that I am using tailwind and&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;jinja on.  It has no js, and no build other than the tailwind. I want this to&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;remain &lt;span class=&#34;p&#34;&gt;&amp;lt;&lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;span&lt;/span&gt; &lt;span class=&#34;na&#34;&gt;style&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;&amp;#39;cursor: help; color:yellow;&amp;#39;&lt;/span&gt; &lt;span class=&#34;na&#34;&gt;title&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;&amp;#39;respective to the&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;python developer I am and the team it is used for&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;&amp;gt;&lt;/span&gt;simple&lt;span class=&#34;p&#34;&gt;&amp;lt;/&lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;span&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;&amp;gt;&lt;/span&gt;.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;&amp;lt;/&lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;p&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;&amp;gt;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Idea to Product in Seconds #PortalPrints - YouTube</title>
    <id>https://waylonwalker.com/thought-835/</id>
    <updated>2025-09-16T01:43:59Z</updated>
    <published>2025-09-16T01:43:59Z</published>
    <link href="https://waylonwalker.com/thought-835/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/shorts/47CQMbkzX9o</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;47CQMbkzX9o&#34; title=&#34;Idea to Product in Seconds #PortalPrints&#34; playlabel=&#34;Play: Idea to Product in Seconds #PortalPrints&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;3d-printing is so freaking cool.  I love the idea that someone could get a hyperspecific tool to their needs for super cheap.  Whether it works permanently or to try out one that you want to spend thousands of dollars on to have well done from some high end materials this is a great application.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 a new chapter</title>
    <id>https://waylonwalker.com/thought-834/</id>
    <updated>2025-09-16T01:30:36Z</updated>
    <published>2025-09-16T01:30:36Z</published>
    <link href="https://waylonwalker.com/thought-834/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://jesseleite.com/2025/a-new-chapter</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://jesseleite.com/2025/a-new-chapter&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://jesseleite.com/img/asset/YXNzZXRzL3Nlby9vZy1pbWFnZS1iYWctZW5kLnBuZw/og-image-bag-end.png?p=seo_pro_og&amp;amp;s=345669cb43e131dd75d795dca9edb0c7&#34; alt=&#34;A New Chapter — In a recent turn of events, I find myself at a bit of a crossroads with an exciting new job on the horizon! In this post, I introduce myself and discuss my vision for the new blog.&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: A New Chapter — In a recent turn of events, I find myself at a bit of a crossroads with an exciting new job on the horizon! In this post, I introduce myself and discuss my vision for the new blog.&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;A New Chapter&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;In a recent turn of events, I find myself at a bit of a crossroads with an exciting new job on the horizon! In this post, I introduce myself and discuss my vision for the new blog.&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;Jesse Leite · jesseleite.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Sub to this man.  I met Jesse long ago as we both spoke at the same remote vim conf.  He is into vim, weird keyboards, and medroid what more could you ask for.  Now react and exlixer.  I only know &lt;a href=&#34;https://statamic.com/&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/statamic.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/statamic.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;https://statamic.com/&lt;/a&gt; through Jesse, they have the sickest branding ever.  Now I will need to see what this &lt;a href=&#34;https://x.com/savvycal&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/x.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/x.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;savvycal&lt;/a&gt; is about.&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://jesseleite.com/feed&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/jesseleite.com.png&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/jesseleite.com.png&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;https://jesseleite.com/feed&lt;/a&gt;&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 &#34;Pacman is currently in use, please wait.&#34;</title>
    <id>https://waylonwalker.com/thought-833/</id>
    <updated>2025-09-16T01:26:33Z</updated>
    <published>2025-09-16T01:26:33Z</published>
    <link href="https://waylonwalker.com/thought-833/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://bbs.archlinux.org/viewtopic.php?id=67729</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://bbs.archlinux.org/viewtopic.php?id=67729&#34; class=&#34;embed-card-link  has-avatar has-avatar-before&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/bbs.archlinux.org.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/bbs.archlinux.org.ico&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;&amp;#34;Pacman is currently in use, please wait.&amp;#34; / Pacman &amp;amp; Package Upgrade Issues / Arch Linux Forums&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;bbs.archlinux.org&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;I ran into this issue today, never have I ever before though. Omarchy looking a bit sus on me.  This was even after a fresh boot, no pacman process running. just realized I forgot to check yay which it has installed for me.   I had to force it in.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo rm /var/lib/pacman/db.lck&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>tar over ssh</title>
    <id>https://waylonwalker.com/tar-over-ssh/</id>
    <updated>2025-09-13T10:50:42Z</updated>
    <published>2025-09-13T10:50:42Z</published>
    <link href="https://waylonwalker.com/tar-over-ssh/" rel="alternate" type="text/html"></link>
    <summary type="text">Today I learned how to use tar over ssh to save hours in file transfers. I keep all of my projects in ~/git (very creative I know, I&#39;ve done it for years and...</summary>
    <content type="html">&lt;p&gt;Today I learned how to use tar over ssh to save hours in file transfers.  I&#xA;keep all of my projects in ~/&lt;a href=&#34;/glossary/git/&#34; class=&#34;glossary-term&#34; title=&#34;Git is a version control system for tracking changes in source code during software development. In the beginning there were many, some were licensed. As...&#34;&gt;git&lt;/a&gt; (very creative I know, I’ve done it for years&#xA;and haven’t changed).  I just swapped out my main desktop from bazzite to&#xA;hyprland, and wanted to get all of my projects back.  Before killing my&#xA;bazzite install I moved everything over (16GB of many small files), it took&#xA;over 14 hours, maybe longer.  I had started in the morning and just let it&#xA;churn.&lt;/p&gt;&#xA;&lt;p&gt;This was not going to happen for re-seeding all of my projects on my new&#xA;system, I knew there had to be a better way, I looked at rsync, but for seeding&#xA;I ran into this tar over ssh technique and it only took me 6m51s to pull all of&#xA;my projects off of my remote server.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;ssh user@192.168.1.100 &lt;span class=&#34;s1&#34;&gt;&amp;#39;tar -C /tank/git -cpf - .&amp;#39;&lt;/span&gt; &lt;span class=&#34;se&#34;&gt;\&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt; tar -C &lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;$HOME&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;/git&amp;#34;&lt;/span&gt; -xpf -&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ mmulet term.everything</title>
    <id>https://waylonwalker.com/mmulet-term-everything/</id>
    <updated>2025-09-11T13:16:21Z</updated>
    <published>2025-09-11T13:16:21Z</published>
    <link href="https://waylonwalker.com/mmulet-term-everything/" rel="alternate" type="text/html"></link>
    <summary type="text">mmulet has done a fantastic job with term.everything. Highly recommend taking a look.</summary>
    <content type="html">&lt;p&gt;&lt;a href=&#34;https://github.com/mmulet&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;mmulet&lt;/a&gt; has done a fantastic job with &lt;a href=&#34;https://github.com/mmulet/term.everything&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;term.everything&lt;/a&gt;. Highly recommend taking a look.&lt;/p&gt;&#xA;&lt;p&gt;Run any GUI app in the terminal❗&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>store</title>
    <id>https://waylonwalker.com/store/</id>
    <updated>2025-09-10T20:38:00Z</updated>
    <published>2025-09-10T20:38:00Z</published>
    <link href="https://waylonwalker.com/store/" rel="alternate" type="text/html"></link>
    <summary type="text">I&#39;ve been 3d printing for years, and create a lot of my own designs. Many of them are hyper specific to me, but for the ones that I think others might find...</summary>
    <content type="html">&lt;p&gt;I’ve been 3d printing for years, and create a lot of my own designs.  Many of&#xA;them are hyper specific to me, but for the ones that I think others might find&#xA;useful I will be putting up here for sale, you can buy prints that will show up&#xA;to your door in a few days.  I’m leaning on the slant3d print farm so this&#xA;depends on your proximity to them.  The prints are typically black petg, if you&#xA;would like a different color reach out to me and I will see what other options&#xA;we have, or for an additional fee I can print it myself and ship out&#xA;special colors.&lt;/p&gt;&#xA;&lt;p&gt;These are all designs that I made and actually use myself, they bring me joy&#xA;knowing that I made just the thing that I wanted to exist and if you buy&#xA;something I hope that it brings you this joy as well.&lt;/p&gt;&#xA;&lt;h2 id=&#34;skateboard-wall-mount&#34;&gt;Skateboard Wall Mount &lt;a href=&#34;#skateboard-wall-mount&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;I’ve used these skateboard wall mounts for years, I have 5 in my office&#xA;featuring new decks in the queue, and probably 10 in the garage to display used&#xA;decks, and fully assembled boards for me and my kids.  I use these for both&#xA;regular popscicle boards and longboards, but if you are putting up a thicker&#xA;longboard go with the thicker size.&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://teleportpod.com/portal/a47fd522-d265-43b9-a8b0-8fa2395f7c46?item=588&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/f2654443-fd69-48a8-a151-0199d053b5a6.jpg&#34; alt=&#34;PXL_20250911_012148865.jpg&#34;/ data-glightbox=&#34;description: PXL_20250911_012148865.jpg&#34;&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;a href=&#34;https://teleportpod.com/portal/a47fd522-d265-43b9-a8b0-8fa2395f7c46?item=588&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/teleportpod.com.png&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/teleportpod.com.png&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;regular size&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;https://teleportpod.com/portal/c6a85018-4ed3-4a34-98f3-cfb660d64bf5?item=589&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/teleportpod.com.png&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/teleportpod.com.png&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;over size&lt;/a&gt;&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;h2 id=&#34;mic-stand-clips&#34;&gt;Mic stand Clips &lt;a href=&#34;#mic-stand-clips&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;These clips will hold your cables on your mic stand nicely and look nice while&#xA;doing it.  I’ve got them on both of my mic stands, there are two versions, one&#xA;for a smaller stand with usb cable, and one for a larger stand with an xlr&#xA;cable make sure you measure your mic stand before buying.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/5d6967bf-63cd-40d8-9d71-03eb90cc3fdd.jpg&#34; class=&#34;glightbox-link&#34; aria-label=&#34;13mm-xlr-cropped.jpg&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/5d6967bf-63cd-40d8-9d71-03eb90cc3fdd.jpg&#34; alt=&#34;13mm-xlr-cropped.jpg&#34;/ data-glightbox=&#34;description: 13mm-xlr-cropped.jpg&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;a href=&#34;https://teleportpod.com/portal/0bf5a12c-47f3-4472-a3f7-70206546c3ec?item=618&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/teleportpod.com.png&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/teleportpod.com.png&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;13mm stand | 6mm xlr cable&lt;/a&gt;&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/95717ce4-600a-4fd0-877a-8e926414e815.jpg&#34; class=&#34;glightbox-link&#34; aria-label=&#34;10-mm-usb.jpg&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/95717ce4-600a-4fd0-877a-8e926414e815.jpg&#34; alt=&#34;10-mm-usb.jpg&#34;/ data-glightbox=&#34;description: 10-mm-usb.jpg&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;a href=&#34;https://teleportpod.com/portal/8ebe3274-6445-44e9-b68e-0b4897e23e4a?item=619&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/teleportpod.com.png&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/teleportpod.com.png&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;10mm stand | 4mm usb &lt;/a&gt;&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;h2 id=&#34;cat-door&#34;&gt;Cat Door &lt;a href=&#34;#cat-door&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;In our house we have a cat liter box in the basement, so we need to leave the&#xA;door open for our cat.  But if our dog goes down there he seems to only cause&#xA;trouble.  So I modeled this door prop to leave the door just enough open for&#xA;the cat, but keep the dog out.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/01a33e73-7bdc-4bfe-842e-d83d77c856d2.jpg&#34; class=&#34;glightbox-link&#34; aria-label=&#34;PXL_20250913_232149104.jpg&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/01a33e73-7bdc-4bfe-842e-d83d77c856d2.jpg&#34; alt=&#34;PXL_20250913_232149104.jpg&#34;/ data-glightbox=&#34;description: PXL_20250913_232149104.jpg&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;a href=&#34;https://teleportpod.com/portal/f4500ce2-6f32-4773-a82a-e049a91b7da1?item=732&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/teleportpod.com.png&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/teleportpod.com.png&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;cat door&lt;/a&gt;&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;h2 id=&#34;kicker-ramp&#34;&gt;Kicker Ramp &lt;a href=&#34;#kicker-ramp&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://teleportpod.com/portal/0d6283fc-889e-4445-b0fd-29e40cf82fca?item=521&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/teleportpod.com.png&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/teleportpod.com.png&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;kicker ramp&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://teleportpod.com/portal/671a9184-b0ed-419c-9be3-8f3cb52657e3?item=520&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/teleportpod.com.png&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/teleportpod.com.png&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;manny pad&lt;/a&gt;&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 How To Become The BEST Engineer At Your Company - YouTube</title>
    <id>https://waylonwalker.com/thought-832/</id>
    <updated>2025-09-10T16:08:36Z</updated>
    <published>2025-09-10T16:08:36Z</published>
    <link href="https://waylonwalker.com/thought-832/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/watch?v=Qc_kEyLsXH0</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;Qc_kEyLsXH0&#34; title=&#34;How To Become The BEST Engineer At Your Company&#34; playlabel=&#34;Play: How To Become The BEST Engineer At Your Company&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;When you fill all of your time with a bunch of other things, it becomes really hard to become a friendly person.  Prime talked about trying to learn how to drop the hurry in his life, and how to not always be in a frenzy of going from one thing to the next.  It’s something that puts us in a state that its hard to remember to be friendly.  Hard to remember that &lt;a href=&#34;https://www.youtube.com/watch?v=cPgMeKfQFq8&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/www.youtube.com.png&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/www.youtube.com.png&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;theres always time for coffee&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;I do my best to always leave time for coffee, whether at home with my wife and kids, as well as at work.  I am in a very unique place at work where I have a rare set of skills for the industry I am in.  This comes with a lot of people insterested in how to do things like running data pipelines or managing server infrastructure.  I always take time for these conversations, I find them interesting, and useful.  Sometimes you end up with someone who asks the same questions every 6 months, other times, you have someone flourish from these conversations.  I’m not saying to take on work from every other team in the org, but giving 30 minutes to help mentor others can go a long ways.&lt;/p&gt;&#xA;&lt;p&gt;I’m still not the best, I still get wrapped up in my own stuff just like prime calls out.  I sometimes get frustrated with others around me when things come up that prevent me from doing my work, or just getting the things out of my head that I had momentum on while the lightning was hot.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Skull Ant</title>
    <id>https://waylonwalker.com/shots/skull-ant/</id>
    <updated>2025-09-08T08:30:50Z</updated>
    <published>2025-09-08T08:30:50Z</published>
    <link href="https://waylonwalker.com/shots/skull-ant/" rel="alternate" type="text/html"></link>
    <summary type="text">Skull Ant</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/cb9dbf04-b1f6-4105-879d-86776cf11474.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Skull Ant&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/file/cb9dbf04-b1f6-4105-879d-86776cf11474.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/file/cb9dbf04-b1f6-4105-879d-86776cf11474.mp4&#34; type=&#34;video/mp4&#34;&gt;Skull Ant&lt;/video&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;Skull Ant&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>uv script management</title>
    <id>https://waylonwalker.com/uv-script-management/</id>
    <updated>2025-09-07T20:22:56Z</updated>
    <published>2025-09-07T20:22:56Z</published>
    <link href="https://waylonwalker.com/uv-script-management/" rel="alternate" type="text/html"></link>
    <summary type="text">I&#39;ve been leaning on lazy-self-installing-python-scripts more and more, but I did not realize how much tooling that uv gives you to help manage your scripts.</summary>
    <content type="html">&lt;p&gt;I’ve been leaning on&#xA;&lt;a href=&#34;https://treyhunner.com/2024/12/lazy-self-installing-python-scripts-with-uv/&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/treyhunner.com.png&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/treyhunner.com.png&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;lazy-self-installing-python-scripts&lt;/a&gt;&#xA;more and more, but I did not realize how much tooling that&#xA;&lt;a href=&#34;https://docs.astral.sh/uv/getting-started/installation/&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/docs.astral.sh.png&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/docs.astral.sh.png&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;uv&lt;/a&gt;&#xA;gives you to help manage your scripts.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;uv init --script up&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;uv add --script up typer rich&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;uv remove --script up rich&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sed -i &lt;span class=&#34;s1&#34;&gt;&amp;#39;1i #!/usr/bin/env -S uv run --script&amp;#39;&lt;/span&gt; up&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;chmod +x up&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;./up&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;The result is a script that looks like this, its executable as what looks like&#xA;regular command in your shell.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;ch&#34;&gt;#!/usr/bin/env -S uv run --script&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# /// script&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# requires-python = &amp;#34;&amp;gt;=3.13&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# dependencies = [&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;#     &amp;#34;typer&amp;#34;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# ]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# ///&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;def&lt;/span&gt; &lt;span class=&#34;nf&#34;&gt;main&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;()&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;-&amp;gt;&lt;/span&gt; &lt;span class=&#34;kc&#34;&gt;None&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;nb&#34;&gt;print&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;Hello from up!&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;if&lt;/span&gt; &lt;span class=&#34;vm&#34;&gt;__name__&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;==&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;__main__&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;n&#34;&gt;main&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;()&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Ben Dicken on X: &#34;I am once again begging you to put your data...</title>
    <id>https://waylonwalker.com/thought-829/</id>
    <updated>2025-09-05T23:45:00Z</updated>
    <published>2025-09-05T23:45:00Z</published>
    <link href="https://waylonwalker.com/thought-829/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://x.com/BenjDicken/status/1963998076198105475</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://x.com/BenjDicken/status/1963998076198105475&#34; class=&#34;embed-card-link  has-avatar has-avatar-before&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/x.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/x.com.ico&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;External Link&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;X (formerly Twitter) · x.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;This is a really great animation of latency across different aws regions based on us-east-1.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Silkspeer</title>
    <id>https://waylonwalker.com/shots/silkspeer/</id>
    <updated>2025-09-05T17:39:38Z</updated>
    <published>2025-09-05T17:39:38Z</published>
    <link href="https://waylonwalker.com/shots/silkspeer/" rel="alternate" type="text/html"></link>
    <summary type="text">Silkspeer</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/34154168-6fcc-4680-b830-514731613e29.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Silkspeer&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/file/34154168-6fcc-4680-b830-514731613e29.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/file/34154168-6fcc-4680-b830-514731613e29.mp4&#34; type=&#34;video/mp4&#34;&gt;Silkspeer&lt;/video&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;Silkspeer&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Berry Picking</title>
    <id>https://waylonwalker.com/shots/berry-picking/</id>
    <updated>2025-09-05T17:38:26Z</updated>
    <published>2025-09-05T17:38:26Z</published>
    <link href="https://waylonwalker.com/shots/berry-picking/" rel="alternate" type="text/html"></link>
    <summary type="text">Berry Picking</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/file/1568f7ee-a9fd-4176-b4ea-7e3316474184.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Berry Picking&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/file/1568f7ee-a9fd-4176-b4ea-7e3316474184.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/file/1568f7ee-a9fd-4176-b4ea-7e3316474184.mp4&#34; type=&#34;video/mp4&#34;&gt;Berry Picking&lt;/video&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;Berry Picking&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Hollow Knight: Silksong is breaking Steam, Nintendo’s eShop - ...</title>
    <id>https://waylonwalker.com/thought-828/</id>
    <updated>2025-09-04T17:20:03Z</updated>
    <published>2025-09-04T17:20:03Z</published>
    <link href="https://waylonwalker.com/thought-828/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://arstechnica.com/gaming/2025/09/hollow-knight-silksong-is-breaking-steam/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://arstechnica.com/gaming/2025/09/hollow-knight-silksong-is-breaking-steam/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://cdn.arstechnica.net/wp-content/uploads/2025/09/steamerror-1152x648-1757001087.jpg&#34; alt=&#34;Hollow Knight: Silksong is breaking Steam, Nintendo’s eShop — Valve&amp;#39;s usually stable platform struggles thanks in part to lack of pre-loading options.&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: Hollow Knight: Silksong is breaking Steam, Nintendo’s eShop — Valve&amp;#39;s usually stable platform struggles thanks in part to lack of pre-loading options.&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Hollow Knight: Silksong is breaking Steam, Nintendo’s eShop&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Valve&amp;#39;s usually stable platform struggles thanks in part to lack of pre-loading options.&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;Ars Technica · arstechnica.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Only 1 hour into the release of silksong, and it’s taken down all of the eshops, and steamdb dows 100K concurrent players.  The Humble store ran out of steam keys for silksong already.&lt;/p&gt;&#xA;&lt;p&gt;You guys better not break this thing before I get off work and My son gets home cause we are playing this tonight!!&lt;/p&gt;&#xA;&lt;p&gt;I just Check &lt;a href=&#34;https://steamdb.info/app/1030300/charts/&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/steamdb.info.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/steamdb.info.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;steamDB&lt;/a&gt;, and they have 441K concurrent players right now.  An Indie game!  This shows when you treat your fans right and make something incredible they stand behind you.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Chris Coyier</title>
    <id>https://waylonwalker.com/thought-827/</id>
    <updated>2025-09-04T01:43:39Z</updated>
    <published>2025-09-04T01:43:39Z</published>
    <link href="https://waylonwalker.com/thought-827/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://chriscoyier.net/2025/09/02/12693/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://chriscoyier.net/2025/09/02/12693/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://s0.wp.com/_si/?t=eyJpbWciOiJodHRwczpcL1wvaTAud3AuY29tXC9jaHJpc2NveWllci5uZXRcL3dwLWNvbnRlbnRcL3VwbG9hZHNcLzIwMjFcLzA3XC9Jc1VJU3ZBcV80MDB4NDAwLmpwZz9maXQ9NDAwJTJDNDAwJnNzbD0xIiwidHh0IjoiQ2hyaXMgQ295aWVyIiwidGVtcGxhdGUiOiJlZGdlIiwiZm9udCI6IiIsImJsb2dfaWQiOjc0MDc0MjQ4fQ.bvKLReBBKcA57TVb4-g9yEs2QdY7VFEGHqUPK_9OQuAMQ&#34; alt=&#34;— Trump says: With this order, I am announcing “America by Design,” a national initiative to improve experiences for Americans, starting by breathing new life into the design of sites where people in…&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: — Trump says: With this order, I am announcing “America by Design,” a national initiative to improve experiences for Americans, starting by breathing new life into the design of sites where people in…&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt; &lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Trump says: With this order, I am announcing “America by Design,” a national initiative to improve experiences for Americans, starting by breathing new life into the design of sites where peopl...&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;Chris Coyier · chriscoyier.net&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Everything is becoming political these days!  I hate it.  I regularly hear a friend say these podcasts need to set the politics to the side, but you know what its fukin hard when the gov is upending every corner  of life and rebranding it with their own new twist.  The billionaire class is winning and it looks like there ain’t a thing we can do about it.  Here’s another example of someone taking head of an office they have no business being in.  An entire set of working class folks let go for this guy to take over.  And what does he want to do, make govt services as satisfying as apple.  Apple is cutting edge, it is not something that is one bit sustainable.  Their launch sites are generally super heavy, hard to scroll, slow, over animated, but damn they are satisfying the first time you scroll through them, after that just let me through.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Home</title>
    <id>https://waylonwalker.com/thought-826/</id>
    <updated>2025-09-04T01:36:40Z</updated>
    <published>2025-09-04T01:36:40Z</published>
    <link href="https://waylonwalker.com/thought-826/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://lospec.com/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://lospec.com/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://cdn.lospec.com/static/images/og-image-default.png&#34; alt=&#34;Home — Free online tools for people creating pixel art and other low-spec art.&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: Home — Free online tools for people creating pixel art and other low-spec art.&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Home&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Free online tools for people creating pixel art and other low-spec art.&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;Lospec · lospec.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;My son introduced me to lospec.com, It has a great set of color palettes and amazing pixel art inspiration.  I particularly liked &lt;a href=&#34;https://lospec.com/palette-list/royal-armoury&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/lospec.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/lospec.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;royal armoury&lt;/a&gt; and  of course I’m a bit partial to &lt;a href=&#34;https://lospec.com/palette-list/hollow&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/lospec.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/lospec.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;hollow&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 GPT-5 + Codex is so fast that when I… | justin․searls․co</title>
    <id>https://waylonwalker.com/thought-825/</id>
    <updated>2025-09-03T19:27:01Z</updated>
    <published>2025-09-03T19:27:01Z</published>
    <link href="https://waylonwalker.com/thought-825/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://justin.searls.co/takes/2025-09-03-14h21m54s/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://justin.searls.co/takes/2025-09-03-14h21m54s/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img src=&#34;https://justin.searls.co/img/face.jpg&#34; alt=&#34;Justin Searls&#xA;@searls — &#xA;GPT-5 + Codex is so fast that when I expressed suspicion that a script was returning too few results (via `| wc -l`), Codex corrected me that I should have passed `--count` instead. Sure enough, that worked.&#xA;&amp;lt;p&amp;gt;Checked git status and realized Codex implemented the &amp;lt;code&amp;gt;--count&amp;lt;/code&amp;gt; flag in the script &amp;lt;em&amp;gt;concurrently as it corrected me&amp;lt;/em&amp;gt; for not having used it! Gaslit by a robot!&amp;#34; loading=“lazy”&amp;gt;&#xA;&amp;lt;/div&amp;gt;&#xA;&amp;lt;div class=&#34; embed-card-content glightbox&#34;=&#34;&#34;/ data-glightbox=&#34;description: Justin Searls&#xA;@searls — &#xA;GPT-5 + Codex is so fast that when I expressed suspicion that a script was returning too few results (via `| wc -l`), Codex corrected me that I should have passed `--count` instead. Sure enough, that worked.&#xA;&amp;lt;p&amp;gt;Checked git status and realized Codex implemented the &amp;lt;code&amp;gt;--count&amp;lt;/code&amp;gt; flag in the script &amp;lt;em&amp;gt;concurrently as it corrected me&amp;lt;/em&amp;gt; for not having used it! Gaslit by a robot!&amp;#34; loading=“lazy”&amp;gt;&#xA;&amp;lt;/div&amp;gt;&#xA;&amp;lt;div class=&#34;&gt;&#xA;&lt;div class=&#34;embed-card-title&#34;&gt;Justin Searls&#xA;@searls&lt;/div&gt;&#xA;&lt;div class=&#34;embed-card-description&#34;&gt;&#xA;GPT-5 + Codex is so fast that when I expressed suspicion that a script was returning too few results (via &lt;code&gt;| wc -l&lt;/code&gt;), Codex corrected me that I should have passed &lt;code&gt;--count&lt;/code&gt; instead. Sure enough, t…&lt;/div&gt;&#xA;&lt;div class=&#34;embed-card-meta&#34;&gt;justin․searls․co · justin.searls.co&lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;/a&gt;&lt;p&gt;&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;This is hilarious, the llm shames him for not utilizing the &lt;code&gt;--count&lt;/code&gt; flag, THAT DIDN’T EXIST WHEN HE RAN THE CLI!&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Vibe code is legacy code | Val Town Blog</title>
    <id>https://waylonwalker.com/thought-824/</id>
    <updated>2025-09-03T02:14:45Z</updated>
    <published>2025-09-03T02:14:45Z</published>
    <link href="https://waylonwalker.com/thought-824/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://blog.val.town/vibe-code</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://blog.val.town/vibe-code&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://blog.val.town/og-image.png?title=Vibe+code+is+legacy+code&#34; alt=&#34;Vibe code is legacy code — Updates and articles from the Val Town team&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: Vibe code is legacy code — Updates and articles from the Val Town team&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Vibe code is legacy code&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Updates and articles from the Val Town team&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;blog.val.town&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Brilliantly said.  &lt;a href=&#34;/vibe-coding/&#34; class=&#34;glossary-term&#34; title=&#34;A coding style popularized in 2025. It is the act of using LLMs to generate code for an application, but the author never looks at the output. The author...&#34;&gt;Vibe coding&lt;/a&gt; is legacy code.  It’s code that we forget exists.  Code that no one touches, you replace it.  If you touch it you are more likely to break it.&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;The worst possible situation is to have a non-programmer vibe code a large project that they intend to maintain. This would be the equivalent of giving a credit card to a child without first explaining the concept of debt.&lt;/p&gt;&#xA;&lt;p&gt;As you can imagine, the first phase is ecstatic. I can wave this little piece of plastic in stores and take whatever I want! …&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;p&gt;Read more in the full &lt;a href=&#34;https://blog.val.town/vibe-code&#34;&gt;post&lt;/a&gt;&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>When To Vibe Code</title>
    <id>https://waylonwalker.com/when-to-vibe-code/</id>
    <updated>2025-09-02T19:44:20Z</updated>
    <published>2025-09-02T19:44:20Z</published>
    <link href="https://waylonwalker.com/when-to-vibe-code/" rel="alternate" type="text/html"></link>
    <summary type="text">I enjoyed this post from Theo and think it deserves re-iterated, revisited, and to remind myself of some of these things.</summary>
    <content type="html">&lt;p&gt;I enjoyed this post from Theo and think it deserves re-iterated, revisited, and&#xA;to remind myself of some of these things.&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://youtu.be/6TMPWvPG5GA?si=guQem4R8dLOMBntP&amp;amp;t=1356&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/youtu.be.png&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/youtu.be.png&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;https://youtu.be/6TMPWvPG5GA?si=guQem4R8dLOMBntP&amp;amp;t=1356&lt;/a&gt;&lt;/p&gt;&#xA;&lt;h2 id=&#34;the-skillread-spectrum&#34;&gt;The skill/read spectrum &lt;a href=&#34;#the-skillread-spectrum&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/209e62d2-4687-4ce0-880b-c7375867f616.png&#34; class=&#34;glightbox-link&#34; aria-label=&#34;screenshot-2025-09-03T00-32-08-321Z.png&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/209e62d2-4687-4ce0-880b-c7375867f616.png&#34; alt=&#34;screenshot-2025-09-03T00-32-08-321Z.png&#34;/ data-glightbox=&#34;description: screenshot-2025-09-03T00-32-08-321Z.png&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;p&gt;The first diagram describes that there has become a spectrum of agentic coding&#xA;from &lt;a href=&#34;/vibe-coding/&#34; class=&#34;glossary-term&#34; title=&#34;A coding style popularized in 2025. It is the act of using LLMs to generate code for an application, but the author never looks at the output. The author...&#34;&gt;vibe coding&lt;/a&gt; where you don’t ready anything, to looking at everything in&#xA;detail, across a group of people who don’t have a clue what the code says to&#xA;people who could do it way better if they took the time.&lt;/p&gt;&#xA;&lt;h3 id=&#34;the-importance-spectrum&#34;&gt;The importance spectrum &lt;a href=&#34;#the-importance-spectrum&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h3&gt;&#xA;&lt;p&gt;He argues here that its ok to bounce between A,B, and D, but C becomes&#xA;dangerous.  I’d argue that he brought up a 3rd spectrum that is important later&#xA;on, “how critical is this”.  I think the I don’t know, don’t care, didn’t read,&#xA;but the thing did its job is quite fine, but don’t know, don’t care, mission&#xA;critical is the main issue we are seeing with agentic coding, primarily in the&#xA;didn’t read but critical Zone.&lt;/p&gt;&#xA;&lt;h2 id=&#34;the-rules&#34;&gt;The Rules &lt;a href=&#34;#the-rules&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;This is the list that prompted this post, I think it serves as a good reminder&#xA;when you should care a bit more.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/3093511a-f1fd-49cb-8152-bc6c60cc80e2.png&#34; class=&#34;glightbox-link&#34; aria-label=&#34;screenshot-2025-09-03T00-24-17-121Z.png&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/3093511a-f1fd-49cb-8152-bc6c60cc80e2.png&#34; alt=&#34;screenshot-2025-09-03T00-24-17-121Z.png&#34;/ data-glightbox=&#34;description: screenshot-2025-09-03T00-24-17-121Z.png&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;you-still-need-to-know-how-code-works-if-you-want-to-be-a-coder&#34;&gt;You still need to know how code works if you want to be a coder &lt;a href=&#34;#you-still-need-to-know-how-code-works-if-you-want-to-be-a-coder&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;If you want to get good, you need to put in the reps, do the practice, learn to&#xA;debug the strange looking error messages and not just pass them to ChatGPT.&lt;/p&gt;&#xA;&lt;h2 id=&#34;theres-a-lot-of-code-worth-having-that-is-not-worth-writing-or-reading&#34;&gt;There’s a lot of code worth having that is not worth writing or reading &lt;a href=&#34;#theres-a-lot-of-code-worth-having-that-is-not-worth-writing-or-reading&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;As professionals we have a lot of code that we read more than we write, will&#xA;get executed millions of times over the next 10 years that its in service, pay&#xA;close attention to this and probably set aside the llm.&lt;/p&gt;&#xA;&lt;p&gt;We also write a lot of that is ran only a few times, maybe its a special&#xA;report, or a shell script to bootstrap something.  It might be a POC service&#xA;that you build out only ever on your machine, you get your idea out in front of&#xA;users or try it yourself and find the mistakes before you spend weeks building&#xA;it yourself.&lt;/p&gt;&#xA;&lt;h2 id=&#34;you-cant-be-mad-at-vibe-coding-and-be-mad-at-left-pad&#34;&gt;you can’t be mad at vibe coding AND be mad at left-pad &lt;a href=&#34;#you-cant-be-mad-at-vibe-coding-and-be-mad-at-left-pad&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;This one is interesting that he was very strongly for.  The idea is that no one&#xA;ever reads the code from libraries they use, or the diffs of new versions&#xA;(outside of google where everything is literally vendored into the monolith).&#xA;If you don’t care about all of those dependencies, you cannot get mad at vibe&#xA;coding.&lt;/p&gt;&#xA;&lt;p&gt;I’ll argue here a smidge, but I agree with the premiss.  Left-pad was probably&#xA;written by someone smarter than average.  It was definitely used by &lt;strong&gt;far&lt;/strong&gt;&#xA;more people and projects, therefore was battle tested to no end.  This was the&#xA;real reason this stuff got in everywhere.  People are probably not good enough&#xA;to catch all the odd edge cases for &lt;code&gt;js&lt;/code&gt;, especially if front end is not their&#xA;specialty.&lt;/p&gt;&#xA;&lt;h2 id=&#34;vibe-code-is-a-type-of-legacy-codehttpsblogvaltownvibe-code&#34;&gt;&lt;a href=&#34;https://blog.val.town/vibe-code&#34;&gt;Vibe code is a type of legacy code&lt;/a&gt; &lt;a href=&#34;#vibe-code-is-a-type-of-legacy-codehttpsblogvaltownvibe-code&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;Vibe coding is a type of legacy code, but as a type of debt that we opt into,&#xA;not one that has accumulated over time and we have opted not to take care of.&#xA;Both are types of code that no one reads, no one remembers existed.&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;When someone needs to change legacy code they don’t, they take a hammer to it&#xA;and rewrite it from scratch.&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;h2 id=&#34;if-the-tools-are-better-than-you-stop-using-them&#34;&gt;If the tools are better than you, stop using them &lt;a href=&#34;#if-the-tools-are-better-than-you-stop-using-them&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;Theo has a good example here.  Critial business components to his businesses&#xA;have switched to using &lt;code&gt;Effect&lt;/code&gt;.  It solves async issues with ease, but melts&#xA;the brain of anyone seeing it for the first time.  He admits that he does not&#xA;code as much anymore and thus he sucks at it, but knows that if he is ever to&#xA;learn it one bit he must turn off the LLM and put in the work to do it himself.&lt;/p&gt;&#xA;&lt;p&gt;You will not get any better at this by copy pasting from ChatGPT.  It is too&#xA;easy to put your brain aside, paste error messages, and copy the reponse in. Or&#xA;worse with agents tell them &lt;code&gt;fix this&lt;/code&gt;.  Unlike the days of Stack Overflow, you&#xA;had to understand your problem well enough to search it.  You had to understand&#xA;the answers enough to integrate the solution, you had to understand if the&#xA;solution was even for your problem in the first place.  There was much more&#xA;brain work that had to happen even then when the answers were basically given&#xA;to you.&lt;/p&gt;&#xA;&lt;h2 id=&#34;fin&#34;&gt;Fin &lt;a href=&#34;#fin&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;Lastly Theo does not bring this rule, up, but if you are writing text for&#xA;humans to read, you shall not copy paste from ChatGPT without thoroughly&#xA;editing and reading for yourself first, this is considered &lt;a href=&#34;/ai-slop/&#34; class=&#34;wikilink&#34; data-title=&#34;Ai Slop&#34; data-description=&#34;AI slop is unwanted AI content, generally shared by someone who did not review the output and is considered highly offensive and rude.&#34; data-date=&#34;2025-08-05&#34; data-preview=&#34;AI slop is unwanted AI content, generally shared by someone who did not review the output and is considered highly offensive and rude.&#34;&gt;Ai Slop&lt;/a&gt; and&#xA;you should be ashamed.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Rich Pixels</title>
    <id>https://waylonwalker.com/thought-823/</id>
    <updated>2025-09-02T13:43:58Z</updated>
    <published>2025-09-02T13:43:58Z</published>
    <link href="https://waylonwalker.com/thought-823/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://simonwillison.net/2025/Sep/2/rich-pixels/#atom-everything</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://simonwillison.net/2025/Sep/2/rich-pixels/#atom-everything&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://static.simonwillison.net/static/2025/pixel-storehouse.jpg&#34; alt=&#34;Rich Pixels — Neat Python library by Darren Burns adding pixel image support to the Rich terminal library, using tricks to render an image using full or half-height colored blocks. Here&amp;#39;s the key …&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: Rich Pixels — Neat Python library by Darren Burns adding pixel image support to the Rich terminal library, using tricks to render an image using full or half-height colored blocks. Here&amp;#39;s the key …&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Rich Pixels&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Neat Python library by Darren Burns adding pixel image support to the Rich terminal library, using tricks to render an image using full or half-height colored blocks. Here&amp;#39;s the key …&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;Simon Willison’s Weblog · simonwillison.net&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;I saw this post from Simon and I had to give it a go and got some pretty good results.  His script is a small cli wrapper around Darren Burns’s &lt;a href=&#34;https://github.com/darrenburns/rich-pixels&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;Rich Pixels&lt;/a&gt;.  It works well even through tmux, since there is no terminal magic, just unicode blocks.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/024bf3e0-9c38-4c1e-ad5c-ed0156c9a99b.png&#34; class=&#34;glightbox-link&#34; aria-label=&#34;screenshot-2025-09-02T13-39-25-710Z.png&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/024bf3e0-9c38-4c1e-ad5c-ed0156c9a99b.png&#34; alt=&#34;screenshot-2025-09-02T13-39-25-710Z.png&#34;/ data-glightbox=&#34;description: screenshot-2025-09-02T13-39-25-710Z.png&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/4bf522eb-4207-4a23-b5d0-626cefc8bdca.png&#34; class=&#34;glightbox-link&#34; aria-label=&#34;screenshot-2025-09-02T13-40-22-890Z.png&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/4bf522eb-4207-4a23-b5d0-626cefc8bdca.png&#34; alt=&#34;screenshot-2025-09-02T13-40-22-890Z.png&#34;/ data-glightbox=&#34;description: screenshot-2025-09-02T13-40-22-890Z.png&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/d061e85f-98cf-4b3c-871c-e01611022b44.png&#34; class=&#34;glightbox-link&#34; aria-label=&#34;screenshot-2025-09-02T13-41-39-775Z.png&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/d061e85f-98cf-4b3c-871c-e01611022b44.png&#34; alt=&#34;screenshot-2025-09-02T13-41-39-775Z.png&#34;/ data-glightbox=&#34;description: screenshot-2025-09-02T13-41-39-775Z.png&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;p&gt;Some not so good, and needed the terminal font size cranked up.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/a532f113-185e-44ef-bcf8-30eed7e3f62a.png&#34; class=&#34;glightbox-link&#34; aria-label=&#34;screenshot-2025-09-02T13-38-16-641Z.png&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/a532f113-185e-44ef-bcf8-30eed7e3f62a.png&#34; alt=&#34;screenshot-2025-09-02T13-38-16-641Z.png&#34;/ data-glightbox=&#34;description: screenshot-2025-09-02T13-38-16-641Z.png&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/a66d4d7a-975d-4909-88a2-3761e2d3348f.png&#34; class=&#34;glightbox-link&#34; aria-label=&#34;screenshot-2025-09-02T13-38-46-814Z.png&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/a66d4d7a-975d-4909-88a2-3761e2d3348f.png&#34; alt=&#34;screenshot-2025-09-02T13-38-46-814Z.png&#34;/ data-glightbox=&#34;description: screenshot-2025-09-02T13-38-46-814Z.png&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>nvim delete current file</title>
    <id>https://waylonwalker.com/nvim-delete-current-file/</id>
    <updated>2025-09-02T13:23:21Z</updated>
    <published>2025-09-02T13:23:21Z</published>
    <link href="https://waylonwalker.com/nvim-delete-current-file/" rel="alternate" type="text/html"></link>
    <summary type="text">This one is one that I&#39;ve been using quite often, I did&#39;t have a hotkey for it, I just used the shell command.</summary>
    <content type="html">&lt;p&gt;This one is one that I’ve been using quite often, I did’t have a hotkey for it,&#xA;I just used the &lt;code&gt;rm&lt;/code&gt; shell command.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;!!&lt;/span&gt;&lt;span class=&#34;nx&#34;&gt;rm&lt;/span&gt; %&lt;span class=&#34;p&#34;&gt;&amp;lt;&lt;/span&gt;&lt;span class=&#34;nx&#34;&gt;TAB&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;&amp;gt;&amp;lt;&lt;/span&gt;&lt;span class=&#34;nx&#34;&gt;CR&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;&amp;gt;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;When you type &lt;code&gt;!!&lt;/code&gt; from normal mode it will automatically put you in command&#xA;mode with &lt;code&gt;.!&lt;/code&gt; pre-filled, then you just type &lt;code&gt;rm &lt;/code&gt; and &lt;code&gt;&amp;lt;TAB&amp;gt;&lt;/code&gt; to&#xA;auto-complete the current file name, and &lt;code&gt;&amp;lt;CR&amp;gt;&lt;/code&gt; to execute the command.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;.&lt;span class=&#34;p&#34;&gt;!&lt;/span&gt;&lt;span class=&#34;nx&#34;&gt;rm&lt;/span&gt; %&lt;span class=&#34;p&#34;&gt;&amp;lt;&lt;/span&gt;&lt;span class=&#34;nx&#34;&gt;TAB&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;&amp;gt;&amp;lt;&lt;/span&gt;&lt;span class=&#34;nx&#34;&gt;CR&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;&amp;gt;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;h2 id=&#34;making-it-better&#34;&gt;Making it better &lt;a href=&#34;#making-it-better&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;The one quirk that I don’t like about this is that the buffer remains open&#xA;after deleting, and sometimes I forget to close it and end up re-creating it by&#xA;mistake when running &lt;code&gt;:wall&lt;/code&gt; or &lt;code&gt;:xall&lt;/code&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Create a &lt;code&gt;DeleteFile&lt;/code&gt; command with vim command.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;nx&#34;&gt;command&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;!&lt;/span&gt; &lt;span class=&#34;nx&#34;&gt;DeleteFile&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;execute&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;!rm %&amp;#34;&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt; &lt;span class=&#34;nx&#34;&gt;bdelete&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;!&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Create a &lt;code&gt;DeleteFile&lt;/code&gt; command with lua.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;vim.api&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;nvim_create_user_command&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  &lt;span class=&#34;s1&#34;&gt;&amp;#39;DeleteFile&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  &lt;span class=&#34;kr&#34;&gt;function&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;()&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;c1&#34;&gt;-- Delete the current file from disk&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;n&#34;&gt;vim.cmd&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;!rm %&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;c1&#34;&gt;-- Close the buffer without saving&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;n&#34;&gt;vim.cmd&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;bdelete!&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  &lt;span class=&#34;kr&#34;&gt;end&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  &lt;span class=&#34;p&#34;&gt;{}&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Mark Of Pride Hollow Knight Keeb Run</title>
    <id>https://waylonwalker.com/shots/mark-of-pride-hollow-knight-keeb-run/</id>
    <updated>2025-08-31T17:10:06Z</updated>
    <published>2025-08-31T17:10:06Z</published>
    <link href="https://waylonwalker.com/shots/mark-of-pride-hollow-knight-keeb-run/" rel="alternate" type="text/html"></link>
    <summary type="text">The Knight collects the mark of pride charm after defeating the mantis lords.</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/b9af2296-60e9-4d92-989f-1529a59c75a1.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;mark of pride hollow knight keeb run&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/b9af2296-60e9-4d92-989f-1529a59c75a1.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/b9af2296-60e9-4d92-989f-1529a59c75a1.mp4&#34; type=&#34;video/mp4&#34;&gt;mark of pride hollow knight keeb run&lt;/video&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;The Knight collects the mark of pride charm after defeating the mantis lords.&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Defeating The Mantis Lords</title>
    <id>https://waylonwalker.com/shots/defeating-the-mantis-lords/</id>
    <updated>2025-08-31T17:09:31Z</updated>
    <published>2025-08-31T17:09:31Z</published>
    <link href="https://waylonwalker.com/shots/defeating-the-mantis-lords/" rel="alternate" type="text/html"></link>
    <summary type="text">The Knight reigns victorious against the three mantis lords, earning the respect of the mantis village.</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/90bb2a30-c781-4dfd-98aa-ed933b24f1e3.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Defeating the mantis lords&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/90bb2a30-c781-4dfd-98aa-ed933b24f1e3.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/90bb2a30-c781-4dfd-98aa-ed933b24f1e3.mp4&#34; type=&#34;video/mp4&#34;&gt;Defeating the mantis lords&lt;/video&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;The Knight reigns victorious against the three mantis lords, earning the respect of the mantis village.&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Mantis Lords Defeat Hollow Knight Keeb Run</title>
    <id>https://waylonwalker.com/shots/mantis-lords-defeat-hollow-knight-keeb-run/</id>
    <updated>2025-08-31T17:08:29Z</updated>
    <published>2025-08-31T17:08:29Z</published>
    <link href="https://waylonwalker.com/shots/mantis-lords-defeat-hollow-knight-keeb-run/" rel="alternate" type="text/html"></link>
    <summary type="text">The Knight falls victim to the Mantis Lords in his first attempt to challenge them.</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/98e34601-2cdd-4a38-98a1-97719b38c843.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;mantis lords defeat hollow knight keeb run&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/98e34601-2cdd-4a38-98a1-97719b38c843.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/98e34601-2cdd-4a38-98a1-97719b38c843.mp4&#34; type=&#34;video/mp4&#34;&gt;mantis lords defeat hollow knight keeb run&lt;/video&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;The Knight falls victim to the Mantis Lords in his first attempt to challenge them.&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Challenging The Mantis Lords Hollow Knight Keeb Run</title>
    <id>https://waylonwalker.com/shots/challenging-the-mantis-lords-hollow-knight-keeb-run/</id>
    <updated>2025-08-31T17:06:58Z</updated>
    <published>2025-08-31T17:06:58Z</published>
    <link href="https://waylonwalker.com/shots/challenging-the-mantis-lords-hollow-knight-keeb-run/" rel="alternate" type="text/html"></link>
    <summary type="text">The little night steps in front of the three mantis lords and draws his nail signaling his challenge.</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/dfe1c93b-3dd8-4941-8991-7ec8d4b49beb.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Challenging the mantis lords hollow knight keeb run&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/dfe1c93b-3dd8-4941-8991-7ec8d4b49beb.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/dfe1c93b-3dd8-4941-8991-7ec8d4b49beb.mp4&#34; type=&#34;video/mp4&#34;&gt;Challenging the mantis lords hollow knight keeb run&lt;/video&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;The little night steps in front of the three mantis lords and draws his nail signaling his challenge.&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Thorny Wanderers Journal Hollow Knight Keeb Run</title>
    <id>https://waylonwalker.com/shots/thorny-wanderers-journal-hollow-knight-keeb-run/</id>
    <updated>2025-08-31T11:16:31Z</updated>
    <published>2025-08-31T11:16:31Z</published>
    <link href="https://waylonwalker.com/shots/thorny-wanderers-journal-hollow-knight-keeb-run/" rel="alternate" type="text/html"></link>
    <summary type="text">Parkour though the thorns yields a wanderers journal.</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/d8cdee6e-4627-444a-99a0-b5b35e960dd8.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Thorny Wanderers Journal Hollow Knight Keeb Run&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/d8cdee6e-4627-444a-99a0-b5b35e960dd8.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/d8cdee6e-4627-444a-99a0-b5b35e960dd8.mp4&#34; type=&#34;video/mp4&#34;&gt;Thorny Wanderers Journal Hollow Knight Keeb Run&lt;/video&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;Parkour though the thorns yields a wanderers journal.&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Spore Shroom Hollow Knight Keeb Run</title>
    <id>https://waylonwalker.com/shots/spore-shroom-hollow-knight-keeb-run/</id>
    <updated>2025-08-31T11:15:42Z</updated>
    <published>2025-08-31T11:15:42Z</published>
    <link href="https://waylonwalker.com/shots/spore-shroom-hollow-knight-keeb-run/" rel="alternate" type="text/html"></link>
    <summary type="text">Unlocking the Spore Shroom Charm in Hollow Knight Keeb Run</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/a15c7895-bd25-4238-9634-f58c2590730a.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;spore shroom hollow knight keeb run&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/a15c7895-bd25-4238-9634-f58c2590730a.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/a15c7895-bd25-4238-9634-f58c2590730a.mp4&#34; type=&#34;video/mp4&#34;&gt;spore shroom hollow knight keeb run&lt;/video&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;Unlocking the Spore Shroom Charm in Hollow Knight Keeb Run&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Thorny Mask Shard Hollow Knight Keeb Run</title>
    <id>https://waylonwalker.com/shots/thorny-mask-shard-hollow-knight-keeb-run/</id>
    <updated>2025-08-31T11:14:55Z</updated>
    <published>2025-08-31T11:14:55Z</published>
    <link href="https://waylonwalker.com/shots/thorny-mask-shard-hollow-knight-keeb-run/" rel="alternate" type="text/html"></link>
    <summary type="text">A tricky parkour through the thorns to yield a mask shard and complete a full mask.</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/2b9b5302-7437-4910-a98c-bc96650e353c.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Thorny Mask Shard Hollow Knight Keeb Run&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/2b9b5302-7437-4910-a98c-bc96650e353c.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/2b9b5302-7437-4910-a98c-bc96650e353c.mp4&#34; type=&#34;video/mp4&#34;&gt;Thorny Mask Shard Hollow Knight Keeb Run&lt;/video&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;A tricky parkour through the thorns to yield a mask shard and complete a full mask.&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Cut Away Keycap Down</title>
    <id>https://waylonwalker.com/shots/cut-away-keycap-down/</id>
    <updated>2025-08-30T16:28:16Z</updated>
    <published>2025-08-30T16:28:16Z</published>
    <link href="https://waylonwalker.com/shots/cut-away-keycap-down/" rel="alternate" type="text/html"></link>
    <summary type="text">A cut away keycap on a Durock lupine switched pressed all the way to bottom out.</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/a767d7d4-cd81-44fe-b3a7-2500df2d92df.jpg&#34; class=&#34;glightbox-link&#34; aria-label=&#34;cut away keycap down&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/a767d7d4-cd81-44fe-b3a7-2500df2d92df.jpg&#34; alt=&#34;cut away keycap down&#34;/ data-glightbox=&#34;description: cut away keycap down&#34;&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;A cut away keycap on a Durock lupine switched pressed all the way to bottom out.&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Cutaway Key Cap Up</title>
    <id>https://waylonwalker.com/shots/cutaway-key-cap-up/</id>
    <updated>2025-08-30T16:27:22Z</updated>
    <published>2025-08-30T16:27:22Z</published>
    <link href="https://waylonwalker.com/shots/cutaway-key-cap-up/" rel="alternate" type="text/html"></link>
    <summary type="text">A cutaway keycap sitting on a durock lupine switch</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/7b6d0a00-1a4a-4341-b3c9-87d7436fd55a.jpg&#34; class=&#34;glightbox-link&#34; aria-label=&#34;cutaway key cap up&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/7b6d0a00-1a4a-4341-b3c9-87d7436fd55a.jpg&#34; alt=&#34;cutaway key cap up&#34;/ data-glightbox=&#34;description: cutaway key cap up&#34;&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;A cutaway keycap sitting on a durock lupine switch&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Freshly Cut Keycap Cut Away</title>
    <id>https://waylonwalker.com/shots/freshly-cut-keycap-cut-away/</id>
    <updated>2025-08-30T16:26:22Z</updated>
    <published>2025-08-30T16:26:22Z</published>
    <link href="https://waylonwalker.com/shots/freshly-cut-keycap-cut-away/" rel="alternate" type="text/html"></link>
    <summary type="text">A keycap glued to a 2x4 freshly turned into a cut away keykap.</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/c02aff9d-bb8f-42aa-8dd8-34b391a44547.jpg&#34; class=&#34;glightbox-link&#34; aria-label=&#34;freshly cut keycap cut away&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/c02aff9d-bb8f-42aa-8dd8-34b391a44547.jpg&#34; alt=&#34;freshly cut keycap cut away&#34;/ data-glightbox=&#34;description: freshly cut keycap cut away&#34;&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;A keycap glued to a 2x4 freshly turned into a cut away keykap.&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Keycap Cut Away</title>
    <id>https://waylonwalker.com/keycap-cut-away/</id>
    <updated>2025-08-30T16:03:01Z</updated>
    <published>2025-08-30T16:03:01Z</published>
    <link href="https://waylonwalker.com/keycap-cut-away/" rel="alternate" type="text/html"></link>
    <summary type="text">I was curious how/if my custom keycap design was hitting my switches. So I set out to find out what the fitup inside of this assembly looks like, but not...</summary>
    <content type="html">&lt;p&gt;I was curious how/if my custom keycap design was hitting my switches.  So I set&#xA;out to find out what the fitup inside of this assembly looks like, but not&#xA;theoretically, a fully sliced view into their fit up in the flesh.&lt;/p&gt;&#xA;&lt;h2 id=&#34;the-set-up&#34;&gt;The set up &lt;a href=&#34;#the-set-up&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;To setup for this cut, I flooded the edge of a 2x4 with hot glue, and inserted&#xA;the cap such that the step was tangent with the edge.  This way I could use the&#xA;edge as a guide to cut one side off and leave the stem in tact.  I took a&#xA;handsaw to it and filed it smooth.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/c02aff9d-bb8f-42aa-8dd8-34b391a44547.jpg&#34; class=&#34;glightbox-link&#34; aria-label=&#34;PXL_20250830_193408664.jpg&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/c02aff9d-bb8f-42aa-8dd8-34b391a44547.jpg&#34; alt=&#34;PXL_20250830_193408664.jpg&#34;/ data-glightbox=&#34;description: PXL_20250830_193408664.jpg&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;p&gt;Removal was applying some isopropyl alcohol and it popped right off.&lt;/p&gt;&#xA;&lt;h2 id=&#34;results&#34;&gt;Results &lt;a href=&#34;#results&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;Actually the results aren’t that interesting.  I found that the pictures turned&#xA;out really good, but nothing was touching and it sits in the stem exactly as I&#xA;thought it did.  I had a thought, what if the cap is not allowing the switch to&#xA;reach it’s full travel, and had no way to know, but now I know.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/7b6d0a00-1a4a-4341-b3c9-87d7436fd55a.jpg&#34; class=&#34;glightbox-link&#34; aria-label=&#34;PXL_20250830_193653788.jpg&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/7b6d0a00-1a4a-4341-b3c9-87d7436fd55a.jpg&#34; alt=&#34;PXL_20250830_193653788.jpg&#34;/ data-glightbox=&#34;description: PXL_20250830_193653788.jpg&#34;&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;Key Up&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/a767d7d4-cd81-44fe-b3a7-2500df2d92df.jpg&#34; class=&#34;glightbox-link&#34; aria-label=&#34;PXL_20250830_193712809.jpg&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/a767d7d4-cd81-44fe-b3a7-2500df2d92df.jpg&#34; alt=&#34;PXL_20250830_193712809.jpg&#34;/ data-glightbox=&#34;description: PXL_20250830_193712809.jpg&#34;&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;Key Down&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Aquiring Ismas Tear Hollow Knight Keeb Run</title>
    <id>https://waylonwalker.com/shots/aquiring-ismas-tear-hollow-knight-keeb-run/</id>
    <updated>2025-08-30T11:13:21Z</updated>
    <published>2025-08-30T11:13:21Z</published>
    <link href="https://waylonwalker.com/shots/aquiring-ismas-tear-hollow-knight-keeb-run/" rel="alternate" type="text/html"></link>
    <summary type="text">The long trek has paid off and we have aquired Isma&#39;s tear, it coats our outter shell with protective coating from the acid, giving us access to new parts of the world.</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/c6a334a4-d8d3-4742-82ea-3b6e9eaa9923.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Aquiring Ismas Tear Hollow Knight Keeb Run&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/c6a334a4-d8d3-4742-82ea-3b6e9eaa9923.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/c6a334a4-d8d3-4742-82ea-3b6e9eaa9923.mp4&#34; type=&#34;video/mp4&#34;&gt;Aquiring Ismas Tear Hollow Knight Keeb Run&lt;/video&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;The long trek has paid off and we have aquired Isma’s tear, it coats our outter shell with protective coating from the acid, giving us access to new parts of the world.&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Ismas Tear Battle Hollow Knight Keeb Run</title>
    <id>https://waylonwalker.com/shots/ismas-tear-battle-hollow-knight-keeb-run/</id>
    <updated>2025-08-30T11:07:17Z</updated>
    <published>2025-08-30T11:07:17Z</published>
    <link href="https://waylonwalker.com/shots/ismas-tear-battle-hollow-knight-keeb-run/" rel="alternate" type="text/html"></link>
    <summary type="text">Finishing the battle before accessing Isma&#39;s tear in Hollow Knight</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/4dd7d2cd-7d4a-473e-a483-f8f8512c6442.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;ismas tear battle hollow knight keeb run&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/4dd7d2cd-7d4a-473e-a483-f8f8512c6442.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/4dd7d2cd-7d4a-473e-a483-f8f8512c6442.mp4&#34; type=&#34;video/mp4&#34;&gt;ismas tear battle hollow knight keeb run&lt;/video&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;Finishing the battle before accessing Isma’s tear in Hollow Knight&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Climbing Out Of Deep Nest In Hollow Knight Keeb Run</title>
    <id>https://waylonwalker.com/shots/climbing-out-of-deep-nest-in-hollow-knight-keeb-run/</id>
    <updated>2025-08-30T11:02:47Z</updated>
    <published>2025-08-30T11:02:47Z</published>
    <link href="https://waylonwalker.com/shots/climbing-out-of-deep-nest-in-hollow-knight-keeb-run/" rel="alternate" type="text/html"></link>
    <summary type="text">Making light moves of this tricky parkour run between deepnest and the royal waterways</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/9a4befef-e694-4a3c-8b0e-edd06a3f741c.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Climbing out of deep nest in hollow knight keeb run&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/9a4befef-e694-4a3c-8b0e-edd06a3f741c.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/9a4befef-e694-4a3c-8b0e-edd06a3f741c.mp4&#34; type=&#34;video/mp4&#34;&gt;Climbing out of deep nest in hollow knight keeb run&lt;/video&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;Making light moves of this tricky parkour run between deepnest and the royal waterways&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Knife Sharpener Small Upgrade</title>
    <id>https://waylonwalker.com/knife-sharpener-small-upgrade/</id>
    <updated>2025-08-29T16:17:00Z</updated>
    <published>2025-08-29T16:17:00Z</published>
    <link href="https://waylonwalker.com/knife-sharpener-small-upgrade/" rel="alternate" type="text/html"></link>
    <summary type="text">I&#39;ve used this knife sharpener that I printed for a few years now. I thought that it was based on the Russian designed TSPROF, but in looking through the...</summary>
    <content type="html">&lt;p&gt;I’ve used this knife sharpener that I printed for a few years now.  I thought&#xA;that it was based on the Russian designed TSPROF, but in looking through the&#xA;history it looks very similar to the USA Edge Pro Inc Apex designs that goes&#xA;back to the 1990’s.  The angle isn’t quite holding like it used to.  I’ve got a&#xA;lot of ideas for my own model, but for now I’m going to print some spacers to&#xA;help get repeatable angles.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/c587bfe8-e310-429d-a3fd-ee617670f6ef.jpg&#34; class=&#34;glightbox-link&#34; aria-label=&#34;PXL_20250822_211720540.jpg&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/c587bfe8-e310-429d-a3fd-ee617670f6ef.jpg&#34; alt=&#34;PXL_20250822_211720540.jpg&#34;/ data-glightbox=&#34;description: PXL_20250822_211720540.jpg&#34;&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;setting the angle on my sharpener&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/d09ababd-e1e3-4290-ac35-725181df89b7.jpg&#34; class=&#34;glightbox-link&#34; aria-label=&#34;PXL_20250822_211926948.jpg&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/d09ababd-e1e3-4290-ac35-725181df89b7.jpg&#34; alt=&#34;PXL_20250822_211926948.jpg&#34;/ data-glightbox=&#34;description: PXL_20250822_211926948.jpg&#34;&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;Where I want to place a fixed height collar&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;16deg 31.5mm&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;17deg 34.8mm&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;18deg 38.0mm&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;19deg 40.6mm&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;20deg 43.8mm&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;21deg 47.4mm&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;22deg 50.2mm&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;23deg 52.0mm&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;24deg 54.3mm&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;h2 id=&#34;so-i-may-have-went-to-the-next-level&#34;&gt;so I may have went to the next level &lt;a href=&#34;#so-i-may-have-went-to-the-next-level&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/30335f07-9cac-4e66-b908-f0e3cfbf7582.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;30335f07-9cac-4e66-b908-f0e3cfbf7582.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/30335f07-9cac-4e66-b908-f0e3cfbf7582.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/30335f07-9cac-4e66-b908-f0e3cfbf7582.mp4&#34; type=&#34;video/mp4&#34;&gt;30335f07-9cac-4e66-b908-f0e3cfbf7582.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Plastic rollers instead of bearings. Little step forward with ...</title>
    <id>https://waylonwalker.com/thought-822/</id>
    <updated>2025-08-29T13:31:40Z</updated>
    <published>2025-08-29T13:31:40Z</published>
    <link href="https://waylonwalker.com/thought-822/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/shorts/QTPEwmI5epA</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;QTPEwmI5epA&#34; title=&#34;Plastic rollers instead of bearings. Little step forward with every version! #BBlauncher #airsoft&#34; playlabel=&#34;Play: Plastic rollers instead of bearings. Little step forward with every version! #BBlauncher #airsoft&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;This is a really uniquely designed print in place bb launcher.  I’ve never seen bb’s on a zip tie like that, they look smooth and molded.  Interesting to hear about the design process.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Learn to use email with git!</title>
    <id>https://waylonwalker.com/thought-821/</id>
    <updated>2025-08-29T13:23:08Z</updated>
    <published>2025-08-29T13:23:08Z</published>
    <link href="https://waylonwalker.com/thought-821/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://git-send-email.io/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://git-send-email.io/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Learn to use email with git!&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;git-send-email.io&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;This site gives us a glimpse into the development workflow using &lt;a href=&#34;/glossary/git/&#34; class=&#34;glossary-term&#34; title=&#34;Git is a version control system for tracking changes in source code during software development. In the beginning there were many, some were licensed. As...&#34;&gt;git&lt;/a&gt; over email, without remote centralized servers.  I found it interesting how patches can be sent with an optional cover letter nearly like a pr would be made.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>vim noa</title>
    <id>https://waylonwalker.com/vim-noa/</id>
    <updated>2025-08-29T08:32:44Z</updated>
    <published>2025-08-29T08:32:44Z</published>
    <link href="https://waylonwalker.com/vim-noa/" rel="alternate" type="text/html"></link>
    <summary type="text">Vim is a command that runs what you call without autocommands on. This is typically used when you have some commands for formatting, most auto formatters are...</summary>
    <content type="html">&lt;p&gt;Vim &lt;code&gt;:noa&lt;/code&gt; is a command that runs what you call without autocommands on.  This&#xA;is typically used when you have some &lt;code&gt;BufWritePre&lt;/code&gt; commands for formatting,&#xA;most auto formatters are implemented this way in vim.  It can be super useful&#xA;if you have something like a yaml/json file that you have crafted perfectly how&#xA;you want it, maybe it has some source code for a small script or sql embeded&#xA;and your formatter wants to turn it into one line.  You could get a better&#xA;formatter, but for these one off cases that aren’t a big bother to me I run&#xA;&lt;code&gt;:noa w&lt;/code&gt;.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;nx&#34;&gt;noa&lt;/span&gt; &lt;span class=&#34;nx&#34;&gt;w&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Repository Mirrors | Forgejo – Beyond coding. We forge.</title>
    <id>https://waylonwalker.com/thought-820/</id>
    <updated>2025-08-29T00:50:50Z</updated>
    <published>2025-08-29T00:50:50Z</published>
    <link href="https://waylonwalker.com/thought-820/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://forgejo.org/docs/latest/user/repo-mirror/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://forgejo.org/docs/latest/user/repo-mirror/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://forgejo.org/_astro/og-preview.Uy75QWb0_6Lpd2.webp&#34; alt=&#34;Repository Mirrors | Forgejo – Beyond coding. We forge.&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: Repository Mirrors | Forgejo – Beyond coding. We forge.&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Repository Mirrors | Forgejo – Beyond coding. We forge.&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;forgejo.org&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Forgejo supports repository mirrors, I think this is how I am going to handle migrating all of my github repos into forgejo.  over time I’ll probably go through and delete a bunch of unnecessary one from github, ones that might have a user or two I might keep on github.  I have such small scale projects with almost no users I am not sure that It really matters for me or not.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Vertical combos are dumb, this makes way more sense. · WaylonW...</title>
    <id>https://waylonwalker.com/thought-819/</id>
    <updated>2025-08-29T00:28:21Z</updated>
    <published>2025-08-29T00:28:21Z</published>
    <link href="https://waylonwalker.com/thought-819/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://github.com/WaylonWalker/zmk-config-42block/commit/48c30d2ee4efcdd08266093b5ce79bba5730e6f0</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://github.com/WaylonWalker/zmk-config-42block/commit/48c30d2ee4efcdd08266093b5ce79bba5730e6f0&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://opengraph.githubassets.com/4034a9cb71c0ed9696f0adaefbc5e0913799b569b121a1702acfc037b4625c13/WaylonWalker/zmk-config-42block/commit/48c30d2ee4efcdd08266093b5ce79bba5730e6f0&#34; alt=&#34;Vertical combos are dumb, this makes way more sense. · WaylonWalker/zmk-config-42block@48c30d2 — Contribute to WaylonWalker/zmk-config-42block development by creating an account on GitHub.&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: Vertical combos are dumb, this makes way more sense. · WaylonWalker/zmk-config-42block@48c30d2 — Contribute to WaylonWalker/zmk-config-42block development by creating an account on GitHub.&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Vertical combos are dumb, this makes way more sense. · WaylonWalker/zmk-config-42block@48c30d2&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Contribute to WaylonWalker/zmk-config-42block development by creating an account on GitHub.&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;GitHub · github.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;This commit to my keymap gets rid of vertical combos, those were a bad idea to me.  Maybe I didnt give it a shot, but hitting two keys at once on purpose with the same finger is a skill, one that I don’t have.  This change maps those symbols so that they work as a combo or layer switch, so getting the layer key in first does it by layer, but pressing them at the same time gives me the combo, kinda feels genius.  We will see how it goes.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Let&#39;s Make Sure Github Doesn&#39;t Become the only Option - Edward...</title>
    <id>https://waylonwalker.com/thought-818/</id>
    <updated>2025-08-28T23:45:53Z</updated>
    <published>2025-08-28T23:45:53Z</published>
    <link href="https://waylonwalker.com/thought-818/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://blog.edwardloveall.com/lets-make-sure-github-doesnt-become-the-only-option</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://blog.edwardloveall.com/lets-make-sure-github-doesnt-become-the-only-option&#34; class=&#34;embed-card-link  has-avatar has-avatar-before&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/blog.edwardloveall.com.png&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/blog.edwardloveall.com.png&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Let&amp;#39;s Make Sure Github Doesn&amp;#39;t Become the only Option - Edward Loveall&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;blog.edwardloveall.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;This post is a masterclass in blogging, cross linking, backing up your ideas with posts from other great sources.  I have a week of reading inside this post, and need to come back later when Im not sick.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 This Bothers Me - YouTube</title>
    <id>https://waylonwalker.com/thought-817/</id>
    <updated>2025-08-28T01:55:58Z</updated>
    <published>2025-08-28T01:55:58Z</published>
    <link href="https://waylonwalker.com/thought-817/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/watch?v=3NFwQIoLFgE</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;3NFwQIoLFgE&#34; title=&#34;This Bothers Me&#34; playlabel=&#34;Play: This Bothers Me&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;I’m playing through peak right now with Wyatt and it is a great game, a small wholesome  indiegame that is legit hard, but fun with the simplest concept.  You are a scout who has crashlanded on an island, your goal is to get to the peak with your friends.  You must manage hunger, stamina, weight, health and energy.  You have limited resources and must help everyone to the top, if someone is low on stamina, they are going to need a helping hand or a stonger climber to go up and set pitons and ropes.  Its a fantastic collaborative play game&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/192b267c-f577-4282-9393-1bf74c0b629f.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;PEAK - 2025-08-27 8-49-54 PM.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/192b267c-f577-4282-9393-1bf74c0b629f.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/192b267c-f577-4282-9393-1bf74c0b629f.mp4&#34; type=&#34;video/mp4&#34;&gt;PEAK - 2025-08-27 8-49-54 PM.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;a short clip of me playing with wyatt, I did not have anything great to add, but this is just a random clip&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;ripped-off&#34;&gt;Ripped off &lt;a href=&#34;#ripped-off&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;It was insta-ripped off by roblox with microtransactions pay to win garbage.  It looks one for one the same damn models and interface, they spared nothing at making it look exactly like the original.  They let you buy a golden apple assuming it gives you crazy stamina to climb with ease, and it costs goddam robux.  As Big A says here theres nothing they can really do, the roblox platform just lets this happen, and if they didn’t they would loose huge revenue because this is so prevelant.  Legal fees would crush this small team that made it.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/bb9c2505-7f67-42f5-8ddd-01b0b2d9d046.png&#34; class=&#34;glightbox-link&#34; aria-label=&#34;screenshot-2025-08-28T01-44-40-840Z.png&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/bb9c2505-7f67-42f5-8ddd-01b0b2d9d046.png&#34; alt=&#34;screenshot-2025-08-28T01-44-40-840Z.png&#34;/ data-glightbox=&#34;description: screenshot-2025-08-28T01-44-40-840Z.png&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Explore - Forgejo</title>
    <id>https://waylonwalker.com/thought-816/</id>
    <updated>2025-08-27T20:38:36Z</updated>
    <published>2025-08-27T20:38:36Z</published>
    <link href="https://waylonwalker.com/thought-816/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://git.dbushell.com/explore/repos</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://git.dbushell.com/explore/repos&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;/assets/img/logo.png&#34; alt=&#34;Explore — Forgejo is a self-hosted lightweight software forge. Easy to install and low maintenance, it just does the job.&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: Explore — Forgejo is a self-hosted lightweight software forge. Easy to install and low maintenance, it just does the job.&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Explore&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Forgejo is a self-hosted lightweight software forge. Easy to install and low maintenance, it just does the job.&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;Forgejo · git.dbushell.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;damn david has been busy, this is sick seeing all of the repos, I’m ready to jump in!&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Eric: &#34;This was pushed out with a rus…&#34; - Mastodon</title>
    <id>https://waylonwalker.com/thought-815/</id>
    <updated>2025-08-27T20:35:30Z</updated>
    <published>2025-08-27T20:35:30Z</published>
    <link href="https://waylonwalker.com/thought-815/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://social.ericwbailey.website/@eric/115100947111974331</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://social.ericwbailey.website/@eric/115100947111974331&#34; class=&#34;embed-card-link  has-avatar has-avatar-before&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/social.ericwbailey.website.png&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/social.ericwbailey.website.png&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Eric (@eric@social.ericwbailey.website)&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;This was pushed out with a rushed security review, a coerced and unwilling engineering team, and in full opposition to our supposed company values. &#xA;&lt;p&gt;If you don&amp;#39;t want it, tell them. Social media …&lt;/p&gt;&lt;/div&gt;&#xA;&lt;div class=&#34;embed-card-meta&#34;&gt;Mastodon · social.ericwbailey.website&lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;/a&gt;&lt;p&gt;&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;damn, M$ really pushing hard on moving github into the ai org.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 The BIGGEST lie in software development - YouTube</title>
    <id>https://waylonwalker.com/thought-814/</id>
    <updated>2025-08-27T20:24:38Z</updated>
    <published>2025-08-27T20:24:38Z</published>
    <link href="https://waylonwalker.com/thought-814/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/watch?v=U9eMAiTwMhI</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;U9eMAiTwMhI&#34; title=&#34;The BIGGEST lie in software development&#34; playlabel=&#34;Play: The BIGGEST lie in software development&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;This man feels sad, he never had a chance to bloom.  He was stuck behind the drudgery of jira tickets.  This is what the consultant driven  agile has got us.  Its ripped out all the thinking and creativity, its left us with moving tickets across the board, not allowed time to run on an idea when we have one.  Not allowed to do extra work or refactoring in a module that we are already in.  pushed to move faster for less.&lt;/p&gt;&#xA;&lt;p&gt;I feel like this mans experience has been quite different from my own and I’m grateful to have some leeway to be creative and do some meaningful work outside the jira board.  I’m grateful to be able to provide a good income for my family without taking on all the risk myself.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Reflection - AI Work and ADHD</title>
    <id>https://waylonwalker.com/thought-813/</id>
    <updated>2025-08-27T20:15:48Z</updated>
    <published>2025-08-27T20:15:48Z</published>
    <link href="https://waylonwalker.com/thought-813/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://pype.dev/reflection-ai-work-and-adhd/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://pype.dev/reflection-ai-work-and-adhd/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://cdn.statically.io/gh/pypeaday/images.pype.dev/main/blog-media/20250827125949_5f9ed179.png&#34; alt=&#34;Reflection - AI Work and ADHD | Nic Payne — Reflection It&amp;#39;s time to be more devoted to my work... AI has been a cool technology to&#xA;watch and experience but one thing I&amp;#39;m allowing it to do to me&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: Reflection - AI Work and ADHD | Nic Payne — Reflection It&amp;#39;s time to be more devoted to my work... AI has been a cool technology to&#xA;watch and experience but one thing I&amp;#39;m allowing it to do to me&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Reflection - AI Work and ADHD | Nic Payne&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Reflection It&amp;#39;s time to be more devoted to my work... AI has been a cool technology to&#xA;watch and experience but one thing I&amp;#39;m allowing it to do to me &lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;pype.dev&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Crazy that we wrote such similar posts on the same day independantly, I just wrote &lt;a href=&#34;/im-out-on-agents/&#34; class=&#34;wikilink&#34; data-title=&#34;I&amp;#39;m Out On Agents&#34; data-description=&#34;Its the year 2025 and we are only a few years into having 6 months to live before ai takes our jobs, and the big push right now is agents, managing agents. I...&#34; data-date=&#34;2025-08-27&#34; data-preview=&#34;Its the year 2025 and we are only a few years into having 6 months to live before ai takes our jobs, and the big push right now is agents, managing agents. I...&#34;&gt;I&amp;#39;m Out On Agents&lt;/a&gt; sitting offline in a doctor office.  The two pull out’s are very good,&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;“AI is not magic, it’s a headache”.&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;p&gt;By definition AI is magic to the vast majority of people, but funny how true this is.&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;“When I finish tasks, I’m not fulfilled… if anything I’m relieved.”&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;p&gt;I just wrote something very similar, maybe this feeling can be used for guidance to when to use AI.  When you complete this task will you feel relieved its over?  Is it a chore? or creative work you want to &lt;strong&gt;accomplish&lt;/strong&gt;.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>I&#39;m Out On Agents</title>
    <id>https://waylonwalker.com/im-out-on-agents/</id>
    <updated>2025-08-27T10:10:51Z</updated>
    <published>2025-08-27T10:10:51Z</published>
    <link href="https://waylonwalker.com/im-out-on-agents/" rel="alternate" type="text/html"></link>
    <summary type="text">Its the year 2025 and we are only a few years into having 6 months to live before ai takes our jobs, and the big push right now is agents, managing agents. I...</summary>
    <content type="html">&lt;p&gt;Its the year 2025 and we are only a few years into having 6 months to live&#xA;before ai takes our jobs, and the big push right now is agents, managing&#xA;agents.  I will fully concede to I’m not doing it right, or a future state gets&#xA;better than where we are right now, but right now they kinda suck.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Transparency&lt;/p&gt;&#xA;&lt;p&gt;I’m sitting offline right now as I write this, These are my feels, no&#xA;research, no links, no ai, just vibes.&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;&lt;h2 id=&#34;chat&#34;&gt;Chat &lt;a href=&#34;#chat&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;Chat is what really kicked off ai uses and goes back as old as computers, but&#xA;it always sucked.  Then chatgpt rocked the world with the biggest launch day in&#xA;history and showed us that it could actually be pretty good.  Unethically&#xA;trained on everything they could get their hands on, burning cities worth of&#xA;electricity to train, and keep training to stay ahead of the competition.  It&#xA;does a damn good job.  There are tells, and if you see enough of it there is a&#xA;lot that turns to slop, but if you had never seen it before, there is no way&#xA;you would assume that it was not a computer.&lt;/p&gt;&#xA;&lt;p&gt;It does a damn good job at being average, it can do what seems like everything&#xA;not related to security and authentication at a pretty average level.  This is&#xA;its super power.  Whenever you are trying to bridge between something you know&#xA;and something new, you can get a pretty good answer, and likely spot the bs in&#xA;what you know.&lt;/p&gt;&#xA;&lt;h2 id=&#34;agents&#34;&gt;Agents &lt;a href=&#34;#agents&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;Now that our models have gotten better, hardware has gotten bigger, better, and&#xA;a lot more of it, we can really expand context windows really wide.  With that&#xA;brought the use of agents, these tools get context from sources on their own&#xA;and often are given read/write access to your computer.  Depending on the model&#xA;these things will branch out to make small changes that look no worse than a&#xA;formatter on every goddam line of your codebase.  Except they are not a&#xA;formatter, they are not backed by ast checks.  They do not have any guarantees.&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;They take the fun out of creation.&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;p&gt;The emphasis now becomes on the code review.  All you have to do is ask it to&#xA;makes changes for you.  Bring in your expertise of what changes should be next,&#xA;or even just punt to asking it what comes next.  I’ve yet to talk to someone&#xA;that is diligent enough to read everything it spits out in excruciating detail&#xA;to the point that it does not cause significant issues.&lt;/p&gt;&#xA;&lt;p&gt;You see here is the thing, its average.  With a little bit of context it can do&#xA;average work.  It is not an expert.  On the surface this feels fine, making&#xA;crud endpoints has been done for decades, and average developers crush these&#xA;things every day no problem.&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;It’s Average at best&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;p&gt;You know what is not average?  Your knowledge of the use case you are solving.&#xA;You may not feel like an expert, but given that there are likely about 5 people&#xA;working in your codebase, you are a fukin expert at that thing.  The average&#xA;person off the street takes time to onboard, often months, or years for someone&#xA;to really understand the business you are working in.  These things don’t have&#xA;that.&lt;/p&gt;&#xA;&lt;h2 id=&#34;im-not-letting-it-in-shit-that-i-care-avout&#34;&gt;I’m not letting it in shit that I care avout &lt;a href=&#34;#im-not-letting-it-in-shit-that-i-care-avout&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;I was early to the game to codeium, even used the predecessor for awhile, I was&#xA;early to chat gpt, I was early to windsurf and the possibilities that agentic&#xA;ides brought.  I will be late on letting agents touch my production code bases.&#xA;The few times I’ve tried for changes that seem easy enough, but more work than&#xA;what I want to do at the time, I’ve regretted it.  It’s only left behind a mess&#xA;that it cant deal with anymore, runs in circles trying to solve any problem,&#xA;and I’m left with shit that feels like a house of cards that breaks anytime you&#xA;touch it.&lt;/p&gt;&#xA;&lt;h2 id=&#34;i-will-continue-to-poc&#34;&gt;I will continue to POC &lt;a href=&#34;#i-will-continue-to-poc&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;As much of a mess as these things, make they are super useful to vibe code&#xA;ideas, move quickly and try different approaches to a problem.  They let you&#xA;make a proof of concept that you can get in front of team mates, bosses, or&#xA;users.&lt;/p&gt;&#xA;&lt;p&gt;Honestly I still prefer the chat interface.  It feels like a nice balance of&#xA;using my brain, and knowing that I am punting on something.  Do I need to know&#xA;the whole &lt;code&gt;ffmpeg&lt;/code&gt; interface to grab a thumbnail for my webapp, no, would I&#xA;actually like to learn it someday, yes, but I don’t need to right now I just&#xA;need a goddamn thumbnail.&lt;/p&gt;&#xA;&lt;p&gt;For the most part I am still slotting these things into the codebase myself,&#xA;but occasionally I have it do an entire module, and even more rare I pull out&#xA;agents and have it do all the work.  The further away from the code I get, the&#xA;less I care about it and just want it done.&lt;/p&gt;&#xA;&lt;h2 id=&#34;i-will-laugh-at-this-post-in-2-years&#34;&gt;I will laugh at this post in 2 years &lt;a href=&#34;#i-will-laugh-at-this-post-in-2-years&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;The way I see it agentic coding is not here to stay, it sucks.  There is one&#xA;two ways to go this was a blip in the radar that we laugh at for giving ai&#xA;companies all our data for free so they could fuck up our products.  Or they&#xA;actually get pretty good and we all become architects that peek at the code if&#xA;we really need to.  I think for the second to become true its going to take a&#xA;lot of time, consumer hardware will need to catch up, local llms will need to&#xA;work a lot better than they do now.  Even if we still need to call out to the&#xA;big boys for some heavy work getting the context right for them locally would&#xA;make a huge difference.  Currently local llms are too slow and dumb.&lt;/p&gt;&#xA;&lt;p&gt;So will this bubble pop or explode, we can only wait to find out.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Doing Some Keeb Modeling And Thought This Was Cool</title>
    <id>https://waylonwalker.com/shots/doing-some-keeb-modeling-and-thought-this-was-cool/</id>
    <updated>2025-08-26T20:33:37Z</updated>
    <published>2025-08-26T20:33:37Z</published>
    <link href="https://waylonwalker.com/shots/doing-some-keeb-modeling-and-thought-this-was-cool/" rel="alternate" type="text/html"></link>
    <summary type="text">The inside of a keyboard before the tools are used to cut away switch cutouts in the board.</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/615149f8-82ea-4c09-b5c9-36ee8b31c73d.png&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Doing some keeb modeling and thought this was cool&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/615149f8-82ea-4c09-b5c9-36ee8b31c73d.png&#34; alt=&#34;Doing some keeb modeling and thought this was cool&#34;/ data-glightbox=&#34;description: Doing some keeb modeling and thought this was cool&#34;&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;The inside of a keyboard before the tools are used to cut away switch cutouts in the board.&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ ChrisBuilds terminaltexteffects</title>
    <id>https://waylonwalker.com/chrisbuilds-terminaltexteffects/</id>
    <updated>2025-08-26T19:38:14Z</updated>
    <published>2025-08-26T19:38:14Z</published>
    <link href="https://waylonwalker.com/chrisbuilds-terminaltexteffects/" rel="alternate" type="text/html"></link>
    <summary type="text">I like ChrisBuilds&#39;s project terminaltexteffects.</summary>
    <content type="html">&lt;p&gt;I like &lt;a href=&#34;https://github.com/ChrisBuilds&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;ChrisBuilds’s&lt;/a&gt; project &lt;a href=&#34;https://github.com/ChrisBuilds/terminaltexteffects&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;terminaltexteffects&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;TerminalTextEffects (TTE) is a terminal visual effects engine, application, and Python library.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ miguelgrinberg python-socketio</title>
    <id>https://waylonwalker.com/miguelgrinberg-python-socketio/</id>
    <updated>2025-08-26T13:07:08Z</updated>
    <published>2025-08-26T13:07:08Z</published>
    <link href="https://waylonwalker.com/miguelgrinberg-python-socketio/" rel="alternate" type="text/html"></link>
    <summary type="text">I recently discovered python-socketio by miguelgrinberg, and it&#39;s truly impressive.</summary>
    <content type="html">&lt;p&gt;I recently discovered &lt;a href=&#34;https://github.com/miguelgrinberg/python-socketio&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;python-socketio&lt;/a&gt; by &lt;a href=&#34;https://github.com/miguelgrinberg&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;miguelgrinberg&lt;/a&gt;, and it’s truly impressive.&lt;/p&gt;&#xA;&lt;p&gt;Python Socket.IO server and client&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 GitHub - cortesi/modd: A flexible developer tool that runs pro...</title>
    <id>https://waylonwalker.com/thought-811/</id>
    <updated>2025-08-25T15:40:39Z</updated>
    <published>2025-08-25T15:40:39Z</published>
    <link href="https://waylonwalker.com/thought-811/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://github.com/cortesi/modd</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://github.com/cortesi/modd&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://opengraph.githubassets.com/778d6536d9a135b456aadc9abc4b3ba11524b3b90a967138fe166abe2a89882a/cortesi/modd&#34; alt=&#34;GitHub - cortesi/modd: A flexible developer tool that runs processes and responds to filesystem changes — A flexible developer tool that runs processes and responds to filesystem changes - cortesi/modd&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: GitHub - cortesi/modd: A flexible developer tool that runs processes and responds to filesystem changes — A flexible developer tool that runs processes and responds to filesystem changes - cortesi/modd&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;GitHub - cortesi/modd: A flexible developer tool that runs processes and responds to filesystem changes&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;A flexible developer tool that runs processes and responds to filesystem changes - cortesi/modd&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;GitHub · github.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Gave modd a try today, and I like it, its something I am going to consider slotting right into my &lt;a href=&#34;https://github.com/casey/just&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;justfiles&lt;/a&gt;.  Gave it a try and it seems to work really well out of the box and easy to configure.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 combos only on default layer · WaylonWalker/zmk-config-42block...</title>
    <id>https://waylonwalker.com/thought-810/</id>
    <updated>2025-08-25T12:58:37Z</updated>
    <published>2025-08-25T12:58:37Z</published>
    <link href="https://waylonwalker.com/thought-810/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://github.com/WaylonWalker/zmk-config-42block/commit/2398fc73b247b9f491e14b605fef1c6910939298</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://github.com/WaylonWalker/zmk-config-42block/commit/2398fc73b247b9f491e14b605fef1c6910939298&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://opengraph.githubassets.com/97de1a8f38e0fae5e170c4a79790a1fdfac2ce59fecdbf55faa8ade186c75e66/WaylonWalker/zmk-config-42block/commit/2398fc73b247b9f491e14b605fef1c6910939298&#34; alt=&#34;combos only on default layer · WaylonWalker/zmk-config-42block@2398fc7 — Contribute to WaylonWalker/zmk-config-42block development by creating an account on GitHub.&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: combos only on default layer · WaylonWalker/zmk-config-42block@2398fc7 — Contribute to WaylonWalker/zmk-config-42block development by creating an account on GitHub.&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;combos only on default layer · WaylonWalker/zmk-config-42block@2398fc7&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Contribute to WaylonWalker/zmk-config-42block development by creating an account on GitHub.&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;GitHub · github.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Fighting some parens in hollow knight lead me to subtle little pauses when playing, I’m swapping combos to only work on the default layer, except for grave, I must have it for minecraft.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>modd</title>
    <id>https://waylonwalker.com/modd/</id>
    <updated>2025-08-25T10:48:01Z</updated>
    <published>2025-08-25T10:48:01Z</published>
    <link href="https://waylonwalker.com/modd/" rel="alternate" type="text/html"></link>
    <summary type="text">Today I gave modd a try, and it seems like a good file watcher executor. I tried using libnotify to send desktop notifications, but all I got was modd, I...</summary>
    <content type="html">&lt;p&gt;Today I gave &lt;a href=&#34;https://github.com/cortesi/modd&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;modd&lt;/a&gt; a try, and it seems like a&#xA;good file watcher executor.  I tried using libnotify to send desktop&#xA;notifications, but all I got was modd, I might not have notifications setup&#xA;right on the awesomewm machine.&lt;/p&gt;&#xA;&lt;p&gt;config goes in &lt;code&gt;modd.conf&lt;/code&gt;&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code class=&#34;language-config&#34;&gt;**/*.py {&#xA;  # check formatting via ruff&#xA;  prep: ruff format --check .&#xA;&#xA;  # check docstring formatting&#xA;  prep: pydocstyle .&#xA;  #&#xA;  # # check type hints via ty&#xA;  prep: ty check .&#xA;  #&#xA;  # # run linter via ruff&#xA;  prep: ruff check .&#xA;}&#xA;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt;I installed it using installer from jpillora, pulling pre-built binaries right&#xA;out of the github repo.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;curl https://i.jpillora.com/cortesi/modd &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt; bash&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Then you can install it, and on file change it will run the commands you&#xA;configured.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;modd&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>2025-08-25 Notes</title>
    <id>https://waylonwalker.com/2025-08-25-notes/</id>
    <updated>2025-08-25T10:45:08Z</updated>
    <published>2025-08-25T10:45:08Z</published>
    <link href="https://waylonwalker.com/2025-08-25-notes/" rel="alternate" type="text/html"></link>
    <summary type="text">Gave modd a try and it seems pretty good, will likely be slotting it in next to my justfile usage.</summary>
    <content type="html">&lt;p&gt;Gave &lt;a href=&#34;/modd/&#34; class=&#34;wikilink&#34; data-title=&#34;modd&#34; data-description=&#34;Today I gave modd a try, and it seems like a good file watcher executor. I tried using libnotify to send desktop notifications, but all I got was modd, I...&#34; data-date=&#34;2025-08-25&#34; data-preview=&#34;Today I gave modd a try, and it seems like a good file watcher executor. I tried using libnotify to send desktop notifications, but all I got was modd, I...&#34;&gt;modd&lt;/a&gt; a try and it seems pretty good, will likely be slotting it in&#xA;next to my &lt;a href=&#34;https://just.systems/&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/just.systems.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/just.systems.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;justfile&lt;/a&gt; usage.&lt;/p&gt;&#xA;&lt;p&gt;Gave &lt;a href=&#34;https://github.com/nkantar/sus&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;sus&lt;/a&gt; a try, but it lacked the&#xA;configurability and flexibility I was looking for.  For now I will stick to&#xA;&lt;a href=&#34;https://markata.dev/markata/plugins/redirects/&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/markata.dev.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/markata.dev.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;markata-redirects&lt;/a&gt; plugin.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 The Death of the User Interface</title>
    <id>https://waylonwalker.com/thought-809/</id>
    <updated>2025-08-25T01:48:19Z</updated>
    <published>2025-08-25T01:48:19Z</published>
    <link href="https://waylonwalker.com/thought-809/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://gist.github.com/0xs34n/a5738db1cc24495e69b6d6c08a451890</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-github&#34; data-needs-code-css=&#34;true&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;div data-needs-code-css=&#34;true&#34;&gt;&lt;div class=&#34;embed-gist&#34;&gt;&#xA;  &lt;div class=&#34;embed-gist-header&#34;&gt;&#xA;    &lt;a href=&#34;https://gist.github.com/0xs34n/a5738db1cc24495e69b6d6c08a451890&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/gist.github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/gist.github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;THE_DEATH_OF_THE_USER_INTERFACE.md&lt;/a&gt;&#xA;    &lt;span class=&#34;embed-gist-language&#34;&gt;markdown&lt;/span&gt;&#xA;  &lt;/div&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;gh&#34;&gt;# The Death of the User Interface&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;&amp;gt; &lt;/span&gt;&lt;span class=&#34;ge&#34;&gt;**TL;DR:** We&amp;#39;re witnessing the end of graphical user interfaces. AI agents like Claude Code are eliminating the need for windows, menus, and clicks, replacing them with natural language. The computer is finally learning to speak human, not the other way around.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;---&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;gu&#34;&gt;## 🔮 A Personal Revelation&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Last week, I realized something profound: &lt;span class=&#34;gs&#34;&gt;**I haven&amp;#39;t opened Finder in months.**&lt;/span&gt; Not once.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Where I once clicked through nested folders, dragged and dropped files, and navigated hierarchical menus, I now simply tell Claude Code exactly what I need:&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;-&lt;/span&gt; _&amp;#34;Find all the test files modified in the last week&amp;#34;_&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;-&lt;/span&gt; _&amp;#34;Move the old backups to archive&amp;#34;_&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;The commands execute instantly, precisely, without me ever seeing a window, icon, or folder.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;&amp;gt; &lt;/span&gt;&lt;span class=&#34;ge&#34;&gt;This isn&amp;#39;t just about convenience. It&amp;#39;s a fundamental shift in how humans interact with computers, and it signals the beginning of the end for user interfaces as we know them.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;---&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;gu&#34;&gt;## 🚴 → 🚀 The Bicycle That Became a Teleporter&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;In 1990, Steve Jobs famously described computers as &amp;#34;bicycles for the mind,&amp;#34; drawing from a Scientific American study showing that humans on bicycles were the most efficient locomotors on Earth. The metaphor was perfect for its time: computers amplified human cognitive abilities just as bicycles amplified our physical capabilities.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;But bicycles still require you to:&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;-&lt;/span&gt; **Pedal** the mechanism&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;-&lt;/span&gt; **Steer** the direction&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;-&lt;/span&gt; **Navigate** the terrain&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;-&lt;/span&gt; **Learn** the balance&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Traditional user interfaces work the same way. They&amp;#39;re tools that amplify our abilities, but only after we learn their language, their layouts, their logic.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;&amp;gt; &lt;/span&gt;&lt;span class=&#34;ge&#34;&gt;**What we have now with AI agents isn&amp;#39;t a bicycle anymore. It&amp;#39;s a teleporter.** You simply state your destination, and you arrive.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;---&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;gu&#34;&gt;## 📜 From Xerox PARC to Natural Language: A 50-Year Arc&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;gu&#34;&gt;### The Timeline of Interface Evolution&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;gs&#34;&gt;**1964**&lt;/span&gt; → Douglas Engelbart invents the computer mouse at Stanford Research Institute&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;gs&#34;&gt;**1973**&lt;/span&gt; → Xerox PARC develops the Alto, the first computer with a GUI&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;gs&#34;&gt;**1979**&lt;/span&gt; → Steve Jobs sees the Alto, immediately grasps its revolutionary potential&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;gs&#34;&gt;**1984**&lt;/span&gt; → Macintosh launches, bringing GUI to the masses&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;gs&#34;&gt;**2024**&lt;/span&gt; → AI agents begin replacing graphical interfaces entirely&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;That language dominated for five decades. Windows, Mac OS, and even modern web applications all speak variations of it: &lt;span class=&#34;ge&#34;&gt;_point, click, drag, drop, menu, submenu, dialog box, button._&lt;/span&gt; We became so fluent in this language that we forgot it was a language at all.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;gu&#34;&gt;### The Abstraction Layer Pattern&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Every abstraction layer in computing eventually gets replaced by a higher-level one:&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;| &lt;span class=&#34;gs&#34;&gt;**Era**&lt;/span&gt; | &lt;span class=&#34;gs&#34;&gt;**From**&lt;/span&gt;            | &lt;span class=&#34;gs&#34;&gt;**To**&lt;/span&gt;                             |&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;| ------- | ------------------- | ---------------------------------- |&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;| 1950s   | Machine code        | → Assembly language                |&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;| 1960s   | Assembly            | → High-level programming languages |&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;| 1980s   | Command line        | → Graphical user interfaces        |&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;| 2000s   | Native apps         | → Web applications                 |&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;| 2020s   | &lt;span class=&#34;gs&#34;&gt;**User interfaces**&lt;/span&gt; | &lt;span class=&#34;ge&#34;&gt;**&lt;/span&gt;→ Conversational AI agents**     |&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;&amp;gt; &lt;/span&gt;&lt;span class=&#34;ge&#34;&gt;Each transition follows the same pattern: what once required specialized knowledge becomes accessible through more natural, intuitive interaction.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;---&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;gu&#34;&gt;## 👻 The Invisible Operating System&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Traditional operating systems: Windows, macOS, Linux, are abstractions over hardware. Web applications are abstractions over REST APIs. Both require user interfaces because they need to translate between human intent and machine execution.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;gs&#34;&gt;**AI agents represent something fundamentally different:**&lt;/span&gt; they&amp;#39;re abstractions that understand human intent directly. No translation required.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;gu&#34;&gt;### Consider the Mental Journey of a Simple Task&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;🖱️ Traditional UI Approach&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;1.&lt;/span&gt; Open Finder/Explorer &lt;span class=&#34;ge&#34;&gt;_(remember where it is)_&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;2.&lt;/span&gt; Navigate to directory &lt;span class=&#34;ge&#34;&gt;_(remember the path)_&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;3.&lt;/span&gt; Scan through files &lt;span class=&#34;ge&#34;&gt;_(parse visual information)_&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;4.&lt;/span&gt; Select multiple files &lt;span class=&#34;ge&#34;&gt;_(remember shortcuts)_&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;5.&lt;/span&gt; Right-click for menu &lt;span class=&#34;ge&#34;&gt;_(know this exists)_&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;6.&lt;/span&gt; Choose &amp;#34;Move to...&amp;#34; &lt;span class=&#34;ge&#34;&gt;_(understand terminology)_&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;7.&lt;/span&gt; Navigate to destination &lt;span class=&#34;ge&#34;&gt;_(remember another path)_&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;8.&lt;/span&gt; Confirm operation &lt;span class=&#34;ge&#34;&gt;_(hope you got it right)_&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;🗣️ AI Agent Approach&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;1.&lt;/span&gt; &amp;#34;Move all PDF files from Downloads to Documents/Reports&amp;#34;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;gs&#34;&gt;**Done.**&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;&amp;gt; &lt;/span&gt;&lt;span class=&#34;ge&#34;&gt;The difference isn&amp;#39;t just efficiency, it&amp;#39;s cognitive load. With traditional interfaces, you&amp;#39;re translating your intent into the computer&amp;#39;s language. With AI agents, the computer learns your language instead.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;---&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;gu&#34;&gt;## 🧠 The Mental Load Revolution&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Every interface element, every button, menu, icon, and widget, is a &lt;span class=&#34;gs&#34;&gt;**tiny cognitive tax**&lt;/span&gt;. Even the most intuitive interface requires you to:&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;-&lt;/span&gt; ✓ Understand its visual language&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;-&lt;/span&gt; ✓ Remember its organizational structure&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;-&lt;/span&gt; ✓ Learn its interaction patterns&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;-&lt;/span&gt; ✓ Maintain mental models of its state&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;This is what UX designers call &lt;span class=&#34;ge&#34;&gt;**&lt;/span&gt;&amp;#34;extraneous cognitive load&amp;#34;**. Mental effort spent on using the tool rather than accomplishing the task.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;&amp;gt; &lt;/span&gt;&lt;span class=&#34;ge&#34;&gt;When you tell Claude Code to &amp;#34;set up a new Python project with pytest and black pre-configured,&amp;#34; you&amp;#39;re expressing pure intent. The mental energy you would have spent on navigation can be redirected to actual problem-solving.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;---&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;gu&#34;&gt;## ⚡ The Present: Early Adopters and Edge Cases&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;We&amp;#39;re living through the transition right now.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;gu&#34;&gt;### What&amp;#39;s Happening in 2024&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;-&lt;/span&gt; **AIOS** → Embedding LLMs directly into operating systems&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;-&lt;/span&gt; **Claude Code** → Replacing entire categories of developer tools&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;-&lt;/span&gt; **Cursor &amp;amp; Copilot** → Making IDEs conversational&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;-&lt;/span&gt; **Warp Agent Mode** → LLMs in the terminal for multi-step workflows&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;gu&#34;&gt;### What I No Longer Do&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;I see it in my own work every day. I no longer:&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;❌ Browse through file explorers  &#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;❌ Click through git GUIs  &#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;❌ Navigate package manager interfaces  &#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;❌ Hunt through documentation sites  &#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;❌ Configure tools through preference panes&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Instead, I describe what I want, and it happens. &lt;span class=&#34;gs&#34;&gt;**The interface hasn&amp;#39;t been simplified, it&amp;#39;s been eliminated.**&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;---&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;gu&#34;&gt;## 🍎 The Future Steve Jobs Glimpsed&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;&amp;gt; &lt;/span&gt;&lt;span class=&#34;ge&#34;&gt;&amp;#34;Ultimately computers are going to be a tool for communication. Not computation, not productivity. Communication.&amp;#34;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;&amp;gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;ge&#34;&gt;&amp;gt; — Steve Jobs, 1983 International Design Conference&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;At that conference in Aspen, a 28-year-old Jobs made predictions that seemed like science fiction:&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;-&lt;/span&gt; Portable computers with wireless connections&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;-&lt;/span&gt; Instant access to remote databases&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;-&lt;/span&gt; Devices as primary means of communication&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;He was right about all of it, but even his vision was constrained by the paradigm of his time. He imagined better interfaces, more intuitive interactions, simpler designs.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;gs&#34;&gt;**He couldn&amp;#39;t imagine no interface at all.**&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Yet in that quote above, Jobs understood something fundamental: the real revolution would come when computers could understand us as naturally as we understand each other.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;&amp;gt; &lt;/span&gt;&lt;span class=&#34;ge&#34;&gt;That future is arriving. The question isn&amp;#39;t whether AI will replace user interfaces, but how quickly and how completely.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;---&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;gu&#34;&gt;## 🔄 The Last Interface&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;There&amp;#39;s an irony in writing about the death of user interfaces, or rather, there &lt;span class=&#34;gs&#34;&gt;**was**&lt;/span&gt;. This article itself is proof of the transition: generated through conversation with Claude Code, shaped by human intent rather than human interface manipulation. I provided the ideas and direction; the AI handled the execution. &lt;span class=&#34;gs&#34;&gt;**The future isn&amp;#39;t coming, it&amp;#39;s already here, manifesting through the very words you&amp;#39;re reading.**&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Soon, articles like this won&amp;#39;t be &amp;#34;written&amp;#34; in the traditional sense. They&amp;#39;ll be conversed into existence, with AI agents handling not just the typing but the research, fact-checking, formatting, and publishing. The tool will disappear into the task.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;gu&#34;&gt;### The Holdouts and the Inevitable&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Some will mourn this loss. There&amp;#39;s something satisfying about direct manipulation, about seeing and controlling every step. Just as some still prefer command lines to GUIs, some will always prefer clicking to conversing.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;But for most of us, the appeal of &lt;span class=&#34;gs&#34;&gt;**zero cognitive load**&lt;/span&gt; will be irresistible.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;&amp;gt; &lt;/span&gt;&lt;span class=&#34;ge&#34;&gt;Why learn an interface when you can just say what you want?  &#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;&amp;gt; &lt;/span&gt;&lt;span class=&#34;ge&#34;&gt;Why navigate when you can simply arrive?&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;---&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;gu&#34;&gt;## 🎯 Conclusion: After the Interface&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;We stand at an inflection point. For fifty years, ever since Xerox PARC invented the GUI, we&amp;#39;ve been refining the same basic paradigm: &lt;span class=&#34;gs&#34;&gt;**humans learning to speak computer**&lt;/span&gt;.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Now, &lt;span class=&#34;gs&#34;&gt;**computers are learning to speak human**&lt;/span&gt;.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;The death of the user interface doesn&amp;#39;t mean the death of design or user experience. If anything, it makes them more important. When the interface disappears, what remains is pure interaction design: understanding human intent, anticipating needs, handling edge cases gracefully.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;The challenge shifts from:&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;-&lt;/span&gt; ❌ &lt;span class=&#34;ge&#34;&gt;_&amp;#34;How do we make this button more obvious?&amp;#34;_&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;-&lt;/span&gt; ✅ &lt;span class=&#34;ge&#34;&gt;**&lt;/span&gt;&amp;#34;How do we understand what the user really wants?&amp;#34;**&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;&amp;gt; &lt;/span&gt;&lt;span class=&#34;ge&#34;&gt;Steve Jobs gave us bicycles for the mind.  &#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;&amp;gt; &lt;/span&gt;&lt;span class=&#34;ge&#34;&gt;AI agents are giving us something else entirely: **minds that understand our minds.**  &#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;&amp;gt; &lt;/span&gt;&lt;span class=&#34;ge&#34;&gt;No pedaling required.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;gs&#34;&gt;**The user interface is dying, and that&amp;#39;s the most user-friendly thing that could possibly happen.**&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;---&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;ge&#34;&gt;_What do you think? Are we witnessing the end of user interfaces, or just another evolution? How has AI changed your own relationship with traditional software interfaces?_&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;/div&gt;&#xA;&lt;/div&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;This is an insane level of agentic llm use, the author claims to not even use his filesystem anymore, its too cumbersome to find where downloads and documents are and way too easy to ask an agent to move all pdf’s from downloads to documents.&lt;/p&gt;&#xA;&lt;p&gt;This scares me on multiple levels, theres the epidemic of ai datacenters and ai companies burning cash, burning through gpu’s and api calls to a giant data center just to move files sounds absolutely insane to me.&lt;/p&gt;&#xA;&lt;p&gt;Then there is the level of accuracy.  There’s a level of interpretation that happens with english that does not happen in code, code generally does what it does repeatably.  The examples of “Move old backups to archive” is so open for interpretation that its ready to ruin your day, which backup, which archive, how old?  Dude is ready to loose his files.&lt;/p&gt;&#xA;&lt;p&gt;Last is privacy, there is going to be a privacy epidemic that is going to pwn so many people giving these things full access to email, chat, ALL of YOUR FILES, and computer, your whole network.&lt;/p&gt;&#xA;&lt;p&gt;Look I get it this is where things are going, but dude is early, like too early.  These things need to become far more accurate, less power hungry, and run locally before I give up my whole filesystem.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Why everyone is quitting social media - YouTube</title>
    <id>https://waylonwalker.com/thought-808/</id>
    <updated>2025-08-25T01:36:35Z</updated>
    <published>2025-08-25T01:36:35Z</published>
    <link href="https://waylonwalker.com/thought-808/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/watch?v=zN-rElTzR_4</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;zN-rElTzR_4&#34; title=&#34;Why everyone is quitting social media&#34; playlabel=&#34;Play: Why everyone is quitting social media&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Damn, social media is at an all time low.  I’ve felt all of these issues and when I got a new phone I started fresh, I didn’t install one social media app.  Luckily Youtube has remained solid for me.  Yes shorts are a bit less what I came for and more addicting content they &lt;em&gt;had&lt;/em&gt; to do in order to keep up.  There are some legit good commedians, a bit of good knowledge and a bunch of trash that is hard to look away from on shorts.  I still find myself able to find content I enjoy and signed up for on YouTube.  I feel like I get a one way relationship with someone similar to a TV show or news anchor of old media.&lt;/p&gt;&#xA;&lt;p&gt;Social Media has morphed from follows likes and similar, to viral posts by creators I don’t recognize.  posting and immediately getting like by two &lt;strong&gt;hot&lt;/strong&gt; women with accounts created this week.  The rest of the real creators left on there are stuck trying to keep up, echo viral trends, trying to keep up the content treadmill.   A few come through, but most feel somewhat forced.  A lot of it is ai generated, and whats not mostly doesn’t feel that human anyways.&lt;/p&gt;&#xA;&lt;p&gt;The people on here seem to really tie the internet to social media and are ready to quit the internet.  I think there is more to the internet, we can find each other, but setting up rss feeds, following others, and scrolling their own website lacks that dopamine hit social media has right now.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>2025-08-23 Notes</title>
    <id>https://waylonwalker.com/2025-08-23-notes/</id>
    <updated>2025-08-23T19:27:05Z</updated>
    <published>2025-08-23T19:27:05Z</published>
    <link href="https://waylonwalker.com/2025-08-23-notes/" rel="alternate" type="text/html"></link>
    <summary type="text">Today, some great work on the knife sharpener re-design. I&#39;ve been using the same one since I first got my ender 3 3d printer, and have wanted to make some...</summary>
    <content type="html">&lt;h2 id=&#34;knife-sharpener&#34;&gt;Knife Sharpener &lt;a href=&#34;#knife-sharpener&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;Today, some great work on the knife sharpener re-design.  I’ve been using the&#xA;same one since I first got my ender 3 3d printer, and have wanted to make some&#xA;changes ever since.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/4cf7ea72-ad4b-421e-92ad-9d08e47b469a.png&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Helmet Hidden In Design&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/4cf7ea72-ad4b-421e-92ad-9d08e47b469a.png&#34; alt=&#34;Helmet Hidden In Design&#34;/ data-glightbox=&#34;description: Helmet Hidden In Design&#34;&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;Wyatt sat with me through the design, I probably would not have gone this deep without him, he thought the helmet look was hilarious&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/30335f07-9cac-4e66-b908-f0e3cfbf7582.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Knife Sharpener Double Hinge First Try&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/30335f07-9cac-4e66-b908-f0e3cfbf7582.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/30335f07-9cac-4e66-b908-f0e3cfbf7582.mp4&#34; type=&#34;video/mp4&#34;&gt;Knife Sharpener Double Hinge First Try&lt;/video&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;Notice one of the biggest problems with this one here is how much is slides around&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/27b5c23f-69a3-4e7b-a468-5a6767e1cb2e.png&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Knife Sharpener Double Hinge Wing Nut&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/27b5c23f-69a3-4e7b-a468-5a6767e1cb2e.png&#34; alt=&#34;Knife Sharpener Double Hinge Wing Nut&#34;/ data-glightbox=&#34;description: Knife Sharpener Double Hinge Wing Nut&#34;&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;This wing nut really set it apart&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;hollow-knight&#34;&gt;Hollow Knight &lt;a href=&#34;#hollow-knight&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;Progress on the Hollow Knight Keeb Run.  SILKSONG in 2 WEEKS!!&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/2ea5790c-66d7-401d-95c7-c81a2bccb743.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Getting The Lumafly Lantern In My Hollow Knight Keeb Run&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/2ea5790c-66d7-401d-95c7-c81a2bccb743.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/2ea5790c-66d7-401d-95c7-c81a2bccb743.mp4&#34; type=&#34;video/mp4&#34;&gt;Getting The Lumafly Lantern In My Hollow Knight Keeb Run&lt;/video&gt;&lt;/a&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/3713bdd1-c645-46c5-85d2-451356383842.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Unlocking Royal Waterways In Hollow Knight Keeb Run&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/3713bdd1-c645-46c5-85d2-451356383842.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/3713bdd1-c645-46c5-85d2-451356383842.mp4&#34; type=&#34;video/mp4&#34;&gt;Unlocking Royal Waterways In Hollow Knight Keeb Run&lt;/video&gt;&lt;/a&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/58235f4d-701f-4ddc-a26d-ab5f9e0bdbfc.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Entering Royal Waterway Hollow Knight Keeb Run&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/58235f4d-701f-4ddc-a26d-ab5f9e0bdbfc.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/58235f4d-701f-4ddc-a26d-ab5f9e0bdbfc.mp4&#34; type=&#34;video/mp4&#34;&gt;Entering Royal Waterway Hollow Knight Keeb Run&lt;/video&gt;&lt;/a&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/bdf1985b-6a32-4bf4-9f9a-d6f814db7136.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Unlock Royal Waterway Bench In Hollow Knight Keeb&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/bdf1985b-6a32-4bf4-9f9a-d6f814db7136.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/bdf1985b-6a32-4bf4-9f9a-d6f814db7136.mp4&#34; type=&#34;video/mp4&#34;&gt;Unlock Royal Waterway Bench In Hollow Knight Keeb&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;todays-script&#34;&gt;todays script &lt;a href=&#34;#todays-script&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;Made a little script to grab these&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;for&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;post&lt;/span&gt; &lt;span class=&#34;ow&#34;&gt;in&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;m&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;feeds&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;today&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;posts&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;k&#34;&gt;if&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;post&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;get&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;image&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;kc&#34;&gt;None&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;):&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;nb&#34;&gt;print&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;sa&#34;&gt;f&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;![&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;post&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;title&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;}&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;](&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;post&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;image&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;}&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;)&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;k&#34;&gt;else&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;nb&#34;&gt;print&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;sa&#34;&gt;f&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;[&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;post&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;title&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;}&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;](&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;post&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;url&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;}&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;)&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Knife Sharpener Double Hinge Wing Nut</title>
    <id>https://waylonwalker.com/shots/knife-sharpener-double-hinge-wing-nut/</id>
    <updated>2025-08-23T19:23:55Z</updated>
    <published>2025-08-23T19:23:55Z</published>
    <link href="https://waylonwalker.com/shots/knife-sharpener-double-hinge-wing-nut/" rel="alternate" type="text/html"></link>
    <summary type="text">A 3 lobed wing nut perfectly hiding the m4 cap screw underneath of it, flooded in uv resin.</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/27b5c23f-69a3-4e7b-a468-5a6767e1cb2e.png&#34; class=&#34;glightbox-link&#34; aria-label=&#34;knife sharpener double hinge wing nut&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/27b5c23f-69a3-4e7b-a468-5a6767e1cb2e.png&#34; alt=&#34;knife sharpener double hinge wing nut&#34;/ data-glightbox=&#34;description: knife sharpener double hinge wing nut&#34;&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;A 3 lobed wing nut perfectly hiding the m4 cap screw underneath of it, flooded in uv resin.&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Knife Sharpener Double Hinge First Try</title>
    <id>https://waylonwalker.com/shots/knife-sharpener-double-hinge-first-try/</id>
    <updated>2025-08-23T19:21:49Z</updated>
    <published>2025-08-23T19:21:49Z</published>
    <link href="https://waylonwalker.com/shots/knife-sharpener-double-hinge-first-try/" rel="alternate" type="text/html"></link>
    <summary type="text">Testing out the double hinge knife sharpener holder for the first time.</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.wayl.one/api/file/30335f07-9cac-4e66-b908-f0e3cfbf7582.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;knife sharpener double hinge first try&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.wayl.one/api/file/30335f07-9cac-4e66-b908-f0e3cfbf7582.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.wayl.one/api/file/30335f07-9cac-4e66-b908-f0e3cfbf7582.mp4&#34; type=&#34;video/mp4&#34;&gt;knife sharpener double hinge first try&lt;/video&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;Testing out the double hinge knife sharpener holder for the first time.&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Knife Sharpenter Double Hinge Mid Print</title>
    <id>https://waylonwalker.com/shots/knife-sharpenter-double-hinge-mid-print/</id>
    <updated>2025-08-23T18:44:28Z</updated>
    <published>2025-08-23T18:44:28Z</published>
    <link href="https://waylonwalker.com/shots/knife-sharpenter-double-hinge-mid-print/" rel="alternate" type="text/html"></link>
    <summary type="text">A bambu A1 printer printing my double hinge mid print under a uv light</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/ed5c4cae-8608-4b11-aa03-866bf550bc25.png&#34; class=&#34;glightbox-link&#34; aria-label=&#34;knife sharpenter double hinge mid print&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/ed5c4cae-8608-4b11-aa03-866bf550bc25.png&#34; alt=&#34;knife sharpenter double hinge mid print&#34;/ data-glightbox=&#34;description: knife sharpenter double hinge mid print&#34;&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;A bambu A1 printer printing my double hinge mid print under a uv light&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Kings Station In Hollow Knight Keeb Run</title>
    <id>https://waylonwalker.com/shots/kings-station-in-hollow-knight-keeb-run/</id>
    <updated>2025-08-23T11:01:07Z</updated>
    <published>2025-08-23T11:01:07Z</published>
    <link href="https://waylonwalker.com/shots/kings-station-in-hollow-knight-keeb-run/" rel="alternate" type="text/html"></link>
    <summary type="text">Unlocking Kings station in my hollow knight keyboard only run</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/3651c0e1-6d99-4b54-95eb-5b955323a2e9.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Kings Station in Hollow Knight Keeb run&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/3651c0e1-6d99-4b54-95eb-5b955323a2e9.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/3651c0e1-6d99-4b54-95eb-5b955323a2e9.mp4&#34; type=&#34;video/mp4&#34;&gt;Kings Station in Hollow Knight Keeb run&lt;/video&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;Unlocking Kings station in my hollow knight keyboard only run&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Defeating The Dung Defender In Hollow Knight Keeb Run</title>
    <id>https://waylonwalker.com/shots/defeating-the-dung-defender-in-hollow-knight-keeb-run/</id>
    <updated>2025-08-23T11:00:03Z</updated>
    <published>2025-08-23T11:00:03Z</published>
    <link href="https://waylonwalker.com/shots/defeating-the-dung-defender-in-hollow-knight-keeb-run/" rel="alternate" type="text/html"></link>
    <summary type="text">The final blow to the Dung Defender as he admits defeat and allows the little knight to access the valve in the royal waterways.</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/982091a0-a65a-44a4-aca6-fbffcff9ed90.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Defeating the Dung Defender in hollow knight keeb run&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/982091a0-a65a-44a4-aca6-fbffcff9ed90.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/982091a0-a65a-44a4-aca6-fbffcff9ed90.mp4&#34; type=&#34;video/mp4&#34;&gt;Defeating the Dung Defender in hollow knight keeb run&lt;/video&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;The final blow to the Dung Defender as he admits defeat and allows the little knight to access the valve in the royal waterways.&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Unlock Royal Waterway Bench In Hollow Knight Keeb</title>
    <id>https://waylonwalker.com/shots/unlock-royal-waterway-bench-in-hollow-knight-keeb/</id>
    <updated>2025-08-23T09:48:08Z</updated>
    <published>2025-08-23T09:48:08Z</published>
    <link href="https://waylonwalker.com/shots/unlock-royal-waterway-bench-in-hollow-knight-keeb/" rel="alternate" type="text/html"></link>
    <summary type="text">Using desolate dive to unlock the Royal Waterway bench in my Hollow Knight keeb only run.</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/bdf1985b-6a32-4bf4-9f9a-d6f814db7136.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;unlock royal waterway bench in hollow knight keeb&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/bdf1985b-6a32-4bf4-9f9a-d6f814db7136.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/bdf1985b-6a32-4bf4-9f9a-d6f814db7136.mp4&#34; type=&#34;video/mp4&#34;&gt;unlock royal waterway bench in hollow knight keeb&lt;/video&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;Using desolate dive to unlock the Royal Waterway bench in my Hollow Knight keeb only run.&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Entering Royal Waterway Hollow Knight Keeb Run</title>
    <id>https://waylonwalker.com/shots/entering-royal-waterway-hollow-knight-keeb-run/</id>
    <updated>2025-08-23T09:46:21Z</updated>
    <published>2025-08-23T09:46:21Z</published>
    <link href="https://waylonwalker.com/shots/entering-royal-waterway-hollow-knight-keeb-run/" rel="alternate" type="text/html"></link>
    <summary type="text">Entering the royal waterway during my hollow knight keeb only run.</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/58235f4d-701f-4ddc-a26d-ab5f9e0bdbfc.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;entering royal waterway hollow knight keeb run&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/58235f4d-701f-4ddc-a26d-ab5f9e0bdbfc.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/58235f4d-701f-4ddc-a26d-ab5f9e0bdbfc.mp4&#34; type=&#34;video/mp4&#34;&gt;entering royal waterway hollow knight keeb run&lt;/video&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;Entering the royal waterway during my hollow knight keeb only run.&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Unlocking Royal Waterways In Hollow Knight Keeb Run</title>
    <id>https://waylonwalker.com/shots/unlocking-royal-waterways-in-hollow-knight-keeb-run/</id>
    <updated>2025-08-23T09:45:20Z</updated>
    <published>2025-08-23T09:45:20Z</published>
    <link href="https://waylonwalker.com/shots/unlocking-royal-waterways-in-hollow-knight-keeb-run/" rel="alternate" type="text/html"></link>
    <summary type="text">Using the simple key to unlock the Royal Waterway in Hollow Knight during my keeb only run.</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/3713bdd1-c645-46c5-85d2-451356383842.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;unlocking royal waterways in hollow knight keeb run&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/3713bdd1-c645-46c5-85d2-451356383842.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/3713bdd1-c645-46c5-85d2-451356383842.mp4&#34; type=&#34;video/mp4&#34;&gt;unlocking royal waterways in hollow knight keeb run&lt;/video&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;Using the simple key to unlock the Royal Waterway in Hollow Knight during my keeb only run.&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Getting The Lumafly Lantern In My Hollow Knight Keeb Run</title>
    <id>https://waylonwalker.com/shots/getting-the-lumafly-lantern-in-my-hollow-knight-keeb-run/</id>
    <updated>2025-08-23T09:43:36Z</updated>
    <published>2025-08-23T09:43:36Z</published>
    <link href="https://waylonwalker.com/shots/getting-the-lumafly-lantern-in-my-hollow-knight-keeb-run/" rel="alternate" type="text/html"></link>
    <summary type="text">Purchasing the Lumafly Lanten from Sly&#39;s shop in Dirtmouth during my Hollow Knight keeb only run.</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/2ea5790c-66d7-401d-95c7-c81a2bccb743.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;getting the lumafly lantern in my hollow knight keeb run&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/2ea5790c-66d7-401d-95c7-c81a2bccb743.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/2ea5790c-66d7-401d-95c7-c81a2bccb743.mp4&#34; type=&#34;video/mp4&#34;&gt;getting the lumafly lantern in my hollow knight keeb run&lt;/video&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;Purchasing the Lumafly Lanten from Sly’s shop in Dirtmouth during my Hollow Knight keeb only run.&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Helmet Hidden In Design</title>
    <id>https://waylonwalker.com/shots/helmet-hidden-in-design/</id>
    <updated>2025-08-23T09:26:38Z</updated>
    <published>2025-08-23T09:26:38Z</published>
    <link href="https://waylonwalker.com/shots/helmet-hidden-in-design/" rel="alternate" type="text/html"></link>
    <summary type="text">A CAD design for a movable hinge that turned out looking like a space helmet.</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/4cf7ea72-ad4b-421e-92ad-9d08e47b469a.png&#34; class=&#34;glightbox-link&#34; aria-label=&#34;helmet hidden in design&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/4cf7ea72-ad4b-421e-92ad-9d08e47b469a.png&#34; alt=&#34;helmet hidden in design&#34;/ data-glightbox=&#34;description: helmet hidden in design&#34;&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;A CAD design for a movable hinge that turned out looking like a space helmet.&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>bash timestamp</title>
    <id>https://waylonwalker.com/bash-timestamp/</id>
    <updated>2025-08-22T15:35:36Z</updated>
    <published>2025-08-22T15:35:36Z</published>
    <link href="https://waylonwalker.com/bash-timestamp/" rel="alternate" type="text/html"></link>
    <summary type="text">Today I needed to make a backup of some config. I wanted to add a timestamp so that I knew when the backup was made. This would make unique backups easy, and...</summary>
    <content type="html">&lt;p&gt;Today I needed to make a backup of some config.  I wanted to add a timestamp so&#xA;that I knew when the backup was made.  This would make unique backups easy, and&#xA;I could tell when they were made.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;cp configfile configfile.backup.&lt;span class=&#34;k&#34;&gt;$(&lt;/span&gt;date %s&lt;span class=&#34;k&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;If you want to decrypt the timestamp into something more human readable.  You&#xA;can list backup files, strip out the timestamp, and then convert it to a human&#xA;readable date.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;/bin/ls &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt; grep backup &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt; sed &lt;span class=&#34;s1&#34;&gt;&amp;#39;s/configfile.backup.//&amp;#39;&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt; xargs -I &lt;span class=&#34;o&#34;&gt;{}&lt;/span&gt; date -d @&lt;span class=&#34;o&#34;&gt;{}&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;or just throw it to the date command by hand.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;date -d @1755895402&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>2025-08-21 Notes</title>
    <id>https://waylonwalker.com/2025-08-21-notes/</id>
    <updated>2025-08-21T07:43:49Z</updated>
    <published>2025-08-21T07:43:49Z</published>
    <link href="https://waylonwalker.com/2025-08-21-notes/" rel="alternate" type="text/html"></link>
    <summary type="text">https://youtu.be/-EYRzF0zp3U?si=mKCPlMDecrqzvjuF</summary>
    <content type="html">&lt;p&gt;&lt;a href=&#34;https://youtu.be/-EYRzF0zp3U?si=mKCPlMDecrqzvjuF&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/youtu.be.png&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/youtu.be.png&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;https://youtu.be/-EYRzF0zp3U?si=mKCPlMDecrqzvjuF&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Is ai in 2025 like a Roomba vacuum?  The ads make it look fantastic but after some time it becomes worthless and needs constant monitoring.&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://youtube.com/shorts/iIDVm_J-JxU?si=WRiLXASnXlqqidLi&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/youtube.com.png&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/youtube.com.png&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;https://youtube.com/shorts/iIDVm_J-JxU?si=WRiLXASnXlqqidLi&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;For some reason the first one has kinda stuck with me.&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;You think youre thinking, but you’re mostly remembering. Your thoughts are just loops your nervous system finds familiar, your not making decisions, your repeating emotional echos.  Unless you interrupt the loop your future is your past in disguise.&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Search Needs a Human Solution: A Manifesto</title>
    <id>https://waylonwalker.com/thought-807/</id>
    <updated>2025-08-21T01:23:08Z</updated>
    <published>2025-08-21T01:23:08Z</published>
    <link href="https://waylonwalker.com/thought-807/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://simplecto.com/search-needs-a-human-solution-a-manifesto/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://simplecto.com/search-needs-a-human-solution-a-manifesto/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img src=&#34;https://simplecto.com/content/images/2024/11/1732113326995.png&#34; alt=&#34;Search Needs a Human Solution: A Manifesto — When was the last time you felt genuine discovery on the internet?&#xA;&amp;lt;p&amp;gt;Not algorithmic recommendations. Not SEO-optimized listicles.&amp;lt;/p&amp;gt;&#xA;&amp;lt;p&amp;gt;I mean real, surprising, meaningful discovery.&amp;lt;/p&amp;gt;&#xA;&amp;lt;p&amp;gt;Search is broken but not in the way tech companies think.&amp;lt;/p&amp;gt;&#xA;&amp;lt;p&amp;gt;We don&amp;#39;t need better algorithms or bigger indexes.&amp;lt;/p&amp;gt;&#xA;&amp;lt;p&amp;gt;We don&amp;#39;t need more compute or scale.&amp;#34; loading=“lazy”&amp;gt;&#xA;&amp;lt;/div&amp;gt;&#xA;&amp;lt;div class=&#34; embed-card-content glightbox&#34;=&#34;&#34;/ data-glightbox=&#34;description: Search Needs a Human Solution: A Manifesto — When was the last time you felt genuine discovery on the internet?&#xA;&amp;lt;p&amp;gt;Not algorithmic recommendations. Not SEO-optimized listicles.&amp;lt;/p&amp;gt;&#xA;&amp;lt;p&amp;gt;I mean real, surprising, meaningful discovery.&amp;lt;/p&amp;gt;&#xA;&amp;lt;p&amp;gt;Search is broken but not in the way tech companies think.&amp;lt;/p&amp;gt;&#xA;&amp;lt;p&amp;gt;We don&amp;#39;t need better algorithms or bigger indexes.&amp;lt;/p&amp;gt;&#xA;&amp;lt;p&amp;gt;We don&amp;#39;t need more compute or scale.&amp;#34; loading=“lazy”&amp;gt;&#xA;&amp;lt;/div&amp;gt;&#xA;&amp;lt;div class=&#34;&gt;&#xA;&lt;div class=&#34;embed-card-title&#34;&gt;Search Needs a Human Solution: A Manifesto&lt;/div&gt;&#xA;&lt;div class=&#34;embed-card-description&#34;&gt;When was the last time you felt genuine discovery on the internet?&lt;p&gt;&lt;/p&gt;&#xA;&lt;p&gt;Not algorithmic recommendations. Not SEO-optimized listicles.&lt;/p&gt;&#xA;&lt;p&gt;I mean real, surprising, meaningful discovery.&lt;/p&gt;&#xA;&lt;p&gt;Search is brok…&lt;/p&gt;&lt;/div&gt;&#xA;&lt;div class=&#34;embed-card-meta&#34;&gt;Candid and colorful thoughts on enterprise readiness · simplecto.com&lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;/a&gt;&lt;p&gt;&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;The hype bro influencer culture is over, we are fucking burnt the fuck out.  I’m done scrolling through &lt;a href=&#34;/ai-slop/&#34; class=&#34;glossary-term&#34; title=&#34;AI slop is unwanted AI content, generally shared by someone who did not review the output and is considered highly offensive and rude.&#34;&gt;ai slop&lt;/a&gt; on social media, I like in a few times a week with hopes to see some friends at the top of my feed and jump out.  The Doom and Gloom of politics, everyone has a side that will bring glory and the other side will start an apocalypse did me in, ai generated bs is just driving those platforms further into the ground, I’m tired and done.&lt;/p&gt;&#xA;&lt;p&gt;I’m starting to lean into RSS, I hope for projects like &lt;a href=&#34;https://simplecto.com/author/sam/&#34;&gt;Sam&lt;/a&gt; mentions here make this more possible for the average person.  I hope that real people make awesomelists like he mentions.  I hope that the internet becomes more human again.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 You Should Be Hiring Mullets. (write that down)</title>
    <id>https://waylonwalker.com/thought-806/</id>
    <updated>2025-08-21T01:14:21Z</updated>
    <published>2025-08-21T01:14:21Z</published>
    <link href="https://waylonwalker.com/thought-806/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://simplecto.com/you-should-be-hiring-mullets-write-that-down/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://simplecto.com/you-should-be-hiring-mullets-write-that-down/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img src=&#34;https://simplecto.com/content/images/2024/11/hire-a-mullet.png&#34; alt=&#34;You Should Be Hiring Mullets. (write that down) — Not because it&amp;#39;s cool (it is), but because it&amp;#39;s what your company actually needs right now.&#xA;&amp;lt;p&amp;gt;&amp;#34;Business in the front, party in the back&amp;#34; isn&amp;#39;t just some throwback style. It&amp;#39;s the whole point.&amp;lt;/p&amp;gt;&#xA;&amp;lt;p&amp;gt;In our corporate, don&amp;#39;t-let-HR-see-this reality, it means you&amp;#39;re getting a 360° person. Someone who exists in both&amp;#34; loading=“lazy”&amp;gt;&#xA;&amp;lt;/div&amp;gt;&#xA;&amp;lt;div class=&#34; embed-card-content glightbox&#34;=&#34;&#34;/ data-glightbox=&#34;description: You Should Be Hiring Mullets. (write that down) — Not because it&amp;#39;s cool (it is), but because it&amp;#39;s what your company actually needs right now.&#xA;&amp;lt;p&amp;gt;&amp;#34;Business in the front, party in the back&amp;#34; isn&amp;#39;t just some throwback style. It&amp;#39;s the whole point.&amp;lt;/p&amp;gt;&#xA;&amp;lt;p&amp;gt;In our corporate, don&amp;#39;t-let-HR-see-this reality, it means you&amp;#39;re getting a 360° person. Someone who exists in both&amp;#34; loading=“lazy”&amp;gt;&#xA;&amp;lt;/div&amp;gt;&#xA;&amp;lt;div class=&#34;&gt;&#xA;&lt;div class=&#34;embed-card-title&#34;&gt;You Should Be Hiring Mullets. (write that down)&lt;/div&gt;&#xA;&lt;div class=&#34;embed-card-description&#34;&gt;Not because it&amp;#39;s cool (it is), but because it&amp;#39;s what your company actually needs right now.&lt;p&gt;&lt;/p&gt;&#xA;&lt;p&gt;&amp;#34;Business in the front, party in the back&amp;#34; isn&amp;#39;t just some throwback style. It&amp;#39;s the whole point.&lt;/p&gt;&#xA;&lt;p&gt;In ou…&lt;/p&gt;&lt;/div&gt;&#xA;&lt;div class=&#34;embed-card-meta&#34;&gt;Candid and colorful thoughts on enterprise readiness · simplecto.com&lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;/a&gt;&lt;p&gt;&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;We need more mullets (as sam describes them).  Not so serious, but serious when it counts.  Ready to back you up, get some shit shipped, roll up their sleeves and do the work, stand up in front of people and pitch ideas.  We have too many hustle bros pitching shit they cant do, ai doomers who have been here 10 minutes think they can replace everything they don’t understand with a word calculator, framework Andys afraid to ship till its &lt;a href=&#34;/perfect/&#34; class=&#34;wikilink&#34; data-title=&#34;perfect&#34; data-description=&#34;Perfect is a made up word that humans use to describe something that is above average, or works really well for them. The idea of perfection is fleeting, as...&#34; data-date=&#34;2025-06-26&#34; data-preview=&#34;Perfect is a made up word that humans use to describe something that is above average, or works really well for them. The idea of perfection is fleeting, as...&#34;&gt;perfect&lt;/a&gt;.  Grow a Mullet.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 OverType - The Markdown Editor That&#39;s a Textarea</title>
    <id>https://waylonwalker.com/thought-805/</id>
    <updated>2025-08-21T00:50:01Z</updated>
    <published>2025-08-21T00:50:01Z</published>
    <link href="https://waylonwalker.com/thought-805/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://overtype.dev/?utm_source=waylonwalker.com</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;/static/https://overtype.dev/?utm_source=waylonwalker.com&#34; class=&#34;glightbox-link&#34; aria-label=&#34;https://overtype.dev/?utm_source=waylonwalker.com&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;/static/https://overtype.dev/?utm_source=waylonwalker.com&#34; alt=&#34;https://overtype.dev/?utm_source=waylonwalker.com&#34;/ data-glightbox=&#34;description: https://overtype.dev/?utm_source=waylonwalker.com&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;p&gt;The most under hyped, under engineered text editor overtype.  Going to be popping this into some places like &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;Thoughts&lt;/a&gt;, and maybe more, looks small and easy to use.  Gives just a bit of nice features over a text editor.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ panphora overtype</title>
    <id>https://waylonwalker.com/panphora-overtype/</id>
    <updated>2025-08-21T00:47:17Z</updated>
    <published>2025-08-21T00:47:17Z</published>
    <link href="https://waylonwalker.com/panphora-overtype/" rel="alternate" type="text/html"></link>
    <summary type="text">The work on overtype by panphora.</summary>
    <content type="html">&lt;p&gt;The work on &lt;a href=&#34;https://github.com/panphora/overtype&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;overtype&lt;/a&gt; by &lt;a href=&#34;https://github.com/panphora&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;panphora&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;The markdown editor that’s just a textarea &lt;a href=&#34;https://overtype.dev&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/overtype.dev.png&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/overtype.dev.png&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;https://overtype.dev&lt;/a&gt;&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 The Internet is Dying: AI, Bots, and The End of Human Content ...</title>
    <id>https://waylonwalker.com/thought-802/</id>
    <updated>2025-08-18T13:04:56Z</updated>
    <published>2025-08-18T13:04:56Z</published>
    <link href="https://waylonwalker.com/thought-802/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/watch?v=J5ZmLvy_Jfg&amp;t=182s</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;J5ZmLvy_Jfg&#34; title=&#34;The Internet is Dying: AI, Bots, and The End of Human Content&#34; playlabel=&#34;Play: The Internet is Dying: AI, Bots, and The End of Human Content&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Damn this VAnessa is hitting my feed with hard topics, I’m not sure whether to subscribe or to block.  These top websites only feel worse every day, when I post on twitter and I get 4 likes by accounts that were created 5 minutes ago with racy profile pics it feels obvious.  I wonder how larger accounts deal with it.  Now that llms have made making these bots mimic humans easy It really makes you want out.  I’ve really become a curmudgeon and leaning on rss over the past year, I dont like it, but idk what to do.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 The Real Reason Your Power Bill Doubled (It&#39;s Not Inflation) -...</title>
    <id>https://waylonwalker.com/thought-801/</id>
    <updated>2025-08-18T13:01:04Z</updated>
    <published>2025-08-18T13:01:04Z</published>
    <link href="https://waylonwalker.com/thought-801/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/watch?v=hJ2tqs_vksc&amp;t=25s</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;hJ2tqs_vksc&#34; title=&#34;The Real Reason Your Power Bill Doubled (It&amp;#39;s Not Inflation)&#34; playlabel=&#34;Play: The Real Reason Your Power Bill Doubled (It&amp;#39;s Not Inflation)&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;This is a crazy theory I did not realize was out there, but damn power just keeps costing more and more.  She does not mention it here, but there are many sources of power for the grid that cost vastly different amounts to produce, generally “clean energy” solutions are harder and more expensive to bring online and don’t just turn on and off at the flick of a switch.  Anyways, how are the power companies divying this power out to users, do some get preferred rates or supply?  My rates just went up for the summer period “temporarily”.  Our infrastructure is aging hard to upgrade and needs something done to it.  Who’s really going to pay for it, these AI companies are throwing big numbers but do they have any real money?  Do they have any real revenue after building out massive data centers filling them with the most expensive hardware?  These guys are burning cash like crazy.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Digitized Signatures</title>
    <id>https://waylonwalker.com/thought-800/</id>
    <updated>2025-08-17T15:47:05Z</updated>
    <published>2025-08-17T15:47:05Z</published>
    <link href="https://waylonwalker.com/thought-800/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://signature.cnrad.dev/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://signature.cnrad.dev/&#34; class=&#34;embed-card-link  has-avatar has-avatar-before&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/signature.cnrad.dev.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/signature.cnrad.dev.ico&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Digitized Signatures&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;signature.cnrad.dev&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;seriously cool dumb app that no one asked for but is really creative and unique.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/c87fdbe3-26f2-4f14-b4fb-7dc9b231e999.png&#34; class=&#34;glightbox-link&#34; aria-label=&#34;screenshot-2025-08-17T15-46-27-287Z.png&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/c87fdbe3-26f2-4f14-b4fb-7dc9b231e999.png&#34; alt=&#34;screenshot-2025-08-17T15-46-27-287Z.png&#34;/ data-glightbox=&#34;description: screenshot-2025-08-17T15-46-27-287Z.png&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 DHH on X: &#34;Rewiring your muscle memory for copy/paste when you...</title>
    <id>https://waylonwalker.com/thought-799/</id>
    <updated>2025-08-17T15:39:42Z</updated>
    <published>2025-08-17T15:39:42Z</published>
    <link href="https://waylonwalker.com/thought-799/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://x.com/dhh/status/1956645753255805151</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://x.com/dhh/status/1956645753255805151&#34; class=&#34;embed-card-link  has-avatar has-avatar-before&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/x.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/x.com.ico&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;External Link&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;X (formerly Twitter) · x.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Today I learned that its spelled “Rite of Passage”, and is short for ritual.  Mac has so many of these things that are just different, but do not let you reconfigure them and you are stuck with it.  copy / paste I don’t get, the 3 times I’ve touched a mac since I was a kid its frustrated me.  Is it lock in? or is it them actually thinking this is the right way and you all shall do as we say.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>2025-08-17 Notes</title>
    <id>https://waylonwalker.com/2025-08-17-notes/</id>
    <updated>2025-08-17T12:21:47Z</updated>
    <published>2025-08-17T12:21:47Z</published>
    <link href="https://waylonwalker.com/2025-08-17-notes/" rel="alternate" type="text/html"></link>
    <summary type="text">After a long time I begrudgingly setup window rules for hyprland. What I wanted was the ability to log out and jump back into work with a freshened work...</summary>
    <content type="html">&lt;p&gt;After a long time I begrudgingly setup window rules for hyprland.  What I&#xA;wanted was the ability to log out and jump back into work with a freshened work&#xA;space.  Right now I’m running on low ram and disk on hyprland and sometimes I&#xA;need to just quit everything and get back to work quick.  So I setup exec-once&#xA;to start my terminal, browser, and chat.  These are my main applications that&#xA;run on my power fingers 456 (which are on a layer that present under jkl).  I&#xA;use them every time I log in and will need them no matter what I do.  When I&#xA;exec once them, they just dump onto one workspace, you can pick it but no&#xA;matter the timing, you end up with race conditions that end up with you on&#xA;different workspaces.&lt;/p&gt;&#xA;&lt;p&gt;So I setup window rules.  I avoided this for a long time, because of my&#xA;workflow on awesomewm, I thought this manual workspace selection was superior.&#xA;What I really think happened was that awesomewm was a little trickier for me to&#xA;figure out what things were named and to actually get the rules setup&#xA;correctly.&lt;/p&gt;&#xA;&lt;p&gt;hyprland makes this pretty simple with its great cli.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;hyprctl clients -j &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt; jq &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt; grep class&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Now that I can see attributes of these windows as I open them I can set up&#xA;rules for them to go onto the correct workspace, or to float them.  I have a&#xA;couple of things like a file picker coming from a browser showing up in the&#xA;tiled layout, when a file picker like this shows up, just cover everything up&#xA;its temporary, no need to squeeze it into the tiled layout.&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;the file picker float also fixed an issue I had where they would not show up,&#xA;and lock up brave when its in full screen mode and I don’t realize it.&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;pre&gt;&lt;code class=&#34;language-conf&#34;&gt;windowrulev2 = workspace 1, class:^(steam)$&#xA;windowrulev2 = workspace 4, class:^(kitty)$&#xA;windowrulev2 = workspace 5, class:^(firefox)$&#xA;windowrulev2 = workspace 5, class:^(brave-browser)$&#xA;windowrulev2 = workspace 5, class:^(google-chrome)$&#xA;windowrulev2 = workspace 6, class:^(Signal)$&#xA;windowrulev2 = workspace 2, class:^(krita)$&#xA;windowrulev2 = workspace 8, class:^(brave-chat.openai.com__-Default)$&#xA;windowrulev2 = workspace 8, class:^(brave-youtube.com__-Default)$&#xA;windowrulev2 = float, class:^(org.pulseaudio.pavucontrol)$&#xA;windowrulev2 = workspace 9, class:^(org.prismlauncher.PrismLauncher)$&#xA;windowrulev2 = float, class:^(org.prismlauncher.PrismLauncher)$, title:^(Console window.*)&#xA;windowrulev2 = float, class:^(xdg-desktop-portal-gtk)$&#xA;&lt;/code&gt;&lt;/pre&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Wyatt Drew A Watertower In Aesprite</title>
    <id>https://waylonwalker.com/shots/wyatt-drew-a-watertower-in-aesprite/</id>
    <updated>2025-08-17T10:21:08Z</updated>
    <published>2025-08-17T10:21:08Z</published>
    <link href="https://waylonwalker.com/shots/wyatt-drew-a-watertower-in-aesprite/" rel="alternate" type="text/html"></link>
    <summary type="text">A post apocolptic water tower sitting on a rock drawn in blues and greens with moss hanging from it, including a rusty red top and legs. Drew by Wyatt.</summary>
    <content type="html">&lt;p&gt;Little dude has some talent.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/029b271a-a1dd-4951-a7ba-7124ddb00965.png&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Wyatt drew a water tower in aesprite&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/029b271a-a1dd-4951-a7ba-7124ddb00965.png&#34; alt=&#34;Wyatt drew a water tower in aesprite&#34;/ data-glightbox=&#34;description: Wyatt drew a water tower in aesprite&#34;&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;A post apocalyptic water tower sitting on a rock drawn in blues and greens with moss hanging from it, including a rusty red top and legs.  Drew by Wyatt.&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>2025-08-16 Notes</title>
    <id>https://waylonwalker.com/2025-08-16-notes/</id>
    <updated>2025-08-16T10:07:21Z</updated>
    <published>2025-08-16T10:07:21Z</published>
    <link href="https://waylonwalker.com/2025-08-16-notes/" rel="alternate" type="text/html"></link>
    <summary type="text">[x] remove nextcloud - [x] pause photoprism - [x] pause syncthing - [x] move data to walkershare - [x] filepermissions 1000:1000 all of it - [x] organize how...</summary>
    <content type="html">&lt;h2 id=&#34;&lt;a href=&#34;/homelab/&#34; class=&#34;glossary-term&#34; title=&#34;A place to self host applications. For me this is primarily self built web applications, and applications for sharing files with my family. Techno Tim has a...&#34;&gt;homelab&lt;/a&gt;-cleanup-day&#34;&gt;HomeLab cleanup day &lt;a href=&#34;#homelab-cleanup-day&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;input checked=&#34;&#34; disabled=&#34;&#34; type=&#34;checkbox&#34;/&gt; remove nextcloud&lt;/li&gt;&#xA;&lt;li&gt;&lt;input checked=&#34;&#34; disabled=&#34;&#34; type=&#34;checkbox&#34;/&gt; pause photoprism&lt;/li&gt;&#xA;&lt;li&gt;&lt;input checked=&#34;&#34; disabled=&#34;&#34; type=&#34;checkbox&#34;/&gt; pause syncthing&lt;/li&gt;&#xA;&lt;li&gt;&lt;input checked=&#34;&#34; disabled=&#34;&#34; type=&#34;checkbox&#34;/&gt; move data to walkershare&lt;/li&gt;&#xA;&lt;li&gt;&lt;input checked=&#34;&#34; disabled=&#34;&#34; type=&#34;checkbox&#34;/&gt; filepermissions 1000:1000 all of it&lt;/li&gt;&#xA;&lt;li&gt;&lt;input checked=&#34;&#34; disabled=&#34;&#34; type=&#34;checkbox&#34;/&gt; organize how I want&lt;/li&gt;&#xA;&lt;li&gt;&lt;input disabled=&#34;&#34; type=&#34;checkbox&#34;/&gt; resume photoprism&lt;/li&gt;&#xA;&lt;li&gt;&lt;input disabled=&#34;&#34; type=&#34;checkbox&#34;/&gt; resume syncthing - update share locations&lt;/li&gt;&#xA;&lt;li&gt;&lt;input checked=&#34;&#34; disabled=&#34;&#34; type=&#34;checkbox&#34;/&gt; expose to mac over smb&lt;/li&gt;&#xA;&lt;li&gt;&lt;input checked=&#34;&#34; disabled=&#34;&#34; type=&#34;checkbox&#34;/&gt; ensure mac can write over smb&lt;/li&gt;&#xA;&lt;li&gt;&lt;input checked=&#34;&#34; disabled=&#34;&#34; type=&#34;checkbox&#34;/&gt; expose to archlinux oversmb&lt;/li&gt;&#xA;&lt;li&gt;&lt;input checked=&#34;&#34; disabled=&#34;&#34; type=&#34;checkbox&#34;/&gt; ensure archlinux can write over smb&lt;/li&gt;&#xA;&lt;li&gt;&lt;input disabled=&#34;&#34; type=&#34;checkbox&#34;/&gt; expose to syncthing over pvc&lt;/li&gt;&#xA;&lt;li&gt;&lt;input disabled=&#34;&#34; type=&#34;checkbox&#34;/&gt; expose to my terminal over pvc&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;&lt;strong&gt;wishlist&lt;/strong&gt;&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;input disabled=&#34;&#34; type=&#34;checkbox&#34;/&gt; Forgejo repos&lt;/li&gt;&#xA;&lt;li&gt;&lt;input disabled=&#34;&#34; type=&#34;checkbox&#34;/&gt; Forgejo runners&lt;/li&gt;&#xA;&lt;li&gt;&lt;input disabled=&#34;&#34; type=&#34;checkbox&#34;/&gt; explore moving from docker repository to repoflow&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Performance Difference between RWX and RWO volumes · longhorn/...</title>
    <id>https://waylonwalker.com/thought-798/</id>
    <updated>2025-08-15T19:13:56Z</updated>
    <published>2025-08-15T19:13:56Z</published>
    <link href="https://waylonwalker.com/thought-798/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://github.com/longhorn/longhorn/discussions/6964</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://github.com/longhorn/longhorn/discussions/6964&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://opengraph.githubassets.com/3ef5e06da915e8435ecd50368f3eeb8e8f0e4ab29fb9f9a8617cf4465c9496bc/longhorn/longhorn/discussions/6964&#34; alt=&#34;Performance Difference between RWX and RWO volumes · longhorn longhorn · Discussion #6964 — Hey all, because of some internal testing I made a couple of experiments on our Cluster related to performance of RWX and RWO volumes. Because this might be of interest to some people I thought I s...&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: Performance Difference between RWX and RWO volumes · longhorn longhorn · Discussion #6964 — Hey all, because of some internal testing I made a couple of experiments on our Cluster related to performance of RWX and RWO volumes. Because this might be of interest to some people I thought I s...&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Performance Difference between RWX and RWO volumes · longhorn longhorn · Discussion #6964&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Hey all, because of some internal testing I made a couple of experiments on our Cluster related to performance of RWX and RWO volumes. Because this might be of interest to some people I thought I s...&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;GitHub · github.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Interesting longhorn storage performance test, author does highlight right away that this is a simulation and not a REAL test.  I did not fully understand the storage semantics before reading through this.&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;strong&gt;RWO&lt;/strong&gt; -  Always presents a filesystem &lt;code&gt;ext4&lt;/code&gt; or &lt;code&gt;xfs&lt;/code&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;strong&gt;RWX&lt;/strong&gt;/&lt;strong&gt;ROX&lt;/strong&gt; - Always presents a network share &lt;code&gt;nfs&lt;/code&gt; to the pod.&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;This is an important distinction for applications that use sqlite or a tool on top of sqlite such as diskcache.  With sqlite it is not recomended to run over nfs due to missing required file locking mechanisms.&lt;/p&gt;&#xA;&lt;p&gt;Longhorn storage still provides a lot of benefits to these applications as the storage is automatically replicated, if the node that your application is running on goes offline a new pod will start on an existing node.  If you have planned downtime, you can cordon and drain a node.  Since the data is available in another location you will be able to start a new pod on anther node.  barring your PodDisruptionBudget settings, taints, and affinity, this may happen automatically.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>2025-08-14 Notes</title>
    <id>https://waylonwalker.com/2025-08-14-notes/</id>
    <updated>2025-08-14T20:15:54Z</updated>
    <published>2025-08-14T20:15:54Z</published>
    <link href="https://waylonwalker.com/2025-08-14-notes/" rel="alternate" type="text/html"></link>
    <summary type="text">Huge progress on shots not to be confused with shots inspired by . I&#39;m building out my own instagram grid design, right now its 4 wide, but I wonder if it...</summary>
    <content type="html">&lt;p&gt;Huge progress on &lt;a href=&#34;https://waylonwalker.com/shots/&#34;&gt;shots&lt;/a&gt; not to be confused&#xA;with &lt;a href=&#34;https://shots.waylonwalker.com&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/shots.waylonwalker.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/shots.waylonwalker.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;shots&lt;/a&gt; inspired by&#xA;&lt;a href=&#34;https://justin.searls.co/shots/&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/justin.searls.co.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/justin.searls.co.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;https://justin.searls.co/shots/&lt;/a&gt;.  I’m building out my own instagram grid&#xA;design, right now its 4 wide, but I wonder if it should be 3 wide to match up&#xA;with the old instagram grid designs, and I could do cool crops like instagram&#xA;used to.&lt;/p&gt;&#xA;&lt;p&gt;I went through a bunch of old &lt;a href=&#34;/gratitude/&#34; class=&#34;wikilink&#34;&gt;gratitude&lt;/a&gt; posts and pulled images from all&#xA;of them, and update all of the images to use dropper while I was at it.&lt;/p&gt;&#xA;&lt;hr/&gt;&#xA;&lt;p&gt;More work after kids bed time and came up with a great concept that needs to go&#xA;into markata, yes its more configuration.  &lt;a href=&#34;/markata/&#34; class=&#34;wikilink&#34; data-title=&#34;markata&#34; data-description=&#34;This post is a work in progress.&#34; data-date=&#34;2024-05-30&#34; data-preview=&#34;This post is a work in progress.&#34;&gt;markata&lt;/a&gt; is quickly becoming&#xA;death by config.  What I wanted was the ability to make different cards&#xA;different sizes.&lt;/p&gt;&#xA;&lt;p&gt;What I came up with was adding “card_classes” to the front matter of the&#xA;markdown file.  This is a list of classes that will be added to the card div&#xA;when the card is rendered.  This way I can make cards different sizes.  Here&#xA;are a couple of good results I had.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/c946a174-ee0f-43fb-90d7-c6440c0ed708.png&#34; class=&#34;glightbox-link&#34; aria-label=&#34;screenshot-2025-08-15T01-35-08-108Z.png&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/c946a174-ee0f-43fb-90d7-c6440c0ed708.png&#34; alt=&#34;screenshot-2025-08-15T01-35-08-108Z.png&#34;/ data-glightbox=&#34;description: screenshot-2025-08-15T01-35-08-108Z.png&#34;&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;A landscape shot of quarry lake&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/fe5ea8de-2d45-4b9b-966e-85d65cea6151.png&#34; class=&#34;glightbox-link&#34; aria-label=&#34;screenshot-2025-08-15T01-35-48-593Z.png&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/fe5ea8de-2d45-4b9b-966e-85d65cea6151.png&#34; alt=&#34;screenshot-2025-08-15T01-35-48-593Z.png&#34;/ data-glightbox=&#34;description: screenshot-2025-08-15T01-35-48-593Z.png&#34;&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;An image of Rhiannon and I at sunset&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;&lt;hr/&gt;&#xA;&lt;p&gt;Made a bit of cyberbrink crane progress, glued in a few cables and put the cab&#xA;on top of the tower.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ vrtmrz obsidian-livesync</title>
    <id>https://waylonwalker.com/vrtmrz-obsidian-livesync/</id>
    <updated>2025-08-14T13:29:15Z</updated>
    <published>2025-08-14T13:29:15Z</published>
    <link href="https://waylonwalker.com/vrtmrz-obsidian-livesync/" rel="alternate" type="text/html"></link>
    <summary type="text">If you&#39;re into interesting projects, don&#39;t miss out on obsidian-livesync, created by vrtmrz.</summary>
    <content type="html">&lt;p&gt;If you’re into interesting projects, don’t miss out on &lt;a href=&#34;https://github.com/vrtmrz/obsidian-livesync&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;obsidian-livesync&lt;/a&gt;, created by &lt;a href=&#34;https://github.com/vrtmrz&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;vrtmrz&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;No description available.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ syncthing syncthing</title>
    <id>https://waylonwalker.com/syncthing-syncthing/</id>
    <updated>2025-08-14T03:47:05Z</updated>
    <published>2025-08-14T03:47:05Z</published>
    <link href="https://waylonwalker.com/syncthing-syncthing/" rel="alternate" type="text/html"></link>
    <summary type="text">I like syncthing&#39;s project syncthing.</summary>
    <content type="html">&lt;p&gt;I like &lt;a href=&#34;https://github.com/syncthing&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;syncthing’s&lt;/a&gt; project &lt;a href=&#34;https://github.com/syncthing/syncthing&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;syncthing&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Open Source Continuous File Synchronization&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>2025-08-13 Notes</title>
    <id>https://waylonwalker.com/2025-08-13-notes/</id>
    <updated>2025-08-13T21:23:24Z</updated>
    <published>2025-08-13T21:23:24Z</published>
    <link href="https://waylonwalker.com/2025-08-13-notes/" rel="alternate" type="text/html"></link>
    <summary type="text">Inspired by Justin Searls Shots, I made started my own shots feed for self hosted Instagram style photos. The layout could use a lot of work, the feed seems...</summary>
    <content type="html">&lt;p&gt;Inspired by &lt;a href=&#34;https://justin.searls.co/shots/&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/justin.searls.co.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/justin.searls.co.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;Justin Searls Shots&lt;/a&gt;, I made&#xA;started &lt;a href=&#34;https://waylonwalker.com/shots/&#34;&gt;my own shots feed&lt;/a&gt; for &lt;a href=&#34;/self-host/&#34; class=&#34;glossary-term&#34; title=&#34;Self hosting is the act of hosting your own applications and services without using a SAS provider. This is typically done with your own hardware, but there...&#34;&gt;self hosted&lt;/a&gt;&#xA;Instagram style photos.  The layout could use a lot of work, the feed seems&#xA;like its breaking on rebuild due to some cache issues, but its there and kind&#xA;of works and eventually will get a proper prominently placed link, for now its&#xA;an idea for anyone who sees this.&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://waylonwalker.com/shots/&#34;&gt;https://waylonwalker.com/shots/&lt;/a&gt;&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;By the way what a boss domain searls.co is.  I’ve seen Chris Coyier just got&#xA;&lt;a href=&#34;https://chriscoyier.net/2025/07/01/coyier-com/&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/chriscoyier.net.jpg&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/chriscoyier.net.jpg&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;coyer.com&lt;/a&gt; and talked about&#xA;being able to use it as a family domain.&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>2025-08-12 Notes</title>
    <id>https://waylonwalker.com/2025-08-12-notes/</id>
    <updated>2025-08-12T16:46:31Z</updated>
    <published>2025-08-12T16:46:31Z</published>
    <link href="https://waylonwalker.com/2025-08-12-notes/" rel="alternate" type="text/html"></link>
    <summary type="text">Sad day yesterday. We discovered that our freezer was left cracked over a day or so. Kids self serviced themselves to some sausage dogs at some point and...</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/3b6cadef-301b-4c90-9b06-4cbc1405bced.jpg&#34; class=&#34;glightbox-link&#34; aria-label=&#34;17550430467561838968532746154870.jpg&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/3b6cadef-301b-4c90-9b06-4cbc1405bced.jpg&#34; alt=&#34;17550430467561838968532746154870.jpg&#34;/ data-glightbox=&#34;description: 17550430467561838968532746154870.jpg&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;p&gt;Sad day yesterday.  We discovered that our freezer was left cracked over a day&#xA;or so.  Kids self serviced themselves to some sausage dogs at some point and&#xA;wedged the box in the door.  Everything was over 40F and done.&lt;/p&gt;&#xA;&lt;p&gt;Lessons learned for everyone.  For the kids, see something say something, food&#xA;should not come out of a freezer soft and barely fridge temp.  For the parents,&#xA;don’t get in a rush when loading the freezer.  If something doesn’t quite look&#xA;like it’s going to stay out, it probably won’t and next person to use it will&#xA;pay… Or you will pay when they don’t notice.  Last lesson for everyone, when&#xA;you come home late and tired from a family trip to Grandma’s and hear beeping&#xA;it’s probably important and investigate.&lt;/p&gt;&#xA;&lt;hr/&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/4751d638-b056-42bd-bc5b-4a7e94e4569f.jpg&#34; class=&#34;glightbox-link&#34; aria-label=&#34;17550498066131861258207337996278.jpg&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/4751d638-b056-42bd-bc5b-4a7e94e4569f.jpg&#34; alt=&#34;17550498066131861258207337996278.jpg&#34;/ data-glightbox=&#34;description: 17550498066131861258207337996278.jpg&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;p&gt;I need some more ram… Was waiting out prime day, prices went up and haven’t&#xA;gone down.&lt;/p&gt;&#xA;&lt;hr/&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://forgejo.org/&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/forgejo.org.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/forgejo.org.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;forgejo&lt;/a&gt; is pretty dope, played with it for awhile today&#xA;locally, create repos with curl, &lt;a href=&#34;/glossary/git/&#34; class=&#34;glossary-term&#34; title=&#34;Git is a version control system for tracking changes in source code during software development. In the beginning there were many, some were licensed. As...&#34;&gt;git&lt;/a&gt; push, actions working with multiple&#xA;runners.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>trying forgejo</title>
    <id>https://waylonwalker.com/trying-forgejo/</id>
    <updated>2025-08-12T11:57:42Z</updated>
    <published>2025-08-12T11:57:42Z</published>
    <link href="https://waylonwalker.com/trying-forgejo/" rel="alternate" type="text/html"></link>
    <summary type="text">WIP</summary>
    <content type="html">&lt;p&gt;WIP&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nt&#34;&gt;networks&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;forgejo&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;    &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;external&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;kc&#34;&gt;false&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nt&#34;&gt;services&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;server&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;    &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;image&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;l&#34;&gt;codeberg.org/forgejo/forgejo:11&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;    &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;container_name&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;l&#34;&gt;forgejo&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;    &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;environment&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;      &lt;/span&gt;- &lt;span class=&#34;l&#34;&gt;USER_UID=1000&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;      &lt;/span&gt;- &lt;span class=&#34;l&#34;&gt;USER_GID=1000&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;    &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;restart&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;l&#34;&gt;always&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;    &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;networks&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;      &lt;/span&gt;- &lt;span class=&#34;l&#34;&gt;forgejo&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;    &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;volumes&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;      &lt;/span&gt;- &lt;span class=&#34;l&#34;&gt;./forgejo:/data&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;    &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;ports&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;      &lt;/span&gt;- &lt;span class=&#34;s1&#34;&gt;&amp;#39;3000:3000&amp;#39;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;      &lt;/span&gt;- &lt;span class=&#34;s1&#34;&gt;&amp;#39;2222:22&amp;#39;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;docker-in-docker&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;    &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;image&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;l&#34;&gt;docker:dind&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;    &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;container_name&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;l&#34;&gt;docker_dind&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;    &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;privileged&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;kc&#34;&gt;true&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;    &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;command&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;dockerd&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;-H&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;tcp://0.0.0.0:2375&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;--tls=false&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;    &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;restart&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;l&#34;&gt;unless-stopped&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;    &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;networks&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;l&#34;&gt;forgejo]&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;runner&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;    &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;image&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;l&#34;&gt;data.forgejo.org/forgejo/runner:4.0.0&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;    &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;container_name&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;l&#34;&gt;forgejo-runner&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;    &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;user&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;1001:1001&amp;#34;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;    &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;depends_on&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;      &lt;/span&gt;- &lt;span class=&#34;l&#34;&gt;docker-in-docker&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;    &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;environment&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;      &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;DOCKER_HOST&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;l&#34;&gt;tcp://docker-in-docker:2375&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;    &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;volumes&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;      &lt;/span&gt;- &lt;span class=&#34;l&#34;&gt;./runner-data:/data:Z,U&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;c&#34;&gt;# will hold .runner + cache&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;    &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;command&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;l&#34;&gt;/bin/sh -c &amp;#34;while :; do sleep 1; done&amp;#34;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;    &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;restart&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;l&#34;&gt;unless-stopped&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;    &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;networks&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;l&#34;&gt;forgejo]&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 GitHub Ensloppification – David Bushell – Web Dev (UK)</title>
    <id>https://waylonwalker.com/thought-796/</id>
    <updated>2025-08-12T02:29:16Z</updated>
    <published>2025-08-12T02:29:16Z</published>
    <link href="https://waylonwalker.com/thought-796/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://dbushell.com/2025/08/11/github-ensloppification/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://dbushell.com/2025/08/11/github-ensloppification/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://dbushell.com/images/articles/2025-08-11-github-ensloppification.png&#34; alt=&#34;GitHub Ensloppification — The one where I say goodbye to GitHub&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: GitHub Ensloppification — The one where I say goodbye to GitHub&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;GitHub Ensloppification&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;The one where I say goodbye to GitHub&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;dbushell.com · dbushell.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;David’s got me looking at Forgejo.  I’ve seen a lot of GitHub jumpers just this week, and I’ve been tempted for a long time to self host one anyways, so it might be time.  I don’t have hard issues with anything, I just like self hosting my own personal stuff.&lt;/p&gt;&#xA;&lt;p&gt;On the flipside, I hope this does not turn yet another thing to shit.  I lived through the download software from sourceforge and hope you get the right download now button and not the one from the virus ad.  I’m not putting my really public/useful projects on a &lt;a href=&#34;/self-host/&#34; class=&#34;glossary-term&#34; title=&#34;Self hosting is the act of hosting your own applications and services without using a SAS provider. This is typically done with your own hardware, but there...&#34;&gt;self hosted&lt;/a&gt; platform… well not as the &lt;strong&gt;only&lt;/strong&gt; source, I see how that comes off edgy.  I like having some trust in the platform.  Currently theres a lot of issues with M$ and GitHub using you for your data, but I don’t think injecting virus, malware, bitcoin miners is a worry I have coming from a GitHub release, unless it was put there by the author.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Note-taking &amp; Editors - awesome-selfhosted</title>
    <id>https://waylonwalker.com/thought-795/</id>
    <updated>2025-08-11T14:27:23Z</updated>
    <published>2025-08-11T14:27:23Z</published>
    <link href="https://waylonwalker.com/thought-795/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://awesome-selfhosted.net/tags/note-taking--editors.html</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;/static/https://awesome-selfhosted.net/tags/note-taking--editors.html&#34; class=&#34;glightbox-link&#34; aria-label=&#34;https://awesome-selfhosted.net/tags/note-taking–editors.html&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;/static/https://awesome-selfhosted.net/tags/note-taking--editors.html&#34; alt=&#34;https://awesome-selfhosted.net/tags/note-taking–editors.html&#34;/ data-glightbox=&#34;description: https://awesome-selfhosted.net/tags/note-taking–editors.html&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;p&gt;Great list of &lt;a href=&#34;/self-host/&#34; class=&#34;glossary-term&#34; title=&#34;Self hosting is the act of hosting your own applications and services without using a SAS provider. This is typically done with your own hardware, but there...&#34;&gt;self hosted&lt;/a&gt; markdown editors. Looking for a good one for my wife and family to use that does not look like editing code.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ pythops impala</title>
    <id>https://waylonwalker.com/pythops-impala/</id>
    <updated>2025-08-10T17:53:51Z</updated>
    <published>2025-08-10T17:53:51Z</published>
    <link href="https://waylonwalker.com/pythops-impala/" rel="alternate" type="text/html"></link>
    <summary type="text">Check out pythops and their project impala.</summary>
    <content type="html">&lt;p&gt;Check out &lt;a href=&#34;https://github.com/pythops&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;pythops&lt;/a&gt; and their project &lt;a href=&#34;https://github.com/pythops/impala&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;impala&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;🛜 TUI for managing wifi on Linux&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Slops | justin․searls․co</title>
    <id>https://waylonwalker.com/thought-794/</id>
    <updated>2025-08-10T17:41:56Z</updated>
    <published>2025-08-10T17:41:56Z</published>
    <link href="https://waylonwalker.com/thought-794/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://justin.searls.co/slops/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://justin.searls.co/slops/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://justin.searls.co/img/square.png&#34; alt=&#34;Slops — AI-generated slop that I thought was worth sharing.&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: Slops — AI-generated slop that I thought was worth sharing.&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Slops&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;AI-generated slop that I thought was worth sharing.&#xA;&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;justin․searls․co · justin.searls.co&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Justin has such great feeds on his site, I love how the main feeds are so prominant just to the left of the article you are reading.  &lt;code&gt;slops&lt;/code&gt; in particular feels like a great category.  Saving this chat for later, or found it particularly interesting, but don’t really want to make a post about it.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ yarrick iodine</title>
    <id>https://waylonwalker.com/yarrick-iodine/</id>
    <updated>2025-08-10T17:09:19Z</updated>
    <published>2025-08-10T17:09:19Z</published>
    <link href="https://waylonwalker.com/yarrick-iodine/" rel="alternate" type="text/html"></link>
    <summary type="text">iodine by yarrick is a game-changer in its space. Excited to see how it evolves.</summary>
    <content type="html">&lt;p&gt;&lt;a href=&#34;https://github.com/yarrick/iodine&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;iodine&lt;/a&gt; by &lt;a href=&#34;https://github.com/yarrick&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;yarrick&lt;/a&gt; is a game-changer in its space. Excited to see how it evolves.&lt;/p&gt;&#xA;&lt;p&gt;Official &lt;a href=&#34;/glossary/git/&#34; class=&#34;glossary-term&#34; title=&#34;Git is a version control system for tracking changes in source code during software development. In the beginning there were many, some were licensed. As...&#34;&gt;git&lt;/a&gt; repo for iodine dns tunnel&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 noah on X: &#34;this is about to be my go to on plane flights. u d...</title>
    <id>https://waylonwalker.com/thought-793/</id>
    <updated>2025-08-10T17:07:18Z</updated>
    <published>2025-08-10T17:07:18Z</published>
    <link href="https://waylonwalker.com/thought-793/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://x.com/noahgsolomon/status/1954035351510716670</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://x.com/noahgsolomon/status/1954035351510716670&#34; class=&#34;embed-card-link  has-avatar has-avatar-before&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/x.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/x.com.ico&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;External Link&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;X (formerly Twitter) · x.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;kinda wild, you can chat with an ai bot over a dns request??&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 blakewatson.com              - blakewatson.com turns 20</title>
    <id>https://waylonwalker.com/thought-792/</id>
    <updated>2025-08-09T19:48:58Z</updated>
    <published>2025-08-09T19:48:58Z</published>
    <link href="https://waylonwalker.com/thought-792/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://blakewatson.com/journal/blakewatson-com-turns-twenty/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://blakewatson.com/journal/blakewatson-com-turns-twenty/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;/assets/images/og-image.png&#34; alt=&#34;blakewatson.com turns 20 - blakewatson.com — I bought this domain as a college student using a friend’s credit card. Twenty years later, it’s one of the best decisions I&amp;#39;ve ever made.&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: blakewatson.com turns 20 - blakewatson.com — I bought this domain as a college student using a friend’s credit card. Twenty years later, it’s one of the best decisions I&amp;#39;ve ever made.&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;blakewatson.com turns 20 - blakewatson.com&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;I bought this domain as a college student using a friend’s credit card. Twenty years later, it’s one of the best decisions I&amp;#39;ve ever made.&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;blakewatson.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;20 years is a long time to work on something, congrats Blake!  So many great links to small web creators, why, and how to build your own site.&lt;/p&gt;&#xA;&lt;p&gt;As algos turn to shit the small web remains a space that cannot be ruined.  There will always be rss feeds from real humans writing for other humans.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ Termix-SSH Termix</title>
    <id>https://waylonwalker.com/termix-ssh-termix/</id>
    <updated>2025-08-09T14:50:37Z</updated>
    <published>2025-08-09T14:50:37Z</published>
    <link href="https://waylonwalker.com/termix-ssh-termix/" rel="alternate" type="text/html"></link>
    <summary type="text">I recently discovered Termix by Termix-SSH, and it&#39;s truly impressive.</summary>
    <content type="html">&lt;p&gt;I recently discovered &lt;a href=&#34;https://github.com/Termix-SSH/Termix&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;Termix&lt;/a&gt; by &lt;a href=&#34;https://github.com/Termix-SSH&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;Termix-SSH&lt;/a&gt;, and it’s truly impressive.&lt;/p&gt;&#xA;&lt;p&gt;Termix is a web-based server management platform with SSH terminal, tunneling, and file editing capabilities.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 ThePrimeagen on X: &#34;there is literally no universe that this i...</title>
    <id>https://waylonwalker.com/thought-791/</id>
    <updated>2025-08-09T00:09:36Z</updated>
    <published>2025-08-09T00:09:36Z</published>
    <link href="https://waylonwalker.com/thought-791/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://x.com/ThePrimeagen/status/1953502301173244004</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://x.com/ThePrimeagen/status/1953502301173244004&#34; class=&#34;embed-card-link  has-avatar has-avatar-before&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/x.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/x.com.ico&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;External Link&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;X (formerly Twitter) · x.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;there is literally no universe that this is true&#xA;10k lines and its not bug filled crap?  ok Lex Luthor, its time to step away from the keys&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;p&gt;Is this 10k real production code?  Dry in the sense that it hasn’t re-implemented the same s3 api dozens of time?   What language are we talking something dense like python? something very verbose like &lt;a href=&#34;/html/&#34; class=&#34;glossary-term&#34; title=&#34;HTML (HyperText Markup Language) is the standard markup language used to create and design documents on the World Wide Web. It structures web content by...&#34;&gt;html&lt;/a&gt;? Maybe a language where you implement everything from scratch like lua.  This matters a lot.  Playing with little POC applications that dont mean anything I can quickly come up with 500-1k likes of code that I may never look at again.  I’m sure I can come up wtih 10k decent lines of code a day.&lt;/p&gt;&#xA;&lt;p&gt;But for the same application without duplicating everything over and over?  For something that moves the needle and really matters?? &lt;strong&gt;every single day&lt;/strong&gt;?? Consistently +10k, not 10k changes, not 10k deletes of yesterdays code. nah thats wack.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>2025-08-08 Notes</title>
    <id>https://waylonwalker.com/2025-08-08-notes/</id>
    <updated>2025-08-08T19:28:06Z</updated>
    <published>2025-08-08T19:28:06Z</published>
    <link href="https://waylonwalker.com/2025-08-08-notes/" rel="alternate" type="text/html"></link>
    <summary type="text">I found this post from miriam.codes while reading dbushell&#39;s notes. I kinda agree with Miriam and David here. AI is really making me feel like an old...</summary>
    <content type="html">&lt;h2 id=&#34;this-web-aint-what-it-used-to-be&#34;&gt;This Web ain’t what it used to be &lt;a href=&#34;#this-web-aint-what-it-used-to-be&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;I found this &lt;a href=&#34;https://bsky.app/profile/miriam.codes/post/3lvuib52f7222&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/bsky.app.png&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/bsky.app.png&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;post&lt;/a&gt;&#xA;from &lt;a href=&#34;https://miriam.codes&#34;&gt;miriam.codes&lt;/a&gt; while reading &lt;a href=&#34;https://dbushell.com/notes/2025-08-08T05:38Z/&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/dbushell.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/dbushell.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;dbushell’s&#xA;notes&lt;/a&gt;.  I kinda agree with&#xA;Miriam and David here.  AI is really making me feel like an old curmudgeon.&#xA;Every day it gets more enshitified, filled with more nonsense, more hate, more&#xA;“fake news” which all news gets labeled as these days, nothing is credible to&#xA;anyone anymore.&lt;/p&gt;&#xA;&lt;p&gt;What I’m here for is still plugging away at my own site, trying harder than&#xA;ever to find real people with real websites, who write real content that I&#xA;enjoy.  I’m going to continue staying in my lane, making notes that no one will&#xA;read, leaving thoughts no one will read, writing blog posts that might reach&#xA;10s of people who really care.&lt;/p&gt;&#xA;&lt;p&gt;YouTube still feels like a safe place.  I see more and  more &lt;a href=&#34;/ai-slop/&#34; class=&#34;glossary-term&#34; title=&#34;AI slop is unwanted AI content, generally shared by someone who did not review the output and is considered highly offensive and rude.&#34;&gt;AI slop&lt;/a&gt; popping up&#xA;and off, but it doesn’t hit my feed, happy for that so far.  I do see a lot of&#xA;creators using AI thumbnails, Most look obvious, but some feel like uncanny&#xA;faces of the people I follow and it’s weird.  I think I follow the exact&#xA;average of the 2025 YT watcher, I watch a handful of the top 100 channels, and&#xA;a bunch of sub 1M average joes.  These all feel like people just sharing their&#xA;story.  A lot of them have Orange County Choppers Season 1 vibes, we are just&#xA;making good content about trying to make it in the world.  They haven’t yet&#xA;descended into the madness that OCC became in its later seasons that was all&#xA;about building drama that tore the family apart.&lt;/p&gt;&#xA;&lt;h2 id=&#34;moss-knight-from-a-hrefhollow-knight-home-row-layout-classwikilink-data-titlehollow-knight-home-row-layout-data-descriptioni-just-made-it-past-100-in-my-main-hollow-knight-run-so-now-i-will-allow-myself-to-get-silksong-when-it-comes-out-i-did-this-with-a-little-bit-of-yt-data-date2025-05-05hollow-knight-home-row-layouta&#34;&gt;Moss Knight from &lt;a href=&#34;/hollow-knight-home-row-layout/&#34; class=&#34;wikilink&#34; data-title=&#34;hollow knight home row layout&#34; data-description=&#34;I just made it past 100% in my main hollow knight run, so now I will allow myself to get silksong when it comes out. I did this with a little bit of YT...&#34; data-date=&#34;2025-05-05&#34; data-preview=&#34;I just made it past 100% in my main hollow knight run, so now I will allow myself to get silksong when it comes out. I did this with a little bit of YT...&#34;&gt;hollow knight home row layout&lt;/a&gt; &lt;a href=&#34;#moss-knight-from-a-hrefhollow-knight-home-row-layout-classwikilink-data-titlehollow-knight-home-row-layout-data-descriptioni-just-made-it-past-100-in-my-main-hollow-knight-run-so-now-i-will-allow-myself-to-get-silksong-when-it-comes-out-i-did-this-with-a-little-bit-of-yt-data-date2025-05-05hollow-knight-home-row-layouta&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;I took a break for awhile on the game, my son got bored and moved on.  He tends&#xA;to switch out games a lot faster than me.  I came back to it tonight after a&#xA;few months off and just got some geo from the moss knights for awhile.  I got&#xA;this decent clip of clearing them, I’m no pro, but getting better at timing on&#xA;the keeb layout.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/d8571451-7a1e-4997-85eb-b5ce2cfdc209.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;hollow-knight-keeb-moss-knight.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/d8571451-7a1e-4997-85eb-b5ce2cfdc209.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/d8571451-7a1e-4997-85eb-b5ce2cfdc209.mp4&#34; type=&#34;video/mp4&#34;&gt;hollow-knight-keeb-moss-knight.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;cyberbrick-crane-progress&#34;&gt;Cyberbrick Crane Progress &lt;a href=&#34;#cyberbrick-crane-progress&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;Made some progress on the cyberbrick crane that I am building with Wyatt.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/038e01d4-d2c8-4635-83d2-43a04c076ab6.png&#34; class=&#34;glightbox-link&#34; aria-label=&#34;screenshot-2025-08-09T01-11-50-464Z.png&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/038e01d4-d2c8-4635-83d2-43a04c076ab6.png&#34; alt=&#34;screenshot-2025-08-09T01-11-50-464Z.png&#34;/ data-glightbox=&#34;description: screenshot-2025-08-09T01-11-50-464Z.png&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ nwg-piotr nwg-look</title>
    <id>https://waylonwalker.com/nwg-piotr-nwg-look/</id>
    <updated>2025-08-08T15:04:28Z</updated>
    <published>2025-08-08T15:04:28Z</published>
    <link href="https://waylonwalker.com/nwg-piotr-nwg-look/" rel="alternate" type="text/html"></link>
    <summary type="text">If you&#39;re into interesting projects, don&#39;t miss out on nwg-look, created by nwg-piotr.</summary>
    <content type="html">&lt;p&gt;If you’re into interesting projects, don’t miss out on &lt;a href=&#34;https://github.com/nwg-piotr/nwg-look&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;nwg-look&lt;/a&gt;, created by &lt;a href=&#34;https://github.com/nwg-piotr&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;nwg-piotr&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;GTK3 settings editor adapted to work in the wlroots environment&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 The Brutalist Report</title>
    <id>https://waylonwalker.com/thought-790/</id>
    <updated>2025-08-08T02:12:48Z</updated>
    <published>2025-08-08T02:12:48Z</published>
    <link href="https://waylonwalker.com/thought-790/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://brutalist.report/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://brutalist.report/&#34; class=&#34;embed-card-link  has-avatar has-avatar-before&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/brutalist.report.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/brutalist.report.ico&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;The Brutalist Report&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;The day&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;brutalist.report&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Discovered the Brutalist Report from &lt;a href=&#34;https://coding.garden/&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/coding.garden.png&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/coding.garden.png&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;CJ&lt;/a&gt; on &lt;a href=&#34;syntax.fm&#34;&gt;syntax.fm&lt;/a&gt; on their &lt;a href=&#34;https://syntax.fm/show/926/rss-is-not-dead&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/syntax.fm.png&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/syntax.fm.png&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;rss-is-not-dead&lt;/a&gt; episode.  The way he described it, I was like gnaw thats whack, not into it, but I had to check it out.  It’s actually great!  Except the political shit, I go to rss to get away from political finger pointing.  The Hacker News list is great, maybe I need to pay more attention to hacker news??&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Omarchy is on the move</title>
    <id>https://waylonwalker.com/thought-789/</id>
    <updated>2025-08-07T14:28:34Z</updated>
    <published>2025-08-07T14:28:34Z</published>
    <link href="https://waylonwalker.com/thought-789/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://world.hey.com/dhh/omarchy-is-on-the-move-8f848fa4</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://world.hey.com/dhh/omarchy-is-on-the-move-8f848fa4&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://world.hey.com/dhh/avatar-fb368b1ee9b185dc2a09b03eabdb61678dd55244&#34; alt=&#34;Omarchy is on the move — Omarchy has been improving at a furious pace. Since it was first released on June 26, I&amp;#39;ve pushed out 18(!) new releases together with a rapidly growing community of collaborators, users, and new-to-Linux enthusiasts. We have about 3,500 early adopters on the Omarchy Discord, 250 pull requests processed, and one heck of an awesome Arch...&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: Omarchy is on the move — Omarchy has been improving at a furious pace. Since it was first released on June 26, I&amp;#39;ve pushed out 18(!) new releases together with a rapidly growing community of collaborators, users, and new-to-Linux enthusiasts. We have about 3,500 early adopters on the Omarchy Discord, 250 pull requests processed, and one heck of an awesome Arch...&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Omarchy is on the move&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Omarchy has been improving at a furious pace. Since it was first released on June 26, I&amp;#39;ve pushed out 18(!) new releases together with a rapidly growing community of collaborators, users, and new-t...&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;world.hey.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;It’s facinating how many people are making the jump from mac/windows, not just to linux, not just to archlinux, but to a full on tiling window manager.  DHH has omakub and omarchy.  Omakub is advertised as easy and for beginners, but many are skipping right over that to go straight for the hard stuff.&lt;/p&gt;&#xA;&lt;p&gt;DHH mentions hyprland here, one thing I think he is missing is that this is the first real mainstream tiling window manager that is a competitor to i3, awesomewm, qtile  that runs Wayland.  I think they were able to pull a bunch of great benefits such as lack of screen tearing and animations from this.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 YouTube has earned its crown</title>
    <id>https://waylonwalker.com/thought-788/</id>
    <updated>2025-08-07T14:22:58Z</updated>
    <published>2025-08-07T14:22:58Z</published>
    <link href="https://waylonwalker.com/thought-788/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://world.hey.com/dhh/youtube-has-earned-its-crown-48f12ccc</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://world.hey.com/dhh/youtube-has-earned-its-crown-48f12ccc&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://world.hey.com/dhh/avatar-fb368b1ee9b185dc2a09b03eabdb61678dd55244&#34; alt=&#34;YouTube has earned its crown — I often give Google a lot of shit for shutting down services whenever they&amp;#39;re bored, hire a new executive, or face a three-day weekend. The company seems institutionally incapable of standing behind the majority of the products they launch for longer than a KPI cycle. But when the company does decide that something is pivotal to the bu...&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: YouTube has earned its crown — I often give Google a lot of shit for shutting down services whenever they&amp;#39;re bored, hire a new executive, or face a three-day weekend. The company seems institutionally incapable of standing behind the majority of the products they launch for longer than a KPI cycle. But when the company does decide that something is pivotal to the bu...&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;YouTube has earned its crown&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;I often give Google a lot of shit for shutting down services whenever they&amp;#39;re bored, hire a new executive, or face a three-day weekend. The company seems institutionally incapable of standing behin...&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;world.hey.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;I wonder how much of &lt;a href=&#34;https://killedbygoogle.com/&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/killedbygoogle.com.png&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/killedbygoogle.com.png&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;killed-by-google&lt;/a&gt; is due to is &lt;a href=&#34;https://thoughts.waylonwalker.com/post/787&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/thoughts.waylonwalker.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/thoughts.waylonwalker.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;20 percent time&lt;/a&gt;.  Allowing engineers to follow a passion project turns into a real product that doesn’t have full backing and support of the company.&lt;/p&gt;&#xA;&lt;p&gt;similar to DHH as much as I am hurt by reader and all of their privacy BS that comes from ad based revenue I appreciate YouTube and them supporting all of the creators on it.  Giving a platform for small creators the ability to sustain themselves and reach a larch audience without big coorporate rules.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 20 Percent Time – Ted Merz</title>
    <id>https://waylonwalker.com/thought-787/</id>
    <updated>2025-08-07T14:19:33Z</updated>
    <published>2025-08-07T14:19:33Z</published>
    <link href="https://waylonwalker.com/thought-787/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://ted-merz.com/2022/09/14/20-percent-time/?utm_source=chatgpt.com</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;/static/https://ted-merz.com/2022/09/14/20-percent-time/?utm_source=chatgpt.com&#34; class=&#34;glightbox-link&#34; aria-label=&#34;https://ted-merz.com/2022/09/14/20-percent-time/?utm_source=chatgpt.com&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;/static/https://ted-merz.com/2022/09/14/20-percent-time/?utm_source=chatgpt.com&#34; alt=&#34;https://ted-merz.com/2022/09/14/20-percent-time/?utm_source=chatgpt.com&#34;/ data-glightbox=&#34;description: https://ted-merz.com/2022/09/14/20-percent-time/?utm_source=chatgpt.com&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;p&gt;Googles 20 percent time is fascinating to me.  It seems like a great way for engineers to fill up their tank with new skills, passion projects, and the need to scratch an itch.  To me these days it feels like something that would incentivize good talent to join.&lt;/p&gt;&#xA;&lt;p&gt;I can remember back earlier in my career December and January were slow months for big companies.  Riddled with vacation and annual planning cycle.  I would use this time to create tools and libraries that would help me move quicker throughout the year.&lt;/p&gt;&#xA;&lt;p&gt;I clearly remember having a conversation with a colleague several salary grades ahead of me come mid February asking what I was up to.  I was furiously pecking away at some of these projects while he let me know that he had been waiting for this years plan for months and had no tasks from the boss.&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;That said, I don’t think any major tech company is going to adopt 20% time these days. It’s too chaotic, too hard to manage and impossible to measure.&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;p&gt;This line from Ted feels exactly why 20 percent time generally blows up and likely turns into another &lt;a href=&#34;https://killedbygoogle.com/&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/killedbygoogle.com.png&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/killedbygoogle.com.png&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;killed-by-google&lt;/a&gt; product that has a small user base and is furious about it being killed.  With enough of these at least one &lt;strong&gt;cough&lt;/strong&gt; &lt;em&gt;reader&lt;/em&gt; &lt;strong&gt;cough&lt;/strong&gt; has affected us all.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Blog @ tonsky.me</title>
    <id>https://waylonwalker.com/thought-786/</id>
    <updated>2025-08-06T20:35:25Z</updated>
    <published>2025-08-06T20:35:25Z</published>
    <link href="https://waylonwalker.com/thought-786/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://tonsky.me/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://tonsky.me/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://dynogee.com/gen?id=24m2qx9uethuw6p&amp;amp;title=That+yellow+website&#34; alt=&#34;Blog&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: Blog&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Blog&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;tonsky.me · tonsky.me&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Niki has one of the coolest yet simple personal sites that I have seen in a long time.  We need more of this on the internet!  hover over his face, try dark mode, submit personal data, there are so many really cool Easter eggs to discover!&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 We shouldn’t have needed lockfiles @ tonsky.me</title>
    <id>https://waylonwalker.com/thought-785/</id>
    <updated>2025-08-06T20:11:31Z</updated>
    <published>2025-08-06T20:11:31Z</published>
    <link href="https://waylonwalker.com/thought-785/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://tonsky.me/blog/lockfiles/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://tonsky.me/blog/lockfiles/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://dynogee.com/gen?id=24m2qx9uethuw6p&amp;amp;title=We+shouldn%E2%80%99t+have+needed+lockfiles&#34; alt=&#34;We shouldn’t have needed lockfiles — Lockfiles are an absolutely unnecessary concept that complicates things without a good reason. Dependency managers can and are working without it just the same.&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: We shouldn’t have needed lockfiles — Lockfiles are an absolutely unnecessary concept that complicates things without a good reason. Dependency managers can and are working without it just the same.&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;We shouldn’t have needed lockfiles&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Lockfiles are an absolutely unnecessary concept that complicates things without a good reason. Dependency managers can and are working without it just the same.&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;tonsky.me · tonsky.me&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;I wholeheartedly agree that packaging is broken, semver is broken, expecting much better from a system of oss that is built on top of volunteers, passion projects, nights and weekends is a fools errand.  With that I disagree that we we dont need lockfiles.  Maybe its Nikki’s experience in java and my lack that puts us on this opposite spectrum, but without lockfiles the world changes underneath us as we release.  One small change to your source can introduce a whole set of new features/bugs that you did not plan on without a good locking system.  It can also cause you to need to do dependency resolution at application build time and not ahead of time.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 I Will Fucking Piledrive You If You Mention AI Again — Ludicity</title>
    <id>https://waylonwalker.com/thought-784/</id>
    <updated>2025-08-06T16:39:28Z</updated>
    <published>2025-08-06T16:39:28Z</published>
    <link href="https://waylonwalker.com/thought-784/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://ludic.mataroa.blog/blog/i-will-fucking-piledrive-you-if-you-mention-ai-again/?ref=wheresyoured.at</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;/static/https://ludic.mataroa.blog/blog/i-will-fucking-piledrive-you-if-you-mention-ai-again/?ref=wheresyoured.at&#34; class=&#34;glightbox-link&#34; aria-label=&#34;https://ludic.mataroa.blog/blog/i-will-fucking-piledrive-you-if-you-mention-ai-again/?ref=wheresyoured.at&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;/static/https://ludic.mataroa.blog/blog/i-will-fucking-piledrive-you-if-you-mention-ai-again/?ref=wheresyoured.at&#34; alt=&#34;https://ludic.mataroa.blog/blog/i-will-fucking-piledrive-you-if-you-mention-ai-again/?ref=wheresyoured.at&#34;/ data-glightbox=&#34;description: https://ludic.mataroa.blog/blog/i-will-fucking-piledrive-you-if-you-mention-ai-again/?ref=wheresyoured.at&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;p&gt;Fantastic write up on their experience in ai, opinions on ai being a hoax with a veil of reasonable usefulness.  Arguing that most people do not understand enough to see the difference, and thought leaders see where it is now, see where it was yesterday, it must be going to general intelligence tomorrow and you all will loose your jobs without this.  I appreciate the satirical language here.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 DHH: Future of Programming, AI, Ruby on Rails, Productivity &amp; ...</title>
    <id>https://waylonwalker.com/thought-783/</id>
    <updated>2025-08-06T01:22:39Z</updated>
    <published>2025-08-06T01:22:39Z</published>
    <link href="https://waylonwalker.com/thought-783/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/clip/UgkxskUJsmJ6E7KVPyPdn1jy1WZQerR-L1Bm</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;vagyIcmIGOQ&#34; title=&#34;✂️ DHH ai competence&#34; playlabel=&#34;Play: ✂️ DHH ai competence&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Letting Ai drive code feels like giving up so much control.  It feels like its leaving so many brain cycles open for other things, yet its not quite good enough to do production level things on its own, so we must watch it, we must review it, yet its code can be some of the worst to review left unattended.  I’m feeling this right now as I’m avoiding writing a bit of js that I could probably do myself.  Some day this is likely to flip, and it will get better and we will spend our brain cycles thinking about architecture, security, marketing, big picture ideas about the problem we are trying to solve, but we are not yet there and as long as we still need to review I find it a much more pleasant workflow to have in a separate window than have it change the whole fucking project for a simple change.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 A quote from greyduet on r/teachers</title>
    <id>https://waylonwalker.com/thought-782/</id>
    <updated>2025-08-05T16:01:16Z</updated>
    <published>2025-08-05T16:01:16Z</published>
    <link href="https://waylonwalker.com/thought-782/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://simonwillison.net/2025/Aug/5/greyduet-on-rteachers/#atom-everything</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://simonwillison.net/2025/Aug/5/greyduet-on-rteachers/#atom-everything&#34; class=&#34;embed-card-link  has-avatar has-avatar-before&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/simonwillison.net.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/simonwillison.net.ico&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;A quote from greyduet on r/teachers&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;I teach HS Science in the south. I can only speak for my district, but a few teacher work days in the wave of enthusiasm I&amp;#39;m seeing for AI tools …&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;Simon Willison’s Weblog · simonwillison.net&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Woof, ai is sucking the soul from everything, being forced onto teachers who don’t want or care about it and are simply sharing ai-slop to their kids without giving it much thought.  remember that it is &lt;a href=&#34;https://distantprovince.by/posts/its-rude-to-show-ai-output-to-people/&#34;&gt;rude&lt;/a&gt; to share ai-slop with others that you have not vetted, It’s next level to turn this into teaching material for children who are forced into your classroom and have no choice about the matter, you should be ashamed.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>2025-08-05 Notes</title>
    <id>https://waylonwalker.com/2025-08-05-notes/</id>
    <updated>2025-08-05T09:00:57Z</updated>
    <published>2025-08-05T09:00:57Z</published>
    <link href="https://waylonwalker.com/2025-08-05-notes/" rel="alternate" type="text/html"></link>
    <summary type="text">Yesterday I started building out some qrcode tooling for myself starting with qrcode.waylonwalker.com. This is part of my tinyapps project.</summary>
    <content type="html">&lt;p&gt;Yesterday I started building out some qrcode tooling for myself starting with&#xA;&lt;a href=&#34;https://qrcode.waylonwalker.com/&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/qrcode.waylonwalker.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/qrcode.waylonwalker.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;qrcode.waylonwalker.com&lt;/a&gt;.  This is part of&#xA;my &lt;a href=&#34;/tinyapps/&#34; class=&#34;wikilink&#34; data-title=&#34;tinyapps&#34; data-description=&#34;I&amp;#39;m working on replacing my usage of google inline search apps with real apps, these are ones that I create and host on my own homelab. The first three that...&#34; data-date=&#34;2025-05-22&#34; data-preview=&#34;I&amp;#39;m working on replacing my usage of google inline search apps with real apps, these are ones that I create and host on my own homelab. The first three that...&#34;&gt;tinyapps&lt;/a&gt; project.&lt;/p&gt;&#xA;&lt;p&gt;Also dug into &lt;a href=&#34;/qr-codes-in-python/&#34; class=&#34;wikilink&#34; data-title=&#34;qr codes in python&#34; data-description=&#34;I have a couple of use cases for simple qr codes in python coming up. One is for blog posts, the other is for auth into a new server application logged to a...&#34; data-date=&#34;2025-08-05&#34; data-preview=&#34;I have a couple of use cases for simple qr codes in python coming up. One is for blog posts, the other is for auth into a new server application logged to a...&#34;&gt;qr codes in python&lt;/a&gt; to try to get some easy and small&#xA;qrcodes that I could add to my blog posts for others who find a post on desktop&#xA;and want to open on mobile.&lt;/p&gt;&#xA;&lt;p&gt;This is what I am going for with qrcodes on my blog posts.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/29b54d73-d4bc-4505-85f4-1b303f7e7bcc.png&#34; class=&#34;glightbox-link&#34; aria-label=&#34;screenshot-2025-08-05T14-45-25-598Z.png&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/29b54d73-d4bc-4505-85f4-1b303f7e7bcc.png&#34; alt=&#34;screenshot-2025-08-05T14-45-25-598Z.png&#34;/ data-glightbox=&#34;description: screenshot-2025-08-05T14-45-25-598Z.png&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;p&gt;If you want fancier qrcodes check out &lt;a href=&#34;https://mydigitalharbor.com/&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/mydigitalharbor.com.png&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/mydigitalharbor.com.png&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;https://mydigitalharbor.com/&lt;/a&gt;&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>qr codes in python</title>
    <id>https://waylonwalker.com/qr-codes-in-python/</id>
    <updated>2025-08-05T08:32:12Z</updated>
    <published>2025-08-05T08:32:12Z</published>
    <link href="https://waylonwalker.com/qr-codes-in-python/" rel="alternate" type="text/html"></link>
    <summary type="text">I have a couple of use cases for simple qr codes in python coming up. One is for blog posts, the other is for auth into a new server application logged to a...</summary>
    <content type="html">&lt;p&gt;I have a couple of use cases for simple qr codes in python coming up.  One is&#xA;for blog posts, the other is for auth into a new server application logged to a&#xA;terminal.  I tried the &lt;a href=&#34;https://pypi.org/project/qrcode/&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/pypi.org.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/pypi.org.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;&lt;code&gt;qrcode&lt;/code&gt;&lt;/a&gt; library&#xA;and it does not look as nice to me and I found&#xA;&lt;a href=&#34;https://pypi.org/project/pyqrcode/&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/pypi.org.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/pypi.org.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;&lt;code&gt;pyqrcode&lt;/code&gt;&lt;/a&gt; to be quite nice.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;import pyqrcode&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nv&#34;&gt;url&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; pyqrcode.create&lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;https://waylonwalker.com/qr-codes-in-python&amp;#39;&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;url.svg&lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;qr-codes-in-python.svg&amp;#39;&lt;/span&gt;, &lt;span class=&#34;nv&#34;&gt;scale&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;8&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;print&lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;url.terminal&lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;quiet_zone&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;1&lt;span class=&#34;o&#34;&gt;))&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;url.svg&lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;qr-codes-in-python.svg&amp;#39;&lt;/span&gt;, &lt;span class=&#34;nv&#34;&gt;scale&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;12&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;url.svg&lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;qr-codes-in-python.svg&amp;#39;&lt;/span&gt;, &lt;span class=&#34;nv&#34;&gt;omithw&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;True&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; &lt;span class=&#34;c1&#34;&gt;# width is controlled by the container&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;url.svg&lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;qr-codes-in-python.svg&amp;#39;&lt;/span&gt;, &lt;span class=&#34;nv&#34;&gt;omithw&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;True, &lt;span class=&#34;nv&#34;&gt;module_color&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;#ffd119&amp;#39;&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;url.svg&lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;qr-codes-in-python.svg&amp;#39;&lt;/span&gt;, &lt;span class=&#34;nv&#34;&gt;omithw&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;True, &lt;span class=&#34;nv&#34;&gt;module_color&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;#ff69b4&amp;#39;&lt;/span&gt;, &lt;span class=&#34;nv&#34;&gt;background&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;#2b034c&amp;#39;&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;h2 id=&#34;result&#34;&gt;result &lt;a href=&#34;#result&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;Here is the final svg result.&lt;/p&gt;&#xA;&lt;!--?xml version=&#34;1.0&#34; encoding=&#34;UTF-8&#34;?--&gt;&#xA;&lt;p&gt;&lt;svg xmlns=&#34;http://www.w3.org/2000/svg&#34; viewBox=&#34;0 0 45 45&#34; class=&#34;pyqrcode&#34;&gt;&lt;path fill=&#34;#2b034c&#34; d=&#34;M0 0h45v45h-45z&#34;&gt;&lt;/path&gt;&lt;path stroke=&#34;#ff69b4&#34; class=&#34;pyqrline&#34; d=&#34;M4 4.5h7m2 0h1m1 0h3m3 0h3m5 0h2m3 0h7m-37 1h1m5 0h1m1 0h2m3 0h1m3 0h1m2 0h2m2 0h2m2 0h1m1 0h1m5 0h1m-37 1h1m1 0h3m1 0h1m1 0h1m2 0h2m1 0h2m1 0h1m1 0h1m1 0h1m2 0h2m2 0h1m1 0h1m1 0h3m1 0h1m-37 1h1m1 0h3m1 0h1m1 0h1m1 0h1m2 0h1m1 0h2m1 0h1m3 0h6m2 0h1m1 0h3m1 0h1m-37 1h1m1 0h3m1 0h1m1 0h1m1 0h1m1 0h2m1 0h1m2 0h1m1 0h2m1 0h1m2 0h1m1 0h1m1 0h1m1 0h3m1 0h1m-37 1h1m5 0h1m1 0h5m2 0h1m2 0h1m3 0h1m1 0h1m3 0h1m1 0h1m5 0h1m-37 1h7m1 0h1m1 0h1m1 0h1m1 0h1m1 0h1m1 0h1m1 0h1m1 0h1m1 0h1m1 0h1m1 0h1m1 0h7m-27 1h2m1 0h1m1 0h1m4 0h3m4 0h2m-27 1h1m2 0h5m2 0h2m1 0h4m1 0h5m3 0h2m1 0h5m-36 1h1m7 0h2m2 0h1m1 0h5m4 0h3m1 0h5m1 0h2m1 0h1m-37 1h2m1 0h1m2 0h6m1 0h7m1 0h1m1 0h2m2 0h4m1 0h1m1 0h1m1 0h1m-37 1h1m1 0h1m2 0h1m1 0h1m2 0h3m1 0h1m2 0h2m1 0h1m1 0h2m2 0h1m1 0h1m2 0h3m1 0h2m-34 1h1m2 0h1m2 0h1m1 0h1m3 0h1m1 0h1m1 0h2m3 0h1m2 0h2m1 0h1m2 0h1m1 0h2m-33 1h1m3 0h2m1 0h2m1 0h4m2 0h3m1 0h1m1 0h6m2 0h1m1 0h1m-37 1h1m1 0h1m1 0h6m1 0h1m1 0h1m1 0h2m1 0h4m3 0h1m1 0h1m2 0h1m2 0h2m1 0h1m-35 1h1m1 0h2m1 0h3m1 0h2m1 0h1m1 0h1m1 0h3m3 0h1m1 0h1m1 0h6m1 0h1m-36 1h1m3 0h1m1 0h1m4 0h2m6 0h1m1 0h2m5 0h1m1 0h1m4 0h1m-36 1h4m3 0h3m2 0h1m1 0h3m3 0h1m1 0h1m1 0h5m1 0h2m1 0h2m1 0h1m-35 1h1m2 0h2m1 0h2m2 0h3m8 0h2m2 0h5m1 0h2m1 0h1m-35 1h4m1 0h1m1 0h1m1 0h1m1 0h1m7 0h2m1 0h1m1 0h1m1 0h2m1 0h3m1 0h2m-37 1h3m1 0h3m1 0h1m1 0h2m3 0h1m1 0h3m2 0h1m1 0h1m3 0h1m1 0h1m2 0h1m1 0h1m-36 1h1m1 0h2m1 0h1m4 0h1m2 0h1m1 0h2m1 0h1m2 0h1m1 0h1m1 0h1m1 0h1m1 0h3m1 0h2m1 0h1m-37 1h1m1 0h1m1 0h1m1 0h1m2 0h2m1 0h4m1 0h3m1 0h3m3 0h6m2 0h2m-35 1h2m1 0h1m1 0h2m1 0h2m3 0h3m4 0h1m3 0h2m3 0h1m1 0h1m1 0h2m-37 1h4m1 0h2m4 0h2m1 0h4m1 0h1m4 0h1m5 0h2m1 0h1m1 0h2m-36 1h3m3 0h5m1 0h1m1 0h1m1 0h1m1 0h2m1 0h1m1 0h1m2 0h4m3 0h1m1 0h1m-37 1h4m1 0h2m1 0h3m1 0h1m3 0h3m2 0h1m2 0h1m2 0h1m1 0h3m2 0h1m1 0h1m-33 1h1m6 0h1m2 0h6m2 0h3m1 0h1m2 0h5m2 0h1m-37 1h5m1 0h6m1 0h1m6 0h1m1 0h1m5 0h6m-26 1h1m1 0h1m1 0h1m1 0h1m2 0h2m2 0h1m1 0h2m3 0h1m3 0h2m1 0h2m-37 1h7m1 0h1m1 0h5m2 0h2m1 0h1m1 0h2m2 0h1m1 0h1m1 0h1m1 0h3m1 0h1m-37 1h1m5 0h1m1 0h2m1 0h1m1 0h1m1 0h2m2 0h2m3 0h1m3 0h1m3 0h2m1 0h1m-36 1h1m1 0h3m1 0h1m3 0h1m2 0h1m2 0h2m1 0h3m1 0h2m1 0h7m2 0h2m-37 1h1m1 0h3m1 0h1m4 0h1m2 0h2m1 0h1m1 0h1m1 0h1m6 0h1m3 0h3m1 0h1m-37 1h1m1 0h3m1 0h1m1 0h1m1 0h1m1 0h4m1 0h1m1 0h7m1 0h2m2 0h2m2 0h2m-37 1h1m5 0h1m3 0h4m1 0h2m2 0h2m1 0h3m3 0h1m2 0h1m1 0h1m-34 1h7m4 0h2m1 0h1m3 0h2m4 0h1m3 0h1m1 0h1m2 0h1m2 0h1&#34;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/p&gt;&#xA;&lt;p&gt;Here is what it looks like in the terminal.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/c644bd34-b5da-48a3-b6cf-c89efb546114.png&#34; class=&#34;glightbox-link&#34; aria-label=&#34;screenshot-2025-08-05T13-53-17-368Z.png&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/c644bd34-b5da-48a3-b6cf-c89efb546114.png&#34; alt=&#34;screenshot-2025-08-05T13-53-17-368Z.png&#34;/ data-glightbox=&#34;description: screenshot-2025-08-05T13-53-17-368Z.png&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;p&gt;If you want fancier qrcodes check out &lt;a href=&#34;https://mydigitalharbor.com/&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/mydigitalharbor.com.png&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/mydigitalharbor.com.png&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;https://mydigitalharbor.com/&lt;/a&gt;&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Colors • Pico CSS</title>
    <id>https://waylonwalker.com/thought-780/</id>
    <updated>2025-08-04T14:58:33Z</updated>
    <published>2025-08-04T14:58:33Z</published>
    <link href="https://waylonwalker.com/thought-780/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://picocss.com/docs/colors</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://picocss.com/docs/colors&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://picocss.com/opengraph.png&#34; alt=&#34;Colors • Pico CSS — Pico comes with 380 manually crafted colors to help you personalize your brand design system.&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: Colors • Pico CSS — Pico comes with 380 manually crafted colors to help you personalize your brand design system.&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Colors • Pico CSS&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Pico comes with 380 manually crafted colors to help you personalize your brand design system.&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;Pico CSS · picocss.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;A great alternative to tailwind colors that has everything defined in one colors file for only 0.3kb.  it feels well worth the weight if you are trying to skip a build step or avoid npm/node.  It has even more colors than tailwind.  I appreciate that there is a grey palette that is fully desaturated.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 rushter/selectolax: Python binding to Modest and Lexbor engine...</title>
    <id>https://waylonwalker.com/thought-779/</id>
    <updated>2025-08-04T13:52:15Z</updated>
    <published>2025-08-04T13:52:15Z</published>
    <link href="https://waylonwalker.com/thought-779/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://github.com/rushter/selectolax</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://github.com/rushter/selectolax&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://opengraph.githubassets.com/9199729e95e27b97c02ce2cc54672d3afe4067293fa8dfd35a444bb8cfa1bbca/rushter/selectolax&#34; alt=&#34;GitHub - rushter/selectolax: Python binding to Modest and Lexbor engines. Fast HTML5 parser with CSS selectors for Python. — Python binding to Modest and Lexbor engines. Fast HTML5 parser with CSS selectors for Python. - rushter/selectolax&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: GitHub - rushter/selectolax: Python binding to Modest and Lexbor engines. Fast HTML5 parser with CSS selectors for Python. — Python binding to Modest and Lexbor engines. Fast HTML5 parser with CSS selectors for Python. - rushter/selectolax&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;GitHub - rushter/selectolax: Python binding to Modest and Lexbor engines. Fast HTML5 parser with CSS selectors for Python.&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Python binding to Modest and Lexbor engines. Fast HTML5 parser with CSS selectors for Python. - rushter/selectolax&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;GitHub · github.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Selectolax you have my attention!  I will be giving this a try for markata which often suffers from slow beautifulsoup.  It appears to have everything I need for my simple use cases.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/b5d8930f-59e0-4947-9500-717f66ce33dc.png&#34; class=&#34;glightbox-link&#34; aria-label=&#34;screenshot-2025-08-04T13-46-04-068Z.png&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/b5d8930f-59e0-4947-9500-717f66ce33dc.png&#34; alt=&#34;screenshot-2025-08-04T13-46-04-068Z.png&#34;/ data-glightbox=&#34;description: screenshot-2025-08-04T13-46-04-068Z.png&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ rushter selectolax</title>
    <id>https://waylonwalker.com/rushter-selectolax/</id>
    <updated>2025-08-04T13:45:54Z</updated>
    <published>2025-08-04T13:45:54Z</published>
    <link href="https://waylonwalker.com/rushter-selectolax/" rel="alternate" type="text/html"></link>
    <summary type="text">If you&#39;re into interesting projects, don&#39;t miss out on selectolax, created by rushter.</summary>
    <content type="html">&lt;p&gt;If you’re into interesting projects, don’t miss out on &lt;a href=&#34;https://github.com/rushter/selectolax&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;selectolax&lt;/a&gt;, created by &lt;a href=&#34;https://github.com/rushter&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;rushter&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Python binding to Modest and Lexbor engines (fast HTML5 parser with CSS selectors).&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ rqlite rqlite</title>
    <id>https://waylonwalker.com/rqlite-rqlite/</id>
    <updated>2025-08-04T01:17:07Z</updated>
    <published>2025-08-04T01:17:07Z</published>
    <link href="https://waylonwalker.com/rqlite-rqlite/" rel="alternate" type="text/html"></link>
    <summary type="text">I like rqlite&#39;s project rqlite.</summary>
    <content type="html">&lt;p&gt;I like &lt;a href=&#34;https://github.com/rqlite&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;rqlite’s&lt;/a&gt; project &lt;a href=&#34;https://github.com/rqlite/rqlite&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;rqlite&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;The lightweight, user-friendly, distributed relational database built on SQLite.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 How To Build The Tallest Building In Town</title>
    <id>https://waylonwalker.com/thought-776/</id>
    <updated>2025-08-02T15:04:49Z</updated>
    <published>2025-08-02T15:04:49Z</published>
    <link href="https://waylonwalker.com/thought-776/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://garyvaynerchuk.com/build-the-tallest-building-in-town/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://garyvaynerchuk.com/build-the-tallest-building-in-town/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://garyvaynerchuk.com/wp-content/uploads/2020/06/Artboard-1.jpg&#34; alt=&#34;How To Build The Tallest Building In Town — There are two ways you can build the tallest building in town. Once you understand this, things get really good.&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: How To Build The Tallest Building In Town — There are two ways you can build the tallest building in town. Once you understand this, things get really good.&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;How To Build The Tallest Building In Town&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;There are two ways you can build the tallest building in town. Once you understand this, things get really good.&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;Gary Vaynerchuk · garyvaynerchuk.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Have some positivity!  “Just Build the Tallest Fucking Building” is one of my favorite Gary Vee quotes.  Build good community, bring others up, and stop tearing everyone down, listen to the vid.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Meet Gor | I kind of hate Agentic IDEs for the sake of product...</title>
    <id>https://waylonwalker.com/thought-775/</id>
    <updated>2025-08-02T15:00:38Z</updated>
    <published>2025-08-02T15:00:38Z</published>
    <link href="https://waylonwalker.com/thought-775/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.meetgor.com/thoughts/i-kind-of-hate-agentic-ides-for-the-sake-of-productivity/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://www.meetgor.com/thoughts/i-kind-of-hate-agentic-ides-for-the-sake-of-productivity/&#34; class=&#34;embed-card-link  has-avatar has-avatar-before&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/www.meetgor.com.png&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/www.meetgor.com.png&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;External Link&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;meetgor.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;Yes, I can review the code and make changes, but who in the world loves reviewing code? Do you love reviewing peers’ PRs? really?&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;p&gt;I’m with MeetGor here 100%. reviewing the nuance, not being as involved with the process of creating the architecture design, not solving the problems that arise in development make it hard to effectively review and not turn into LGTM man.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Dolphin Remote Storage Previews</title>
    <id>https://waylonwalker.com/dolphin-remote-storage-previews/</id>
    <updated>2025-08-02T14:58:09Z</updated>
    <published>2025-08-02T14:58:09Z</published>
    <link href="https://waylonwalker.com/dolphin-remote-storage-previews/" rel="alternate" type="text/html"></link>
    <summary type="text">I&#39;ve got a few samba shares going in my homelab, and I&#39;m struggling finding a great app to scroll through vacation photos with my wife. I want something...</summary>
    <content type="html">&lt;p&gt;I’ve got a few samba shares going in my &lt;a href=&#34;/homelab/&#34; class=&#34;glossary-term&#34; title=&#34;A place to self host applications. For me this is primarily self built web applications, and applications for sharing files with my family. Techno Tim has a...&#34;&gt;homelab&lt;/a&gt;, and I’m struggling finding a&#xA;great app to scroll through vacation photos with my wife.  I want something&#xA;intuitive, non intimidating, and just works.  Turns out that the default file&#xA;browser application for hyprland works great, but you need to enable previews&#xA;for remote storage for it to work for my use case here.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/3940267e-3727-4e7b-8f7f-aebb49d79326.png&#34; class=&#34;glightbox-link&#34; aria-label=&#34;3940267e-3727-4e7b-8f7f-aebb49d79326.png&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/3940267e-3727-4e7b-8f7f-aebb49d79326.png&#34; alt=&#34;3940267e-3727-4e7b-8f7f-aebb49d79326.png&#34;/ data-glightbox=&#34;description: 3940267e-3727-4e7b-8f7f-aebb49d79326.png&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Meet Gor | Just Fucking use kubernetes</title>
    <id>https://waylonwalker.com/thought-774/</id>
    <updated>2025-08-02T14:53:45Z</updated>
    <published>2025-08-02T14:53:45Z</published>
    <link href="https://waylonwalker.com/thought-774/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.meetgor.com/thoughts/just-fucking-use-kubernetes/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://www.meetgor.com/thoughts/just-fucking-use-kubernetes/&#34; class=&#34;embed-card-link  has-avatar has-avatar-before&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/www.meetgor.com.png&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/www.meetgor.com.png&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;External Link&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;meetgor.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;Sometimes, all you need is a mindset shift, a blocker in your mind that holds you back from doing certain things. And for me, I have consumed enough tutorials and posts about Kubernetes, that I need to put to use and create. I have been stuck in the learning cycle, lets push to prod with kubernetes.&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;p&gt;This hurts.  I know others with this learning style that need to see the full picture before actually doing something with new tech.  The way I first got into kubernetes I was looking for the easy route and somehow k8s came up several times as a suggested route &lt;a href=&#34;/looking-for-a-heroku-replacement/&#34; class=&#34;wikilink&#34; data-title=&#34;Looking for a Heroku replacement, What I found was shocking!&#34; data-description=&#34;Your browser does not support the audio element.&#34; data-date=&#34;2023-12-04&#34; data-preview=&#34;Your browser does not support the audio element.&#34;&gt;Looking for a Heroku replacement, What I found was shocking!&lt;/a&gt;, So I dove in head first with &lt;a href=&#34;https://k3s.io/&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/k3s.io.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/k3s.io.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;k3s&lt;/a&gt; and &lt;a href=&#34;https://kompose.io/&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/kompose.io.png&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/kompose.io.png&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;kompose&lt;/a&gt;.  What I found was that it was not all that hard once you start to see how the pieces fit together, no amount of reading tutorials would have gotten me there.&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;Does anyone care if you use simple yet fragile bash scripts or heavy weight Kubernetes cluster for just clicking buttons and creating and updating rows in a database? No!&lt;/p&gt;&#xA;&lt;p&gt;You know what, let’s fucking use Kubernetes.&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;p&gt;Let’s Gooo.  Use what is right for you and stop parroting kubernets is hard, heavy, for big companies, maybe actually try it first.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Quoting Meet Gor | Kubernetes isn&#39;t for you</title>
    <id>https://waylonwalker.com/thought-773/</id>
    <updated>2025-08-02T14:44:18Z</updated>
    <published>2025-08-02T14:44:18Z</published>
    <link href="https://waylonwalker.com/thought-773/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.meetgor.com/thoughts/kubernetes-isn-t-for-you/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://www.meetgor.com/thoughts/kubernetes-isn-t-for-you/&#34; class=&#34;embed-card-link  has-avatar has-avatar-before&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/www.meetgor.com.png&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/www.meetgor.com.png&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;External Link&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;meetgor.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;If you want to use it for the purpose of learning it, please do use it.&lt;/p&gt;&#xA;&lt;p&gt;Kubernetes as usual is a tool like others, you can’t use one tool everywhere. Where bash scripts work, they just work, where they don’t they fall apart too, kubernetes works like a charm.&lt;/p&gt;&#xA;&lt;p&gt;Use your grug brains a little and choose wisely! In the end, who the hell cares if you use kubernetes or bash scripts to scale if your users are happy?&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;p&gt;Well Said!&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Kubernetes Isn&#39;t for You</title>
    <id>https://waylonwalker.com/thought-772/</id>
    <updated>2025-08-02T14:40:42Z</updated>
    <published>2025-08-02T14:40:42Z</published>
    <link href="https://waylonwalker.com/thought-772/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://sliplane.io/blog/kubernetes-isnt-for-you</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://sliplane.io/blog/kubernetes-isnt-for-you&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://sliplane-frontend.sliplane.app/images/blog/kubernetes-isnt-for-you/kubernetes-isnt-for-you.webp&#34; alt=&#34;Kubernetes Isn — Kubernetes isn&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: Kubernetes Isn — Kubernetes isn&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Kubernetes Isn&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Kubernetes isn&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;sliplane.io&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;This post feels like it was written by someone who has never tried kubernetes, someone who reads twitter, listens to t3.gg and thePrimeagen (who cant even container let alone kubernetes).  If you cant run linux, use bash, build your own docker images, run docker comfortably.  If infra is not your thing kubernetes is probably not for you.&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;Kubernetes Was Built for Google&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;p&gt;Just like how react was built for facebook to solve facebook problems with many teams contributing effectively to the same interactive interfaces.  Turns out that react is actually a pretty good product if you have a highly interactive page, and if this is your bread and butter, you can make overly heavy static sites with too much build very effectively.  It works and runs much of the internet now.&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;We are getting serious. We need serious tools.&#xA;Big companies use Kubernetes. We should too.&#xA;It feels more professional. It sounds like we know what we are doing.&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;p&gt;If anyone uses these reasons to pitch kubernetes to me they don’t belong in a position to make any sort of decision.  The first one could be a heading with maybe something under it.&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;But Kubernetes should not be your first infrastructure step. It should be a response to real pain, not an emotional milestone&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;p&gt;As with anything, &lt;strong&gt;it depends&lt;/strong&gt;!  Keeping with the react example, if you have a team with these skills its a solid choice, maybe its overkill, but you got this skills to start here then go for it.&lt;/p&gt;&#xA;&lt;hr/&gt;&#xA;&lt;p&gt;If you have never given something a real shot then don’t be writing articles shitting on the tech.  Actually if you do not have a deep expertise in it you probably should not be writing articles shitting on other tech.  If you are the CEO of an alternative, you definitely should not be writing articles shitting on your competition.  &lt;a href=&#34;https://garyvaynerchuk.com/build-the-tallest-building-in-town/&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/garyvaynerchuk.com.jpg&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/garyvaynerchuk.com.jpg&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt; just build the biggest fucking building in town &lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;If you are kube curios give kind and kompose a try, you will be surprised at how quickly you can get something up and running in kubernetes.  You might be surprised at how easy it is to remotely manage, add gitops workflows with &lt;a href=&#34;https://argoproj.github.io/cd/&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/argoproj.github.io.png&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/argoproj.github.io.png&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;argocd&lt;/a&gt;.  Give &lt;a href=&#34;https://k9scli.io/&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/k9scli.io.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/k9scli.io.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;k9s&lt;/a&gt; a try and you can see all of your nodes, services, ingress, pvcs, EVERYTHING you have deployed and its status in one easy to use TUI.&lt;/p&gt;&#xA;&lt;p&gt;I avoided kubernetes for a long time because articles like this told me to and I never gave it a fair try.&lt;/p&gt;&#xA;&lt;p&gt;Check out &lt;a href=&#34;/just-fucking-use-kubernetes/&#34; class=&#34;wikilink&#34; data-title=&#34;just fucking use kubernetes&#34; data-description=&#34;You want to run containers?&#34; data-date=&#34;2025-07-01&#34; data-preview=&#34;You want to run containers?&#34;&gt;just fucking use kubernetes&lt;/a&gt; for a satirical opposite take.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 csi-driver-smb/deploy/example/smb-provisioner at master · kube...</title>
    <id>https://waylonwalker.com/thought-771/</id>
    <updated>2025-08-01T19:50:39Z</updated>
    <published>2025-08-01T19:50:39Z</published>
    <link href="https://waylonwalker.com/thought-771/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://github.com/kubernetes-csi/csi-driver-smb/tree/master/deploy/example/smb-provisioner</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://github.com/kubernetes-csi/csi-driver-smb/tree/master/deploy/example/smb-provisioner&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://opengraph.githubassets.com/8c71a875477c9cc01a32b755332f230dc8f55d2b13d4f1021ca730fc73310719/kubernetes-csi/csi-driver-smb&#34; alt=&#34;csi-driver-smb/deploy/example/smb-provisioner at master · kubernetes-csi/csi-driver-smb — This driver allows Kubernetes to access SMB Server on both Linux and Windows nodes. - kubernetes-csi/csi-driver-smb&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: csi-driver-smb/deploy/example/smb-provisioner at master · kubernetes-csi/csi-driver-smb — This driver allows Kubernetes to access SMB Server on both Linux and Windows nodes. - kubernetes-csi/csi-driver-smb&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;csi-driver-smb/deploy/example/smb-provisioner at master · kubernetes-csi/csi-driver-smb&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;This driver allows Kubernetes to access SMB Server on both Linux and Windows nodes. - kubernetes-csi/csi-driver-smb&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;GitHub · github.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Great guide to setting up a samba server right in kubernetes.  I tried it out after too long of playing with trying to get connected to a samba share on ucore, no idea what was wrong, but this just works, and will live in my &lt;a href=&#34;/homelab/&#34; class=&#34;glossary-term&#34; title=&#34;A place to self host applications. For me this is primarily self built web applications, and applications for sharing files with my family. Techno Tim has a...&#34;&gt;homelab&lt;/a&gt; no matter what distro I’m on, no playbook required to set it up, just good ol k8s manifest.  TBH I cheated and haven’t set up the secrets yet, so its not quite in argocd or in my github repo, but POC is there and it works as advertised without issue.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 DHH on X: &#34;You have all the time you need, you&#39;re just spendin...</title>
    <id>https://waylonwalker.com/thought-769/</id>
    <updated>2025-07-31T00:56:40Z</updated>
    <published>2025-07-31T00:56:40Z</published>
    <link href="https://waylonwalker.com/thought-769/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://x.com/dhh/status/1950462181331349688</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://x.com/dhh/status/1950462181331349688&#34; class=&#34;embed-card-link  has-avatar has-avatar-before&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/x.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/x.com.ico&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;External Link&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;X (formerly Twitter) · x.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;The message so many of us need to hear, stop scrolling and start creating.  I’m not sure that I have a heavy issue with this, I barely scroll the socials anymore, I have my own rss reader curated with people that I enjoy consuming from.  YT is often done as a family activity (with my wife) or listening while doing something like dishes.  But I think I’ve been on the other side of this for awhile.  There’s something that ticks my brain by twiddling with linux nonsensically or &lt;code&gt;pip install thing-i-heard-about-today&lt;/code&gt; and try it.  I’m not imune  though, I often fill gaps in the day with nonsense short content, but try to avoid the short trap.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Rewriting alt-tab to save 0.1s - YouTube</title>
    <id>https://waylonwalker.com/thought-768/</id>
    <updated>2025-07-28T12:46:30Z</updated>
    <published>2025-07-28T12:46:30Z</published>
    <link href="https://waylonwalker.com/thought-768/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://youtu.be/RG69PCAslA0?si=ZogGDP9TOI6gDcMM</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;RG69PCAslA0&#34; title=&#34;Rewriting Alt-Tab To Save 0.01s | Prime Reacts&#34; playlabel=&#34;Play: Rewriting Alt-Tab To Save 0.01s | Prime Reacts&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;How many times in one video can Prime say dude just use arch, dude arch would be way easier, dude you know how hard you are making this on yourself.&lt;/p&gt;&#xA;&lt;p&gt;I do not envy those who desire full size configurability but stuck with the opinions of GatesJobs.  Windows and Mac are so rigid, that it makes it impossible to do any level of customizability that I would want to do for productivity.&lt;/p&gt;&#xA;&lt;p&gt;Unless you &lt;strong&gt;Must&lt;/strong&gt; work on win/mack for some reason of work, you make something for one of them, you use Adobe, or you play competitive online multiplayer with easy anticheat there is a distro for you.  The number of things that you need a win/mack for is greatly shrinking, you don’t have to submit yourself to the pain of Gates that this guy has done.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Homelab Update Jul 2025</title>
    <id>https://waylonwalker.com/shots/homelab-update-jul-2025/</id>
    <updated>2025-07-28T08:19:37Z</updated>
    <published>2025-07-28T08:19:37Z</published>
    <link href="https://waylonwalker.com/shots/homelab-update-jul-2025/" rel="alternate" type="text/html"></link>
    <summary type="text">Basement shelf with 3 computers, a network switch, an uninterubptable power supply, one monitor underneath, and a wifi access point to the right.</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/32ea8118-9ec5-4865-b3b4-8ccd14f23268.jpg&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Homelab update Jul 2025&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/32ea8118-9ec5-4865-b3b4-8ccd14f23268.jpg&#34; alt=&#34;Homelab update Jul 2025&#34;/ data-glightbox=&#34;description: Homelab update Jul 2025&#34;&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;Basement shelf with 3 computers, a network switch, an uninterubptable power supply, one monitor underneath, and a wifi access point to the right.&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Copyparty - YouTube</title>
    <id>https://waylonwalker.com/thought-767/</id>
    <updated>2025-07-27T17:23:57Z</updated>
    <published>2025-07-27T17:23:57Z</published>
    <link href="https://waylonwalker.com/thought-767/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://youtu.be/15_mX</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;15_-hgsX2V0&#34; title=&#34;introducing copyparty, the FOSS file server&#34; playlabel=&#34;Play: introducing copyparty, the FOSS file server&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Copyparty looks like a feature full &lt;a href=&#34;/self-host/&#34; class=&#34;glossary-term&#34; title=&#34;Self hosting is the act of hosting your own applications and services without using a SAS provider. This is typically done with your own hardware, but there...&#34;&gt;self hosted&lt;/a&gt; file server, putting this into my check out later when I get  back to my desk.  Impressive number of features I didn’t even know were a thing all from one .py file.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>2025-07-27 Notes</title>
    <id>https://waylonwalker.com/2025-07-27-notes/</id>
    <updated>2025-07-27T01:25:33Z</updated>
    <published>2025-07-27T01:25:33Z</published>
    <link href="https://waylonwalker.com/2025-07-27-notes/" rel="alternate" type="text/html"></link>
    <summary type="text">Today Wyatt and I conquered cathulu in Cat quest III.</summary>
    <content type="html">&lt;p&gt;Today Wyatt and I conquered cathulu in Cat quest III.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/b64aacf2-5f33-4f68-be93-469c4139c192.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;cathulu.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/b64aacf2-5f33-4f68-be93-469c4139c192.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/b64aacf2-5f33-4f68-be93-469c4139c192.mp4&#34; type=&#34;video/mp4&#34;&gt;cathulu.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;p&gt;Which then lead us to finish Mama Milk’s quest line.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/418e5653-4322-4e43-beda-c11db711d4bf.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;mama-milk.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/418e5653-4322-4e43-beda-c11db711d4bf.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/418e5653-4322-4e43-beda-c11db711d4bf.mp4&#34; type=&#34;video/mp4&#34;&gt;mama-milk.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;hr/&gt;&#xA;&lt;h2 id=&#34;archlinux-btw-devtainer&#34;&gt;archlinux BTW devtainer &lt;a href=&#34;#archlinux-btw-devtainer&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;Made some progress on moving my devtainer back from ubuntu to arch, it’s&#xA;somewhat pertinent because a few of the things I use are now outdated and I&#xA;just want to use a package manager and not have to build things from scratch.&lt;/p&gt;&#xA;&lt;h2 id=&#34;kubernetes-development-environment&#34;&gt;Kubernetes Development Environment &lt;a href=&#34;#kubernetes-development-environment&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;I also setup a dev environment in kubernetes, already using this new arch&#xA;image, its great so far, writing this post from it.&lt;/p&gt;&#xA;&lt;p&gt;As a challenge how much of my workflow could be done from kubernetes, docker&#xA;build, and run would be hard, but I bet I could come up with something.  The&#xA;clipboard part of my workflow would need a major change, especially for&#xA;grabbing previous terminal outputs.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 What the EDC Community Gets Wrong About Pry Bars - YouTube</title>
    <id>https://waylonwalker.com/thought-766/</id>
    <updated>2025-07-26T20:27:28Z</updated>
    <published>2025-07-26T20:27:28Z</published>
    <link href="https://waylonwalker.com/thought-766/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/watch?v=hT_pzOURr5c</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;hT_pzOURr5c&#34; title=&#34;What the EDC Community Gets Wrong About Pry Bars&#34; playlabel=&#34;Play: What the EDC Community Gets Wrong About Pry Bars&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Ben sold me on the mini pocket pry here.  It’s funny how so many &lt;em&gt;minimalist&lt;/em&gt; tools become over the top titanium damascus with wild patterns and designs. they look amazing, but are they worth the insane price for simple things?  I like my edc to be things I don’t worry about breaking, loosing, or giving away.  Fancy ass prybars for $200+ gives me all of those negative feelings I don’t want on my edc.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 How I Use Computers Now - YouTube</title>
    <id>https://waylonwalker.com/thought-765/</id>
    <updated>2025-07-26T14:41:22Z</updated>
    <published>2025-07-26T14:41:22Z</published>
    <link href="https://waylonwalker.com/thought-765/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/watch?v=x-sW4sKZocA</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;x-sW4sKZocA&#34; title=&#34;How I Use Computers Now&#34; playlabel=&#34;Play: How I Use Computers Now&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Ben is always good for a banger of a video, this images app is something that i really want in my &lt;a href=&#34;/homelab/&#34; class=&#34;glossary-term&#34; title=&#34;A place to self host applications. For me this is primarily self built web applications, and applications for sharing files with my family. Techno Tim has a...&#34;&gt;homelab&lt;/a&gt;, he did some great polish here!  The idea of building vibe coded applications for your own personal use with all of your own personal opinions and workflows is something that has been an appealing part of ai,  I’ve definitely tossed a few apps in my homelab that I use occasionally and they do what I ask of them pretty accurately.&lt;/p&gt;&#xA;&lt;p&gt;This feels great to use, but also seems to kill any startup idea I have, as most of them feel like they could be vibe coded out by someone with a bit of skill and they just host their own.  Maybe this is a good thing, maybe we are moving into an era of more people owning their own app they use for themself, maybe i need a security related startup?&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>blender donut tutorial 2025</title>
    <id>https://waylonwalker.com/blender-donut-tutorial-2025/</id>
    <updated>2025-07-25T08:29:27Z</updated>
    <published>2025-07-25T08:29:27Z</published>
    <link href="https://waylonwalker.com/blender-donut-tutorial-2025/" rel="alternate" type="text/html"></link>
    <summary type="text">_</summary>
    <content type="html">&lt;h2 id=&#34;first-launch&#34;&gt;First Launch &lt;a href=&#34;#first-launch&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/ecd7349a-b04c-4496-8b34-3f2c82bdd790.png&#34; class=&#34;glightbox-link&#34; aria-label=&#34;screenshot-2025-07-25T13-29-06-029Z.png&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/ecd7349a-b04c-4496-8b34-3f2c82bdd790.png&#34; alt=&#34;screenshot-2025-07-25T13-29-06-029Z.png&#34;/ data-glightbox=&#34;description: screenshot-2025-07-25T13-29-06-029Z.png&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;my-setup&#34;&gt;my setup &lt;a href=&#34;#my-setup&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/0baedcf5-9b6a-4ee3-b18f-76e695e00a8c.png&#34; class=&#34;glightbox-link&#34; aria-label=&#34;screenshot-2025-07-25T13-30-22-340Z.png&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/0baedcf5-9b6a-4ee3-b18f-76e695e00a8c.png&#34; alt=&#34;screenshot-2025-07-25T13-30-22-340Z.png&#34;/ data-glightbox=&#34;description: screenshot-2025-07-25T13-30-22-340Z.png&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;add&#34;&gt;Add &lt;a href=&#34;#add&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;&lt;em&gt;shift A&lt;/em&gt;&lt;/p&gt;&#xA;&lt;h2 id=&#34;bump-resolution-scale&#34;&gt;bump resolution scale &lt;a href=&#34;#bump-resolution-scale&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;edit -&amp;gt; preferences -&amp;gt; interface -&amp;gt; resolution scale 1.25&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/d2c9fc7c-c689-4f6f-b2db-96bd8bb59ab3.png&#34; class=&#34;glightbox-link&#34; aria-label=&#34;screenshot-2025-07-25T13-35-20-580Z.png&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/d2c9fc7c-c689-4f6f-b2db-96bd8bb59ab3.png&#34; alt=&#34;screenshot-2025-07-25T13-35-20-580Z.png&#34;/ data-glightbox=&#34;description: screenshot-2025-07-25T13-35-20-580Z.png&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;orbit-without-middle-mouse-button&#34;&gt;orbit without middle mouse button &lt;a href=&#34;#orbit-without-middle-mouse-button&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/239a709b-7242-4a75-b100-f3a8cc533364.png&#34; class=&#34;glightbox-link&#34; aria-label=&#34;screenshot-2025-07-25T13-36-32-690Z.png&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/239a709b-7242-4a75-b100-f3a8cc533364.png&#34; alt=&#34;screenshot-2025-07-25T13-36-32-690Z.png&#34;/ data-glightbox=&#34;description: screenshot-2025-07-25T13-36-32-690Z.png&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;viewport-shading-rendered&#34;&gt;viewport shading rendered &lt;a href=&#34;#viewport-shading-rendered&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/cea5c464-53b2-4926-ab02-31107d84d23f.png&#34; class=&#34;glightbox-link&#34; aria-label=&#34;screenshot-2025-07-25T13-37-52-174Z.png&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/cea5c464-53b2-4926-ab02-31107d84d23f.png&#34; alt=&#34;screenshot-2025-07-25T13-37-52-174Z.png&#34;/ data-glightbox=&#34;description: screenshot-2025-07-25T13-37-52-174Z.png&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Neovim vs Emacs | Roundtable w/ TJ DeVries, DistroTube, Greg A...</title>
    <id>https://waylonwalker.com/thought-763/</id>
    <updated>2025-07-25T02:13:59Z</updated>
    <published>2025-07-25T02:13:59Z</published>
    <link href="https://waylonwalker.com/thought-763/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/clip/UgkxQevfazaval9KH22a6BjMRkdBs7541Kry</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;SnhcXR9CKno&#34; title=&#34;✂️ vsc***&#34; playlabel=&#34;Play: ✂️ vsc***&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;I don’t think I ever fully heard the full meaning of vsc*** and why it gets bleeped.  I knew that it had to do with M$, but Teej explains it so well here.  Its about the editor not really being open sources, but is marketed to be such.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Glossary Web Component – David Bushell – Web Dev (UK)</title>
    <id>https://waylonwalker.com/thought-762/</id>
    <updated>2025-07-25T02:11:58Z</updated>
    <published>2025-07-25T02:11:58Z</published>
    <link href="https://waylonwalker.com/thought-762/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://dbushell.com/2025/05/07/glossary-web-component/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://dbushell.com/2025/05/07/glossary-web-component/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://dbushell.com/images/articles/2025-05-07-glossary-web-component.png&#34; alt=&#34;Glossary Web Component — The one where I put the hypercard in the hyperlink&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: Glossary Web Component — The one where I put the hypercard in the hyperlink&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Glossary Web Component&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;The one where I put the hypercard in the hyperlink&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;dbushell.com · dbushell.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;I really enjoy David’s Glossary, he has absolutely nailed it.  I’m working on one for myself that feels close but not quite.  I want to have a list of words that auto glossary to terms for me, maybe this is too much automation and I should just lean on wikilinks, i.e. &lt;a href=&#34;/sick-wikilink-hover/&#34; class=&#34;wikilink&#34; data-title=&#34;sick wikilink hover&#34; data-description=&#34;Today I set up some sick wikilink hover effects using tailwind see a-case-for-tailwindcss. When you hover over them they show an image preview of the link...&#34; data-date=&#34;2024-05-30&#34; data-preview=&#34;Today I set up some sick wikilink hover effects using tailwind see a-case-for-tailwindcss. When you hover over them they show an image preview of the link...&#34;&gt;sick wikilink hover&lt;/a&gt;, they only take wrapping in brackets.   But like David mentions here its a lot of work to make sure they are right on all the older posts.  I think it needs to be done with js on my setup, I don’t have no fancy wroker to modify &lt;a href=&#34;/html/&#34; class=&#34;glossary-term&#34; title=&#34;HTML (HyperText Markup Language) is the standard markup language used to create and design documents on the World Wide Web. It structures web content by...&#34;&gt;html&lt;/a&gt; on the way out, I’m fully static right now, so i would need to do full rebuilds any time the glossary changes, i’m trying to cut down on the number of features that require full site rebuilds and potential cache issues.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 An Ode To My 10-Year-Old Thinkpad T440</title>
    <id>https://waylonwalker.com/thought-761/</id>
    <updated>2025-07-25T01:33:47Z</updated>
    <published>2025-07-25T01:33:47Z</published>
    <link href="https://waylonwalker.com/thought-761/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://mbrizic.com/blog/thinkpad-t440/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://mbrizic.com/blog/thinkpad-t440/&#34; class=&#34;embed-card-link  has-avatar has-avatar-before&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/mbrizic.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/mbrizic.com.ico&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;An Ode To My 10-Year-Old Thinkpad T440&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;mbrizic.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;I like reading about old hardware and how to keep it running, sending shit out to e-waste after barely using it for a year makes my skin crawl.  I find it interesting how most of these resurrections start with a linux build, and the author giving in and going for linux for the first time and enjoying being able to use something they thought was useless for real work.&lt;/p&gt;&#xA;&lt;p&gt;That being said I have weird thoughts similar to this guy about being able to take a machine and write a novel somewhere off in the distance, but any time I try to do real work form any laptop these days the ergonomics become so unappealing that I tend to just not do anything away from my desk.  Theres something that sounds so great about opening vim on old hardware that could last for hours, sip on coffee and write away, but it never works out like that in practice.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>2025-07-24 Notes</title>
    <id>https://waylonwalker.com/2025-07-24-notes/</id>
    <updated>2025-07-24T20:58:17Z</updated>
    <published>2025-07-24T20:58:17Z</published>
    <link href="https://waylonwalker.com/2025-07-24-notes/" rel="alternate" type="text/html"></link>
    <summary type="text">Completed the 8-bit dungeon in Cat Quest III with wyatt today.</summary>
    <content type="html">&lt;p&gt;Completed the 8-bit dungeon in Cat Quest III with &lt;a href=&#34;https://wyattbubbylee.com&#34;&gt;wyatt&lt;/a&gt; today.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/7fa41850-8303-4f7c-9a09-0ed05ef13139.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;8-bit-dungeon.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/7fa41850-8303-4f7c-9a09-0ed05ef13139.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/7fa41850-8303-4f7c-9a09-0ed05ef13139.mp4&#34; type=&#34;video/mp4&#34;&gt;8-bit-dungeon.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>2025-07-23 Notes</title>
    <id>https://waylonwalker.com/2025-07-23-notes/</id>
    <updated>2025-07-23T20:37:04Z</updated>
    <published>2025-07-23T20:37:04Z</published>
    <link href="https://waylonwalker.com/2025-07-23-notes/" rel="alternate" type="text/html"></link>
    <summary type="text">Today I set up hypridle on my hyprland desktop build. It was not too bad, I&#39;m probably going to tweak it as it I go if it bothers me, for now I&#39;m giving it a...</summary>
    <content type="html">&lt;p&gt;Today I set up hypridle on my hyprland desktop build.  It was not too bad, I’m&#xA;probably going to tweak it as it I go if it bothers me, for now I’m giving it a&#xA;shot.  My monitor is sometimes a PITA to get to wake up, that is my main&#xA;concern.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;paru -S hypridle&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Here is the config I landed on.&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code class=&#34;language-conf&#34;&gt;# dim screen&#xA;general {&#xA;    lock_cmd = pidof hyprlock || hyprlock       # avoid starting multiple hyprlock instances.&#xA;    before_sleep_cmd = loginctl lock-session    # lock before suspend.&#xA;    after_sleep_cmd = hyprctl dispatch dpms on &amp;amp;&amp;amp; ddcutil setvcp 10 100  # to avoid having to press a key twice to turn on the display.&#xA;}&#xA;&#xA;listener {&#xA;    timeout = 120                            # in seconds.&#xA;    on-timeout = ddcutil setvcp 10 5 # command to run when timeout has passed.&#xA;    on-resume = ddcutil setvcp 10 100  # command to run when activity is detected after timeout has fired.&#xA;}&#xA;&#xA;# screen off&#xA;listener {&#xA;    timeout = 3600&#xA;    on-timeout = hyprctl dispatch dpms off&#xA;    on-resume = hyprctl dispatch dpms on&#xA;}&#xA;&#xA;# warning screen is about to go off&#xA;listener {&#xA;    timeout = 315                            # in seconds.&#xA;    on-timeout = notify-send &amp;#34;You are idle!&amp;#34; # command to run when timeout has passed.&#xA;}&#xA;&#xA;listener {&#xA;    timeout = 330                            # in seconds.&#xA;    on-timeout = loginctl lock-session&#xA;}&#xA;&#xA;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt;learned about &lt;code&gt;walker&lt;/code&gt; launcher and &lt;code&gt;wev&lt;/code&gt; wayland event debgugger.&lt;/p&gt;&#xA;&lt;hr/&gt;&#xA;&lt;p&gt;Ended the day destroying the duck of doom in cat quest III.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/5ee1296c-7bf9-485a-9e94-d5c30310af95.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;duck-of-doom.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/5ee1296c-7bf9-485a-9e94-d5c30310af95.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/5ee1296c-7bf9-485a-9e94-d5c30310af95.mp4&#34; type=&#34;video/mp4&#34;&gt;duck-of-doom.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>2025-07-22 Notes</title>
    <id>https://waylonwalker.com/2025-07-22-notes/</id>
    <updated>2025-07-22T08:01:51Z</updated>
    <published>2025-07-22T08:01:51Z</published>
    <link href="https://waylonwalker.com/2025-07-22-notes/" rel="alternate" type="text/html"></link>
    <summary type="text">Next I ripped a calendar from the docs. When hovered I get a full year calendar, right click gives me only the current month.</summary>
    <content type="html">&lt;h2 id=&#34;waybar-ricing&#34;&gt;Waybar ricing &lt;a href=&#34;#waybar-ricing&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  &lt;span class=&#34;s2&#34;&gt;&amp;#34;format&amp;#34;&lt;/span&gt;&lt;span class=&#34;err&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;{:%a %b %d %I:%M %p}&amp;#34;&lt;/span&gt;&lt;span class=&#34;err&#34;&gt;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Next I ripped a calendar from the docs.  When hovered I get a full year&#xA;calendar, right click gives me only the current month.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;clock&amp;#34;&lt;/span&gt;&lt;span class=&#34;err&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  &lt;span class=&#34;nt&#34;&gt;&amp;#34;format&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;{:%a %b %d %I:%M %p}&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  &lt;span class=&#34;nt&#34;&gt;&amp;#34;format-alt&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;{:%A, %B %d, %Y (%R)}  &amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  &lt;span class=&#34;nt&#34;&gt;&amp;#34;tooltip-format&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;&amp;lt;tt&amp;gt;&amp;lt;small&amp;gt;{calendar}&amp;lt;/small&amp;gt;&amp;lt;/tt&amp;gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  &lt;span class=&#34;nt&#34;&gt;&amp;#34;calendar&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;              &lt;span class=&#34;nt&#34;&gt;&amp;#34;mode&amp;#34;&lt;/span&gt;          &lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;year&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;              &lt;span class=&#34;nt&#34;&gt;&amp;#34;mode-mon-col&amp;#34;&lt;/span&gt;  &lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;mi&#34;&gt;3&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;              &lt;span class=&#34;nt&#34;&gt;&amp;#34;weeks-pos&amp;#34;&lt;/span&gt;     &lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;right&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;              &lt;span class=&#34;nt&#34;&gt;&amp;#34;on-scroll&amp;#34;&lt;/span&gt;     &lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;mi&#34;&gt;1&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;              &lt;span class=&#34;nt&#34;&gt;&amp;#34;format&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;                          &lt;span class=&#34;nt&#34;&gt;&amp;#34;months&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;     &lt;span class=&#34;s2&#34;&gt;&amp;#34;&amp;lt;span color=&amp;#39;#ffead3&amp;#39;&amp;gt;&amp;lt;b&amp;gt;{}&amp;lt;/b&amp;gt;&amp;lt;/span&amp;gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;                          &lt;span class=&#34;nt&#34;&gt;&amp;#34;days&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;       &lt;span class=&#34;s2&#34;&gt;&amp;#34;&amp;lt;span color=&amp;#39;#ecc6d9&amp;#39;&amp;gt;&amp;lt;b&amp;gt;{}&amp;lt;/b&amp;gt;&amp;lt;/span&amp;gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;                          &lt;span class=&#34;nt&#34;&gt;&amp;#34;weeks&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;      &lt;span class=&#34;s2&#34;&gt;&amp;#34;&amp;lt;span color=&amp;#39;#99ffdd&amp;#39;&amp;gt;&amp;lt;b&amp;gt;W{}&amp;lt;/b&amp;gt;&amp;lt;/span&amp;gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;                          &lt;span class=&#34;nt&#34;&gt;&amp;#34;weekdays&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;   &lt;span class=&#34;s2&#34;&gt;&amp;#34;&amp;lt;span color=&amp;#39;#ffcc66&amp;#39;&amp;gt;&amp;lt;b&amp;gt;{}&amp;lt;/b&amp;gt;&amp;lt;/span&amp;gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;                          &lt;span class=&#34;nt&#34;&gt;&amp;#34;today&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;      &lt;span class=&#34;s2&#34;&gt;&amp;#34;&amp;lt;span color=&amp;#39;#ff6699&amp;#39;&amp;gt;&amp;lt;b&amp;gt;&amp;lt;u&amp;gt;{}&amp;lt;/u&amp;gt;&amp;lt;/b&amp;gt;&amp;lt;/span&amp;gt;&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;                          &lt;span class=&#34;p&#34;&gt;}&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;              &lt;span class=&#34;p&#34;&gt;},&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  &lt;span class=&#34;nt&#34;&gt;&amp;#34;actions&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;  &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;              &lt;span class=&#34;nt&#34;&gt;&amp;#34;on-click-right&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;mode&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;              &lt;span class=&#34;nt&#34;&gt;&amp;#34;on-scroll-up&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;tz_up&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;              &lt;span class=&#34;nt&#34;&gt;&amp;#34;on-scroll-down&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;tz_down&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;              &lt;span class=&#34;nt&#34;&gt;&amp;#34;on-scroll-up&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;shift_up&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;              &lt;span class=&#34;nt&#34;&gt;&amp;#34;on-scroll-down&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;shift_down&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;              &lt;span class=&#34;p&#34;&gt;}&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  &lt;span class=&#34;p&#34;&gt;}&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;I still want to change up the colors, but I’m happy with the usefulness of this&#xA;for now.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/a4fb1285-2830-4ccd-a974-347d0acf5fd5.png&#34; class=&#34;glightbox-link&#34; aria-label=&#34;screenshot-2025-07-22T13-01-20-275Z.png&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/a4fb1285-2830-4ccd-a974-347d0acf5fd5.png&#34; alt=&#34;screenshot-2025-07-22T13-01-20-275Z.png&#34;/ data-glightbox=&#34;description: screenshot-2025-07-22T13-01-20-275Z.png&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Transparent Textures</title>
    <id>https://waylonwalker.com/thought-760/</id>
    <updated>2025-07-22T01:14:59Z</updated>
    <published>2025-07-22T01:14:59Z</published>
    <link href="https://waylonwalker.com/thought-760/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://transparenttextures.com/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://transparenttextures.com/&#34; class=&#34;embed-card-link  has-avatar has-avatar-before&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/transparenttextures.com.png&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/transparenttextures.com.png&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Transparent Textures&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;transparenttextures.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Fantastic resource of background textures, I will be using this for some projects.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>2025-07-21 Notes</title>
    <id>https://waylonwalker.com/2025-07-21-notes/</id>
    <updated>2025-07-21T20:30:21Z</updated>
    <published>2025-07-21T20:30:21Z</published>
    <link href="https://waylonwalker.com/2025-07-21-notes/" rel="alternate" type="text/html"></link>
    <summary type="text">In my adventure to rice out hyprland I set up a sddm theme today, and it looks sick by only changing the wallpaper. I tried out one theme and was pretty...</summary>
    <content type="html">&lt;p&gt;In my adventure to rice out hyprland I set up a sddm theme today, and it looks&#xA;sick by only changing the wallpaper.  I tried out one theme and was pretty&#xA;happy with the results.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/f89bc45e-aa10-473e-ae7b-85c0813850c6.png&#34; class=&#34;glightbox-link&#34; aria-label=&#34;screenshot-2025-07-22T01-30-03-700Z.png&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/f89bc45e-aa10-473e-ae7b-85c0813850c6.png&#34; alt=&#34;screenshot-2025-07-22T01-30-03-700Z.png&#34;/ data-glightbox=&#34;description: screenshot-2025-07-22T01-30-03-700Z.png&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;p&gt;Alright, I ended up ricing out some more, looks so much better than the default sddm theme.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/4bf76e68-9a8a-4aa1-b7e9-2df48e63b963.png&#34; class=&#34;glightbox-link&#34; aria-label=&#34;screenshot-2025-07-22T01-42-51-608Z.png&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/4bf76e68-9a8a-4aa1-b7e9-2df48e63b963.png&#34; alt=&#34;screenshot-2025-07-22T01-42-51-608Z.png&#34;/ data-glightbox=&#34;description: screenshot-2025-07-22T01-42-51-608Z.png&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;p&gt;Default sddm.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/f5c2a31a-63e0-4133-b33b-cdad936eb921.png&#34; class=&#34;glightbox-link&#34; aria-label=&#34;screenshot-2025-07-22T01-43-40-329Z.png&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/f5c2a31a-63e0-4133-b33b-cdad936eb921.png&#34; alt=&#34;screenshot-2025-07-22T01-43-40-329Z.png&#34;/ data-glightbox=&#34;description: screenshot-2025-07-22T01-43-40-329Z.png&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;p&gt;My only hiccup was the wallpaper needed to be in a path relative to the theme&#xA;root directory and not an absolute path to my home directory.&lt;/p&gt;&#xA;&lt;p&gt;This command was super helpful for testing greeter themes.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sddm-greeter-qt6 --test-mode --theme /usr/share/sddm/themes/eucalyptus-drop&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 uv run for running tests on versions of Python</title>
    <id>https://waylonwalker.com/thought-759/</id>
    <updated>2025-07-21T20:25:40Z</updated>
    <published>2025-07-21T20:25:40Z</published>
    <link href="https://waylonwalker.com/thought-759/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://daniel.feldroy.com/posts/2025-07-uv-run-for-testing-python-versions</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://daniel.feldroy.com/posts/2025-07-uv-run-for-testing-python-versions&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://f004.backblazeb2.com/file/daniel-feldroy-com/public/images/profile.jpg&#34; alt=&#34;uv run for running tests on versions of Python — Using uv run with make to replace tox or nox for testing multiple versions of Python locally.&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: uv run for running tests on versions of Python — Using uv run with make to replace tox or nox for testing multiple versions of Python locally.&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;uv run for running tests on versions of Python&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Using uv run with make to replace tox or nox for testing multiple versions of Python locally.&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;https://daniel.feldroy.com · daniel.feldroy.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Such a fantastic use of uv, its so fast and flexible and does everything I need that next time I go to set up some more complex testing like this I’m going to lean towards it more than i would something like tox.  In the post Daniel sets up matrix testing for testing out different versions of python with the same pytest test suite.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>2025-07-19 Notes</title>
    <id>https://waylonwalker.com/2025-07-19-notes/</id>
    <updated>2025-07-19T17:12:15Z</updated>
    <published>2025-07-19T17:12:15Z</published>
    <link href="https://waylonwalker.com/2025-07-19-notes/" rel="alternate" type="text/html"></link>
    <summary type="text">Progress on markata themes, I&#39;m able to get feedback in the terminal. I&#39;m building out a custom color model that will be able to mix and blend colors with...</summary>
    <content type="html">&lt;p&gt;Progress on markata themes, I’m able to get feedback in the terminal.  I’m&#xA;building out a custom color model that will be able to mix and blend colors&#xA;with intent of this having the ability to work inside of a jinja template, so&#xA;rather than needing to lean into transparency for mixing I can mix colors with&#xA;intent.&lt;/p&gt;&#xA;&lt;p&gt;Now with color mixing we can do subtle changes to things like headings.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/f0063cc3-ec40-4658-be06-83ad9e8b8589.png&#34; class=&#34;glightbox-link&#34; aria-label=&#34;screenshot-2025-07-20T01-22-16-799Z.png&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/f0063cc3-ec40-4658-be06-83ad9e8b8589.png&#34; alt=&#34;screenshot-2025-07-20T01-22-16-799Z.png&#34;/ data-glightbox=&#34;description: screenshot-2025-07-20T01-22-16-799Z.png&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;themes-console-printout&#34;&gt;Themes console printout &lt;a href=&#34;#themes-console-printout&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;pre style=&#34;line-height:1.22; font-family:Menlo,&amp;#39;DejaVu Sans Mono&amp;#39;,consolas,&amp;#39;Courier New&amp;#39;,monospace&#34;&gt;&lt;code style=&#34;font-family:inherit&#34;&gt;&#xA;&#xA;&lt;span style=&#34;color: #f3f4f6; text-decoration-color: #f3f4f6; background-color: #1a1b26; font-weight: bold&#34;&gt;Tokyo-Night Theme&lt;/span&gt;&#xA;&#xA;&lt;span style=&#34;font-weight: bold&#34;&gt;Light Theme&lt;/span&gt;&#xA;text &lt;span style=&#34;color: #ffffff; text-decoration-color: #ffffff; background-color: #111827&#34;&gt; #111827 &lt;/span&gt;&#xA;muted &lt;span style=&#34;color: #ffffff; text-decoration-color: #ffffff; background-color: #6b7280&#34;&gt; #6b7280 &lt;/span&gt;&#xA;heading &lt;span style=&#34;color: #ffffff; text-decoration-color: #ffffff; background-color: #000000&#34;&gt; #000 &lt;/span&gt;&#xA;accent &lt;span style=&#34;color: #000000; text-decoration-color: #000000; background-color: #4f46e5&#34;&gt; #4f46e5 &lt;/span&gt;&#xA;accent_alt &lt;span style=&#34;color: #000000; text-decoration-color: #000000; background-color: #9333ea&#34;&gt; #9333ea &lt;/span&gt;&#xA;background &lt;span style=&#34;color: #000000; text-decoration-color: #000000; background-color: #ffffff&#34;&gt; #fff &lt;/span&gt;&#xA;surface &lt;span style=&#34;color: #000000; text-decoration-color: #000000; background-color: #f9fafb&#34;&gt; #f9fafb &lt;/span&gt;&#xA;code_bg &lt;span style=&#34;color: #000000; text-decoration-color: #000000; background-color: #f3f4f6&#34;&gt; #f3f4f6 &lt;/span&gt;&#xA;blockquote_bg &lt;span style=&#34;color: #000000; text-decoration-color: #000000; background-color: #f3f4f6&#34;&gt; #f3f4f6 &lt;/span&gt;&#xA;blockquote_border &lt;span style=&#34;color: #000000; text-decoration-color: #000000; background-color: #a5b4fc&#34;&gt; #a5b4fc &lt;/span&gt;&#xA;link_hover &lt;span style=&#34;color: #ffffff; text-decoration-color: #ffffff; background-color: #000000&#34;&gt; #000 &lt;/span&gt;&#xA;selection_bg &lt;span style=&#34;color: #000000; text-decoration-color: #000000; background-color: #e0e7ff&#34;&gt; #e0e7ff &lt;/span&gt;&#xA;selection_text &lt;span style=&#34;color: #ffffff; text-decoration-color: #ffffff; background-color: #111827&#34;&gt; #111827 &lt;/span&gt;&#xA;border &lt;span style=&#34;color: #000000; text-decoration-color: #000000; background-color: #e5e7eb&#34;&gt; #e5e7eb &lt;/span&gt;&#xA;&#xA;&lt;span style=&#34;font-weight: bold&#34;&gt;Dark Theme&lt;/span&gt;&#xA;text &lt;span style=&#34;color: #000000; text-decoration-color: #000000; background-color: #f3f4f6&#34;&gt; #f3f4f6 &lt;/span&gt;&#xA;muted &lt;span style=&#34;color: #000000; text-decoration-color: #000000; background-color: #9ca3af&#34;&gt; #9ca3af &lt;/span&gt;&#xA;heading &lt;span style=&#34;color: #000000; text-decoration-color: #000000; background-color: #ffffff&#34;&gt; #fff &lt;/span&gt;&#xA;accent &lt;span style=&#34;color: #000000; text-decoration-color: #000000; background-color: #818cf8&#34;&gt; #818cf8 &lt;/span&gt;&#xA;accent_alt &lt;span style=&#34;color: #000000; text-decoration-color: #000000; background-color: #c084fc&#34;&gt; #c084fc &lt;/span&gt;&#xA;background &lt;span style=&#34;color: #ffffff; text-decoration-color: #ffffff; background-color: #1a1b26&#34;&gt; #1a1b26 &lt;/span&gt;&#xA;surface &lt;span style=&#34;color: #ffffff; text-decoration-color: #ffffff; background-color: #222436&#34;&gt; #222436 &lt;/span&gt;&#xA;code_bg &lt;span style=&#34;color: #ffffff; text-decoration-color: #ffffff; background-color: #2f3549&#34;&gt; #2f3549 &lt;/span&gt;&#xA;blockquote_bg &lt;span style=&#34;color: #ffffff; text-decoration-color: #ffffff; background-color: #1f2335&#34;&gt; #1f2335 &lt;/span&gt;&#xA;blockquote_border &lt;span style=&#34;color: #000000; text-decoration-color: #000000; background-color: #6366f1&#34;&gt; #6366f1 &lt;/span&gt;&#xA;link_hover &lt;span style=&#34;color: #000000; text-decoration-color: #000000; background-color: #ffffff&#34;&gt; #fff &lt;/span&gt;&#xA;selection_bg &lt;span style=&#34;color: #ffffff; text-decoration-color: #ffffff; background-color: #2f3549&#34;&gt; #2f3549 &lt;/span&gt;&#xA;selection_text &lt;span style=&#34;color: #000000; text-decoration-color: #000000; background-color: #ffffff&#34;&gt; #fff &lt;/span&gt;&#xA;border &lt;span style=&#34;color: #ffffff; text-decoration-color: #ffffff; background-color: #3b4261&#34;&gt; #3b4261 &lt;/span&gt;&#xA;&#xA;&lt;span style=&#34;color: #fecdd3; text-decoration-color: #fecdd3; background-color: #1e1e28; font-weight: bold&#34;&gt;Catppuccin Theme&lt;/span&gt;&#xA;&#xA;&lt;span style=&#34;font-weight: bold&#34;&gt;Light Theme&lt;/span&gt;&#xA;text &lt;span style=&#34;color: #ffffff; text-decoration-color: #ffffff; background-color: #881337&#34;&gt; #881337 &lt;/span&gt;&#xA;muted &lt;span style=&#34;color: #000000; text-decoration-color: #000000; background-color: #f43f5e&#34;&gt; #f43f5e &lt;/span&gt;&#xA;heading &lt;span style=&#34;color: #ffffff; text-decoration-color: #ffffff; background-color: #9f1239&#34;&gt; #9f1239 &lt;/span&gt;&#xA;accent &lt;span style=&#34;color: #000000; text-decoration-color: #000000; background-color: #ec4899&#34;&gt; #ec4899 &lt;/span&gt;&#xA;accent_alt &lt;span style=&#34;color: #000000; text-decoration-color: #000000; background-color: #c084fc&#34;&gt; #c084fc &lt;/span&gt;&#xA;background &lt;span style=&#34;color: #000000; text-decoration-color: #000000; background-color: #fff1f2&#34;&gt; #fff1f2 &lt;/span&gt;&#xA;surface &lt;span style=&#34;color: #000000; text-decoration-color: #000000; background-color: #ffe4e6&#34;&gt; #ffe4e6 &lt;/span&gt;&#xA;code_bg &lt;span style=&#34;color: #000000; text-decoration-color: #000000; background-color: #ffe4e6&#34;&gt; #ffe4e6 &lt;/span&gt;&#xA;blockquote_bg &lt;span style=&#34;color: #000000; text-decoration-color: #000000; background-color: #fecdd3&#34;&gt; #fecdd3 &lt;/span&gt;&#xA;blockquote_border &lt;span style=&#34;color: #000000; text-decoration-color: #000000; background-color: #f472b6&#34;&gt; #f472b6 &lt;/span&gt;&#xA;link_hover &lt;span style=&#34;color: #ffffff; text-decoration-color: #ffffff; background-color: #9d174d&#34;&gt; #9d174d &lt;/span&gt;&#xA;selection_bg &lt;span style=&#34;color: #000000; text-decoration-color: #000000; background-color: #fda4af&#34;&gt; #fda4af &lt;/span&gt;&#xA;selection_text &lt;span style=&#34;color: #ffffff; text-decoration-color: #ffffff; background-color: #881337&#34;&gt; #881337 &lt;/span&gt;&#xA;border &lt;span style=&#34;color: #000000; text-decoration-color: #000000; background-color: #fda4af&#34;&gt; #fda4af &lt;/span&gt;&#xA;&#xA;&lt;span style=&#34;font-weight: bold&#34;&gt;Dark Theme&lt;/span&gt;&#xA;text &lt;span style=&#34;color: #000000; text-decoration-color: #000000; background-color: #fecdd3&#34;&gt; #fecdd3 &lt;/span&gt;&#xA;muted &lt;span style=&#34;color: #000000; text-decoration-color: #000000; background-color: #fb7185&#34;&gt; #fb7185 &lt;/span&gt;&#xA;heading &lt;span style=&#34;color: #000000; text-decoration-color: #000000; background-color: #ffe4e6&#34;&gt; #ffe4e6 &lt;/span&gt;&#xA;accent &lt;span style=&#34;color: #000000; text-decoration-color: #000000; background-color: #f472b6&#34;&gt; #f472b6 &lt;/span&gt;&#xA;accent_alt &lt;span style=&#34;color: #000000; text-decoration-color: #000000; background-color: #c4b5fd&#34;&gt; #c4b5fd &lt;/span&gt;&#xA;background &lt;span style=&#34;color: #ffffff; text-decoration-color: #ffffff; background-color: #1e1e28&#34;&gt; #1e1e28 &lt;/span&gt;&#xA;surface &lt;span style=&#34;color: #ffffff; text-decoration-color: #ffffff; background-color: #2a2a38&#34;&gt; #2a2a38 &lt;/span&gt;&#xA;code_bg &lt;span style=&#34;color: #ffffff; text-decoration-color: #ffffff; background-color: #2c2c3a&#34;&gt; #2c2c3a &lt;/span&gt;&#xA;blockquote_bg &lt;span style=&#34;color: #ffffff; text-decoration-color: #ffffff; background-color: #2b2b3a&#34;&gt; #2b2b3a &lt;/span&gt;&#xA;blockquote_border &lt;span style=&#34;color: #000000; text-decoration-color: #000000; background-color: #ec4899&#34;&gt; #ec4899 &lt;/span&gt;&#xA;link_hover &lt;span style=&#34;color: #000000; text-decoration-color: #000000; background-color: #ffffff&#34;&gt; #fff &lt;/span&gt;&#xA;selection_bg &lt;span style=&#34;color: #ffffff; text-decoration-color: #ffffff; background-color: #403d52&#34;&gt; #403d52 &lt;/span&gt;&#xA;selection_text &lt;span style=&#34;color: #000000; text-decoration-color: #000000; background-color: #fff1f2&#34;&gt; #fff1f2 &lt;/span&gt;&#xA;border &lt;span style=&#34;color: #ffffff; text-decoration-color: #ffffff; background-color: #4e4e5a&#34;&gt; #4e4e5a &lt;/span&gt;&#xA;&#xA;&lt;span style=&#34;color: #dcfce7; text-decoration-color: #dcfce7; background-color: #2b3339; font-weight: bold&#34;&gt;Everforest Theme&lt;/span&gt;&#xA;&#xA;&lt;span style=&#34;font-weight: bold&#34;&gt;Light Theme&lt;/span&gt;&#xA;text &lt;span style=&#34;color: #ffffff; text-decoration-color: #ffffff; background-color: #14532d&#34;&gt; #14532d &lt;/span&gt;&#xA;muted &lt;span style=&#34;color: #ffffff; text-decoration-color: #ffffff; background-color: #22c55e&#34;&gt; #22c55e &lt;/span&gt;&#xA;heading &lt;span style=&#34;color: #ffffff; text-decoration-color: #ffffff; background-color: #166534&#34;&gt; #166534 &lt;/span&gt;&#xA;accent &lt;span style=&#34;color: #ffffff; text-decoration-color: #ffffff; background-color: #16a34a&#34;&gt; #16a34a &lt;/span&gt;&#xA;accent_alt &lt;span style=&#34;color: #ffffff; text-decoration-color: #ffffff; background-color: #84cc16&#34;&gt; #84cc16 &lt;/span&gt;&#xA;background &lt;span style=&#34;color: #000000; text-decoration-color: #000000; background-color: #f0fdf4&#34;&gt; #f0fdf4 &lt;/span&gt;&#xA;surface &lt;span style=&#34;color: #000000; text-decoration-color: #000000; background-color: #dcfce7&#34;&gt; #dcfce7 &lt;/span&gt;&#xA;code_bg &lt;span style=&#34;color: #000000; text-decoration-color: #000000; background-color: #dcfce7&#34;&gt; #dcfce7 &lt;/span&gt;&#xA;blockquote_bg &lt;span style=&#34;color: #000000; text-decoration-color: #000000; background-color: #bbf7d0&#34;&gt; #bbf7d0 &lt;/span&gt;&#xA;blockquote_border &lt;span style=&#34;color: #000000; text-decoration-color: #000000; background-color: #4ade80&#34;&gt; #4ade80 &lt;/span&gt;&#xA;link_hover &lt;span style=&#34;color: #ffffff; text-decoration-color: #ffffff; background-color: #166534&#34;&gt; #166534 &lt;/span&gt;&#xA;selection_bg &lt;span style=&#34;color: #000000; text-decoration-color: #000000; background-color: #bbf7d0&#34;&gt; #bbf7d0 &lt;/span&gt;&#xA;selection_text &lt;span style=&#34;color: #ffffff; text-decoration-color: #ffffff; background-color: #14532d&#34;&gt; #14532d &lt;/span&gt;&#xA;border &lt;span style=&#34;color: #000000; text-decoration-color: #000000; background-color: #86efac&#34;&gt; #86efac &lt;/span&gt;&#xA;&#xA;&lt;span style=&#34;font-weight: bold&#34;&gt;Dark Theme&lt;/span&gt;&#xA;text &lt;span style=&#34;color: #000000; text-decoration-color: #000000; background-color: #dcfce7&#34;&gt; #dcfce7 &lt;/span&gt;&#xA;muted &lt;span style=&#34;color: #000000; text-decoration-color: #000000; background-color: #4ade80&#34;&gt; #4ade80 &lt;/span&gt;&#xA;heading &lt;span style=&#34;color: #000000; text-decoration-color: #000000; background-color: #86efac&#34;&gt; #86efac &lt;/span&gt;&#xA;accent &lt;span style=&#34;color: #000000; text-decoration-color: #000000; background-color: #4ade80&#34;&gt; #4ade80 &lt;/span&gt;&#xA;accent_alt &lt;span style=&#34;color: #000000; text-decoration-color: #000000; background-color: #a3e635&#34;&gt; #a3e635 &lt;/span&gt;&#xA;background &lt;span style=&#34;color: #ffffff; text-decoration-color: #ffffff; background-color: #2b3339&#34;&gt; #2b3339 &lt;/span&gt;&#xA;surface &lt;span style=&#34;color: #ffffff; text-decoration-color: #ffffff; background-color: #374045&#34;&gt; #374045 &lt;/span&gt;&#xA;code_bg &lt;span style=&#34;color: #ffffff; text-decoration-color: #ffffff; background-color: #3b444a&#34;&gt; #3b444a &lt;/span&gt;&#xA;blockquote_bg &lt;span style=&#34;color: #ffffff; text-decoration-color: #ffffff; background-color: #3d484f&#34;&gt; #3d484f &lt;/span&gt;&#xA;blockquote_border &lt;span style=&#34;color: #ffffff; text-decoration-color: #ffffff; background-color: #22c55e&#34;&gt; #22c55e &lt;/span&gt;&#xA;link_hover &lt;span style=&#34;color: #000000; text-decoration-color: #000000; background-color: #ffffff&#34;&gt; #fff &lt;/span&gt;&#xA;selection_bg &lt;span style=&#34;color: #ffffff; text-decoration-color: #ffffff; background-color: #475258&#34;&gt; #475258 &lt;/span&gt;&#xA;selection_text &lt;span style=&#34;color: #000000; text-decoration-color: #000000; background-color: #ffffff&#34;&gt; #fff &lt;/span&gt;&#xA;border &lt;span style=&#34;color: #ffffff; text-decoration-color: #ffffff; background-color: #517d90&#34;&gt; #517d90 &lt;/span&gt;&#xA;&#xA;&lt;span style=&#34;color: #ffedd5; text-decoration-color: #ffedd5; background-color: #282828; font-weight: bold&#34;&gt;Gruvbox Theme&lt;/span&gt;&#xA;&#xA;&lt;span style=&#34;font-weight: bold&#34;&gt;Light Theme&lt;/span&gt;&#xA;text &lt;span style=&#34;color: #ffffff; text-decoration-color: #ffffff; background-color: #7c2d12&#34;&gt; #7c2d12 &lt;/span&gt;&#xA;muted &lt;span style=&#34;color: #000000; text-decoration-color: #000000; background-color: #fb923c&#34;&gt; #fb923c &lt;/span&gt;&#xA;heading &lt;span style=&#34;color: #ffffff; text-decoration-color: #ffffff; background-color: #713f12&#34;&gt; #713f12 &lt;/span&gt;&#xA;accent &lt;span style=&#34;color: #ffffff; text-decoration-color: #ffffff; background-color: #ea580c&#34;&gt; #ea580c &lt;/span&gt;&#xA;accent_alt &lt;span style=&#34;color: #ffffff; text-decoration-color: #ffffff; background-color: #eab308&#34;&gt; #eab308 &lt;/span&gt;&#xA;background &lt;span style=&#34;color: #000000; text-decoration-color: #000000; background-color: #ffffff&#34;&gt; #fff &lt;/span&gt;&#xA;surface &lt;span style=&#34;color: #000000; text-decoration-color: #000000; background-color: #fff7ed&#34;&gt; #fff7ed &lt;/span&gt;&#xA;code_bg &lt;span style=&#34;color: #000000; text-decoration-color: #000000; background-color: #ffedd5&#34;&gt; #ffedd5 &lt;/span&gt;&#xA;blockquote_bg &lt;span style=&#34;color: #000000; text-decoration-color: #000000; background-color: #fed7aa&#34;&gt; #fed7aa &lt;/span&gt;&#xA;blockquote_border &lt;span style=&#34;color: #000000; text-decoration-color: #000000; background-color: #fdba74&#34;&gt; #fdba74 &lt;/span&gt;&#xA;link_hover &lt;span style=&#34;color: #ffffff; text-decoration-color: #ffffff; background-color: #9a3412&#34;&gt; #9a3412 &lt;/span&gt;&#xA;selection_bg &lt;span style=&#34;color: #000000; text-decoration-color: #000000; background-color: #fed7aa&#34;&gt; #fed7aa &lt;/span&gt;&#xA;selection_text &lt;span style=&#34;color: #ffffff; text-decoration-color: #ffffff; background-color: #7c2d12&#34;&gt; #7c2d12 &lt;/span&gt;&#xA;border &lt;span style=&#34;color: #000000; text-decoration-color: #000000; background-color: #fdba74&#34;&gt; #fdba74 &lt;/span&gt;&#xA;&#xA;&lt;span style=&#34;font-weight: bold&#34;&gt;Dark Theme&lt;/span&gt;&#xA;text &lt;span style=&#34;color: #000000; text-decoration-color: #000000; background-color: #ffedd5&#34;&gt; #ffedd5 &lt;/span&gt;&#xA;muted &lt;span style=&#34;color: #000000; text-decoration-color: #000000; background-color: #fb923c&#34;&gt; #fb923c &lt;/span&gt;&#xA;heading &lt;span style=&#34;color: #000000; text-decoration-color: #000000; background-color: #fef9c3&#34;&gt; #fef9c3 &lt;/span&gt;&#xA;accent &lt;span style=&#34;color: #000000; text-decoration-color: #000000; background-color: #fb923c&#34;&gt; #fb923c &lt;/span&gt;&#xA;accent_alt &lt;span style=&#34;color: #000000; text-decoration-color: #000000; background-color: #facc15&#34;&gt; #facc15 &lt;/span&gt;&#xA;background &lt;span style=&#34;color: #ffffff; text-decoration-color: #ffffff; background-color: #282828&#34;&gt; #282828 &lt;/span&gt;&#xA;surface &lt;span style=&#34;color: #ffffff; text-decoration-color: #ffffff; background-color: #3c3836&#34;&gt; #3c3836 &lt;/span&gt;&#xA;code_bg &lt;span style=&#34;color: #ffffff; text-decoration-color: #ffffff; background-color: #504945&#34;&gt; #504945 &lt;/span&gt;&#xA;blockquote_bg &lt;span style=&#34;color: #ffffff; text-decoration-color: #ffffff; background-color: #3a3634&#34;&gt; #3a3634 &lt;/span&gt;&#xA;blockquote_border &lt;span style=&#34;color: #000000; text-decoration-color: #000000; background-color: #f97316&#34;&gt; #f97316 &lt;/span&gt;&#xA;link_hover &lt;span style=&#34;color: #000000; text-decoration-color: #000000; background-color: #ffffff&#34;&gt; #fff &lt;/span&gt;&#xA;selection_bg &lt;span style=&#34;color: #ffffff; text-decoration-color: #ffffff; background-color: #665c54&#34;&gt; #665c54 &lt;/span&gt;&#xA;selection_text &lt;span style=&#34;color: #000000; text-decoration-color: #000000; background-color: #fff7ed&#34;&gt; #fff7ed &lt;/span&gt;&#xA;border &lt;span style=&#34;color: #ffffff; text-decoration-color: #ffffff; background-color: #7c6f64&#34;&gt; #7c6f64 &lt;/span&gt;&#xA;&#xA;&lt;span style=&#34;color: #f1f5f9; text-decoration-color: #f1f5f9; background-color: #1f2335; font-weight: bold&#34;&gt;Kanagwa Theme&lt;/span&gt;&#xA;&#xA;&lt;span style=&#34;font-weight: bold&#34;&gt;Light Theme&lt;/span&gt;&#xA;text &lt;span style=&#34;color: #ffffff; text-decoration-color: #ffffff; background-color: #0f172a&#34;&gt; #0f172a &lt;/span&gt;&#xA;muted &lt;span style=&#34;color: #000000; text-decoration-color: #000000; background-color: #94a3b8&#34;&gt; #94a3b8 &lt;/span&gt;&#xA;heading &lt;span style=&#34;color: #ffffff; text-decoration-color: #ffffff; background-color: #1e293b&#34;&gt; #1e293b &lt;/span&gt;&#xA;accent &lt;span style=&#34;color: #000000; text-decoration-color: #000000; background-color: #2563eb&#34;&gt; #2563eb &lt;/span&gt;&#xA;accent_alt &lt;span style=&#34;color: #000000; text-decoration-color: #000000; background-color: #6366f1&#34;&gt; #6366f1 &lt;/span&gt;&#xA;background &lt;span style=&#34;color: #000000; text-decoration-color: #000000; background-color: #f8fafc&#34;&gt; #f8fafc &lt;/span&gt;&#xA;surface &lt;span style=&#34;color: #000000; text-decoration-color: #000000; background-color: #f1f5f9&#34;&gt; #f1f5f9 &lt;/span&gt;&#xA;code_bg &lt;span style=&#34;color: #000000; text-decoration-color: #000000; background-color: #f1f5f9&#34;&gt; #f1f5f9 &lt;/span&gt;&#xA;blockquote_bg &lt;span style=&#34;color: #000000; text-decoration-color: #000000; background-color: #e2e8f0&#34;&gt; #e2e8f0 &lt;/span&gt;&#xA;blockquote_border &lt;span style=&#34;color: #000000; text-decoration-color: #000000; background-color: #93c5fd&#34;&gt; #93c5fd &lt;/span&gt;&#xA;link_hover &lt;span style=&#34;color: #ffffff; text-decoration-color: #ffffff; background-color: #1e40af&#34;&gt; #1e40af &lt;/span&gt;&#xA;selection_bg &lt;span style=&#34;color: #000000; text-decoration-color: #000000; background-color: #dbeafe&#34;&gt; #dbeafe &lt;/span&gt;&#xA;selection_text &lt;span style=&#34;color: #ffffff; text-decoration-color: #ffffff; background-color: #0f172a&#34;&gt; #0f172a &lt;/span&gt;&#xA;border &lt;span style=&#34;color: #000000; text-decoration-color: #000000; background-color: #cbd5e1&#34;&gt; #cbd5e1 &lt;/span&gt;&#xA;&#xA;&lt;span style=&#34;font-weight: bold&#34;&gt;Dark Theme&lt;/span&gt;&#xA;text &lt;span style=&#34;color: #000000; text-decoration-color: #000000; background-color: #f1f5f9&#34;&gt; #f1f5f9 &lt;/span&gt;&#xA;muted &lt;span style=&#34;color: #000000; text-decoration-color: #000000; background-color: #94a3b8&#34;&gt; #94a3b8 &lt;/span&gt;&#xA;heading &lt;span style=&#34;color: #000000; text-decoration-color: #000000; background-color: #f8fafc&#34;&gt; #f8fafc &lt;/span&gt;&#xA;accent &lt;span style=&#34;color: #000000; text-decoration-color: #000000; background-color: #60a5fa&#34;&gt; #60a5fa &lt;/span&gt;&#xA;accent_alt &lt;span style=&#34;color: #000000; text-decoration-color: #000000; background-color: #818cf8&#34;&gt; #818cf8 &lt;/span&gt;&#xA;background &lt;span style=&#34;color: #ffffff; text-decoration-color: #ffffff; background-color: #1f2335&#34;&gt; #1f2335 &lt;/span&gt;&#xA;surface &lt;span style=&#34;color: #ffffff; text-decoration-color: #ffffff; background-color: #2a2e3e&#34;&gt; #2a2e3e &lt;/span&gt;&#xA;code_bg &lt;span style=&#34;color: #ffffff; text-decoration-color: #ffffff; background-color: #3a3f52&#34;&gt; #3a3f52 &lt;/span&gt;&#xA;blockquote_bg &lt;span style=&#34;color: #ffffff; text-decoration-color: #ffffff; background-color: #2e3440&#34;&gt; #2e3440 &lt;/span&gt;&#xA;blockquote_border &lt;span style=&#34;color: #000000; text-decoration-color: #000000; background-color: #3b82f6&#34;&gt; #3b82f6 &lt;/span&gt;&#xA;link_hover &lt;span style=&#34;color: #000000; text-decoration-color: #000000; background-color: #ffffff&#34;&gt; #fff &lt;/span&gt;&#xA;selection_bg &lt;span style=&#34;color: #ffffff; text-decoration-color: #ffffff; background-color: #394260&#34;&gt; #394260 &lt;/span&gt;&#xA;selection_text &lt;span style=&#34;color: #000000; text-decoration-color: #000000; background-color: #ffffff&#34;&gt; #fff &lt;/span&gt;&#xA;border &lt;span style=&#34;color: #ffffff; text-decoration-color: #ffffff; background-color: #4b5162&#34;&gt; #4b5162 &lt;/span&gt;&#xA;&#xA;    &lt;span style=&#34;color: #cffafe; text-decoration-color: #cffafe; background-color: #2e3440; font-weight: bold&#34;&gt;Nord Theme&lt;/span&gt;&#xA;&#xA;&lt;span style=&#34;font-weight: bold&#34;&gt;Light Theme&lt;/span&gt;&#xA;text &lt;span style=&#34;color: #ffffff; text-decoration-color: #ffffff; background-color: #164e63&#34;&gt; #164e63 &lt;/span&gt;&#xA;muted &lt;span style=&#34;color: #000000; text-decoration-color: #000000; background-color: #22d3ee&#34;&gt; #22d3ee &lt;/span&gt;&#xA;heading &lt;span style=&#34;color: #ffffff; text-decoration-color: #ffffff; background-color: #155e75&#34;&gt; #155e75 &lt;/span&gt;&#xA;accent &lt;span style=&#34;color: #ffffff; text-decoration-color: #ffffff; background-color: #0891b2&#34;&gt; #0891b2 &lt;/span&gt;&#xA;accent_alt &lt;span style=&#34;color: #000000; text-decoration-color: #000000; background-color: #3b82f6&#34;&gt; #3b82f6 &lt;/span&gt;&#xA;background &lt;span style=&#34;color: #000000; text-decoration-color: #000000; background-color: #a5f3fc&#34;&gt; #a5f3fc &lt;/span&gt;&#xA;surface &lt;span style=&#34;color: #000000; text-decoration-color: #000000; background-color: #cffafe&#34;&gt; #cffafe &lt;/span&gt;&#xA;code_bg &lt;span style=&#34;color: #000000; text-decoration-color: #000000; background-color: #ecfeff&#34;&gt; #ecfeff &lt;/span&gt;&#xA;blockquote_bg &lt;span style=&#34;color: #000000; text-decoration-color: #000000; background-color: #a5f3fc&#34;&gt; #a5f3fc &lt;/span&gt;&#xA;blockquote_border &lt;span style=&#34;color: #000000; text-decoration-color: #000000; background-color: #67e8f9&#34;&gt; #67e8f9 &lt;/span&gt;&#xA;link_hover &lt;span style=&#34;color: #ffffff; text-decoration-color: #ffffff; background-color: #155e75&#34;&gt; #155e75 &lt;/span&gt;&#xA;selection_bg &lt;span style=&#34;color: #000000; text-decoration-color: #000000; background-color: #a5f3fc&#34;&gt; #a5f3fc &lt;/span&gt;&#xA;selection_text &lt;span style=&#34;color: #ffffff; text-decoration-color: #ffffff; background-color: #164e63&#34;&gt; #164e63 &lt;/span&gt;&#xA;border &lt;span style=&#34;color: #000000; text-decoration-color: #000000; background-color: #67e8f9&#34;&gt; #67e8f9 &lt;/span&gt;&#xA;&#xA;&lt;span style=&#34;font-weight: bold&#34;&gt;Dark Theme&lt;/span&gt;&#xA;text &lt;span style=&#34;color: #000000; text-decoration-color: #000000; background-color: #cffafe&#34;&gt; #cffafe &lt;/span&gt;&#xA;muted &lt;span style=&#34;color: #000000; text-decoration-color: #000000; background-color: #22d3ee&#34;&gt; #22d3ee &lt;/span&gt;&#xA;heading &lt;span style=&#34;color: #000000; text-decoration-color: #000000; background-color: #ecfeff&#34;&gt; #ecfeff &lt;/span&gt;&#xA;accent &lt;span style=&#34;color: #000000; text-decoration-color: #000000; background-color: #22d3ee&#34;&gt; #22d3ee &lt;/span&gt;&#xA;accent_alt &lt;span style=&#34;color: #000000; text-decoration-color: #000000; background-color: #93c5fd&#34;&gt; #93c5fd &lt;/span&gt;&#xA;background &lt;span style=&#34;color: #ffffff; text-decoration-color: #ffffff; background-color: #2e3440&#34;&gt; #2e3440 &lt;/span&gt;&#xA;surface &lt;span style=&#34;color: #ffffff; text-decoration-color: #ffffff; background-color: #3b4252&#34;&gt; #3b4252 &lt;/span&gt;&#xA;code_bg &lt;span style=&#34;color: #ffffff; text-decoration-color: #ffffff; background-color: #434c5e&#34;&gt; #434c5e &lt;/span&gt;&#xA;blockquote_bg &lt;span style=&#34;color: #ffffff; text-decoration-color: #ffffff; background-color: #4c566a&#34;&gt; #4c566a &lt;/span&gt;&#xA;blockquote_border &lt;span style=&#34;color: #ffffff; text-decoration-color: #ffffff; background-color: #06b6d4&#34;&gt; #06b6d4 &lt;/span&gt;&#xA;link_hover &lt;span style=&#34;color: #000000; text-decoration-color: #000000; background-color: #ffffff&#34;&gt; #fff &lt;/span&gt;&#xA;selection_bg &lt;span style=&#34;color: #000000; text-decoration-color: #000000; background-color: #5e81ac&#34;&gt; #5e81ac &lt;/span&gt;&#xA;selection_text &lt;span style=&#34;color: #000000; text-decoration-color: #000000; background-color: #ecfeff&#34;&gt; #ecfeff &lt;/span&gt;&#xA;border &lt;span style=&#34;color: #000000; text-decoration-color: #000000; background-color: #6b7d97&#34;&gt; #6b7d97 &lt;/span&gt;&#xA;&#xA;&lt;span style=&#34;color: #ff00ff; text-decoration-color: #ff00ff; background-color: #2d0036; font-weight: bold&#34;&gt;Synthwave-&lt;/span&gt;&lt;span style=&#34;color: #ff00ff; text-decoration-color: #ff00ff; background-color: #2d0036; font-weight: bold&#34;&gt;84&lt;/span&gt;&lt;span style=&#34;color: #ff00ff; text-decoration-color: #ff00ff; background-color: #2d0036; font-weight: bold&#34;&gt; Theme&lt;/span&gt;&#xA;&#xA;&lt;span style=&#34;font-weight: bold&#34;&gt;Light Theme&lt;/span&gt;&#xA;text &lt;span style=&#34;color: #ffffff; text-decoration-color: #ffffff; background-color: #581c87&#34;&gt; #581c87 &lt;/span&gt;&#xA;muted &lt;span style=&#34;color: #000000; text-decoration-color: #000000; background-color: #ec4899&#34;&gt; #ec4899 &lt;/span&gt;&#xA;heading &lt;span style=&#34;color: #ffffff; text-decoration-color: #ffffff; background-color: #86198f&#34;&gt; #86198f &lt;/span&gt;&#xA;accent &lt;span style=&#34;color: #000000; text-decoration-color: #000000; background-color: #ec4899&#34;&gt; #ec4899 &lt;/span&gt;&#xA;accent_alt &lt;span style=&#34;color: #000000; text-decoration-color: #000000; background-color: #d946ef&#34;&gt; #d946ef &lt;/span&gt;&#xA;background &lt;span style=&#34;color: #000000; text-decoration-color: #000000; background-color: #fdf2f8&#34;&gt; #fdf2f8 &lt;/span&gt;&#xA;surface &lt;span style=&#34;color: #000000; text-decoration-color: #000000; background-color: #fce7f3&#34;&gt; #fce7f3 &lt;/span&gt;&#xA;code_bg &lt;span style=&#34;color: #000000; text-decoration-color: #000000; background-color: #fce7f3&#34;&gt; #fce7f3 &lt;/span&gt;&#xA;blockquote_bg &lt;span style=&#34;color: #000000; text-decoration-color: #000000; background-color: #fbcfe8&#34;&gt; #fbcfe8 &lt;/span&gt;&#xA;blockquote_border &lt;span style=&#34;color: #000000; text-decoration-color: #000000; background-color: #f472b6&#34;&gt; #f472b6 &lt;/span&gt;&#xA;link_hover &lt;span style=&#34;color: #ffffff; text-decoration-color: #ffffff; background-color: #6b21a8&#34;&gt; #6b21a8 &lt;/span&gt;&#xA;selection_bg &lt;span style=&#34;color: #000000; text-decoration-color: #000000; background-color: #f5d0fe&#34;&gt; #f5d0fe &lt;/span&gt;&#xA;selection_text &lt;span style=&#34;color: #ffffff; text-decoration-color: #ffffff; background-color: #581c87&#34;&gt; #581c87 &lt;/span&gt;&#xA;border &lt;span style=&#34;color: #000000; text-decoration-color: #000000; background-color: #f9a8d4&#34;&gt; #f9a8d4 &lt;/span&gt;&#xA;&#xA;&lt;span style=&#34;font-weight: bold&#34;&gt;Dark Theme&lt;/span&gt;&#xA;text &lt;span style=&#34;color: #ffffff; text-decoration-color: #ffffff; background-color: #ff00ff&#34;&gt; #f0f &lt;/span&gt;&#xA;muted &lt;span style=&#34;color: #000000; text-decoration-color: #000000; background-color: #c060c0&#34;&gt; #c060c0 &lt;/span&gt;&#xA;heading &lt;span style=&#34;color: #000000; text-decoration-color: #000000; background-color: #ff66ff&#34;&gt; #f6f &lt;/span&gt;&#xA;accent &lt;span style=&#34;color: #000000; text-decoration-color: #000000; background-color: #f472b6&#34;&gt; #f472b6 &lt;/span&gt;&#xA;accent_alt &lt;span style=&#34;color: #000000; text-decoration-color: #000000; background-color: #e879f9&#34;&gt; #e879f9 &lt;/span&gt;&#xA;background &lt;span style=&#34;color: #ffffff; text-decoration-color: #ffffff; background-color: #2d0036&#34;&gt; #2d0036 &lt;/span&gt;&#xA;surface &lt;span style=&#34;color: #ffffff; text-decoration-color: #ffffff; background-color: #440055&#34;&gt; #405 &lt;/span&gt;&#xA;code_bg &lt;span style=&#34;color: #ffffff; text-decoration-color: #ffffff; background-color: #3d0047&#34;&gt; #3d0047 &lt;/span&gt;&#xA;blockquote_bg &lt;span style=&#34;color: #ffffff; text-decoration-color: #ffffff; background-color: #520066&#34;&gt; #520066 &lt;/span&gt;&#xA;blockquote_border &lt;span style=&#34;color: #000000; text-decoration-color: #000000; background-color: #ec4899&#34;&gt; #ec4899 &lt;/span&gt;&#xA;link_hover &lt;span style=&#34;color: #000000; text-decoration-color: #000000; background-color: #ffffff&#34;&gt; #fff &lt;/span&gt;&#xA;selection_bg &lt;span style=&#34;color: #ffffff; text-decoration-color: #ffffff; background-color: #8800aa&#34;&gt; #80a &lt;/span&gt;&#xA;selection_text &lt;span style=&#34;color: #000000; text-decoration-color: #000000; background-color: #ffffff&#34;&gt; #fff &lt;/span&gt;&#xA;border &lt;span style=&#34;color: #ffffff; text-decoration-color: #ffffff; background-color: #ff00ff&#34;&gt; #f0f &lt;/span&gt;&#xA;&lt;/code&gt;&lt;/pre&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>2025-07-18 Notes</title>
    <id>https://waylonwalker.com/2025-07-18-notes/</id>
    <updated>2025-07-18T19:27:18Z</updated>
    <published>2025-07-18T19:27:18Z</published>
    <link href="https://waylonwalker.com/2025-07-18-notes/" rel="alternate" type="text/html"></link>
    <summary type="text">fc is pretty great.</summary>
    <content type="html">&lt;p&gt;&lt;a href=&#34;/fc/&#34; class=&#34;wikilink&#34; data-title=&#34;fc&#34; data-description=&#34;I am a linux user through and through. Desktop, server, vms, containers, everything except my phone is linux. With this I spend a lot of time in the...&#34; data-date=&#34;2025-07-18&#34; data-preview=&#34;I am a linux user through and through. Desktop, server, vms, containers, everything except my phone is linux. With this I spend a lot of time in the...&#34;&gt;fc&lt;/a&gt; is pretty great.&lt;/p&gt;&#xA;&lt;hr/&gt;&#xA;&lt;p&gt;Markata themes progress, setting up some visual feedback in the terminal for&#xA;myself to show themes.  Trying to think through how to blend colors to get more&#xA;automated variations and to get good colors without needing to use&#xA;transparancy, I was running into issues already trying to lean into&#xA;transparancy with text bleed.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/d069e806-e3c7-4549-a1c0-12d8a25c1394.png&#34; class=&#34;glightbox-link&#34; aria-label=&#34;screenshot-2025-07-19T01-16-55-168Z.png&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/d069e806-e3c7-4549-a1c0-12d8a25c1394.png&#34; alt=&#34;screenshot-2025-07-19T01-16-55-168Z.png&#34;/ data-glightbox=&#34;description: screenshot-2025-07-19T01-16-55-168Z.png&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 2025-07-10 Notes</title>
    <id>https://waylonwalker.com/thought-756/</id>
    <updated>2025-07-18T15:26:28Z</updated>
    <published>2025-07-18T15:26:28Z</published>
    <link href="https://waylonwalker.com/thought-756/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://pype.dev/2025-07-10-notes/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://pype.dev/2025-07-10-notes/&#34; class=&#34;embed-card-link  has-avatar has-avatar-before&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/pype.dev.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/pype.dev.ico&#34;&gt;&#xA;    &lt;/a&gt;&lt;div class=&#34;embed-card-image&#34;&gt;&lt;a href=&#34;https://pype.dev/2025-07-10-notes/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;      &lt;img src=&#34;https://cdn.statically.io/gh/pypeaday/pype.dev/main/pages/media/og-02.png&#34; alt=&#34;2025-07-10 Notes | Nic Payne — &amp;lt;a href=&#34; 2025-07-09-notes=&#34;&#34; &#34;=&#34;&#34; class=&#34;wikilink glightbox&#34; data-title=&#34;2025-07-09 Notes&#34; data-description=&#34;What a nightmare this glossary plugin turns out to be, it broke my site. I had it really close, then one more change asked for to the llm, an LGTM and did...&#34; data-date=&#34;2025-07-09&#34;/ data-glightbox=&#34;description: 2025-07-10 Notes | Nic Payne — &amp;lt;a href=&#34;&gt;2025-07-09 Notes&lt;/a&gt; from yesterday I have temporal stuff kind of going with postiz in a windsurf session working on [[thoughts-to-nostr]] Been cleaning up my z&amp;#34; loading=&amp;#34;lazy&amp;#34;&amp;gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;2025-07-10 Notes | Nic Payne&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;&lt;a href=&#34;/2025-07-09-notes/&#34; class=&#34;wikilink&#34; data-title=&#34;2025-07-09 Notes&#34; data-description=&#34;What a nightmare this glossary plugin turns out to be, it broke my site. I had it really close, then one more change asked for to the llm, an LGTM and did...&#34; data-date=&#34;2025-07-09&#34; data-preview=&#34;What a nightmare this glossary plugin turns out to be, it broke my site. I had it really close, then one more change asked for to the llm, an LGTM and did...&#34;&gt;2025-07-09 Notes&lt;/a&gt; from yesterday I have temporal stuff kind of going with postiz in a windsurf session working on [[thoughts-to-nostr]] Been cleaning up my z&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;pype.dev&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &#xA;&lt;/div&gt;&#xA;&lt;p&gt;big fan of eza and dust, I like these aliases to have some common commands at my fingertips.  I often use the tree command and yes it sometimes goes too deep to actually be useful.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;nb&#34;&gt;alias&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;lt&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;eza -T --level=2&amp;#39;&lt;/span&gt;             &lt;span class=&#34;c1&#34;&gt;# Tree view, 2 levels deep&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;nb&#34;&gt;alias&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;ltt&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;eza -T --level=3&amp;#39;&lt;/span&gt;            &lt;span class=&#34;c1&#34;&gt;# Tree view, 3 levels deep&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;nb&#34;&gt;alias&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;du1&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;dust -d 1&amp;#39;&lt;/span&gt;                   &lt;span class=&#34;c1&#34;&gt;# Show only 1 level deep&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;nb&#34;&gt;alias&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;du2&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;dust -d 2&amp;#39;&lt;/span&gt;                   &lt;span class=&#34;c1&#34;&gt;# Show 2 levels deep&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Vimothée Chalamet shares his new favorite shell command from a...</title>
    <id>https://waylonwalker.com/thought-755/</id>
    <updated>2025-07-18T12:56:59Z</updated>
    <published>2025-07-18T12:56:59Z</published>
    <link href="https://waylonwalker.com/thought-755/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/watch?v=0-SUk1G9xMg</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;0-SUk1G9xMg&#34; title=&#34;- YouTube&#34; playlabel=&#34;Play: - YouTube&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Love this dudes casual dry humor style, not afraid to poke fun at things with his dry ass satire.  that being said, fc is new and as a long time fan of up arrow and !! I will be using this often.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>fc</title>
    <id>https://waylonwalker.com/fc/</id>
    <updated>2025-07-18T07:52:53Z</updated>
    <published>2025-07-18T07:52:53Z</published>
    <link href="https://waylonwalker.com/fc/" rel="alternate" type="text/html"></link>
    <summary type="text">I am a linux user through and through. Desktop, server, vms, containers, everything except my phone is linux. With this I spend a lot of time in the...</summary>
    <content type="html">&lt;p&gt;I am a linux user through and through.  Desktop, server, vms, containers,&#xA;everything except my phone is linux.  With this I spend a lot of time in the&#xA;terminal, and have been a long time user of &lt;code&gt;!!&lt;/code&gt; to rerun the last command, but&#xA;with the ability to tack something on at the beginning or end.&lt;/p&gt;&#xA;&lt;p&gt;TIL about &lt;code&gt;fc&lt;/code&gt;, which opens the last command in your shell history in your&#xA;&lt;code&gt;$EDITOR&lt;/code&gt; or pass in your editor &lt;code&gt;-e nvim&lt;/code&gt;.&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://manned.org/fc&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/manned.org.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/manned.org.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;man fc&lt;/a&gt;&lt;/p&gt;&#xA;&lt;h2 id=&#34;rcap-of-how--works&#34;&gt;Rcap of how !! works &lt;a href=&#34;#rcap-of-how--works&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;&lt;code&gt;!!&lt;/code&gt; pronounces &lt;code&gt;bang bang&lt;/code&gt; and will run the last command in your history.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;ls -l&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;!! &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt; wc -l&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# ls -l | wc -l&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo !!&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# sudo ls -l | wc -l&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;!!:s/-l/-l &lt;span class=&#34;se&#34;&gt;\/&lt;/span&gt;tmp&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# sudo ls -l /tmp | wc -l&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;h2 id=&#34;fc-enters-the-chat&#34;&gt;&lt;code&gt;fc&lt;/code&gt; enters the chat &lt;a href=&#34;#fc-enters-the-chat&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;Now making complex edits in your shell can be a bit of a chore, so &lt;code&gt;fc&lt;/code&gt; moves&#xA;this work to your &lt;code&gt;$EDITOR&lt;/code&gt;.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;fc&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;This pops open your $EDITOR with the last command in your history.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nx&#34;&gt;sudo&lt;/span&gt; &lt;span class=&#34;nx&#34;&gt;ls&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;-&lt;/span&gt;&lt;span class=&#34;nx&#34;&gt;l&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt; &lt;span class=&#34;nx&#34;&gt;wc&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;-&lt;/span&gt;&lt;span class=&#34;nx&#34;&gt;l&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/9d624d65-de40-459b-9566-6e5c833cabcc.png&#34; class=&#34;glightbox-link&#34; aria-label=&#34;screenshot-2025-07-18T13-21-46-775Z.png&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/9d624d65-de40-459b-9566-6e5c833cabcc.png&#34; alt=&#34;screenshot-2025-07-18T13-21-46-775Z.png&#34;/ data-glightbox=&#34;description: screenshot-2025-07-18T13-21-46-775Z.png&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;shell-history&#34;&gt;Shell History &lt;a href=&#34;#shell-history&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;&lt;code&gt;fc&lt;/code&gt; shows up in shell history, but &lt;code&gt;!!&lt;/code&gt; does not, &lt;code&gt;!!&lt;/code&gt; gets replaced by the&#xA;command that it becomes.&lt;/p&gt;&#xA;&lt;h2 id=&#34;up-arrow&#34;&gt;Up Arrow &lt;a href=&#34;#up-arrow&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;yaya yaya, I know you can also &lt;code&gt;up-arrow c-e&lt;/code&gt;, but what fun is that, it’s barely a&#xA;flex.  &lt;code&gt;fc&lt;/code&gt; just looks big brained and like you really know what you are doing.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>2025-07-17 Notes</title>
    <id>https://waylonwalker.com/2025-07-17-notes/</id>
    <updated>2025-07-17T19:54:05Z</updated>
    <published>2025-07-17T19:54:05Z</published>
    <link href="https://waylonwalker.com/2025-07-17-notes/" rel="alternate" type="text/html"></link>
    <summary type="text">TIL pygments-htmlformatter is a big win for markata, didn&#39;t have a chance to take notes yesterday, but I&#39;m really working on templates and themes. It&#39;s...</summary>
    <content type="html">&lt;p&gt;TIL &lt;a href=&#34;/pygments-htmlformatter/&#34; class=&#34;wikilink&#34; data-title=&#34;pygments htmlformatter&#34; data-description=&#34;I&amp;#39;ve been a long user of pygments, it&amp;#39;s been the thing that injects with funny little class names like and into the code blocks of my website. I&amp;#39;ve even gone...&#34; data-date=&#34;2025-07-17&#34; data-preview=&#34;I&amp;#39;ve been a long user of pygments, it&amp;#39;s been the thing that injects with funny little class names like and into the code blocks of my website. I&amp;#39;ve even gone...&#34;&gt;pygments htmlformatter&lt;/a&gt; is a big win for &lt;a href=&#34;/markata/&#34; class=&#34;wikilink&#34; data-title=&#34;markata&#34; data-description=&#34;This post is a work in progress.&#34; data-date=&#34;2024-05-30&#34; data-preview=&#34;This post is a work in progress.&#34;&gt;markata&lt;/a&gt;, didn’t have a&#xA;chance to take notes yesterday, but I’m really working on templates and themes.&#xA;It’s becoming more important for me as I get more users, i.e. family members&#xA;blog sites up and running.  No one wants to look default, they all want to look&#xA;unique, learning how to change out themes like this is a good win.&lt;/p&gt;&#xA;&lt;hr/&gt;&#xA;&lt;p&gt;Still working on searchcraft integrations and holy shit is it fast.  I’m&#xA;searching and scrubbing through logs out of cloudwatch at 2ms/search rather&#xA;than their dogwater 30s+ broken ui not loading, not showing me the logs I want.&#xA;This is not even apples to apples, cloudwatch chokes on one job worth of logs,&#xA;I’ve got 500 jobs of logs and searchcraft is eating them up like nothin.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>pygments htmlformatter</title>
    <id>https://waylonwalker.com/pygments-htmlformatter/</id>
    <updated>2025-07-17T19:45:19Z</updated>
    <published>2025-07-17T19:45:19Z</published>
    <link href="https://waylonwalker.com/pygments-htmlformatter/" rel="alternate" type="text/html"></link>
    <summary type="text">I&#39;ve been a long user of pygments, it&#39;s been the thing that injects with funny little class names like and into the code blocks of my website. I&#39;ve even gone...</summary>
    <content type="html">&lt;p&gt;I’ve been a long user of pygments, it’s been the thing that injects &lt;code&gt;&amp;lt;spans&amp;gt;&lt;/code&gt;&#xA;with funny little class names like &lt;code&gt;sc&lt;/code&gt; and &lt;code&gt;si&lt;/code&gt; into the code blocks of my&#xA;website.  I’ve even gone as far as implementing a &lt;a href=&#34;https://github.com/WaylonWalker/markata/blob/main/markata/plugins/md_it_highlight_code.py&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;plugin for&#xA;md-it&lt;/a&gt;,&#xA;but I had no idea how to re-style it.  I long ago got a theme that looked good&#xA;enough from somewhere and just used it, maybe I pulled something from their&#xA;docs site and forgot.  Today I learned you can list all the themes easily from&#xA;the library itself, and render out new css.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;kn&#34;&gt;from&lt;/span&gt; &lt;span class=&#34;nn&#34;&gt;pygments.styles&lt;/span&gt; &lt;span class=&#34;kn&#34;&gt;import&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;get_all_styles&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;list&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;get_all_styles&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;())&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# [&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;#     &amp;#39;abap&amp;#39;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;#     &amp;#39;algol_nu&amp;#39;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;#     &amp;#39;algol&amp;#39;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;#     &amp;#39;arduino&amp;#39;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;#     &amp;#39;autumn&amp;#39;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;#     &amp;#39;borland&amp;#39;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;#     &amp;#39;bw&amp;#39;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;#     &amp;#39;colorful&amp;#39;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;#     &amp;#39;default&amp;#39;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;#     &amp;#39;dracula&amp;#39;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;#     &amp;#39;emacs&amp;#39;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;#     &amp;#39;friendly_grayscale&amp;#39;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;#     &amp;#39;friendly&amp;#39;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;#     &amp;#39;fruity&amp;#39;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;#     &amp;#39;github-dark&amp;#39;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;#     &amp;#39;gruvbox-dark&amp;#39;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;#     &amp;#39;gruvbox-light&amp;#39;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;#     &amp;#39;igor&amp;#39;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;#     &amp;#39;inkpot&amp;#39;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;#     &amp;#39;lightbulb&amp;#39;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;#     &amp;#39;lilypond&amp;#39;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;#     &amp;#39;lovelace&amp;#39;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;#     &amp;#39;manni&amp;#39;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;#     &amp;#39;material&amp;#39;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;#     &amp;#39;monokai&amp;#39;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;#     &amp;#39;murphy&amp;#39;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;#     &amp;#39;native&amp;#39;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;#     &amp;#39;nord-darker&amp;#39;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;#     &amp;#39;nord&amp;#39;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;#     &amp;#39;one-dark&amp;#39;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;#     &amp;#39;paraiso-dark&amp;#39;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;#     &amp;#39;paraiso-light&amp;#39;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;#     &amp;#39;pastie&amp;#39;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;#     &amp;#39;perldoc&amp;#39;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;#     &amp;#39;rainbow_dash&amp;#39;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;#     &amp;#39;rrt&amp;#39;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;#     &amp;#39;sas&amp;#39;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;#     &amp;#39;solarized-dark&amp;#39;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;#     &amp;#39;solarized-light&amp;#39;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;#     &amp;#39;staroffice&amp;#39;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;#     &amp;#39;stata-dark&amp;#39;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;#     &amp;#39;stata-light&amp;#39;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;#     &amp;#39;stata&amp;#39;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;#     &amp;#39;tango&amp;#39;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;#     &amp;#39;trac&amp;#39;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;#     &amp;#39;vim&amp;#39;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;#     &amp;#39;vs&amp;#39;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;#     &amp;#39;xcode&amp;#39;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;#     &amp;#39;zenburn&amp;#39;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# ]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;kn&#34;&gt;from&lt;/span&gt; &lt;span class=&#34;nn&#34;&gt;pygments.formatters&lt;/span&gt; &lt;span class=&#34;kn&#34;&gt;import&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;HtmlFormatter&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;kn&#34;&gt;from&lt;/span&gt; &lt;span class=&#34;nn&#34;&gt;pygments.styles&lt;/span&gt; &lt;span class=&#34;kn&#34;&gt;import&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;get_style_by_name&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;style&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;get_style_by_name&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;monokai&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;formatter&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;HtmlFormatter&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;style&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;style&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;print&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;formatter&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;get_style_defs&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;.highlight&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;))&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;And now you get styles that you can add to your css and be any theme from the&#xA;list above.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nt&#34;&gt;pre&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;line-height&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;mi&#34;&gt;125&lt;/span&gt;&lt;span class=&#34;kt&#34;&gt;%&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;}&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nt&#34;&gt;td&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;linenos&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;normal&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;color&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;kc&#34;&gt;inherit&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;background-color&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;kc&#34;&gt;transparent&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;padding-left&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;mi&#34;&gt;5&lt;/span&gt;&lt;span class=&#34;kt&#34;&gt;px&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;padding-right&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;mi&#34;&gt;5&lt;/span&gt;&lt;span class=&#34;kt&#34;&gt;px&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;}&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nt&#34;&gt;span&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;linenos&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;color&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;kc&#34;&gt;inherit&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;background-color&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;kc&#34;&gt;transparent&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;padding-left&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;mi&#34;&gt;5&lt;/span&gt;&lt;span class=&#34;kt&#34;&gt;px&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;padding-right&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;mi&#34;&gt;5&lt;/span&gt;&lt;span class=&#34;kt&#34;&gt;px&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;}&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nt&#34;&gt;td&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;linenos&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;special&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;color&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;mh&#34;&gt;#000000&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;background-color&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;mh&#34;&gt;#ffffc0&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;padding-left&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;mi&#34;&gt;5&lt;/span&gt;&lt;span class=&#34;kt&#34;&gt;px&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;padding-right&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;mi&#34;&gt;5&lt;/span&gt;&lt;span class=&#34;kt&#34;&gt;px&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;}&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nt&#34;&gt;span&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;linenos&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;special&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;color&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;mh&#34;&gt;#000000&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;background-color&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;mh&#34;&gt;#ffffc0&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;padding-left&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;mi&#34;&gt;5&lt;/span&gt;&lt;span class=&#34;kt&#34;&gt;px&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;padding-right&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;mi&#34;&gt;5&lt;/span&gt;&lt;span class=&#34;kt&#34;&gt;px&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;}&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;highlight&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;hll&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;background-color&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;mh&#34;&gt;#49483e&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;}&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;highlight&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;background&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;mh&#34;&gt;#272822&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;color&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;mh&#34;&gt;#f8f8f2&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;}&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;highlight&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;c&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;color&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;mh&#34;&gt;#959077&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;}&lt;/span&gt; &lt;span class=&#34;c&#34;&gt;/* Comment */&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;highlight&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;err&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;color&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;mh&#34;&gt;#ed007e&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;background-color&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;mh&#34;&gt;#1e0010&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;}&lt;/span&gt; &lt;span class=&#34;c&#34;&gt;/* Error */&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;highlight&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;esc&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;color&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;mh&#34;&gt;#f8f8f2&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;}&lt;/span&gt; &lt;span class=&#34;c&#34;&gt;/* Escape */&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;highlight&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;g&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;color&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;mh&#34;&gt;#f8f8f2&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;}&lt;/span&gt; &lt;span class=&#34;c&#34;&gt;/* Generic */&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;highlight&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;k&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;color&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;mh&#34;&gt;#66d9ef&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;}&lt;/span&gt; &lt;span class=&#34;c&#34;&gt;/* Keyword */&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;highlight&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;l&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;color&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;mh&#34;&gt;#ae81ff&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;}&lt;/span&gt; &lt;span class=&#34;c&#34;&gt;/* Literal */&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;highlight&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;n&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;color&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;mh&#34;&gt;#f8f8f2&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;}&lt;/span&gt; &lt;span class=&#34;c&#34;&gt;/* Name */&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;highlight&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;o&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;color&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;mh&#34;&gt;#ff4689&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;}&lt;/span&gt; &lt;span class=&#34;c&#34;&gt;/* Operator */&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;highlight&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;x&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;color&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;mh&#34;&gt;#f8f8f2&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;}&lt;/span&gt; &lt;span class=&#34;c&#34;&gt;/* Other */&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;highlight&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;p&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;color&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;mh&#34;&gt;#f8f8f2&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;}&lt;/span&gt; &lt;span class=&#34;c&#34;&gt;/* Punctuation */&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;highlight&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;ch&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;color&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;mh&#34;&gt;#959077&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;}&lt;/span&gt; &lt;span class=&#34;c&#34;&gt;/* Comment.Hashbang */&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;highlight&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;cm&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;color&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;mh&#34;&gt;#959077&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;}&lt;/span&gt; &lt;span class=&#34;c&#34;&gt;/* Comment.Multiline */&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;highlight&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;cp&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;color&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;mh&#34;&gt;#959077&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;}&lt;/span&gt; &lt;span class=&#34;c&#34;&gt;/* Comment.Preproc */&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;highlight&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;cpf&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;color&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;mh&#34;&gt;#959077&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;}&lt;/span&gt; &lt;span class=&#34;c&#34;&gt;/* Comment.PreprocFile */&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;highlight&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;c1&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;color&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;mh&#34;&gt;#959077&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;}&lt;/span&gt; &lt;span class=&#34;c&#34;&gt;/* Comment.Single */&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;highlight&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;cs&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;color&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;mh&#34;&gt;#959077&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;}&lt;/span&gt; &lt;span class=&#34;c&#34;&gt;/* Comment.Special */&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;highlight&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;gd&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;color&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;mh&#34;&gt;#ff4689&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;}&lt;/span&gt; &lt;span class=&#34;c&#34;&gt;/* Generic.Deleted */&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;highlight&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;ge&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;color&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;mh&#34;&gt;#f8f8f2&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;font-style&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;kc&#34;&gt;italic&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;}&lt;/span&gt; &lt;span class=&#34;c&#34;&gt;/* Generic.Emph */&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;highlight&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;ges&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;color&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;mh&#34;&gt;#f8f8f2&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;font-weight&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;kc&#34;&gt;bold&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;font-style&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;kc&#34;&gt;italic&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;}&lt;/span&gt; &lt;span class=&#34;c&#34;&gt;/* Generic.EmphStrong */&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;highlight&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;gr&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;color&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;mh&#34;&gt;#f8f8f2&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;}&lt;/span&gt; &lt;span class=&#34;c&#34;&gt;/* Generic.Error */&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;highlight&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;gh&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;color&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;mh&#34;&gt;#f8f8f2&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;}&lt;/span&gt; &lt;span class=&#34;c&#34;&gt;/* Generic.Heading */&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;highlight&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;gi&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;color&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;mh&#34;&gt;#a6e22e&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;}&lt;/span&gt; &lt;span class=&#34;c&#34;&gt;/* Generic.Inserted */&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;highlight&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;go&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;color&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;mh&#34;&gt;#66d9ef&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;}&lt;/span&gt; &lt;span class=&#34;c&#34;&gt;/* Generic.Output */&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;highlight&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;gp&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;color&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;mh&#34;&gt;#ff4689&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;font-weight&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;kc&#34;&gt;bold&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;}&lt;/span&gt; &lt;span class=&#34;c&#34;&gt;/* Generic.Prompt */&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;highlight&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;gs&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;color&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;mh&#34;&gt;#f8f8f2&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;font-weight&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;kc&#34;&gt;bold&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;}&lt;/span&gt; &lt;span class=&#34;c&#34;&gt;/* Generic.Strong */&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;highlight&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;gu&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;color&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;mh&#34;&gt;#959077&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;}&lt;/span&gt; &lt;span class=&#34;c&#34;&gt;/* Generic.Subheading */&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;highlight&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;gt&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;color&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;mh&#34;&gt;#f8f8f2&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;}&lt;/span&gt; &lt;span class=&#34;c&#34;&gt;/* Generic.Traceback */&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;highlight&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;kc&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;color&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;mh&#34;&gt;#66d9ef&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;}&lt;/span&gt; &lt;span class=&#34;c&#34;&gt;/* Keyword.Constant */&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;highlight&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;kd&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;color&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;mh&#34;&gt;#66d9ef&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;}&lt;/span&gt; &lt;span class=&#34;c&#34;&gt;/* Keyword.Declaration */&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;highlight&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;kn&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;color&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;mh&#34;&gt;#ff4689&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;}&lt;/span&gt; &lt;span class=&#34;c&#34;&gt;/* Keyword.Namespace */&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;highlight&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;kp&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;color&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;mh&#34;&gt;#66d9ef&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;}&lt;/span&gt; &lt;span class=&#34;c&#34;&gt;/* Keyword.Pseudo */&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;highlight&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;kr&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;color&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;mh&#34;&gt;#66d9ef&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;}&lt;/span&gt; &lt;span class=&#34;c&#34;&gt;/* Keyword.Reserved */&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;highlight&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;kt&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;color&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;mh&#34;&gt;#66d9ef&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;}&lt;/span&gt; &lt;span class=&#34;c&#34;&gt;/* Keyword.Type */&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;highlight&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;ld&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;color&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;mh&#34;&gt;#e6db74&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;}&lt;/span&gt; &lt;span class=&#34;c&#34;&gt;/* Literal.Date */&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;highlight&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;m&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;color&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;mh&#34;&gt;#ae81ff&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;}&lt;/span&gt; &lt;span class=&#34;c&#34;&gt;/* Literal.Number */&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;highlight&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;s&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;color&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;mh&#34;&gt;#e6db74&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;}&lt;/span&gt; &lt;span class=&#34;c&#34;&gt;/* Literal.String */&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;highlight&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;na&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;color&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;mh&#34;&gt;#a6e22e&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;}&lt;/span&gt; &lt;span class=&#34;c&#34;&gt;/* Name.Attribute */&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;highlight&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;nb&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;color&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;mh&#34;&gt;#f8f8f2&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;}&lt;/span&gt; &lt;span class=&#34;c&#34;&gt;/* Name.Builtin */&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;highlight&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;nc&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;color&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;mh&#34;&gt;#a6e22e&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;}&lt;/span&gt; &lt;span class=&#34;c&#34;&gt;/* Name.Class */&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;highlight&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;no&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;color&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;mh&#34;&gt;#66d9ef&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;}&lt;/span&gt; &lt;span class=&#34;c&#34;&gt;/* Name.Constant */&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;highlight&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;nd&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;color&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;mh&#34;&gt;#a6e22e&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;}&lt;/span&gt; &lt;span class=&#34;c&#34;&gt;/* Name.Decorator */&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;highlight&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;ni&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;color&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;mh&#34;&gt;#f8f8f2&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;}&lt;/span&gt; &lt;span class=&#34;c&#34;&gt;/* Name.Entity */&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;highlight&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;ne&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;color&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;mh&#34;&gt;#a6e22e&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;}&lt;/span&gt; &lt;span class=&#34;c&#34;&gt;/* Name.Exception */&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;highlight&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;nf&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;color&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;mh&#34;&gt;#a6e22e&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;}&lt;/span&gt; &lt;span class=&#34;c&#34;&gt;/* Name.Function */&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;highlight&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;nl&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;color&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;mh&#34;&gt;#f8f8f2&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;}&lt;/span&gt; &lt;span class=&#34;c&#34;&gt;/* Name.Label */&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;highlight&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;nn&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;color&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;mh&#34;&gt;#f8f8f2&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;}&lt;/span&gt; &lt;span class=&#34;c&#34;&gt;/* Name.Namespace */&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;highlight&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;nx&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;color&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;mh&#34;&gt;#a6e22e&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;}&lt;/span&gt; &lt;span class=&#34;c&#34;&gt;/* Name.Other */&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;highlight&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;py&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;color&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;mh&#34;&gt;#f8f8f2&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;}&lt;/span&gt; &lt;span class=&#34;c&#34;&gt;/* Name.Property */&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;highlight&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;nt&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;color&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;mh&#34;&gt;#ff4689&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;}&lt;/span&gt; &lt;span class=&#34;c&#34;&gt;/* Name.Tag */&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;highlight&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;nv&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;color&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;mh&#34;&gt;#f8f8f2&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;}&lt;/span&gt; &lt;span class=&#34;c&#34;&gt;/* Name.Variable */&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;highlight&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;ow&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;color&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;mh&#34;&gt;#ff4689&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;}&lt;/span&gt; &lt;span class=&#34;c&#34;&gt;/* Operator.Word */&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;highlight&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;pm&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;color&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;mh&#34;&gt;#f8f8f2&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;}&lt;/span&gt; &lt;span class=&#34;c&#34;&gt;/* Punctuation.Marker */&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;highlight&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;w&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;color&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;mh&#34;&gt;#f8f8f2&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;}&lt;/span&gt; &lt;span class=&#34;c&#34;&gt;/* Text.Whitespace */&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;highlight&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;mb&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;color&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;mh&#34;&gt;#ae81ff&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;}&lt;/span&gt; &lt;span class=&#34;c&#34;&gt;/* Literal.Number.Bin */&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;highlight&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;mf&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;color&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;mh&#34;&gt;#ae81ff&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;}&lt;/span&gt; &lt;span class=&#34;c&#34;&gt;/* Literal.Number.Float */&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;highlight&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;mh&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;color&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;mh&#34;&gt;#ae81ff&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;}&lt;/span&gt; &lt;span class=&#34;c&#34;&gt;/* Literal.Number.Hex */&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;highlight&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;mi&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;color&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;mh&#34;&gt;#ae81ff&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;}&lt;/span&gt; &lt;span class=&#34;c&#34;&gt;/* Literal.Number.Integer */&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;highlight&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;mo&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;color&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;mh&#34;&gt;#ae81ff&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;}&lt;/span&gt; &lt;span class=&#34;c&#34;&gt;/* Literal.Number.Oct */&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;highlight&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;sa&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;color&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;mh&#34;&gt;#e6db74&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;}&lt;/span&gt; &lt;span class=&#34;c&#34;&gt;/* Literal.String.Affix */&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;highlight&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;sb&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;color&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;mh&#34;&gt;#e6db74&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;}&lt;/span&gt; &lt;span class=&#34;c&#34;&gt;/* Literal.String.Backtick */&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;highlight&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;sc&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;color&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;mh&#34;&gt;#e6db74&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;}&lt;/span&gt; &lt;span class=&#34;c&#34;&gt;/* Literal.String.Char */&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;highlight&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;dl&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;color&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;mh&#34;&gt;#e6db74&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;}&lt;/span&gt; &lt;span class=&#34;c&#34;&gt;/* Literal.String.Delimiter */&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;highlight&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;sd&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;color&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;mh&#34;&gt;#e6db74&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;}&lt;/span&gt; &lt;span class=&#34;c&#34;&gt;/* Literal.String.Doc */&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;highlight&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;s2&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;color&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;mh&#34;&gt;#e6db74&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;}&lt;/span&gt; &lt;span class=&#34;c&#34;&gt;/* Literal.String.Double */&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;highlight&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;se&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;color&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;mh&#34;&gt;#ae81ff&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;}&lt;/span&gt; &lt;span class=&#34;c&#34;&gt;/* Literal.String.Escape */&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;highlight&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;sh&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;color&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;mh&#34;&gt;#e6db74&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;}&lt;/span&gt; &lt;span class=&#34;c&#34;&gt;/* Literal.String.Heredoc */&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;highlight&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;si&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;color&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;mh&#34;&gt;#e6db74&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;}&lt;/span&gt; &lt;span class=&#34;c&#34;&gt;/* Literal.String.Interpol */&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;highlight&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;sx&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;color&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;mh&#34;&gt;#e6db74&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;}&lt;/span&gt; &lt;span class=&#34;c&#34;&gt;/* Literal.String.Other */&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;highlight&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;sr&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;color&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;mh&#34;&gt;#e6db74&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;}&lt;/span&gt; &lt;span class=&#34;c&#34;&gt;/* Literal.String.Regex */&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;highlight&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;s1&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;color&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;mh&#34;&gt;#e6db74&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;}&lt;/span&gt; &lt;span class=&#34;c&#34;&gt;/* Literal.String.Single */&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;highlight&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;ss&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;color&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;mh&#34;&gt;#e6db74&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;}&lt;/span&gt; &lt;span class=&#34;c&#34;&gt;/* Literal.String.Symbol */&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;highlight&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;bp&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;color&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;mh&#34;&gt;#f8f8f2&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;}&lt;/span&gt; &lt;span class=&#34;c&#34;&gt;/* Name.Builtin.Pseudo */&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;highlight&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;fm&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;color&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;mh&#34;&gt;#a6e22e&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;}&lt;/span&gt; &lt;span class=&#34;c&#34;&gt;/* Name.Function.Magic */&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;highlight&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;vc&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;color&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;mh&#34;&gt;#f8f8f2&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;}&lt;/span&gt; &lt;span class=&#34;c&#34;&gt;/* Name.Variable.Class */&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;highlight&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;vg&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;color&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;mh&#34;&gt;#f8f8f2&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;}&lt;/span&gt; &lt;span class=&#34;c&#34;&gt;/* Name.Variable.Global */&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;highlight&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;vi&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;color&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;mh&#34;&gt;#f8f8f2&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;}&lt;/span&gt; &lt;span class=&#34;c&#34;&gt;/* Name.Variable.Instance */&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;highlight&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;vm&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;color&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;mh&#34;&gt;#f8f8f2&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;}&lt;/span&gt; &lt;span class=&#34;c&#34;&gt;/* Name.Variable.Magic */&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;highlight&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;il&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;color&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;mh&#34;&gt;#ae81ff&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;}&lt;/span&gt; &lt;span class=&#34;c&#34;&gt;/* Literal.Number.Integer.Long */&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ caelestia-dots shell</title>
    <id>https://waylonwalker.com/caelestia-dots-shell/</id>
    <updated>2025-07-16T00:32:16Z</updated>
    <published>2025-07-16T00:32:16Z</published>
    <link href="https://waylonwalker.com/caelestia-dots-shell/" rel="alternate" type="text/html"></link>
    <summary type="text">Looking for inspiration? shell by caelestia-dots.</summary>
    <content type="html">&lt;p&gt;Looking for inspiration? &lt;a href=&#34;https://github.com/caelestia-dots/shell&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;shell&lt;/a&gt; by &lt;a href=&#34;https://github.com/caelestia-dots&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;caelestia-dots&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;A very segsy desktop shell&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Quickshell</title>
    <id>https://waylonwalker.com/thought-751/</id>
    <updated>2025-07-16T00:30:48Z</updated>
    <published>2025-07-16T00:30:48Z</published>
    <link href="https://waylonwalker.com/thought-751/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://quickshell.org/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://quickshell.org/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Quickshell&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;A fully user customizable desktop shell&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;quickshell · quickshell.org&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;This has to be the most incredible looking Desktop experience I’ve ever seen, riced to the nines, more polished than macos, more features than kde plasma, this looks incredible and I want to try it and feel it.&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://quickshell.org/assets/showcase/end4.mp4&#34;&gt;https://quickshell.org/assets/showcase/end4.mp4&lt;/a&gt;&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>2025-07-15 Notes</title>
    <id>https://waylonwalker.com/2025-07-15-notes/</id>
    <updated>2025-07-15T10:57:37Z</updated>
    <published>2025-07-15T10:57:37Z</published>
    <link href="https://waylonwalker.com/2025-07-15-notes/" rel="alternate" type="text/html"></link>
    <summary type="text">I&#39;m working on hyprland, one thing I am missing from my awesomewm setup is rofi list all running windows. Sometimes I put a browser instance in a different...</summary>
    <content type="html">&lt;p&gt;I’m working on hyprland, one thing I am missing from my awesomewm setup is rofi&#xA;list all running windows.  Sometimes I put a browser instance in a different&#xA;workspace and I cant find it, especially if I’ve full screened something over&#xA;top of it.&lt;/p&gt;&#xA;&lt;h2 id=&#34;first-pass&#34;&gt;first pass &lt;a href=&#34;#first-pass&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;look for brave and go to it or make one&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;cp&#34;&gt;#!/usr/bin/env bash&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nv&#34;&gt;addr&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;$(&lt;/span&gt;hyprctl clients -j &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt; jq -r &lt;span class=&#34;se&#34;&gt;\&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#x9;&lt;span class=&#34;s1&#34;&gt;&amp;#39;.[] | select(.class == &amp;#34;brave-browser&amp;#34;) | .address&amp;#39;&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt; head -n1&lt;span class=&#34;k&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;if&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt; -n &lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;$addr&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;then&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#x9;&lt;span class=&#34;c1&#34;&gt;# Focus the existing browser window&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#x9;hyprctl dispatch focuswindow address:&lt;span class=&#34;nv&#34;&gt;$addr&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;else&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#x9;&lt;span class=&#34;c1&#34;&gt;# Launch a new browser window&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#x9;brave --password-store&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;basic &lt;span class=&#34;p&#34;&gt;&amp;amp;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;fi&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;h2 id=&#34;second-pass&#34;&gt;second pass &lt;a href=&#34;#second-pass&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;If there are more than one cycle between them.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# Get current window address&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nv&#34;&gt;current_addr&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;$(&lt;/span&gt;hyprctl activewindow -j &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt; jq -r &lt;span class=&#34;s1&#34;&gt;&amp;#39;.address&amp;#39;&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# Get all Brave window addresses&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nv&#34;&gt;brave_windows&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=(&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;$(&lt;/span&gt;hyprctl clients -j &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt; jq -r &lt;span class=&#34;s1&#34;&gt;&amp;#39;.[] | select(.class == &amp;#34;brave-browser&amp;#34;) | .address&amp;#39;&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nv&#34;&gt;num_windows&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;${#&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;brave_windows&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;[@]&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;}&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;if&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;((&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;num_windows&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;==&lt;/span&gt; 0&lt;span class=&#34;o&#34;&gt;))&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;then&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#x9;&lt;span class=&#34;c1&#34;&gt;# No Brave windows, launch it&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#x9;brave --password-store&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;basic &lt;span class=&#34;p&#34;&gt;&amp;amp;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#x9;&lt;span class=&#34;nb&#34;&gt;exit&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;fi&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# Find the index of the current window in brave_windows&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nv&#34;&gt;current_index&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;-1&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;for&lt;/span&gt; i in &lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;${&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;!brave_windows[@]&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;}&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;do&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#x9;&lt;span class=&#34;k&#34;&gt;if&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;[[&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;${&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;brave_windows&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;$i&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;}&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;==&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;$current_addr&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;]]&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;then&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#x9;&#x9;&lt;span class=&#34;nv&#34;&gt;current_index&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;$i&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#x9;&#x9;&lt;span class=&#34;nb&#34;&gt;break&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#x9;&lt;span class=&#34;k&#34;&gt;fi&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;done&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# If we&amp;#39;re already in a Brave window, switch to the next one (wrap around)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;if&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;((&lt;/span&gt;current_index !&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; -1&lt;span class=&#34;o&#34;&gt;))&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;then&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#x9;&lt;span class=&#34;nv&#34;&gt;next_index&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;$((&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;current_index &lt;span class=&#34;o&#34;&gt;+&lt;/span&gt; &lt;span class=&#34;m&#34;&gt;1&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;%&lt;/span&gt; num_windows&lt;span class=&#34;k&#34;&gt;))&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#x9;hyprctl dispatch focuswindow address:&lt;span class=&#34;si&#34;&gt;${&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;brave_windows&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;$next_index&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;}&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;else&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#x9;&lt;span class=&#34;c1&#34;&gt;# Not currently in a Brave window — focus the first one&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#x9;hyprctl dispatch focuswindow address:&lt;span class=&#34;si&#34;&gt;${&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;brave_windows&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;[0]&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;}&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;fi&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;h2 id=&#34;third-pass&#34;&gt;third pass &lt;a href=&#34;#third-pass&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;Generalize it so that I can make keybindings for any app that I can figure out&#xA;the classname of and provide a start command.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;cp&#34;&gt;#!/usr/bin/env bash&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;set&lt;/span&gt; -euo pipefail&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# Args&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nv&#34;&gt;class&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;${&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;1&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;:-&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;}&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;shift&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nv&#34;&gt;start_command&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;$*&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;if&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;[[&lt;/span&gt; -z &lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;$class&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;||&lt;/span&gt; -z &lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;$start_command&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;]]&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;then&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#x9;&lt;span class=&#34;nb&#34;&gt;echo&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;Usage: &lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;$0&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt; &amp;lt;class&amp;gt; &amp;lt;start-command...&amp;gt;&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#x9;&lt;span class=&#34;nb&#34;&gt;exit&lt;/span&gt; &lt;span class=&#34;m&#34;&gt;1&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;fi&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# Current active window&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nv&#34;&gt;current_addr&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;$(&lt;/span&gt;hyprctl activewindow -j &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt; jq -r &lt;span class=&#34;s1&#34;&gt;&amp;#39;.address&amp;#39;&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# All windows with matching class&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nv&#34;&gt;matching_windows&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=(&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;$(&lt;/span&gt;hyprctl clients -j &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt; jq -r --arg class &lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;$class&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt; &lt;span class=&#34;s1&#34;&gt;&amp;#39;.[] | select(.class == $class) | .address&amp;#39;&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nv&#34;&gt;num_windows&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;${#&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;matching_windows&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;[@]&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;}&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;if&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;((&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;num_windows&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;==&lt;/span&gt; 0&lt;span class=&#34;o&#34;&gt;))&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;then&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#x9;&lt;span class=&#34;c1&#34;&gt;# None running — start it&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#x9;&lt;span class=&#34;nb&#34;&gt;eval&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;$start_command&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;&amp;amp;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#x9;&lt;span class=&#34;nb&#34;&gt;exit&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;fi&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# See if currently focused window is in matching list&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nv&#34;&gt;current_index&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;-1&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;for&lt;/span&gt; i in &lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;${&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;!matching_windows[@]&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;}&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;do&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#x9;&lt;span class=&#34;k&#34;&gt;if&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;[[&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;${&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;matching_windows&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;$i&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;}&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;==&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;$current_addr&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;]]&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;then&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#x9;&#x9;&lt;span class=&#34;nv&#34;&gt;current_index&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;$i&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#x9;&#x9;&lt;span class=&#34;nb&#34;&gt;break&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#x9;&lt;span class=&#34;k&#34;&gt;fi&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;done&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# Cycle to next window if already in one&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;if&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;((&lt;/span&gt;current_index !&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; -1&lt;span class=&#34;o&#34;&gt;))&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;then&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#x9;&lt;span class=&#34;nv&#34;&gt;next_index&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;$((&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;current_index &lt;span class=&#34;o&#34;&gt;+&lt;/span&gt; &lt;span class=&#34;m&#34;&gt;1&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;%&lt;/span&gt; num_windows&lt;span class=&#34;k&#34;&gt;))&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#x9;hyprctl dispatch focuswindow address:&lt;span class=&#34;si&#34;&gt;${&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;matching_windows&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;$next_index&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;}&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;else&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#x9;&lt;span class=&#34;c1&#34;&gt;# Not in one — focus first&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#x9;hyprctl dispatch focuswindow address:&lt;span class=&#34;si&#34;&gt;${&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;matching_windows&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;[0]&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;}&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;fi&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;h2 id=&#34;finding-the-classname&#34;&gt;finding the classname &lt;a href=&#34;#finding-the-classname&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;❯ hyprctl clients -j &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt; jq &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt; grep kitty&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;s2&#34;&gt;&amp;#34;class&amp;#34;&lt;/span&gt;: &lt;span class=&#34;s2&#34;&gt;&amp;#34;kitty&amp;#34;&lt;/span&gt;,&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;s2&#34;&gt;&amp;#34;initialClass&amp;#34;&lt;/span&gt;: &lt;span class=&#34;s2&#34;&gt;&amp;#34;kitty&amp;#34;&lt;/span&gt;,&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;s2&#34;&gt;&amp;#34;initialTitle&amp;#34;&lt;/span&gt;: &lt;span class=&#34;s2&#34;&gt;&amp;#34;kitty&amp;#34;&lt;/span&gt;,&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Stop Complaining About Ubuntu...Just Switch To Arch Already! -...</title>
    <id>https://waylonwalker.com/thought-750/</id>
    <updated>2025-07-15T01:48:46Z</updated>
    <published>2025-07-15T01:48:46Z</published>
    <link href="https://waylonwalker.com/thought-750/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/watch?v=HbBF-bmGe2I</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;HbBF-bmGe2I&#34; title=&#34;Stop Complaining About Ubuntu...Just Switch To Arch Already!&#34; playlabel=&#34;Play: Stop Complaining About Ubuntu...Just Switch To Arch Already!&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;DT says it so well in this video, I’ve never really been one to shit on software projects, with maybe a VERY small handful of exceptions.  The shitting on ubuntu always rubbed me wrong, shitting on flatpak and snap I never got, shitting on systemd because of Leonard Pottering I never got, DT puts it in such good words here.  If you don’t like it you are probably not the target audience.&lt;/p&gt;&#xA;&lt;p&gt;If Ubuntu is too bloated, don’t try to debloat it, this is not windows, we have options, Ubuntu is one option and so much is intertwined together in something like Ubuntu if you think you want to try to &lt;em&gt;“debloat”&lt;/em&gt; it good luck.  If you have a problem with Snaps, this is probably not for you.  You are probably looking for a distro with more control, probably something that you choose everything for.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>2025-07-12 Notes</title>
    <id>https://waylonwalker.com/2025-07-12-notes/</id>
    <updated>2025-07-12T15:19:20Z</updated>
    <published>2025-07-12T15:19:20Z</published>
    <link href="https://waylonwalker.com/2025-07-12-notes/" rel="alternate" type="text/html"></link>
    <summary type="text">Starting the polkit agent for hyperland arch to handle permission elevation for desktop applications.</summary>
    <content type="html">&lt;p&gt;Starting the polkit agent for hyperland arch to handle permission elevation for&#xA;desktop applications.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition error&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Error&lt;/p&gt;&#xA;&lt;p&gt;An error occurred while accessing ‘bazzite-nvidia_razorcrest’, the system&#xA;responded: Cannot request authentication for this action. The PolicyKit&#xA;authentication system appears to be not available.: Not authorized to&#xA;perform operation&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;&lt;pre&gt;&lt;code class=&#34;language-config&#34;&gt;exec-once = waybar &amp;amp; hyprpaper &amp;amp; $terminal &amp;amp; polkit &amp;amp; swaync &amp;amp; /usr/lib/polkit-kde-authentication-agent-1&#xA;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt;!!! GIPPITY&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;🧠 Why this happens:&#xA;Polkit handles permission elevation for desktop apps.&#xA;&#xA;Dolphin uses udisks2 to mount drives, which asks Polkit for permission.&#xA;&#xA;If you don&amp;#39;t run a Polkit agent, you won&amp;#39;t be able to authorize mount actions from the GUI.&#xA;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;hr/&gt;&#xA;&lt;div class=&#34;admonition error&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Error&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;❯ just build&#xA;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt;Error: configure storage: kernel does not support overlay fs: ‘overlay’ is not supported over btrfs at “/home/waylon/.local/share/containers/storage/overlay”: backing file system is unsupported for this graph driver&#xA;error: Recipe build failed with exit code 125&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;paru -S fuse-overlayfs&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;mkdir -p ~/.config/containers&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;nvim ~/.config/containers/storage.conf&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;nx&#34;&gt;storage&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nx&#34;&gt;driver&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;overlay&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;nx&#34;&gt;storage&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nx&#34;&gt;options&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nx&#34;&gt;mount_program&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;/usr/bin/fuse-overlayfs&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;hr/&gt;&#xA;&lt;p&gt;Wyatt and I tried 3 times to beat the ice tower on our second run of Cat Quest&#xA;III and failed, its tough.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/c3050a32-b914-489d-9bf3-c9a1adf2bc46.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;ice-tower-fail.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/c3050a32-b914-489d-9bf3-c9a1adf2bc46.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/c3050a32-b914-489d-9bf3-c9a1adf2bc46.mp4&#34; type=&#34;video/mp4&#34;&gt;ice-tower-fail.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Lab Update | Cloudy with a Chance of Tech</title>
    <id>https://waylonwalker.com/thought-747/</id>
    <updated>2025-07-12T02:16:40Z</updated>
    <published>2025-07-12T02:16:40Z</published>
    <link href="https://waylonwalker.com/thought-747/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://blog.thomaswimprine.com/blog/2025-07-07-Lab-Update/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://blog.thomaswimprine.com/blog/2025-07-07-Lab-Update/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://blog.thomaswimprine.com/assets/img/blog/Kub_gnomes_building_cluster_blog.jpg&#34; alt=&#34;Lab Update — Update on the lab setup and what I’ve been working on recently.&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: Lab Update — Update on the lab setup and what I’ve been working on recently.&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Lab Update&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Update on the lab setup and what I’ve been working on recently.&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;Cloudy with a Chance of Tech · blog.thomaswimprine.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Always enjoy a good read through someone elses setup.  I appreciate the desire for pi clusters they are cute, they seem cheap, but feel a bit overrated (at least for those of us with relatively cheap electricity).  I love seeing the refurb “tiny desktops” getting a second useful life in a &lt;a href=&#34;/homelab/&#34; class=&#34;glossary-term&#34; title=&#34;A place to self host applications. For me this is primarily self built web applications, and applications for sharing files with my family. Techno Tim has a...&#34;&gt;homelab&lt;/a&gt; after they have serve their useful life in the corporate world sitting behind the monitor of some reception desk.  These things rock, they are underrated, x86_64, not ARM, so they just work.  Until ARM becomes &lt;em&gt;more&lt;/em&gt; normalized in the datacenter this is where its at.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>2025-07-11 Notes</title>
    <id>https://waylonwalker.com/2025-07-11-notes/</id>
    <updated>2025-07-11T08:06:23Z</updated>
    <published>2025-07-11T08:06:23Z</published>
    <link href="https://waylonwalker.com/2025-07-11-notes/" rel="alternate" type="text/html"></link>
    <summary type="text">Continuing my exploration of Searchcraft I loaded all of my blog into it. It fully posted, indexed, and had my content ready for search in a literal blink....</summary>
    <content type="html">&lt;p&gt;Continuing my exploration of &lt;a href=&#34;https://searchcraft.com&#34;&gt;Searchcraft&lt;/a&gt; I loaded&#xA;all of my blog into it.  It fully posted, indexed, and had my content ready for&#xA;search in a literal blink.  It was like the experience of python devs running&#xA;ruff for the first time, and having the no way you just did that experience.&lt;/p&gt;&#xA;&lt;p&gt;Ok so semantic search is so freaking cool, does not compare to fuzzy search at&#xA;all.  I don’t have to include parts of the title or something to find a post.&#xA;I don’t have to spell things right, I dont even have to get the thing right.  I&#xA;can ask “create a mycraft server in kibinerers” and it takes me to the post&#xA;about running Minecraft in containers.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;kn&#34;&gt;import&lt;/span&gt; &lt;span class=&#34;nn&#34;&gt;asyncio&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;kn&#34;&gt;import&lt;/span&gt; &lt;span class=&#34;nn&#34;&gt;httpx&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;SEARCHCRAFT_URL&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;http://0.0.0.0:8000&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;INDEX_NAME&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;creation_test&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;def&lt;/span&gt; &lt;span class=&#34;nf&#34;&gt;upload_documents&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;m&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;):&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;n&#34;&gt;documents&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;            &lt;span class=&#34;s2&#34;&gt;&amp;#34;id&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;post&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;slug&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;            &lt;span class=&#34;s2&#34;&gt;&amp;#34;title&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;post&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;title&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;            &lt;span class=&#34;s2&#34;&gt;&amp;#34;body&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;post&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;content&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;p&#34;&gt;}&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;k&#34;&gt;for&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;post&lt;/span&gt; &lt;span class=&#34;ow&#34;&gt;in&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;m&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;posts&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;p&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;k&#34;&gt;async&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;with&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;httpx&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;Client&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;()&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;as&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;client&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;n&#34;&gt;url&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;sa&#34;&gt;f&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;SEARCHCRAFT_URL&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;}&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;/index/&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;INDEX_NAME&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;}&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;/documents&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;n&#34;&gt;response&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;client&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;post&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;url&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;json&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;documents&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;n&#34;&gt;response&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;raise_for_status&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;()&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;nb&#34;&gt;print&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;Upload:&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;response&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;json&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;())&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;c1&#34;&gt;# Commit changes&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;n&#34;&gt;commit_url&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;sa&#34;&gt;f&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;SEARCHCRAFT_URL&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;}&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;/index/&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;INDEX_NAME&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;}&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;/commit&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;n&#34;&gt;commit_resp&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;client&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;post&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;commit_url&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;n&#34;&gt;commit_resp&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;raise_for_status&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;()&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;nb&#34;&gt;print&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;Committed:&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;commit_resp&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;json&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;())&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;kn&#34;&gt;from&lt;/span&gt; &lt;span class=&#34;nn&#34;&gt;markata&lt;/span&gt; &lt;span class=&#34;kn&#34;&gt;import&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;Markata&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;m&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;Markata&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;()&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;upload_documents&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;m&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>2025-07-10 Notes</title>
    <id>https://waylonwalker.com/2025-07-10-notes/</id>
    <updated>2025-07-10T20:10:58Z</updated>
    <published>2025-07-10T20:10:58Z</published>
    <link href="https://waylonwalker.com/2025-07-10-notes/" rel="alternate" type="text/html"></link>
    <summary type="text">[](https://www.youtube.com/watch?v=VFlLRH3ifcM)</summary>
    <content type="html">&lt;p&gt;&lt;a href=&#34;https://www.youtube.com/watch?v=VFlLRH3ifcM&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://i.ytimg.com/vi/VFlLRH3ifcM/maxresdefault.jpg&#34; alt=&#34;Lightspeed search built for devs | Don MacKinnon on the future of content search&#34;/ data-glightbox=&#34;description: Lightspeed search built for devs | Don MacKinnon on the future of content search&#34;&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Spent the day working through &lt;a href=&#34;https://www.youtube.com/watch?v=VFlLRH3ifcM&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/www.youtube.com.png&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/www.youtube.com.png&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;Lightspeed search built for devs | Don MacKinnon&#xA;on the future of content search&lt;/a&gt;,&#xA;this episode of the changelog about searchcraft.  It was really interesting,&lt;/p&gt;&#xA;&lt;p&gt;Then found this demo loading all of wikipedia and getting really sick search&#xA;results out of it!&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://www.youtube.com/watch?v=SjuPn6_yl2s&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/www.youtube.com.png&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/www.youtube.com.png&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;https://www.youtube.com/watch?v=SjuPn6_yl2s&lt;/a&gt;&lt;/p&gt;&#xA;&lt;hr/&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;podman run --name searchcraft -p 8000:8000 searchcraftinc/searchcraft-core:latest&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# create an index&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;curl -X POST -H &lt;span class=&#34;s2&#34;&gt;&amp;#34;Content-Type: application/json&amp;#34;&lt;/span&gt; --data &lt;span class=&#34;s1&#34;&gt;&amp;#39;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s1&#34;&gt;{&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s1&#34;&gt;  &amp;#34;index&amp;#34;: {&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s1&#34;&gt;    &amp;#34;name&amp;#34;: &amp;#34;creation_test&amp;#34;,&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s1&#34;&gt;    &amp;#34;search_fields&amp;#34;: [&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s1&#34;&gt;      &amp;#34;title&amp;#34;,&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s1&#34;&gt;      &amp;#34;body&amp;#34;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s1&#34;&gt;    ],&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s1&#34;&gt;    &amp;#34;fields&amp;#34;: {&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s1&#34;&gt;      &amp;#34;id&amp;#34;: {&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s1&#34;&gt;        &amp;#34;type&amp;#34;: &amp;#34;text&amp;#34;,&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s1&#34;&gt;        &amp;#34;required&amp;#34;: true,&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s1&#34;&gt;        &amp;#34;stored&amp;#34;: true,&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s1&#34;&gt;        &amp;#34;indexed&amp;#34;: false&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s1&#34;&gt;      },&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s1&#34;&gt;      &amp;#34;created_at&amp;#34;: {&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s1&#34;&gt;        &amp;#34;type&amp;#34;: &amp;#34;datetime&amp;#34;,&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s1&#34;&gt;        &amp;#34;fast&amp;#34;: true,&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s1&#34;&gt;        &amp;#34;stored&amp;#34;: true,&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s1&#34;&gt;        &amp;#34;indexed&amp;#34;: true&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s1&#34;&gt;      },&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s1&#34;&gt;      &amp;#34;title&amp;#34;: {&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s1&#34;&gt;        &amp;#34;type&amp;#34;: &amp;#34;text&amp;#34;,&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s1&#34;&gt;        &amp;#34;stored&amp;#34;: true&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s1&#34;&gt;      },&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s1&#34;&gt;      &amp;#34;body&amp;#34;: {&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s1&#34;&gt;        &amp;#34;type&amp;#34;: &amp;#34;text&amp;#34;,&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s1&#34;&gt;        &amp;#34;stored&amp;#34;: true&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s1&#34;&gt;      },&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s1&#34;&gt;      &amp;#34;active&amp;#34;: {&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s1&#34;&gt;        &amp;#34;type&amp;#34;: &amp;#34;bool&amp;#34;,&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s1&#34;&gt;        &amp;#34;fast&amp;#34;: true,&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s1&#34;&gt;        &amp;#34;stored&amp;#34;: true&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s1&#34;&gt;      },&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s1&#34;&gt;      &amp;#34;rating&amp;#34;: {&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s1&#34;&gt;        &amp;#34;type&amp;#34;: &amp;#34;f64&amp;#34;,&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s1&#34;&gt;        &amp;#34;stored&amp;#34;: true,&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s1&#34;&gt;        &amp;#34;fast&amp;#34;: true&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s1&#34;&gt;      },&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s1&#34;&gt;      &amp;#34;reviews&amp;#34;: {&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s1&#34;&gt;        &amp;#34;type&amp;#34;: &amp;#34;u64&amp;#34;,&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s1&#34;&gt;        &amp;#34;stored&amp;#34;: true,&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s1&#34;&gt;        &amp;#34;fast&amp;#34;: true&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s1&#34;&gt;      },&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s1&#34;&gt;      &amp;#34;tags&amp;#34;: {&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s1&#34;&gt;        &amp;#34;type&amp;#34;: &amp;#34;text&amp;#34;,&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s1&#34;&gt;        &amp;#34;stored&amp;#34;: true,&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s1&#34;&gt;        &amp;#34;multi&amp;#34;: true&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s1&#34;&gt;      },&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s1&#34;&gt;      &amp;#34;category&amp;#34;: {&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s1&#34;&gt;        &amp;#34;type&amp;#34;: &amp;#34;facet&amp;#34;,&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s1&#34;&gt;        &amp;#34;stored&amp;#34;: true&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s1&#34;&gt;      },&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s1&#34;&gt;      &amp;#34;formats&amp;#34;: {&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s1&#34;&gt;        &amp;#34;type&amp;#34;: &amp;#34;facet&amp;#34;,&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s1&#34;&gt;        &amp;#34;stored&amp;#34;: true,&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s1&#34;&gt;        &amp;#34;multi&amp;#34;: true&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s1&#34;&gt;      }&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s1&#34;&gt;      &amp;#34;url&amp;#34;: {&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s1&#34;&gt;        &amp;#34;type&amp;#34;: &amp;#34;text&amp;#34;,&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s1&#34;&gt;        &amp;#34;stored&amp;#34;: true&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s1&#34;&gt;      }&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s1&#34;&gt;    },&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s1&#34;&gt;    &amp;#34;weight_multipliers&amp;#34;: {&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s1&#34;&gt;      &amp;#34;title&amp;#34;: 2,&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s1&#34;&gt;      &amp;#34;body&amp;#34;: 0.7&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s1&#34;&gt;    }&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s1&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s1&#34;&gt;  }&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s1&#34;&gt;}&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;&lt;/span&gt; http://0.0.0.0:8000/index&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# put a document in the index&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;curl -X POST -H &lt;span class=&#34;s2&#34;&gt;&amp;#34;Content-Type: application/json&amp;#34;&lt;/span&gt;   --data &lt;span class=&#34;s1&#34;&gt;&amp;#39;{&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s1&#34;&gt;    &amp;#34;document&amp;#34;: {&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s1&#34;&gt;      &amp;#34;id&amp;#34;: &amp;#34;doc-001&amp;#34;,&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s1&#34;&gt;      &amp;#34;created_at&amp;#34;: &amp;#34;2024-07-10T12:00:00Z&amp;#34;,&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s1&#34;&gt;      &amp;#34;title&amp;#34;: &amp;#34;Hello World&amp;#34;,&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s1&#34;&gt;      &amp;#34;body&amp;#34;: &amp;#34;This is your first Searchcraft document!&amp;#34;,&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s1&#34;&gt;      &amp;#34;url&amp;#34;: &amp;#34;https://searchcraft.com&amp;#34;,&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s1&#34;&gt;      &amp;#34;active&amp;#34;: true,&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s1&#34;&gt;      &amp;#34;rating&amp;#34;: 4.5,&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s1&#34;&gt;      &amp;#34;reviews&amp;#34;: 3,&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s1&#34;&gt;      &amp;#34;tags&amp;#34;: [&amp;#34;demo&amp;#34;, &amp;#34;test&amp;#34;],&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s1&#34;&gt;      &amp;#34;category&amp;#34;: &amp;#34;/demo&amp;#34;,&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s1&#34;&gt;      &amp;#34;formats&amp;#34;: [&amp;#34;/pdf&amp;#34;, &amp;#34;/markdown&amp;#34;]&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s1&#34;&gt;    }&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s1&#34;&gt;  }&amp;#39;&lt;/span&gt; http://0.0.0.0:8000/document/creation_test&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# commit the changes&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;curl -X POST http://0.0.0.0:8000/index/creation_test/commit&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;## search&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;curl -X POST -H &lt;span class=&#34;s2&#34;&gt;&amp;#34;Content-Type: application/json&amp;#34;&lt;/span&gt; --data &lt;span class=&#34;s1&#34;&gt;&amp;#39;{&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s1&#34;&gt;  &amp;#34;limit&amp;#34;: 5,&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s1&#34;&gt;  &amp;#34;offset&amp;#34;: 0,&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s1&#34;&gt;  &amp;#34;query&amp;#34;: {&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s1&#34;&gt;    &amp;#34;fuzzy&amp;#34;: {&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s1&#34;&gt;      &amp;#34;ctx&amp;#34;: &amp;#34;searchcraft&amp;#34;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s1&#34;&gt;    }&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s1&#34;&gt;  }&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s1&#34;&gt;}&amp;#39;&lt;/span&gt; http://0.0.0.0:8000/index/creation_test/search&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;results&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;{&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  &lt;span class=&#34;nt&#34;&gt;&amp;#34;status&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;mi&#34;&gt;200&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  &lt;span class=&#34;nt&#34;&gt;&amp;#34;data&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;nt&#34;&gt;&amp;#34;hits&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;      &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;nt&#34;&gt;&amp;#34;doc&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;          &lt;span class=&#34;nt&#34;&gt;&amp;#34;id&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;doc-001&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;          &lt;span class=&#34;nt&#34;&gt;&amp;#34;formats&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;            &lt;span class=&#34;s2&#34;&gt;&amp;#34;/pdf&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;            &lt;span class=&#34;s2&#34;&gt;&amp;#34;/markdown&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;          &lt;span class=&#34;p&#34;&gt;],&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;          &lt;span class=&#34;nt&#34;&gt;&amp;#34;active&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;kc&#34;&gt;true&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;          &lt;span class=&#34;nt&#34;&gt;&amp;#34;reviews&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;mi&#34;&gt;3&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;          &lt;span class=&#34;nt&#34;&gt;&amp;#34;tags&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;            &lt;span class=&#34;s2&#34;&gt;&amp;#34;demo&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;            &lt;span class=&#34;s2&#34;&gt;&amp;#34;test&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;          &lt;span class=&#34;p&#34;&gt;],&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;          &lt;span class=&#34;nt&#34;&gt;&amp;#34;created_at&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;2024-07-10T12:00:00Z&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;          &lt;span class=&#34;nt&#34;&gt;&amp;#34;category&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;/demo&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;          &lt;span class=&#34;nt&#34;&gt;&amp;#34;rating&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;mf&#34;&gt;4.5&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;          &lt;span class=&#34;nt&#34;&gt;&amp;#34;title&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;Hello World&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;          &lt;span class=&#34;nt&#34;&gt;&amp;#34;body&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;This is your first Searchcraft document!&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;p&#34;&gt;},&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;nt&#34;&gt;&amp;#34;document_id&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;13964682816361504761&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;nt&#34;&gt;&amp;#34;score&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;mf&#34;&gt;0.90137744&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;nt&#34;&gt;&amp;#34;source_index&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;creation_test&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;      &lt;span class=&#34;p&#34;&gt;}&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;p&#34;&gt;],&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;nt&#34;&gt;&amp;#34;count&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;mi&#34;&gt;1&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;nt&#34;&gt;&amp;#34;time_taken&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;mf&#34;&gt;0.000679577&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;nt&#34;&gt;&amp;#34;facets&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;      &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;nt&#34;&gt;&amp;#34;category&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;          &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;            &lt;span class=&#34;nt&#34;&gt;&amp;#34;path&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;/demo&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;            &lt;span class=&#34;nt&#34;&gt;&amp;#34;count&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;mi&#34;&gt;1&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;          &lt;span class=&#34;p&#34;&gt;}&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;p&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;      &lt;span class=&#34;p&#34;&gt;},&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;      &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;nt&#34;&gt;&amp;#34;formats&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;          &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;            &lt;span class=&#34;nt&#34;&gt;&amp;#34;path&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;/markdown&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;            &lt;span class=&#34;nt&#34;&gt;&amp;#34;count&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;mi&#34;&gt;1&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;          &lt;span class=&#34;p&#34;&gt;},&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;          &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;            &lt;span class=&#34;nt&#34;&gt;&amp;#34;path&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;/pdf&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;            &lt;span class=&#34;nt&#34;&gt;&amp;#34;count&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;mi&#34;&gt;1&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;          &lt;span class=&#34;p&#34;&gt;}&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;p&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;      &lt;span class=&#34;p&#34;&gt;}&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;p&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  &lt;span class=&#34;p&#34;&gt;}&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;}&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Notes – 17:00 Wed 9 Jul 2025 – David Bushell – Web Dev (UK)</title>
    <id>https://waylonwalker.com/thought-744/</id>
    <updated>2025-07-09T21:35:23Z</updated>
    <published>2025-07-09T21:35:23Z</published>
    <link href="https://waylonwalker.com/thought-744/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://dbushell.com/notes/2025-07-09T17:00Z/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://dbushell.com/notes/2025-07-09T17:00Z/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://dbushell.com/assets/images/ogimage.png&#34; alt=&#34;Notes – 17:00 Wed 9 Jul 2025 — Notes – 17:00 Wed 9 Jul 2025&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: Notes – 17:00 Wed 9 Jul 2025 — Notes – 17:00 Wed 9 Jul 2025&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Notes – 17:00 Wed 9 Jul 2025&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Notes – 17:00 Wed 9 Jul 2025&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;dbushell.com · dbushell.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Enjoying watching David bring together his rss reader day by day. Excited to see where it goes.  Im trying to get better at dropping notes like this without a ton of context, without needing to be right, just a note of whats on my mind and what I’m doing.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 uv cache prune</title>
    <id>https://waylonwalker.com/thought-743/</id>
    <updated>2025-07-09T19:41:13Z</updated>
    <published>2025-07-09T19:41:13Z</published>
    <link href="https://waylonwalker.com/thought-743/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://simonwillison.net/2025/Jul/8/uv-cache-prune/#atom-everything</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://simonwillison.net/2025/Jul/8/uv-cache-prune/#atom-everything&#34; class=&#34;embed-card-link  has-avatar has-avatar-before&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/simonwillison.net.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/simonwillison.net.ico&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;uv cache prune&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;If you&amp;#39;re running low on disk space and are a uv user, don&amp;#39;t forget about uv cache prune: uv cache prune removes all unused cache entries. For example, the cache …&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;Simon Willison’s Weblog · simonwillison.net&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Good point to check on your uv cache if you are running low on disk space.  I checked mine today, and it wasn’t too bad so I left it alone.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;du -sh &lt;span class=&#34;sb&#34;&gt;`&lt;/span&gt;uv cache dir&lt;span class=&#34;sb&#34;&gt;`&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>2025-07-09 Notes</title>
    <id>https://waylonwalker.com/2025-07-09-notes/</id>
    <updated>2025-07-09T08:14:47Z</updated>
    <published>2025-07-09T08:14:47Z</published>
    <link href="https://waylonwalker.com/2025-07-09-notes/" rel="alternate" type="text/html"></link>
    <summary type="text">What a nightmare this glossary plugin turns out to be, it broke my site. I had it really close, then one more change asked for to the llm, an LGTM and did...</summary>
    <content type="html">&lt;p&gt;What a nightmare this glossary plugin turns out to be, it broke my site.  I had&#xA;it really close, then one more change asked for to the llm, an LGTM and did not&#xA;look close, it rewrote the whole thing and started rendering markdown with its&#xA;own renderer not my configured markdown renderer.  Its close to working not but&#xA;moved to post_render and using &lt;a href=&#34;/html/&#34; class=&#34;glossary-term&#34; title=&#34;HTML (HyperText Markup Language) is the standard markup language used to create and design documents on the World Wide Web. It structures web content by...&#34;&gt;html&lt;/a&gt;/beautifulsoup rather than the raw markdown.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 omarchy/install/webapps.sh at master · basecamp/omarchy</title>
    <id>https://waylonwalker.com/thought-741/</id>
    <updated>2025-07-08T18:02:18Z</updated>
    <published>2025-07-08T18:02:18Z</published>
    <link href="https://waylonwalker.com/thought-741/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://github.com/basecamp/omarchy/blob/master/install/webapps.sh</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;/static/https://github.com/basecamp/omarchy/blob/master/install/webapps.sh&#34; class=&#34;glightbox-link&#34; aria-label=&#34;https://github.com/basecamp/omarchy/blob/master/install/webapps.sh&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;/static/https://github.com/basecamp/omarchy/blob/master/install/webapps.sh&#34; alt=&#34;https://github.com/basecamp/omarchy/blob/master/install/webapps.sh&#34;/ data-glightbox=&#34;description: https://github.com/basecamp/omarchy/blob/master/install/webapps.sh&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;p&gt;I’m digging these web2app’s from DHH’s omarchy for setting up an opinionated archlinux hyprland.  This gives a way to quickly open a web app as an app either with a hotkey or run launcher in its own dedicated window that you can put on it’s own workspace.  I really like a workflow of keeping one window per workspace on one monitor and I can quickly navigate between apps with a single hotkey.  This gives you the power to switch through things like chat, terminal, browser, steam game with blazing speed from the keybaord, no clicking no searching, just going directly to it.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ kyantech Palmr</title>
    <id>https://waylonwalker.com/kyantech-palmr/</id>
    <updated>2025-07-08T13:56:21Z</updated>
    <published>2025-07-08T13:56:21Z</published>
    <link href="https://waylonwalker.com/kyantech-palmr/" rel="alternate" type="text/html"></link>
    <summary type="text">Check out kyantech and their project Palmr.</summary>
    <content type="html">&lt;p&gt;Check out &lt;a href=&#34;https://github.com/kyantech&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;kyantech&lt;/a&gt; and their project &lt;a href=&#34;https://github.com/kyantech/Palmr&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;Palmr&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;🌴 Palmr. is an open-source file-sharing platform focused on privacy and security. It enables users to upload, manage, and share files with features like password protection, custom links, and access control without tracking or limitations. Designed for seamless and secure sharing, Palmr. is completely free.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>2025-07-08 Notes</title>
    <id>https://waylonwalker.com/2025-07-08-notes/</id>
    <updated>2025-07-08T11:27:07Z</updated>
    <published>2025-07-08T11:27:07Z</published>
    <link href="https://waylonwalker.com/2025-07-08-notes/" rel="alternate" type="text/html"></link>
    <summary type="text">Setting up the hyprland run launcher to not be case sensitive.</summary>
    <content type="html">&lt;p&gt;Setting up the hyprland run launcher to not be case sensitive.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nv&#34;&gt;$menu&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; wofi --show drun --insensitive&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;hr/&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>2025-07-07 Notes</title>
    <id>https://waylonwalker.com/2025-07-07-notes/</id>
    <updated>2025-07-07T23:13:36Z</updated>
    <published>2025-07-07T23:13:36Z</published>
    <link href="https://waylonwalker.com/2025-07-07-notes/" rel="alternate" type="text/html"></link>
    <summary type="text">leaning into the rediculous rainbow borders instead of getting rid of them in hyprland.</summary>
    <content type="html">&lt;p&gt;leaning into the rediculous rainbow borders instead of getting rid of them in hyprland.&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code class=&#34;language-conf&#34;&gt;col.active_border = rgba(ff77ffcc) rgba(33ccffee) rgba(aa00ffee) rgba(00ff99ee) rgba(ff77ffcc) rgba(33ccffee) rgba(aa00ffee) rgba(00ff99ee) 45deg&#xA;col.inactive_border = rgba(111111aa) rgba(2a2a2aaa) rgba(111111aa) rgba(fafafaaa) rgba(fafafaaa) rgba(fafafaaa) rgba(111111aa) rgba(2a2a2aaa) 90deg&#xA;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/abe9fec8-ce1c-4fdd-8975-2667f87df9ba.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;image&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/abe9fec8-ce1c-4fdd-8975-2667f87df9ba.webp&#34; alt=&#34;image&#34;/ data-glightbox=&#34;description: image&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 GitHub - chase/awrit: A full graphical web browser for Kitty t...</title>
    <id>https://waylonwalker.com/thought-738/</id>
    <updated>2025-07-07T17:57:42Z</updated>
    <published>2025-07-07T17:57:42Z</published>
    <link href="https://waylonwalker.com/thought-738/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://github.com/chase/awrit</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://github.com/chase/awrit&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://opengraph.githubassets.com/68000d88a85a3e8136639a3b27680d53a59b90a33063e1fa45db4e55f1e41d12/chase/awrit&#34; alt=&#34;GitHub - chase/awrit: A full graphical web browser for Kitty terminal with mouse and keyboard support — A full graphical web browser for Kitty terminal with mouse and keyboard support - chase/awrit&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: GitHub - chase/awrit: A full graphical web browser for Kitty terminal with mouse and keyboard support — A full graphical web browser for Kitty terminal with mouse and keyboard support - chase/awrit&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;GitHub - chase/awrit: A full graphical web browser for Kitty terminal with mouse and keyboard support&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;A full graphical web browser for Kitty terminal with mouse and keyboard support - chase/awrit&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;GitHub · github.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;awrit is a full graphical browser that runs inside of kitty.  I’ve moved on some of my machines away from kitty as the maintainer has seemed so hostile and there are other great therminals out there, but I’m going to give this a go.  I have kitty running on my hyprland setup as it is the default anyways.  It is actual chromium rendering to a kitty graphics protocol.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>tmux clipboard on hyprland</title>
    <id>https://waylonwalker.com/tmux-clipboard-on-hyprland/</id>
    <updated>2025-07-06T20:45:47Z</updated>
    <published>2025-07-06T20:45:47Z</published>
    <link href="https://waylonwalker.com/tmux-clipboard-on-hyprland/" rel="alternate" type="text/html"></link>
    <summary type="text">Smooth clipboard settings for tmux is critical for my workflow. I&#39;m often grabbing snippets of terminal output to paste into team chats, blog posts, or llm...</summary>
    <content type="html">&lt;p&gt;Smooth clipboard settings for tmux is critical for my workflow.  I’m often&#xA;grabbing snippets of terminal output to paste into team chats, blog posts, or&#xA;llm prompts.  Admittedly, I’m often doing this with the mouse, unless it’s&#xA;coming from neovim, which I generally do with motions.  Moving from an &lt;code&gt;xorg&lt;/code&gt;&#xA;based setup to hyprland has required me to reconfigure my tmux clipboard&#xA;settings.  This is what I did.&lt;/p&gt;&#xA;&lt;p&gt;First install wl-clipboard with &lt;a href=&#34;/paru/&#34; class=&#34;glossary-term&#34; title=&#34;paru is a package manager for archlinux that installs packages from the &lt;a href=&#34;/aur/&#34; class=&#34;glossary-term&#34; title=&#34;Arch User Repository, a collection of community maintained packages for archlinux.&#34;&gt;AUR&lt;/a&gt;.&#34;&gt;paru&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;paru -S wl-clipboard&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Next add this to your tmux config.  I’ve long had this config, but with only&#xA;the &lt;code&gt;xorg&lt;/code&gt;/&lt;code&gt;xclip&lt;/code&gt; setup, now this checks for wl-copy, uses it, or falls back to&#xA;my old &lt;code&gt;xclip&lt;/code&gt; setup.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;bind&lt;/span&gt; -T copy-mode-vi Enter send-keys -X copy-pipe-and-cancel &lt;span class=&#34;s2&#34;&gt;&amp;#34;bash -c &amp;#39;command -v wl-copy &amp;gt;/dev/null &amp;amp;&amp;amp; wl-copy || xclip -i -f -selection primary | xclip -i -selection clipboard&amp;#39;&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;set-option -s set-clipboard off&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;bind-key -T copy-mode-vi MouseDragEnd1Pane send-keys -X copy-pipe-and-cancel &lt;span class=&#34;s2&#34;&gt;&amp;#34;bash -c &amp;#39;command -v wl-copy &amp;gt;/dev/null &amp;amp;&amp;amp; wl-copy || xclip -i -f -selection primary | xclip -i -selection clipboard&amp;#39;&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>command palettes are overrated</title>
    <id>https://waylonwalker.com/command-palettes-are-overrated/</id>
    <updated>2025-07-06T12:37:40Z</updated>
    <published>2025-07-06T12:37:40Z</published>
    <link href="https://waylonwalker.com/command-palettes-are-overrated/" rel="alternate" type="text/html"></link>
    <summary type="text">Command palettes are slow, and overrated, you should treat yourself better. You probably installed VSC*** out of the box and your co-workers see you using...</summary>
    <content type="html">&lt;p&gt;Command palettes are slow, and overrated, you should treat yourself better.&#xA;You probably installed VSC*** out of the box and your co-workers see you using&#xA;the mouse and reprimanded you as they should.  Mouse usage is not OK if you are&#xA;a software dev, you should have the cheap ass free mouse that came with your&#xA;cousins dell machine five years ago and only use if for emergencies.  If you&#xA;want to be fast you cannot do that by moving cursors to imprecise locations and&#xA;clicking with your hand.  You are not a caveman, put down the stones and get&#xA;with the damn times.  You need to be moving with precision.&lt;/p&gt;&#xA;&lt;h2 id=&#34;stage-one-the-command-palette&#34;&gt;Stage One, the command palette &lt;a href=&#34;#stage-one-the-command-palette&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;So you are taking your first few baby steps away from that Logitech MX Master&#xA;and you need to get shit done, during these infant months the command palette&#xA;is your friend.  Use it you will be 10x faster than Razer Naga Ron from&#xA;accounting.  If you are in an IDE like &lt;code&gt;VSC***&lt;/code&gt; or a JEttedBrains editor they&#xA;come with a command palette for running commands and fuzy finding files, use&#xA;it.  If you are in nvim, move on you probably don’t need this, unless you are&#xA;still teething on &lt;code&gt;VSC***&lt;/code&gt;, during that tim use &lt;code&gt;:Telescope commands&lt;/code&gt;.&lt;/p&gt;&#xA;&lt;h2 id=&#34;close-the-fn-tree&#34;&gt;Close the fn Tree &lt;a href=&#34;#close-the-fn-tree&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;You don’t need a goddamn file tree open all the goddamn time, its taking up&#xA;screen space and filling your brain with useless shit.  They can be a helpful&#xA;tool to move, rename, refactor files, or familiarize yourself with a codebase,&#xA;but you don’t use one if you want to walk someday, so just like the command&#xA;palette we are going to give it up for fuzzy find.  If you are in nvim you are&#xA;going to want to use &lt;code&gt;:Telescope find_files&lt;/code&gt;  those other big brained ides have&#xA;things, look up the keybinding.&lt;/p&gt;&#xA;&lt;h2 id=&#34;now-that-we-are-crawling&#34;&gt;Now that we are crawling &lt;a href=&#34;#now-that-we-are-crawling&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;As you start to get your legs under you and you can crawl away from mamas teet&#xA;note down the commands that you use all the time, we want to get command&#xA;palette usage way down.  Not to zero, without some sort of fuzzy command picker&#xA;(even &lt;code&gt;:&amp;lt;tab&amp;gt;&lt;/code&gt;) you are probably trying to remember too much and allocating too&#xA;many brain cells to editing text, don’t do that.  Resist over-correcting.&lt;/p&gt;&#xA;&lt;h2 id=&#34;assign-hotkeys&#34;&gt;assign hotkeys &lt;a href=&#34;#assign-hotkeys&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;Now you need to get yourself some hotkeys going, this is for the hot shit that&#xA;you use several times a minute.  You should be able to do things like swap&#xA;between the current file and the last file in one keystroke without wasting a&#xA;single brain cycle, it should be automatic.  Go to definition, go to reference,&#xA;no searching, searching is slow, find_files is slow.  These are tools for&#xA;exploration we are tyring to get real work done here.&lt;/p&gt;&#xA;&lt;p&gt;Here’s a few things you should be able to do if you want to keep up with your&#xA;Grandma, she’s been slayin these keys for years.&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;go to definition&lt;/li&gt;&#xA;&lt;li&gt;go to reference&lt;/li&gt;&#xA;&lt;li&gt;find_files&lt;/li&gt;&#xA;&lt;li&gt;find and replace&lt;/li&gt;&#xA;&lt;li&gt;rename&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/glossary/git/&#34; class=&#34;glossary-term&#34; title=&#34;Git is a version control system for tracking changes in source code during software development. In the beginning there were many, some were licensed. As...&#34;&gt;git&lt;/a&gt; add this file, commit, push&lt;/li&gt;&#xA;&lt;li&gt;go to the last file&lt;/li&gt;&#xA;&lt;li&gt;go up and down the jumplist&lt;/li&gt;&#xA;&lt;li&gt;go up and down the quickfix list&lt;/li&gt;&#xA;&lt;li&gt;list open files&lt;/li&gt;&#xA;&lt;li&gt;harpoon all the files you go to regularly&lt;/li&gt;&#xA;&lt;li&gt;format&lt;/li&gt;&#xA;&lt;li&gt;move around your files&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;h2 id=&#34;fly&#34;&gt;fly &lt;a href=&#34;#fly&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;Over time you should be using your command pallete less and less, this is not&#xA;designed to run every goddamn command through.  Note the ones you use a lot and&#xA;add keybinds.  If you are using one of those editors that don’t make it clear&#xA;what the fuck your running when you execute a command ask gippity, it can&#xA;probably knock out that binding in 30s just fine.&lt;/p&gt;&#xA;&lt;h2 id=&#34;inspiration&#34;&gt;inspiration &lt;a href=&#34;#inspiration&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;The decline of “vim btw” by Sylvan Franklin.  It’s a pretty incredible video,&#xA;he is crushing these half satire dry humor tech content videos.  He nails that&#xA;with the death of vimBTW we lost the craft of knowing your editor in and out.&#xA;We lost the art of flying through text.  Now we have plugin kitties that say&#xA;vimBtw, but they really aren’t using any vim features past hjkl.&lt;/p&gt;&#xA;&lt;p&gt;[[ thoughts-724 ]]&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://www.youtube.com/watch?v=RmnqdAidVeE&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/www.youtube.com.png&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/www.youtube.com.png&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;https://www.youtube.com/watch?v=RmnqdAidVeE&lt;/a&gt;&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>2025-07-06 Notes</title>
    <id>https://waylonwalker.com/2025-07-06-notes/</id>
    <updated>2025-07-06T09:43:22Z</updated>
    <published>2025-07-06T09:43:22Z</published>
    <link href="https://waylonwalker.com/2025-07-06-notes/" rel="alternate" type="text/html"></link>
    <summary type="text">hyprland volume control, I wasn&#39;t sure if I needed something specific for wayland/pipewire, nope pavucontrol just works.</summary>
    <content type="html">&lt;h2 id=&#34;cat-quest-iii&#34;&gt;Cat Quest III &lt;a href=&#34;#cat-quest-iii&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/b9aeb047-6e64-44f9-b067-0dadd951ad83.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;getting-ship-key.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/b9aeb047-6e64-44f9-b067-0dadd951ad83.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/b9aeb047-6e64-44f9-b067-0dadd951ad83.mp4&#34; type=&#34;video/mp4&#34;&gt;getting-ship-key.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;hr/&gt;&#xA;&lt;p&gt;hyprland volume control, I wasn’t sure if I needed something specific for wayland/pipewire, nope pavucontrol just works.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;paru -S pavucontrol&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;hr/&gt;&#xA;&lt;p&gt;thinking about &lt;a href=&#34;/virtual-environment/&#34; class=&#34;glossary-term&#34; title=&#34;Virtual Environment is term for a sandboxed environment commonly associated with the python programming language. If you are installing any sort of python...&#34;&gt;virtual environment&lt;/a&gt;&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 tailwind hover</title>
    <id>https://waylonwalker.com/thought-734/</id>
    <updated>2025-07-06T02:05:52Z</updated>
    <published>2025-07-06T02:05:52Z</published>
    <link href="https://waylonwalker.com/thought-734/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://stackoverflow.com/questions/56755439/modifying-hover-in-tailwindcss</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://stackoverflow.com/questions/56755439/modifying-hover-in-tailwindcss&#34; class=&#34;embed-card-link  has-avatar has-avatar-before&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/stackoverflow.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/stackoverflow.com.ico&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;External Link&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;stackoverflow.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;I need to give this a try for markata glossary&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>2025-07-05 Notes</title>
    <id>https://waylonwalker.com/2025-07-05-notes/</id>
    <updated>2025-07-05T10:35:50Z</updated>
    <published>2025-07-05T10:35:50Z</published>
    <link href="https://waylonwalker.com/2025-07-05-notes/" rel="alternate" type="text/html"></link>
    <summary type="text">I might have gpg setup right for kdewallet on hyprland, and I just timed out the request before.</summary>
    <content type="html">&lt;hr/&gt;&#xA;&lt;p&gt;I might have gpg setup right for kdewallet on hyprland, and I just timed out the request before.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/0870a551-75a7-4547-a8a5-6fa1aad30716.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;image&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/0870a551-75a7-4547-a8a5-6fa1aad30716.webp&#34; alt=&#34;image&#34;/ data-glightbox=&#34;description: image&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;hr/&gt;&#xA;&lt;p&gt;Got &lt;code&gt;swaync&lt;/code&gt; working in hyprland.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/86aa4818-934c-4730-83b6-f26c247380f6.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;image&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/86aa4818-934c-4730-83b6-f26c247380f6.webp&#34; alt=&#34;image&#34;/ data-glightbox=&#34;description: image&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;hr/&gt;&#xA;&lt;p&gt;hyprland does not load its plugins by default, I don’t see anything in the&#xA;docs, but it appears that you need to &lt;code&gt;exec-once = hyprpm reload&lt;/code&gt; to reload all&#xA;enabled plugins on startup.&lt;/p&gt;&#xA;&lt;hr/&gt;&#xA;&lt;p&gt;fix broken waybar fonts&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;paru -S ttf-font-awesome&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;hr/&gt;&#xA;&lt;p&gt;Cat Quest III progress with Wyatt and a new save with Ayla&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/5ce8b10d-2755-4dd7-8049-77149dae8ccd.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;image&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/5ce8b10d-2755-4dd7-8049-77149dae8ccd.webp&#34; alt=&#34;image&#34;/ data-glightbox=&#34;description: image&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;hr/&gt;&#xA;&lt;h2 id=&#34;markata-glossary&#34;&gt;Markata Glossary &lt;a href=&#34;#markata-glossary&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;Worked on my glossary ui and how it works with markata.  I think I finally got&#xA;something that autodetects glossary terms and swaps them with a hoverable&#xA;element that displays the definition.  getting the definition to remain on the&#xA;screen at all times and not fall of when the term is on one side of the page or&#xA;another was quite tricky.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/d4b3c75b-4d3c-465c-9368-bf66abb7f381.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;image&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/d4b3c75b-4d3c-465c-9368-bf66abb7f381.webp&#34; alt=&#34;image&#34;/ data-glightbox=&#34;description: image&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 I was wrong - YouTube</title>
    <id>https://waylonwalker.com/thought-733/</id>
    <updated>2025-07-04T16:53:47Z</updated>
    <published>2025-07-04T16:53:47Z</published>
    <link href="https://waylonwalker.com/thought-733/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/watch?v=ZH3iKbEiks0</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;ZH3iKbEiks0&#34; title=&#34;I was wrong btw&#34; playlabel=&#34;Play: I was wrong btw&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Never did I think I would see the day that theprimeagen decided to run &lt;a href=&#34;https://archlinux.org/&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/archlinux.org.png&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/archlinux.org.png&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;archlinux&lt;/a&gt;.  Furthermore him to start ricing it, EVEN furthermore, &lt;a href=&#34;https://www.youtube.com/watch?v=pVI_smLgTY0&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/www.youtube.com.png&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/www.youtube.com.png&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;Pewdiepie runs arch&lt;/a&gt; now, and thinks you should too?? and is promoting it on one of the &lt;a href=&#34;https://socialblade.com/youtube/lists/top/100/subscribers/all/global&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/socialblade.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/socialblade.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;largest YouTube channels ever&lt;/a&gt;??  Even DHH is getting in the mix with &lt;a href=&#34;https://omarchy.org/&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/omarchy.org.png&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/omarchy.org.png&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;omarchy&lt;/a&gt; Such a cool transistion to see everyone find their way to linux and diving deep into the freedom and customization.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>2025-07-04 Notes</title>
    <id>https://waylonwalker.com/2025-07-04-notes/</id>
    <updated>2025-07-04T16:30:04Z</updated>
    <published>2025-07-04T16:30:04Z</published>
    <link href="https://waylonwalker.com/2025-07-04-notes/" rel="alternate" type="text/html"></link>
    <summary type="text">Failed to gpg-setup-for-kdewallet correctly on hyprland, brave still complains. Maybe someday I&#39;ll figure it out and complete the post.</summary>
    <content type="html">&lt;p&gt;Failed to &lt;a href=&#34;/gpg-setup-for-kdewallet/&#34; class=&#34;wikilink&#34; data-title=&#34;gpg setup for kdewallet&#34; data-description=&#34;I&amp;#39;m trying to setup gpg for kdewallet on archlinux with hyprland so that brave shuts up. I&amp;#39;ve tried this, but brave still complains about the wallet setup,...&#34; data-date=&#34;2025-07-04&#34; data-preview=&#34;I&amp;#39;m trying to setup gpg for kdewallet on archlinux with hyprland so that brave shuts up. I&amp;#39;ve tried this, but brave still complains about the wallet setup,...&#34;&gt;gpg setup for kdewallet&lt;/a&gt; correctly on hyprland, brave still&#xA;complains.  Maybe someday I’ll figure it out and complete the post.&lt;/p&gt;&#xA;&lt;hr/&gt;&#xA;&lt;p&gt;I installed hyprpm plugins.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/2725367a-5810-4503-a95d-52898ec6afd9.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;image&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/2725367a-5810-4503-a95d-52898ec6afd9.webp&#34; alt=&#34;image&#34;/ data-glightbox=&#34;description: image&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;hr/&gt;&#xA;&lt;p&gt;Failed to fix Wyatt’s bazzite install, I think he is going to move forward with&#xA;hyprland as his main.  Somehow after trying to dual boot hyprland and bazzite&#xA;he ended up with bazzite dumping him into recovery mode on every boot and&#xA;saying the root account is locked.&lt;/p&gt;&#xA;&lt;p&gt;I did learn how to mount and chroot into a bazzite partition that is running&#xA;btrfs and rpm-ostree.  I’m still only partly sure what I’m doing so not really&#xA;worth a post about.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/45e02cfe-8c36-4173-9b48-81a3b7ab3889.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;image&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/45e02cfe-8c36-4173-9b48-81a3b7ab3889.webp&#34; alt=&#34;image&#34;/ data-glightbox=&#34;description: image&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;hr/&gt;&#xA;&lt;p&gt;Continued full detail on our Van, if its going to last we need to keep up on&#xA;it, Car Washes are expencive, aint got no extra $$ in this economy, goddamn I&#xA;sound like an old man.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/e9c7cdb8-5f1e-40d2-b6d3-600f6a878588.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;image&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/e9c7cdb8-5f1e-40d2-b6d3-600f6a878588.webp&#34; alt=&#34;image&#34;/ data-glightbox=&#34;description: image&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 { TechDufus }</title>
    <id>https://waylonwalker.com/thought-731/</id>
    <updated>2025-07-02T13:35:45Z</updated>
    <published>2025-07-02T13:35:45Z</published>
    <link href="https://waylonwalker.com/thought-731/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://techdufus.com/#timeline</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://techdufus.com/#timeline&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://techdufus.com/img/social-default.jpg&#34; alt=&#34;Home | { TechDufus } — TechDufus writes about platform engineering, homelab rebuilds, and agent workflows that hold up in the real world.&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: Home | { TechDufus } — TechDufus writes about platform engineering, homelab rebuilds, and agent workflows that hold up in the real world.&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Home | { TechDufus }&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;TechDufus writes about platform engineering, homelab rebuilds, and agent workflows that hold up in the real world.&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;{ TechDufus } · techdufus.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;This has to be top tier dopest home page of all time.  The commands are all so well customized and whimsical on the terminal.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/5387bb34-4a9d-4a51-95d2-ed6242c411f8.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;image&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/5387bb34-4a9d-4a51-95d2-ed6242c411f8.webp&#34; alt=&#34;image&#34;/ data-glightbox=&#34;description: image&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 { TechDufus } | Building a Talos Kubernetes Homelab with Terra...</title>
    <id>https://waylonwalker.com/thought-726/</id>
    <updated>2025-07-02T01:45:11Z</updated>
    <published>2025-07-02T01:45:11Z</published>
    <link href="https://waylonwalker.com/thought-726/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://techdufus.com/tech/2025/06/30/building-a-talos-kubernetes-homelab-on-proxmox-with-terraform.html</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;/static/https://techdufus.com/tech/2025/06/30/building-a-talos-kubernetes-homelab-on-proxmox-with-terraform.html&#34; class=&#34;glightbox-link&#34; aria-label=&#34;https://techdufus.com/tech/2025/06/30/building-a-talos-kubernetes-homelab-on-proxmox-with-terraform.html&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;/static/https://techdufus.com/tech/2025/06/30/building-a-talos-kubernetes-homelab-on-proxmox-with-terraform.html&#34; alt=&#34;https://techdufus.com/tech/2025/06/30/building-a-talos-kubernetes-homelab-on-proxmox-with-terraform.html&#34;/ data-glightbox=&#34;description: https://techdufus.com/tech/2025/06/30/building-a-talos-kubernetes-homelab-on-proxmox-with-terraform.html&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;p&gt;I’ve ran my &lt;a href=&#34;/homelab/&#34; class=&#34;glossary-term&#34; title=&#34;A place to self host applications. For me this is primarily self built web applications, and applications for sharing files with my family. Techno Tim has a...&#34;&gt;homelab&lt;/a&gt; on k3s for a year and a half now, and have had talos fomo the whole time.  I’m not sure if this article helps or hurts.  Helps to see that techdufus struggled and wished he went k3s first, but theres so much good to it that I want it.&lt;/p&gt;&#xA;&lt;h2 id=&#34;prometheus-and-grafana-for-monitoring-because-you-cant-manage-what-you-cant-see&#34;&gt;Prometheus and Grafana for monitoring (because you can’t manage what you can’t see) &lt;a href=&#34;#prometheus-and-grafana-for-monitoring-because-you-cant-manage-what-you-cant-see&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;I’m getting there, ok, I have some of it figured out but not firing on all cylinders like I want.&lt;/p&gt;&#xA;&lt;h2 id=&#34;cloudnativepg&#34;&gt;CloudNativePG &lt;a href=&#34;#cloudnativepg&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;for PostgreSQL (way better than managing databases manually)&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;p&gt;Amen to this, cnpg is kick ass and has me tempted to drop sqlite for my production database default.  I mostly make small shit on the side that is never going to blow up.  sqlite is really good, but the automation that comes along with cnpg to just run it on all nodes and backups once you establish the pattern with the first one is sick.&lt;/p&gt;&#xA;&lt;h2 id=&#34;-actually-read-the-docs-&#34;&gt;🤣🤣🤣 actually read the docs 🤣🤣🤣 &lt;a href=&#34;#-actually-read-the-docs-&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/9c41132e-7808-49af-9aaa-68a5e5870a4b.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;image&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/9c41132e-7808-49af-9aaa-68a5e5870a4b.webp&#34; alt=&#34;image&#34;/ data-glightbox=&#34;description: image&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;is-this-overkill-for-a-homelab&#34;&gt;Is This Overkill for a Homelab? &lt;a href=&#34;#is-this-overkill-for-a-homelab&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;Absolutely. Could do most of this with k3s or Docker Compose. But where’s the fun in that?&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;p&gt;Speaking my language here!  Again I’m well past the 1 year mark of running k3s and i’ve had no regrets.  Kubernetes is about establishing and replicating patterns, its a dream to deploy to.  It gets so much hate for being obtuse, hard to use, yaml intense.  You get full control of ever damn thing you need through configuration, and if you keep it simple you can deploy some sick shit out of it without needing to go hard on the yaml, again, think really hard about it a few times, and replicate.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>just fucking use kubernetes</title>
    <id>https://waylonwalker.com/just-fucking-use-kubernetes/</id>
    <updated>2025-07-01T12:46:33Z</updated>
    <published>2025-07-01T12:46:33Z</published>
    <link href="https://waylonwalker.com/just-fucking-use-kubernetes/" rel="alternate" type="text/html"></link>
    <summary type="text">You want to run containers?</summary>
    <content type="html">&lt;p&gt;You want to run containers?&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;JUST FUCKING USE KUBERNETES.&lt;/strong&gt;&lt;/p&gt;&#xA;&lt;div class=&#34;admonition tip&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Obvious satire&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;If you don&amp;#39;t like harsh language this is not the post for you.  Obviously&#xA;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt;ripping off &lt;a href=&#34;https://motherfuckingwebsite.com/&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/motherfuckingwebsite.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/motherfuckingwebsite.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;motherfuckingwebsite&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;&lt;div class=&#34;admonition warning&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;ThIs is &lt;a href=&#34;/ai-slop/&#34; class=&#34;glossary-term&#34; title=&#34;AI slop is unwanted AI content, generally shared by someone who did not review the output and is considered highly offensive and rude.&#34;&gt;AI SLoP&lt;/a&gt;&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;If you don&amp;#39;t like if you can fuck off to the next post, I&amp;#39;m having fun here,&#xA;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt;but satire is not my strong suit and needed some help.&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;&lt;div class=&#34;admonition seealso&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Seealso&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/should-i-kubernetes-my-homelab/&#34; class=&#34;wikilink&#34; data-title=&#34;Should I kubernetes My Homelab&#34; data-description=&#34;Yes&#34; data-date=&#34;2025-08-11&#34; data-preview=&#34;Yes&#34;&gt;Should I kubernetes My Homelab&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/the-wrong-reasons-to-run-kubernetes-in-your-homelab/&#34; class=&#34;wikilink&#34; data-title=&#34;The Wrong Reasons To Run Kubernetes In Your Homelab&#34; data-description=&#34;Running kubernetes in your homelab is complex, time consuming, there are almost no docs to help you (homelab focused docs for things you want to install),...&#34; data-date=&#34;2025-12-06&#34; data-preview=&#34;Running kubernetes in your homelab is complex, time consuming, there are almost no docs to help you (homelab focused docs for things you want to install),...&#34;&gt;The Wrong Reasons To Run Kubernetes In Your Homelab&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/the-right-reasons-to-run-kubernetes-in-your-homelab/&#34; class=&#34;wikilink&#34; data-title=&#34;The Right Reasons To Run Kubernetes In Your Homelab&#34; data-description=&#34;Running kubernetes in your homelab is a fantastic way to learn, explore, express yourself, and run services that you use.&#34; data-date=&#34;2025-12-10&#34; data-preview=&#34;Running kubernetes in your homelab is a fantastic way to learn, explore, express yourself, and run services that you use.&#34;&gt;The Right Reasons To Run Kubernetes In Your Homelab&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/i-got-the-kubernetes-in-my-basement-autism/&#34; class=&#34;wikilink&#34; data-title=&#34;I got the kubernetes in my basement autism&#34; data-description=&#34;What flavor of autism did you guys get, I got the kind where I run kubernetes in my basement.&#34; data-date=&#34;2025-12-05&#34; data-preview=&#34;What flavor of autism did you guys get, I got the kind where I run kubernetes in my basement.&#34;&gt;I got the kubernetes in my basement autism&lt;/a&gt;&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;/div&gt;&#xA;&lt;hr/&gt;&#xA;&lt;h2 id=&#34;but-its-complicated&#34;&gt;“But it’s complicated!” &lt;a href=&#34;#but-its-complicated&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;Shut up.  Close twitter and fucking do something.  Life is complicated. You&#xA;know what else is complicated? Email. DNS. Life. Kubernetes is the least&#xA;painful way to orchestrate containers at scale. &lt;strong&gt;Docker Compose is for your&#xA;laptop.&lt;/strong&gt;&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;Swarm is dead.&lt;/li&gt;&#xA;&lt;li&gt;Nomad is just sad.&lt;/li&gt;&#xA;&lt;li&gt;Systemd units? Get out of here.&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;hr/&gt;&#xA;&lt;h2 id=&#34;but-my-app-is-small&#34;&gt;“But my app is small!” &lt;a href=&#34;#but-my-app-is-small&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;&lt;strong&gt;SO IS YOUR AMBITION.&lt;/strong&gt;&#xA;You &lt;em&gt;could&lt;/em&gt; write a bunch of bash scripts and hope they work on prod.&#xA;You &lt;em&gt;could&lt;/em&gt; SSH into servers and handcraft your infra like it’s 2011.&#xA;Or you could &lt;strong&gt;just fucking use Kubernetes&lt;/strong&gt; and sleep at night.&lt;/p&gt;&#xA;&lt;hr/&gt;&#xA;&lt;h2 id=&#34;i-can-just-throw-my-script-in-crontab&#34;&gt;I can just throw my script in crontab &lt;a href=&#34;#i-can-just-throw-my-script-in-crontab&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;Tell that to your boss when your cronjob failed 16 times in the last week&#xA;without anyone noticing. &lt;strong&gt;kubernete&lt;/strong&gt; makes it fucking simple, want retry ask&#xA;for it.  Hanging script, activeDeadlineSeconds that bitch.  Connecting to six&#xA;other services in your shitty ass infrastructure this shit retries automatically.&lt;/p&gt;&#xA;&lt;hr/&gt;&#xA;&lt;h2 id=&#34;i-dont-need-autoscaling&#34;&gt;“I don’t need autoscaling!” &lt;a href=&#34;#i-dont-need-autoscaling&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;Cool. Tell that to your boss when the CEO tweets your link and the site goes&#xA;down harder than your last date.&lt;/p&gt;&#xA;&lt;hr/&gt;&#xA;&lt;h2 id=&#34;but-yaml-is-ugly&#34;&gt;“But YAML is ugly!” &lt;a href=&#34;#but-yaml-is-ugly&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;So is your Terraform, your Ansible, your Prometheus config, your custom CI/CD&#xA;scripts written in Bash, and the spaghetti you called a monolith before you&#xA;went microservices and made it worse.&lt;/p&gt;&#xA;&lt;hr/&gt;&#xA;&lt;h2 id=&#34;kubernetes-is-too-heavy&#34;&gt;“Kubernetes is too heavy!” &lt;a href=&#34;#kubernetes-is-too-heavy&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;Compared to what?&lt;/p&gt;&#xA;&lt;p&gt;Your handcrafted, artisanal, single-node LXC setup running on an Intel NUC from 2014?&lt;/p&gt;&#xA;&lt;p&gt;Heard of k3s? k0s? No.  These fuckers will have you running kubernetes running&#xA;on your grandpas goddamn gateway 2000 right next to AOL messenger without&#xA;splooging out the the ashes of his Marlboro Reds.&lt;/p&gt;&#xA;&lt;hr/&gt;&#xA;&lt;h2 id=&#34;ssh&#34;&gt;SSH? &lt;a href=&#34;#ssh&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;You don’t need no goddam ssh to install your 200lb gorilla editor so you can&#xA;hand edit your init files and carefully contruct your init system.  This is&#xA;kubernetes, you use the fucking api, all you need is a connection and a&#xA;kubeconfig.  This motherfucker runs containers so you can keep your bitch-ass&#xA;editor where it belongs, off the fucking host machine!&lt;/p&gt;&#xA;&lt;hr/&gt;&#xA;&lt;h2 id=&#34;what-if-its-overkill&#34;&gt;“What if it’s overkill?” &lt;a href=&#34;#what-if-its-overkill&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;What if YOU are underkill?&lt;/p&gt;&#xA;&lt;hr/&gt;&#xA;&lt;h2 id=&#34;how-do-i-do-zero-downtime-deploys&#34;&gt;“How do I do zero-downtime deploys?” &lt;a href=&#34;#how-do-i-do-zero-downtime-deploys&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;Probes my dude, you fucking probe your shit.  Rolling out a new deployment&#xA;kubernets won’t cut over to your broke ass release if that shit don’t pass. No&#xA;more writing janky scripts that SSH into prod and run &lt;a href=&#34;/glossary/git/&#34; class=&#34;glossary-term&#34; title=&#34;Git is a version control system for tracking changes in source code during software development. In the beginning there were many, some were licensed. As...&#34;&gt;git&lt;/a&gt; pull while praying to&#xA;the CI/CD gods.&lt;/p&gt;&#xA;&lt;hr/&gt;&#xA;&lt;h2 id=&#34;what-if-i-still-fuck-it-up---how-do-i-roll-back&#34;&gt;“What if I still fuck it up - How do I roll back?” &lt;a href=&#34;#what-if-i-still-fuck-it-up---how-do-i-roll-back&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;&lt;code&gt;k9s&lt;/code&gt; is your best friend, pop that shit open find your broke ass deployment,&#xA;jump owner to the replicaset and roll that bitch back to the working shit.&lt;/p&gt;&#xA;&lt;hr/&gt;&#xA;&lt;h2 id=&#34;i-need-to-scale&#34;&gt;I need to scale &lt;a href=&#34;#i-need-to-scale&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;This shit is built in, add a goddamn replica or 6 for fuck sake, need&#xA;autoscaling use the HPA.  This aint your granpas hand fucking crafted pet&#xA;server, its fucking cattle.  Load balancing just fucking happens, don’t think&#xA;about it just use it, and it will work for your six goddamn friends that&#xA;actually use your shit.&lt;/p&gt;&#xA;&lt;hr/&gt;&#xA;&lt;h2 id=&#34;i-want-gitops&#34;&gt;I want gitops &lt;a href=&#34;#i-want-gitops&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;Let me introduce you to argocd, this fucker uses helm so one fucking command&#xA;and your ass is on the beach while your dev team deploys their own shit.&lt;/p&gt;&#xA;&lt;hr/&gt;&#xA;&lt;h2 id=&#34;use-kubernetes&#34;&gt;USE KUBERNETES &lt;a href=&#34;#use-kubernetes&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;It fucking works.&lt;/li&gt;&#xA;&lt;li&gt;Everyone else is using it.&lt;/li&gt;&#xA;&lt;li&gt;There are like 500 open-source projects built just to make it easier.&lt;/li&gt;&#xA;&lt;li&gt;It runs on your laptop, your server, the cloud, and inside your dreams.&lt;/li&gt;&#xA;&lt;li&gt;It &lt;em&gt;will&lt;/em&gt; make your resume better.&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;hr/&gt;&#xA;&lt;h2 id=&#34;not-convinced&#34;&gt;Not convinced? &lt;a href=&#34;#not-convinced&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;Here’s your alternative stack:&lt;/p&gt;&#xA;&lt;ol&gt;&#xA;&lt;li&gt;A bash script that restarts Docker when it dies.&lt;/li&gt;&#xA;&lt;li&gt;A Makefile that deploys via SCP.&lt;/li&gt;&#xA;&lt;li&gt;A cron job that prays to the log gods.&lt;/li&gt;&#xA;&lt;li&gt;A wiki page explaining how to debug your hand-rolled bullshit.&lt;/li&gt;&#xA;&lt;li&gt;You. Crying.&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;hr/&gt;&#xA;&lt;h2 id=&#34;so-yeah&#34;&gt;So yeah &lt;a href=&#34;#so-yeah&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;Save yourself.&#xA;Save your team.&#xA;Save your infrastructure.&lt;/p&gt;&#xA;&lt;h2 id=&#34;just&#34;&gt;JUST &lt;a href=&#34;#just&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;h2 id=&#34;fucking&#34;&gt;FUCKING &lt;a href=&#34;#fucking&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;h2 id=&#34;use&#34;&gt;USE &lt;a href=&#34;#use&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;h2 id=&#34;kubernetes&#34;&gt;KUBERNETES &lt;a href=&#34;#kubernetes&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;&lt;em&gt;(or don’t, and become a DevOps cautionary tale)&lt;/em&gt;&lt;/p&gt;&#xA;&lt;div class=&#34;admonition seealso&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Seealso&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;a href=&#34;https://motherfuckingwebsite.com/&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/motherfuckingwebsite.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/motherfuckingwebsite.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;motherfuckingwebsite&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;https://www.justfuckingcode.com/&#34;&gt;justfuckingcode&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;https://justfuckingusereact.com/&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/justfuckingusereact.com.png&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/justfuckingusereact.com.png&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;justfuckingusereact&lt;/a&gt;&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>markata parallel render</title>
    <id>https://waylonwalker.com/markata-parallel-render/</id>
    <updated>2025-07-01T08:05:58Z</updated>
    <published>2025-07-01T08:05:58Z</published>
    <link href="https://waylonwalker.com/markata-parallel-render/" rel="alternate" type="text/html"></link>
    <content type="html">&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  _._   __/__   __  __ _/_   Recorded: 07:53:56  Samples:  &lt;span class=&#34;m&#34;&gt;71681&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt; /_//_/// /_&lt;span class=&#34;se&#34;&gt;\ &lt;/span&gt;/ //_// / //_&lt;span class=&#34;err&#34;&gt;&amp;#39;&lt;/span&gt;/ //     Duration: 92.741    CPU time: 91.748&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;/_/                      v4.5.1&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Program: /home/waylon/git/waylonwalker.com/.venv/bin/markata build --pdb&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;92.740 Markata.run  markata/__init__.py:443&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;sb&#34;&gt;`&lt;/span&gt;- 92.714 HookCaller.__call__  pluggy/_hooks.py:479&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;      &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;m&#34;&gt;2&lt;/span&gt; frames hidden&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;  pluggy&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;         92.714 PluginManager._hookexec  pluggy/_manager.py:106&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;         &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;- 38.207 wrapper_register  markata/hookspec.py:265&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;         &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;  &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;- 26.105 render  plugins/link_collector.py:59&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;         &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;  &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;  &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;- 10.012 BeautifulSoup.__init__  bs4/__init__.py:122&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;         &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;  &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;  &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;     &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;m&#34;&gt;14&lt;/span&gt; frames hidden&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;  bs4, html&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;         &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;  &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;  &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;- 5.599 &amp;lt;listcomp&amp;gt;  plugins/link_collector.py:181&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;         &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;  &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;  &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;- 4.050 &amp;lt;listcomp&amp;gt;  plugins/link_collector.py:173&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;         &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;  &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;  &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;- 3.466 Markata.map  markata/__init__.py:565&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;         &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;  &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;  &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;&lt;span class=&#34;sb&#34;&gt;`&lt;/span&gt;- 2.092   markata/__init__.py&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;         &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;  &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;  &lt;span class=&#34;sb&#34;&gt;`&lt;/span&gt;- 0.942 BeautifulSoup.find_all  bs4/element.py:2008&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;         &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;  &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;        &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;m&#34;&gt;2&lt;/span&gt; frames hidden&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;  bs4&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;         &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;  &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;- 9.107 render  markata/plugins/render_markdown.py:260&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;         &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;  &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;&lt;span class=&#34;sb&#34;&gt;`&lt;/span&gt;- 8.902 result_iterator  concurrent/futures/_base.py:612&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;         &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;  &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;        &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;m&#34;&gt;5&lt;/span&gt; frames hidden&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;  concurrent, threading, &amp;lt;built-in&amp;gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;         &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;  &lt;span class=&#34;sb&#34;&gt;`&lt;/span&gt;- 2.079 glob  markata/plugins/glob.py:112&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;         &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;&lt;span class=&#34;sb&#34;&gt;`&lt;/span&gt;- 1.909 &amp;lt;listcomp&amp;gt;  markata/plugins/glob.py:161&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;         &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;        &lt;span class=&#34;sb&#34;&gt;`&lt;/span&gt;- 1.908 Future.result  concurrent/futures/_base.py:428&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;         &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;              &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;m&#34;&gt;3&lt;/span&gt; frames hidden&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;  concurrent, threading, &amp;lt;built-in&amp;gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;         &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;- 25.708 render  markata/plugins/post_template.py:639&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;         &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;&lt;span class=&#34;sb&#34;&gt;`&lt;/span&gt;- 25.612 render_article  markata/plugins/post_template.py:404&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;         &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;     &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;- 22.223 &amp;lt;dictcomp&amp;gt;  markata/plugins/post_template.py:421&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;         &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;     &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;  &lt;span class=&#34;sb&#34;&gt;`&lt;/span&gt;- 22.200 render_template  markata/plugins/post_template.py:429&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;         &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;     &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;&lt;span class=&#34;sb&#34;&gt;`&lt;/span&gt;- 22.185 Template.render  jinja2/environment.py:1269&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;         &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;     &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;        &lt;span class=&#34;sb&#34;&gt;`&lt;/span&gt;- 21.210 root  templates/post.html:4&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;         &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;     &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;&lt;span class=&#34;sb&#34;&gt;`&lt;/span&gt;- 20.937 root  templates/base.html:4&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;         &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;     &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;              &lt;span class=&#34;sb&#34;&gt;`&lt;/span&gt;- 20.455 block_content  templates/post.html:17&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;         &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;     &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;                 &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;- 11.212 root  templates/recent.html:4&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;         &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;     &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;                 &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;&lt;span class=&#34;sb&#34;&gt;`&lt;/span&gt;- 10.853 root  templates/feed_sm_partial.html:4&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;         &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;     &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;                 &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;     &lt;span class=&#34;sb&#34;&gt;`&lt;/span&gt;- 8.392 Environment.getattr  jinja2/environment.py:480&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;         &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;     &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;                 &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;&lt;span class=&#34;sb&#34;&gt;`&lt;/span&gt;- 8.328 Feed.posts  markata/plugins/feeds.py:329&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;         &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;     &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;                 &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;           &lt;span class=&#34;sb&#34;&gt;`&lt;/span&gt;- 8.300 Feed.map  markata/plugins/feeds.py:352&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;         &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;     &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;                 &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;&lt;span class=&#34;sb&#34;&gt;`&lt;/span&gt;- 7.963 Markata.map  markata/__init__.py:565&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;         &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;     &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;                 &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;                 &lt;span class=&#34;sb&#34;&gt;`&lt;/span&gt;- 7.786 &amp;lt;listcomp&amp;gt;  markata/__init__.py:628&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;         &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;     &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;                 &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;&lt;span class=&#34;sb&#34;&gt;`&lt;/span&gt;- 6.465   markata/__init__.py&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;         &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;     &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;                 &lt;span class=&#34;sb&#34;&gt;`&lt;/span&gt;- 8.486 call  jinja2/runtime.py:260&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;         &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;     &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;&lt;span class=&#34;sb&#34;&gt;`&lt;/span&gt;- 8.468 Feed.map  markata/plugins/feeds.py:352&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;         &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;     &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;                       &lt;span class=&#34;sb&#34;&gt;`&lt;/span&gt;- 8.394 Markata.map  markata/__init__.py:565&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;         &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;     &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;&lt;span class=&#34;sb&#34;&gt;`&lt;/span&gt;- 8.326 &amp;lt;listcomp&amp;gt;  markata/__init__.py:628&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;         &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;     &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;                             &lt;span class=&#34;sb&#34;&gt;`&lt;/span&gt;- 7.086   markata/__init__.py&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;         &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;&lt;span class=&#34;sb&#34;&gt;`&lt;/span&gt;- 3.015 Cache.set  diskcache/core.py:749&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;         &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;           &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;m&#34;&gt;3&lt;/span&gt; frames hidden&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;  diskcache&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;         &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;- 7.788 save  markata/plugins/feeds.py:462&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;         &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;  &lt;span class=&#34;sb&#34;&gt;`&lt;/span&gt;- 7.779 create_page  markata/plugins/feeds.py:493&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;         &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;     &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;- 4.530 Template.render  jinja2/environment.py:1269&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;         &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;     &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;&lt;span class=&#34;sb&#34;&gt;`&lt;/span&gt;- 2.437 root  templates/feed.html:4&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;         &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;     &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;     &lt;span class=&#34;sb&#34;&gt;`&lt;/span&gt;- 2.360 root  templates/base.html:4&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;         &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;     &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;&lt;span class=&#34;sb&#34;&gt;`&lt;/span&gt;- 2.231 block_content  templates/feed.html:17&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;         &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;     &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;           &lt;span class=&#34;sb&#34;&gt;`&lt;/span&gt;- 2.118 root  templates/feed_partial.html:4&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;         &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;     &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;&lt;span class=&#34;sb&#34;&gt;`&lt;/span&gt;- 1.298 Environment.getattr  jinja2/environment.py:480&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;         &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;     &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;                 &lt;span class=&#34;sb&#34;&gt;`&lt;/span&gt;- 1.290 Feed.posts  markata/plugins/feeds.py:329&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;         &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;     &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;&lt;span class=&#34;sb&#34;&gt;`&lt;/span&gt;- 1.290 Feed.map  markata/plugins/feeds.py:352&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;         &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;     &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;                       &lt;span class=&#34;sb&#34;&gt;`&lt;/span&gt;- 1.276 Markata.map  markata/__init__.py:565&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;         &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;     &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;- 1.325 Feed.map  markata/plugins/feeds.py:352&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;         &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;     &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;&lt;span class=&#34;sb&#34;&gt;`&lt;/span&gt;- 1.317 Markata.map  markata/__init__.py:565&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;         &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;     &lt;span class=&#34;sb&#34;&gt;`&lt;/span&gt;- 1.237 Cache.set  diskcache/core.py:749&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;         &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;- 7.029 pre_render  markata/plugins/auto_description.py:185&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;         &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;&lt;span class=&#34;sb&#34;&gt;`&lt;/span&gt;- 6.840 set_description  markata/plugins/auto_description.py:137&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;         &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;     &lt;span class=&#34;sb&#34;&gt;`&lt;/span&gt;- 5.791 get_description  markata/plugins/auto_description.py:107&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;         &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;        &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;- 4.485 MarkdownIt.parse  markdown_it/main.py:256&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;         &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;        &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;     &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;m&#34;&gt;8&lt;/span&gt; frames hidden&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;  markdown_it&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;         &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;&lt;span class=&#34;sb&#34;&gt;`&lt;/span&gt;- 1.066 MarkdownIt.__init__  markdown_it/main.py:33&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;         &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;- 5.730 pre_render  markata/plugins/analytics.py:102&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;         &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;  &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;- 2.397 savefig  matplotlib/pyplot.py:1238&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;         &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;  &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;     &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;m&#34;&gt;4&lt;/span&gt; frames hidden&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;  matplotlib&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;         &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;  &lt;span class=&#34;sb&#34;&gt;`&lt;/span&gt;- 2.004 heatmap  seaborn/matrix.py:355&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;         &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;        &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;m&#34;&gt;10&lt;/span&gt; frames hidden&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;  seaborn, matplotlib&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;         &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;- 1.704 post_render  plugins/permalink_aria.py:40&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;         &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;&lt;span class=&#34;sb&#34;&gt;`&lt;/span&gt;- 1.588 process_html_content  plugins/permalink_aria.py:13&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;         &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;- 1.619 save  markata/plugins/publish_source.py:83&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;         &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;  &lt;span class=&#34;sb&#34;&gt;`&lt;/span&gt;- 1.216 Post.dumps  markata/plugins/post_model.py:333&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;         &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;&lt;span class=&#34;sb&#34;&gt;`&lt;/span&gt;- 1.203 Post.yaml  markata/plugins/post_model.py:254&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;         &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;        &lt;span class=&#34;sb&#34;&gt;`&lt;/span&gt;- 1.044 dump  yaml/__init__.py:248&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;         &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;              &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;m&#34;&gt;3&lt;/span&gt; frames hidden&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;  yaml&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;         &lt;span class=&#34;sb&#34;&gt;`&lt;/span&gt;- 1.183 post_render  plugins/wikilink_hover.py:104&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;            &lt;span class=&#34;sb&#34;&gt;`&lt;/span&gt;- 1.094 do_hover_links  plugins/wikilink_hover.py:126&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;07:55:38&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt; save &lt;span class=&#34;nb&#34;&gt;complete&lt;/span&gt;                                                                            __init__.py:465&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;           teardown running                                                                         __init__.py:462&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;           teardown &lt;span class=&#34;nb&#34;&gt;complete&lt;/span&gt;                                                                        __init__.py:465&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;           lifetime cache hit rate 0.17%                                                            __init__.py:471&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;           lifetime cache hits/misses 36/21118                                                      __init__.py:476&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;           run cache hit rate 0.17%                                                                 __init__.py:482&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;           run cache hits/misses 36/21118                                                           __init__.py:487&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Map Cache Statistics:&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Total calls: &lt;span class=&#34;m&#34;&gt;17197&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Cache hits: &lt;span class=&#34;m&#34;&gt;15317&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Cache misses: &lt;span class=&#34;m&#34;&gt;1880&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Hit rate: 89.1%&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Cache size: &lt;span class=&#34;m&#34;&gt;1880&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>principal-engineer-at-meta</title>
    <id>https://waylonwalker.com/principal-engineer-at-meta/</id>
    <updated>2025-06-30T20:22:08Z</updated>
    <published>2025-06-30T20:22:08Z</published>
    <link href="https://waylonwalker.com/principal-engineer-at-meta/" rel="alternate" type="text/html"></link>
    <summary type="text">Jake Bolam principal engineer at Meta, has some of the best career advice for those looking to become principal or just be better at their craft. This video...</summary>
    <content type="html">&lt;p&gt;Jake Bolam principal engineer at Meta, has some of the best career advice for&#xA;those looking to become principal or just be better at their craft.  This&#xA;&lt;a href=&#34;https://www.youtube.com/clip/UgkxFp3xC-SrxNtLw3FW24b26DRhNrMra3m8&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/www.youtube.com.png&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/www.youtube.com.png&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;video&lt;/a&gt; was&#xA;such a banger I had to bring it in as a full post, and not just a thought. It&#xA;was a random YouTube auto play, something that I probably wouldn’t have clicked&#xA;on given title an thumbnail, but turned out to be very impactful.  Jake is such&#xA;a smart guy with a lot of great insights, and I can tell he thinks really quick&#xA;on his feet, he just pulled all of these things out of his head on the fly.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;YT Algorithm Gold&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;I don&amp;#39;t know what it is about this title and thumbnail, but it gives me &amp;#34;ex&#xA;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt;google, ex facebook, ex microsoft, $100M engineer&amp;#34; vibes in a cringy and&#xA;not satire kind of way.  I would have never clicked on it, it autoplayed&#xA;after a podcast and it hit, immediately I’m like who are these guys? subd&#xA;and started this post it was so good.&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;&lt;h2 id=&#34;long-on-boarding&#34;&gt;Long On Boarding &lt;a href=&#34;#long-on-boarding&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;Jake had a super long period of on boarding at meta, he came in as a seasoned&#xA;leader yet took many months to get going.  This was a phase during or near the&#xA;end of the COVID-19 pandemic and his team was so swamped they were unable to&#xA;give him time to help him.  He felt his on boarding was taking longer than he&#xA;wanted, and found backend work at Instagram.  Moving to Instagram he jumped in&#xA;and starting making impact quick and found his way moving up the ladder serving&#xA;as tech lead for several teams.&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;I grabbed a ton of clips from this video, but did not for this section as it&#xA;was kinda long.&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;h2 id=&#34;always-open-for-a-chat&#34;&gt;Always open for a Chat &lt;a href=&#34;#always-open-for-a-chat&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;As busy as Jake is, he leaves “Always open for a chat” on his internal profile.&#xA;He does not care about rank into account, the intern can ask for a coffee chat.&#xA;His key metric is how well is this person receiving information.  If they are&#xA;coming back with the same questions every 3 months he is going to start telling&#xA;them he does not have the time.&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://youtube.com/clip/Ugkxjwsds5Z9qqqIlJonyHNZDy4B_ArcLjNx?si=9Oi-ODqqYR215kJn&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://i.ytimg.com/vi/QUhC5BDZt-E/maxresdefault.jpg&#34; alt=&#34;✂️ Always Open for a Chat&#34;/ data-glightbox=&#34;description: ✂️ Always Open for a Chat&#34;&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;I’ve had a fair amount of personal experience with this.  Early in my career I&#xA;experience quite a bit of higher ranks feeling untouchable, they were&#xA;impossible to get a hold of, blew you off, and had more meetings than anyone&#xA;could bear.  It made me really look outside the company for inspiration and&#xA;mentorship most of the time.&lt;/p&gt;&#xA;&lt;h2 id=&#34;theres-always-time-for-coffee&#34;&gt;There’s always time for coffee &lt;a href=&#34;#theres-always-time-for-coffee&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;While I don’t have “Always open for a chat” on my&#xA;profile,  I’ve had many of these types of conversations with my peers.  It&#xA;might be about something career related or more often how to implement&#xA;containers, cloud, and good practices into small teams.&lt;/p&gt;&#xA;&lt;p&gt;I remember a course in college shared the famous quote “There’s always time for&#xA;coffee” and it stuck with me.  The demonstration goes that no matter how much&#xA;you fill your day with big rocks and tiny sand particles, there’s always a&#xA;little more room for coffee, and he dumps coffee into a jar that he has already&#xA;filled up.&lt;/p&gt;&#xA;&lt;p&gt;These conversations often become very impactful.  They can lead to having good&#xA;relationships or job opportunities.&lt;/p&gt;&#xA;&lt;h2 id=&#34;if-we-are-not-getting-enough-feedback-move-faster&#34;&gt;If we are not getting enough feedback, move faster &lt;a href=&#34;#if-we-are-not-getting-enough-feedback-move-faster&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://youtube.com/clip/UgkxBSPjfIERR8JcJXCOVXduYCRyn8VO6Kl0?si=MVaRDQROXC0D7Wn9&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://i.ytimg.com/vi/QUhC5BDZt-E/maxresdefault.jpg&#34; alt=&#34;✂️ rollout faster&#34;/ data-glightbox=&#34;description: ✂️ rollout faster&#34;&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;h2 id=&#34;take-down-prod-sometimes&#34;&gt;Take Down Prod Sometimes &lt;a href=&#34;#take-down-prod-sometimes&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;This was an interesting take.  None of us really want to take down prod.  No&#xA;one is advocating for major outages, but this is is not 2005 shipping out&#xA;software on CD’s anymore.  This take 100% depends on what you do and where you&#xA;work.  Obviously some sectors cannot take any downtime; nuclear power, cloud&#xA;systems supporting nuclear power, navigation systems, idk theres a bunch of&#xA;stuff.  I bet if you are reading this that aint you.  You’re probably writing&#xA;some backend dashboard for the marketing team, or building out a website to&#xA;upload cat photos on … Wait, thats literally what jake is doing here.&lt;/p&gt;&#xA;&lt;p&gt;Idea being if you don’t occasionally cause some small production issues, you&#xA;probably are not taking enough risk.  You are moving too slow, getting feedback&#xA;too late, your competitors just ran past you.&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://youtube.com/clip/Ugkx-Jofyn4OmTOkxFzxU__5_7BAeG3O3IkE?si=8yAj3H_ZB-7vjw0W&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://i.ytimg.com/vi/QUhC5BDZt-E/maxresdefault.jpg&#34; alt=&#34;✂️ take down prod sometimes&#34;/ data-glightbox=&#34;description: ✂️ take down prod sometimes&#34;&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;h2 id=&#34;go-where-you-are-rare&#34;&gt;Go where you are rare &lt;a href=&#34;#go-where-you-are-rare&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;I find this interesting.  I’ve found myself within non-software companies doing&#xA;sofware and data analysis most of my career, the amount of value you can bring&#xA;by being that one guy that knows some pandas, containerization, how to run a vm&#xA;is massive in an org that uses excel as its primary database.  The rest of the&#xA;org generally has massive knowledge in the business, but greatly slowed down by&#xA;their ability to find value in the data.&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://youtube.com/clip/UgkxZHKW3EHYH9Z8qPvyNlLQYN55BkufhmsJ?si=SwkO7bfrE16WFoyN&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://i.ytimg.com/vi/QUhC5BDZt-E/maxresdefault.jpg&#34; alt=&#34;✂️ go where your rare&#34;/ data-glightbox=&#34;description: ✂️ go where your rare&#34;&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;h2 id=&#34;do-work-that-you-dont-get-credit-for&#34;&gt;Do work that you don’t get credit for &lt;a href=&#34;#do-work-that-you-dont-get-credit-for&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;I’ve worked with a lot of people in my 15 years of professional work, and I can&#xA;tell you the worst ones to work with are the ones that focus too much on value.&#xA;Every ounce of effort they bring needs to be backed by dollars comming into the&#xA;business.  I’ve seen this shake out a number of ways.  You got the guy who sits&#xA;on his ass all of January waiting for goals to be set, you got the guy who&#xA;holds everything he knows close to his chest so that he is the one that can&#xA;take the glory, and you got the guy who wont ever; refactor his code, cleanup,&#xA;lint, update dependencies, and so on; because that does not have direct line to&#xA;dollars coming into the business.&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://youtube.com/clip/UgkxFp3xC-SrxNtLw3FW24b26DRhNrMra3m8?si=5I5JhuxwNFKWZsL7&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://i.ytimg.com/vi/QUhC5BDZt-E/maxresdefault.jpg&#34; alt=&#34;✂️ 20% of time won’t get credit&#34;/ data-glightbox=&#34;description: ✂️ 20% of time won’t get credit&#34;&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;The clip goes a bit further than this, and hints at things that are going to&#xA;enable you and your org to move faster.  You might shave off 2 minutes off of&#xA;ci, or docker builds.  You might give everyone an easy way to run dev&#xA;containers with production like dependencies in a snap.  You might give them a&#xA;way to clone prod data into a sandbox.  These type of things provide no dollars&#xA;to the company, it’s likely that few will notice but damn they add up to an&#xA;efficient running organization.&lt;/p&gt;&#xA;&lt;h2 id=&#34;work-diary---the-value-of-writing-things-down&#34;&gt;Work Diary - the value of writing things down &lt;a href=&#34;#work-diary---the-value-of-writing-things-down&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;This one hits home, for far too long I’ve been in between note taking systems&#xA;and am finally getting [[ marakta ]] setup to build out a really good&#xA;zettelkasten style work notes.  I’ve kinda had this on my blog for a long time,&#xA;but not fully.  I think the piece that I am missing here is the dumping ground.&#xA;I don’t &lt;strong&gt;yet&lt;/strong&gt; have a daily notes implementation that lets me just dump idea&#xA;onto a page that I care little about, but is the process of starting something&#xA;bigger, crosslinking between people, meetings, tasks, and launchdocs.&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://youtube.com/clip/UgkxBC5Y_WL40hiEHY_zqjOVkLwkSQyyYvcC?si=l_tsY238JstdFSaA&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://i.ytimg.com/vi/QUhC5BDZt-E/maxresdefault.jpg&#34; alt=&#34;✂️ work diary&#34;/ data-glightbox=&#34;description: ✂️ work diary&#34;&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;I hadn’t heard of the term launchdoc before this, but I took it and I am using&#xA;it.  I generally do an ok doc in the changelog of my products and spice it up&#xA;to go to the announcement chat channel, but I don’t fully keep record of it,&#xA;pulling the changelog into a launchdoc gives me that chance to spice it up and&#xA;have the language it needs to go right into chat.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Forming URIs for Autofill | Bitwarden</title>
    <id>https://waylonwalker.com/thought-725/</id>
    <updated>2025-06-30T13:21:15Z</updated>
    <published>2025-06-30T13:21:15Z</published>
    <link href="https://waylonwalker.com/thought-725/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://bitwarden.com/help/uri-match-detection/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://bitwarden.com/help/uri-match-detection/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://bitwarden.com/assets/5FndoP1yuFJUfR7o6DZvLw/a29643e884f9e3dcac7461336c591f17/help-uri-match-detection-og.png&#34; alt=&#34;Forming URIs for Autofill | Bitwarden — Find out more about how URI match detection works in the Bitwarden password manager.&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: Forming URIs for Autofill | Bitwarden — Find out more about how URI match detection works in the Bitwarden password manager.&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Forming URIs for Autofill | Bitwarden&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Find out more about how URI match detection works in the Bitwarden password manager.&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;Bitwarden · bitwarden.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;For anyone self hosting a bunch of apps under one domain, I just swapped all of mine to Host matching which includes the full subdomain, and it is glorious to not have 9+ items hit on all of your pages and only the one that you actually want.&lt;/p&gt;&#xA;&lt;p&gt;open one &amp;gt; edit &amp;gt; gear icon next to url &amp;gt; Host&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 The decline of &#34;i use vim btw&#34; - YouTube</title>
    <id>https://waylonwalker.com/thought-724/</id>
    <updated>2025-06-29T17:46:52Z</updated>
    <published>2025-06-29T17:46:52Z</published>
    <link href="https://waylonwalker.com/thought-724/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/watch?v=RmnqdAidVeE</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;RmnqdAidVeE&#34; title=&#34;- YouTube&#34; playlabel=&#34;Play: - YouTube&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;vim usage is becoming normie level.  Just like &lt;code&gt;archinstall&lt;/code&gt; made it too easy to install arch and brought normies into the ecosystem.  It killed ArchBTW^TM^, distros like lazyvim have killed vimBTW^TM^.  It used to be that to run arch, vim, nvim you had to read the docs, and go deep on understanding.  running &lt;code&gt;archinstall&lt;/code&gt;or lazyvim make it so easy to get started that you miss all of the details, you no longer have to understand ctags, quickfix, what an lsp is, or even how to set your own keybindings.  You just use the damn thing, like you would with VSC****.  No shame to anyone who does this, but you are probably missing out on a bunch of really useful features of a very core tool in your workflow.&lt;/p&gt;&#xA;&lt;p&gt;Just discovered Sylvan Franklin in this post and he is cracked, sub now.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 distrobox/docs/posts/run_libvirt_in_distrobox.md at main · 89l...</title>
    <id>https://waylonwalker.com/thought-723/</id>
    <updated>2025-06-29T02:11:28Z</updated>
    <published>2025-06-29T02:11:28Z</published>
    <link href="https://waylonwalker.com/thought-723/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://github.com/89luca89/distrobox/blob/main/docs/posts/run_in_distrobox.md</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;/static/https://github.com/89luca89/distrobox/blob/main/docs/posts/run_libvirt_in_distrobox.md&#34; class=&#34;glightbox-link&#34; aria-label=&#34;https://github.com/89luca89/distrobox/blob/main/docs/posts/run_libvirt_in_distrobox.md&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;/static/https://github.com/89luca89/distrobox/blob/main/docs/posts/run_libvirt_in_distrobox.md&#34; alt=&#34;https://github.com/89luca89/distrobox/blob/main/docs/posts/run_libvirt_in_distrobox.md&#34;/ data-glightbox=&#34;description: https://github.com/89luca89/distrobox/blob/main/docs/posts/run_libvirt_in_distrobox.md&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;p&gt;Wish I would have saw this guide and provided assembly file for setting up virt-manager in distrobox.  They call out immutable distros like the knew I was coming.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>virt manager on bazzite</title>
    <id>https://waylonwalker.com/virt-manager-on-bazzite/</id>
    <updated>2025-06-27T21:09:05Z</updated>
    <published>2025-06-27T21:09:05Z</published>
    <link href="https://waylonwalker.com/virt-manager-on-bazzite/" rel="alternate" type="text/html"></link>
    <summary type="text">I got virtual machine manager running on two Bazzite machines today. It was a bit tricky, more than I thought actually. I ran into all sorts of...</summary>
    <content type="html">&lt;p&gt;I got virtual machine manager running on two Bazzite machines today.  It was a&#xA;bit tricky, more than I thought actually.  I ran into all sorts of&#xA;virtualisation not setup issues when I tried the flatpak.  Then I found that&#xA;Bazzite comes with a &lt;code&gt;ujust setup-virtualization&lt;/code&gt; command that does all the&#xA;work for me.  I tried that and again virtual machine manager was here, but not&#xA;working, this time it feels like flatpak issues.&lt;/p&gt;&#xA;&lt;p&gt;In a Hail Mary attempt I got it working by using an ubuntu distrobox container&#xA;to run the UI.  And it worked!&lt;/p&gt;&#xA;&lt;h2 id=&#34;from-the-host&#34;&gt;from the host &lt;a href=&#34;#from-the-host&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;From the host we create the container to use from distrobox.  This is an ubuntu&#xA;machine, it can be any os of your choosing, preferably one that you are&#xA;familiar with and contains virt-manager in its package repos.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;distrobox create -i ubuntu&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;distrobox enter ubuntu&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;h2 id=&#34;from-inside-the-distrobox-container&#34;&gt;from inside the distrobox container &lt;a href=&#34;#from-inside-the-distrobox-container&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;Now that we are in the distrobox we are no longer in an immutable distro and we&#xA;can easily install anything we want.  I actually like this process.  I might&#xA;have shit like this that I use for a month or a few months, on a normal distro,&#xA;this is fully installed on the os, raises the potential of package conflicts&#xA;and lengthens the update time.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo apt update&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo apt upgrade&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo apt install virtinst virt-manager&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;virt-manager&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;h2 id=&#34;along-the-way&#34;&gt;Along the way &lt;a href=&#34;#along-the-way&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;I tried adding myself to the libvirt group, and expicitly setting the socket&#xA;path. After setting up another machine I realized these steps were unnecessary.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo usermod -aG libvirt &lt;span class=&#34;nv&#34;&gt;$USER&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;export&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;LIBVIRT_DEFAULT_URI&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;qemu+unix:///system&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;ls -l /run/libvirt/libvirt-sock&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;virt-install --version&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;After fully reading through `ujust setup-virtualization` I realized that it&#xA;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt;adds me to the libvirt group, so that’s why it is not needed.&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;&lt;h2 id=&#34;an-even-better-guide&#34;&gt;An even Better Guide &lt;a href=&#34;#an-even-better-guide&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;I later found [[ thoughts-723 ]] there is documentation for setting up virtual&#xA;machine manager in distrobox in the distrobox docs.  It even calls out running&#xA;on an immutable distro like bazzite like it knew I was coming.&lt;/p&gt;&#xA;&lt;h2 id=&#34;full-log&#34;&gt;full log &lt;a href=&#34;#full-log&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;waylon@razorcrest:~$ distrobox create -i ubuntu&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Image ubuntu not found.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Do you want to pull the image now? &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;Y/n&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;: y&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Resolved &lt;span class=&#34;s2&#34;&gt;&amp;#34;ubuntu&amp;#34;&lt;/span&gt; as an &lt;span class=&#34;nb&#34;&gt;alias&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;/etc/containers/registries.conf.d/000-shortnames.conf&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Trying to pull docker.io/library/ubuntu:latest...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Getting image &lt;span class=&#34;nb&#34;&gt;source&lt;/span&gt; signatures&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Copying blob d9d352c11bbd &lt;span class=&#34;k&#34;&gt;done&lt;/span&gt;   &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Copying config bf16bdcff9 &lt;span class=&#34;k&#34;&gt;done&lt;/span&gt;   &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Writing manifest to image destination&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;bf16bdcff9c96b76a6d417bd8f0a3abe0e55c0ed9bdb3549e906834e2592fd5f&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Creating &lt;span class=&#34;s1&#34;&gt;&amp;#39;ubuntu&amp;#39;&lt;/span&gt; using image ubuntu  &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt; OK &lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Distrobox &lt;span class=&#34;s1&#34;&gt;&amp;#39;ubuntu&amp;#39;&lt;/span&gt; successfully created.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;To enter, run:&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;distrobox enter ubuntu&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;waylon@razorcrest:~$ distrobox enter ubuntu&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Starting container...                     &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt; OK &lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Installing basic packages...              &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt; OK &lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up devpts mounts...               &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt; OK &lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up read-only mounts...            &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt; OK &lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up read-write mounts...           &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt; OK &lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up host&lt;span class=&#34;s1&#34;&gt;&amp;#39;s sockets integration...  [ OK ]&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s1&#34;&gt;Integrating host&amp;#39;&lt;/span&gt;s themes, icons, fonts...  &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt; OK &lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up distrobox profile...           &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt; OK &lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up sudo...                        &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt; OK &lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up user groups...                 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt; OK &lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up user&lt;span class=&#34;s1&#34;&gt;&amp;#39;s group list...           [ OK ]&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s1&#34;&gt;Setting up existing user...               [ OK ]&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s1&#34;&gt;Ensuring user&amp;#39;&lt;/span&gt;s access...                 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt; OK &lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Container Setup Complete!&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;📦&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;waylon@ubuntu ~&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;$ sudo apt update&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo apt install virtinst&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Hit:1 http://security.ubuntu.com/ubuntu noble-security InRelease&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Hit:2 http://archive.ubuntu.com/ubuntu noble InRelease&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Hit:3 http://archive.ubuntu.com/ubuntu noble-updates InRelease&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Hit:4 http://archive.ubuntu.com/ubuntu noble-backports InRelease&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Reading package lists... Done&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Building dependency tree... Done&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Reading state information... Done&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;m&#34;&gt;4&lt;/span&gt; packages can be upgraded. Run &lt;span class=&#34;s1&#34;&gt;&amp;#39;apt list --upgradable&amp;#39;&lt;/span&gt; to see them.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Reading package lists... Done&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Building dependency tree... Done&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Reading state information... Done&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;The following additional packages will be installed:&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  gir1.2-freedesktop gir1.2-libosinfo-1.0 glib-networking glib-networking-common glib-networking-services&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  gstreamer1.0-plugins-base i965-va-driver intel-media-va-driver iso-codes libaio1t64 libasyncns0&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  libboost-iostreams1.83.0 libboost-thread1.83.0 libburn4t64 libcacard0 libcdparanoia0 libcurl3t64-gnutls&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  libdaxctl1 libduktape207 libdw1t64 libflac12t64 libfuse3-3 libgstreamer-plugins-base1.0-0 libgstreamer1.0-0&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  libgtk-vnc-2.0-0 libgvnc-1.0-0 libigdgmm12 libiscsi7 libisoburn1t64 libisofs6t64 libjson-glib-1.0-0&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  libjson-glib-1.0-common libmp3lame0 libmpg123-0t64 libndctl6 libnfs14 libnspr4 libnss3 libnuma1 libogg0&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  libopus0 liborc-0.4-0t64 libosinfo-1.0-0 libosinfo-l10n libpcsclite1 libphodav-3.0-0 libphodav-3.0-common&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  libpmem1 libpmemobj1 libpolkit-gobject-1-0 libproxy1v5 libpulse0 librados2 librbd1 librdmacm1t64 libsndfile1&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  libsoup-3.0-0 libsoup-3.0-common libspice-client-glib-2.0-8 libspice-client-gtk-3.0-5 libtheora0 libunwind8&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  liburing2 libusb-1.0-0 libusbredirhost1t64 libusbredirparser1t64 libva-x11-2 libva2 libvirt-clients&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  libvirt-glib-1.0-0 libvirt-glib-1.0-data libvirt-l10n libvirt0 libvisual-0.4-0 libvorbis0a libvorbisenc2&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  libvte-2.91-0 libxslt1.1 libyajl2 mesa-va-drivers osinfo-db pci.ids python3-certifi python3-chardet&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  python3-idna python3-libvirt python3-libxml2 python3-pkg-resources python3-requests python3-urllib3&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  qemu-block-extra qemu-utils spice-client-glib-usb-acl-helper usb.ids va-driver-all virt-viewer xorriso&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Suggested packages:&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  gvfs i965-va-driver-shaders isoquery fuse3 libvisual-0.4-plugins gstreamer1.0-tools opus-tools pcscd pulseaudio&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  gstreamer1.0-libav gstreamer1.0-plugins-bad gstreamer1.0-plugins-good libvirt-clients-qemu libvirt-daemon&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  libvirt-login-shell python3-setuptools python3-cryptography python3-openssl python3-socks python-requests-doc&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  python3-brotli netcat python3-argcomplete xorriso-tcltk jigit cdck&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;The following NEW packages will be installed:&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  gir1.2-freedesktop gir1.2-libosinfo-1.0 glib-networking glib-networking-common glib-networking-services&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  gstreamer1.0-plugins-base i965-va-driver intel-media-va-driver iso-codes libaio1t64 libasyncns0&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  libboost-iostreams1.83.0 libboost-thread1.83.0 libburn4t64 libcacard0 libcdparanoia0 libcurl3t64-gnutls&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  libdaxctl1 libduktape207 libdw1t64 libflac12t64 libfuse3-3 libgstreamer-plugins-base1.0-0 libgstreamer1.0-0&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  libgtk-vnc-2.0-0 libgvnc-1.0-0 libigdgmm12 libiscsi7 libisoburn1t64 libisofs6t64 libjson-glib-1.0-0&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  libjson-glib-1.0-common libmp3lame0 libmpg123-0t64 libndctl6 libnfs14 libnspr4 libnss3 libnuma1 libogg0&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  libopus0 liborc-0.4-0t64 libosinfo-1.0-0 libosinfo-l10n libpcsclite1 libphodav-3.0-0 libphodav-3.0-common&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  libpmem1 libpmemobj1 libpolkit-gobject-1-0 libproxy1v5 libpulse0 librados2 librbd1 librdmacm1t64 libsndfile1&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  libsoup-3.0-0 libsoup-3.0-common libspice-client-glib-2.0-8 libspice-client-gtk-3.0-5 libtheora0 libunwind8&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  liburing2 libusb-1.0-0 libusbredirhost1t64 libusbredirparser1t64 libva-x11-2 libva2 libvirt-clients&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  libvirt-glib-1.0-0 libvirt-glib-1.0-data libvirt-l10n libvirt0 libvisual-0.4-0 libvorbis0a libvorbisenc2&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  libvte-2.91-0 libxslt1.1 libyajl2 mesa-va-drivers osinfo-db pci.ids python3-certifi python3-chardet&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  python3-idna python3-libvirt python3-libxml2 python3-pkg-resources python3-requests python3-urllib3&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  qemu-block-extra qemu-utils spice-client-glib-usb-acl-helper usb.ids va-driver-all virt-viewer virtinst xorriso&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;m&#34;&gt;0&lt;/span&gt; upgraded, &lt;span class=&#34;m&#34;&gt;98&lt;/span&gt; newly installed, &lt;span class=&#34;m&#34;&gt;0&lt;/span&gt; to remove and &lt;span class=&#34;m&#34;&gt;4&lt;/span&gt; not upgraded.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Need to get 34.2 MB of archives.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;After this operation, &lt;span class=&#34;m&#34;&gt;143&lt;/span&gt; MB of additional disk space will be used.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Do you want to &lt;span class=&#34;k&#34;&gt;continue&lt;/span&gt;? &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;Y/n&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt; y&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:1 http://archive.ubuntu.com/ubuntu noble/main amd64 iso-codes all 4.16.0-1 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;3,492 kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:2 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 python3-pkg-resources all 68.1.2-2ubuntu1.2 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;m&#34;&gt;168&lt;/span&gt; kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:3 http://archive.ubuntu.com/ubuntu noble/main amd64 libfuse3-3 amd64 3.14.0-5build1 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;83.1 kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:4 http://archive.ubuntu.com/ubuntu noble/main amd64 libnuma1 amd64 2.0.18-1build1 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;23.3 kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:5 http://archive.ubuntu.com/ubuntu noble/main amd64 libusb-1.0-0 amd64 2:1.0.27-1 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;54.0 kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:6 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 pci.ids all 0.0~2024.03.31-1ubuntu0.1 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;m&#34;&gt;275&lt;/span&gt; kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:7 http://archive.ubuntu.com/ubuntu noble/main amd64 usb.ids all 2024.03.18-1 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;m&#34;&gt;223&lt;/span&gt; kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:8 http://archive.ubuntu.com/ubuntu noble/main amd64 gir1.2-freedesktop amd64 1.80.1-1 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;49.7 kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:9 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 libcurl3t64-gnutls amd64 8.5.0-2ubuntu10.6 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;m&#34;&gt;333&lt;/span&gt; kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:10 http://archive.ubuntu.com/ubuntu noble/main amd64 libduktape207 amd64 2.7.0+tests-0ubuntu3 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;m&#34;&gt;143&lt;/span&gt; kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:11 http://archive.ubuntu.com/ubuntu noble/main amd64 libproxy1v5 amd64 0.5.4-4build1 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;26.5 kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:12 http://archive.ubuntu.com/ubuntu noble/main amd64 glib-networking-common all 2.80.0-1build1 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;6,702 B&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:13 http://archive.ubuntu.com/ubuntu noble/main amd64 glib-networking-services amd64 2.80.0-1build1 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;12.8 kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:14 http://archive.ubuntu.com/ubuntu noble/main amd64 glib-networking amd64 2.80.0-1build1 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;64.1 kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:15 http://archive.ubuntu.com/ubuntu noble/main amd64 libcdparanoia0 amd64 3.10.2+debian-14build3 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;48.5 kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:16 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 libdw1t64 amd64 0.190-1.1ubuntu0.1 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;m&#34;&gt;261&lt;/span&gt; kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:17 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 libunwind8 amd64 1.6.2-3build1.1 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;55.3 kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:18 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 libgstreamer1.0-0 amd64 1.24.2-1ubuntu0.1 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;1,165 kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:19 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 liborc-0.4-0t64 amd64 1:0.4.38-1ubuntu0.1 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;m&#34;&gt;207&lt;/span&gt; kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:20 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 libgstreamer-plugins-base1.0-0 amd64 1.24.2-1ubuntu0.2 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;m&#34;&gt;862&lt;/span&gt; kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:21 http://archive.ubuntu.com/ubuntu noble/main amd64 libogg0 amd64 1.3.5-3build1 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;22.7 kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:22 http://archive.ubuntu.com/ubuntu noble/main amd64 libopus0 amd64 1.4-1build1 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;m&#34;&gt;208&lt;/span&gt; kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:23 http://archive.ubuntu.com/ubuntu noble/main amd64 libtheora0 amd64 1.1.1+dfsg.1-16.1build3 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;m&#34;&gt;211&lt;/span&gt; kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:24 http://archive.ubuntu.com/ubuntu noble/main amd64 libvisual-0.4-0 amd64 0.4.2-2build1 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;m&#34;&gt;115&lt;/span&gt; kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:25 http://archive.ubuntu.com/ubuntu noble/main amd64 libvorbis0a amd64 1.3.7-1build3 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;97.6 kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:26 http://archive.ubuntu.com/ubuntu noble/main amd64 libvorbisenc2 amd64 1.3.7-1build3 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;80.8 kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:27 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 gstreamer1.0-plugins-base amd64 1.24.2-1ubuntu0.2 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;m&#34;&gt;721&lt;/span&gt; kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:28 http://archive.ubuntu.com/ubuntu noble/universe amd64 libva2 amd64 2.20.0-2build1 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;66.2 kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:29 http://archive.ubuntu.com/ubuntu noble/universe amd64 libigdgmm12 amd64 22.3.17+ds1-1 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;m&#34;&gt;145&lt;/span&gt; kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:30 http://archive.ubuntu.com/ubuntu noble/universe amd64 intel-media-va-driver amd64 24.1.0+dfsg1-1 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;4,022 kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:31 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 libaio1t64 amd64 0.3.113-6build1.1 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;7,210 B&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:32 http://archive.ubuntu.com/ubuntu noble/main amd64 libasyncns0 amd64 0.8-6build4 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;11.3 kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:33 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 libboost-iostreams1.83.0 amd64 1.83.0-2.1ubuntu3.1 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;m&#34;&gt;259&lt;/span&gt; kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:34 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 libboost-thread1.83.0 amd64 1.83.0-2.1ubuntu3.1 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;m&#34;&gt;276&lt;/span&gt; kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:35 http://archive.ubuntu.com/ubuntu noble/main amd64 libburn4t64 amd64 1.5.6-1.1build1 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;m&#34;&gt;158&lt;/span&gt; kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:36 http://archive.ubuntu.com/ubuntu noble/main amd64 libnspr4 amd64 2:4.35-1.1build1 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;m&#34;&gt;117&lt;/span&gt; kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:37 http://archive.ubuntu.com/ubuntu noble/main amd64 libnss3 amd64 2:3.98-1build1 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;1,445 kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:38 http://archive.ubuntu.com/ubuntu noble/main amd64 libpcsclite1 amd64 2.0.3-1build1 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;21.4 kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:39 http://archive.ubuntu.com/ubuntu noble/main amd64 libcacard0 amd64 1:2.8.0-3build4 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;36.5 kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:40 http://archive.ubuntu.com/ubuntu noble/main amd64 libdaxctl1 amd64 77-2ubuntu2 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;21.4 kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:41 http://archive.ubuntu.com/ubuntu noble/main amd64 libflac12t64 amd64 1.4.3+ds-2.1ubuntu2 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;m&#34;&gt;197&lt;/span&gt; kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:42 http://archive.ubuntu.com/ubuntu noble/main amd64 libmp3lame0 amd64 3.100-6build1 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;m&#34;&gt;142&lt;/span&gt; kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:43 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 libmpg123-0t64 amd64 1.32.5-1ubuntu1.1 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;m&#34;&gt;169&lt;/span&gt; kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:44 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 libsndfile1 amd64 1.2.2-1ubuntu5.24.04.1 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;m&#34;&gt;209&lt;/span&gt; kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:45 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 libpulse0 amd64 1:16.1+dfsg1-2ubuntu10.1 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;m&#34;&gt;292&lt;/span&gt; kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:46 http://archive.ubuntu.com/ubuntu noble/universe amd64 libgvnc-1.0-0 amd64 1.3.1-1build2 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;67.1 kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:47 http://archive.ubuntu.com/ubuntu noble/universe amd64 libgtk-vnc-2.0-0 amd64 1.3.1-1build2 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;28.9 kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:48 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 librdmacm1t64 amd64 50.0-2ubuntu0.2 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;70.7 kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:49 http://archive.ubuntu.com/ubuntu noble/main amd64 libiscsi7 amd64 1.19.0-3build4 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;68.7 kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:50 http://archive.ubuntu.com/ubuntu noble/main amd64 libisofs6t64 amd64 1.5.6.pl01-1.1ubuntu2 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;m&#34;&gt;220&lt;/span&gt; kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:51 http://archive.ubuntu.com/ubuntu noble/main amd64 libisoburn1t64 amd64 1:1.5.6-1.1ubuntu3 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;m&#34;&gt;405&lt;/span&gt; kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:52 http://archive.ubuntu.com/ubuntu noble/main amd64 libjson-glib-1.0-common all 1.8.0-2build2 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;4,244 B&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:53 http://archive.ubuntu.com/ubuntu noble/main amd64 libjson-glib-1.0-0 amd64 1.8.0-2build2 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;68.0 kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:54 http://archive.ubuntu.com/ubuntu noble/main amd64 libndctl6 amd64 77-2ubuntu2 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;62.8 kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:55 http://archive.ubuntu.com/ubuntu noble/main amd64 libnfs14 amd64 5.0.2-1build1 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;m&#34;&gt;109&lt;/span&gt; kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:56 http://archive.ubuntu.com/ubuntu noble/universe amd64 libphodav-3.0-common all 3.0-8build3 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;14.9 kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:57 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 libsoup-3.0-common all 3.4.4-5ubuntu0.4 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;11.1 kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:58 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 libsoup-3.0-0 amd64 3.4.4-5ubuntu0.4 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;m&#34;&gt;290&lt;/span&gt; kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:59 http://archive.ubuntu.com/ubuntu noble/universe amd64 libphodav-3.0-0 amd64 3.0-8build3 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;29.9 kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:60 http://archive.ubuntu.com/ubuntu noble/main amd64 libpmem1 amd64 1.13.1-1.1ubuntu2 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;84.8 kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:61 http://archive.ubuntu.com/ubuntu noble/main amd64 libpmemobj1 amd64 1.13.1-1.1ubuntu2 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;m&#34;&gt;116&lt;/span&gt; kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:62 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 libpolkit-gobject-1-0 amd64 124-2ubuntu1.24.04.2 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;49.1 kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:63 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 librados2 amd64 19.2.0-0ubuntu0.24.04.2 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;3,972 kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:64 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 librbd1 amd64 19.2.0-0ubuntu0.24.04.2 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;3,351 kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:65 http://archive.ubuntu.com/ubuntu noble/universe amd64 spice-client-glib-usb-acl-helper amd64 0.42-2ubuntu2 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;12.5 kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:66 http://archive.ubuntu.com/ubuntu noble/main amd64 libusbredirparser1t64 amd64 0.13.0-2.1build1 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;16.5 kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:67 http://archive.ubuntu.com/ubuntu noble/main amd64 libusbredirhost1t64 amd64 0.13.0-2.1build1 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;20.0 kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:68 http://archive.ubuntu.com/ubuntu noble/universe amd64 libspice-client-glib-2.0-8 amd64 0.42-2ubuntu2 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;m&#34;&gt;314&lt;/span&gt; kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:69 http://archive.ubuntu.com/ubuntu noble/universe amd64 libva-x11-2 amd64 2.20.0-2build1 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;12.0 kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:70 http://archive.ubuntu.com/ubuntu noble/universe amd64 libspice-client-gtk-3.0-5 amd64 0.42-2ubuntu2 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;56.6 kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:71 http://archive.ubuntu.com/ubuntu noble/main amd64 liburing2 amd64 2.5-1build1 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;21.1 kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:72 http://archive.ubuntu.com/ubuntu noble/main amd64 libyajl2 amd64 2.1.0-5build1 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;20.2 kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:73 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 libvirt0 amd64 10.0.0-2ubuntu8.7 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;1,826 kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:74 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 libvirt-clients amd64 10.0.0-2ubuntu8.7 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;m&#34;&gt;438&lt;/span&gt; kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:75 http://archive.ubuntu.com/ubuntu noble/universe amd64 libvirt-glib-1.0-data all 5.0.0-2build3 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;17.3 kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:76 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 libvirt-l10n all 10.0.0-2ubuntu8.7 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;1,150 B&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:77 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 libvte-2.91-0 amd64 0.76.0-1ubuntu0.1 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;m&#34;&gt;230&lt;/span&gt; kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:78 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 libxslt1.1 amd64 1.1.39-0exp1ubuntu0.24.04.2 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;m&#34;&gt;167&lt;/span&gt; kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:79 http://archive.ubuntu.com/ubuntu noble-updates/universe amd64 mesa-va-drivers amd64 24.2.8-1ubuntu1~24.04.1 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;19.5 kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:80 http://archive.ubuntu.com/ubuntu noble-updates/universe amd64 osinfo-db all 0.20250124-0ubuntu0.24.04.1 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;m&#34;&gt;176&lt;/span&gt; kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:81 http://archive.ubuntu.com/ubuntu noble/main amd64 python3-certifi all 2023.11.17-1 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;m&#34;&gt;165&lt;/span&gt; kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:82 http://archive.ubuntu.com/ubuntu noble/main amd64 python3-chardet all 5.2.0+dfsg-1 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;m&#34;&gt;117&lt;/span&gt; kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:83 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 python3-idna all 3.6-2ubuntu0.1 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;49.0 kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:84 http://archive.ubuntu.com/ubuntu noble/main amd64 python3-libvirt amd64 10.0.0-1build1 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;m&#34;&gt;164&lt;/span&gt; kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:85 http://archive.ubuntu.com/ubuntu noble-updates/universe amd64 python3-libxml2 amd64 2.9.14+dfsg-1.3ubuntu3.3 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;m&#34;&gt;140&lt;/span&gt; kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:86 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 python3-urllib3 all 2.0.7-1ubuntu0.2 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;93.3 kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:87 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 python3-requests all 2.31.0+dfsg-1ubuntu1.1 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;50.8 kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:88 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 qemu-utils amd64 1:8.2.2+ds-0ubuntu1.7 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;2,220 kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:89 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 qemu-block-extra amd64 1:8.2.2+ds-0ubuntu1.7 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;m&#34;&gt;111&lt;/span&gt; kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:90 http://archive.ubuntu.com/ubuntu noble/universe amd64 i965-va-driver amd64 2.4.1+dfsg1-1build2 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;m&#34;&gt;332&lt;/span&gt; kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:91 http://archive.ubuntu.com/ubuntu noble/universe amd64 va-driver-all amd64 2.20.0-2build1 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;4,844 B&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:92 http://archive.ubuntu.com/ubuntu noble/universe amd64 libvirt-glib-1.0-0 amd64 5.0.0-2build3 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;m&#34;&gt;121&lt;/span&gt; kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:93 http://archive.ubuntu.com/ubuntu noble/universe amd64 virt-viewer amd64 11.0-3build2 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;m&#34;&gt;285&lt;/span&gt; kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:94 http://archive.ubuntu.com/ubuntu noble/main amd64 xorriso amd64 1:1.5.6-1.1ubuntu3 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;m&#34;&gt;297&lt;/span&gt; kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:95 http://archive.ubuntu.com/ubuntu noble/universe amd64 libosinfo-l10n all 1.11.0-2build3 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;50.6 kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:96 http://archive.ubuntu.com/ubuntu noble/universe amd64 libosinfo-1.0-0 amd64 1.11.0-2build3 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;91.5 kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:97 http://archive.ubuntu.com/ubuntu noble/universe amd64 gir1.2-libosinfo-1.0 amd64 1.11.0-2build3 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;18.6 kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:98 http://archive.ubuntu.com/ubuntu noble-updates/universe amd64 virtinst all 1:4.1.0-3ubuntu0.1 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;m&#34;&gt;891&lt;/span&gt; kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Fetched 34.2 MB in 3s &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;10.8 MB/s&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Extracting templates from packages: 100%&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package iso-codes.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;Reading database ... &lt;span class=&#34;m&#34;&gt;26588&lt;/span&gt; files and directories currently installed.&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../00-iso-codes_4.16.0-1_all.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking iso-codes &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;4.16.0-1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package python3-pkg-resources.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../01-python3-pkg-resources_68.1.2-2ubuntu1.2_all.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking python3-pkg-resources &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;68.1.2-2ubuntu1.2&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package libfuse3-3:amd64.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../02-libfuse3-3_3.14.0-5build1_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking libfuse3-3:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;3.14.0-5build1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package libnuma1:amd64.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../03-libnuma1_2.0.18-1build1_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking libnuma1:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;2.0.18-1build1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package libusb-1.0-0:amd64.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../04-libusb-1.0-0_2%3a1.0.27-1_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking libusb-1.0-0:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;2:1.0.27-1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package pci.ids.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../05-pci.ids_0.0~2024.03.31-1ubuntu0.1_all.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking pci.ids &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;0.0~2024.03.31-1ubuntu0.1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package usb.ids.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../06-usb.ids_2024.03.18-1_all.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking usb.ids &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;2024.03.18-1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package gir1.2-freedesktop:amd64.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../07-gir1.2-freedesktop_1.80.1-1_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking gir1.2-freedesktop:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1.80.1-1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package libcurl3t64-gnutls:amd64.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../08-libcurl3t64-gnutls_8.5.0-2ubuntu10.6_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking libcurl3t64-gnutls:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;8.5.0-2ubuntu10.6&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package libduktape207:amd64.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../09-libduktape207_2.7.0+tests-0ubuntu3_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking libduktape207:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;2.7.0+tests-0ubuntu3&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package libproxy1v5:amd64.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../10-libproxy1v5_0.5.4-4build1_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking libproxy1v5:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;0.5.4-4build1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package glib-networking-common.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../11-glib-networking-common_2.80.0-1build1_all.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking glib-networking-common &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;2.80.0-1build1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package glib-networking-services.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../12-glib-networking-services_2.80.0-1build1_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking glib-networking-services &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;2.80.0-1build1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package glib-networking:amd64.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../13-glib-networking_2.80.0-1build1_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking glib-networking:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;2.80.0-1build1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package libcdparanoia0:amd64.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../14-libcdparanoia0_3.10.2+debian-14build3_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking libcdparanoia0:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;3.10.2+debian-14build3&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package libdw1t64:amd64.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../15-libdw1t64_0.190-1.1ubuntu0.1_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking libdw1t64:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;0.190-1.1ubuntu0.1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package libunwind8:amd64.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../16-libunwind8_1.6.2-3build1.1_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking libunwind8:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1.6.2-3build1.1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package libgstreamer1.0-0:amd64.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../17-libgstreamer1.0-0_1.24.2-1ubuntu0.1_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking libgstreamer1.0-0:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1.24.2-1ubuntu0.1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package liborc-0.4-0t64:amd64.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../18-liborc-0.4-0t64_1%3a0.4.38-1ubuntu0.1_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking liborc-0.4-0t64:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1:0.4.38-1ubuntu0.1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package libgstreamer-plugins-base1.0-0:amd64.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../19-libgstreamer-plugins-base1.0-0_1.24.2-1ubuntu0.2_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking libgstreamer-plugins-base1.0-0:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1.24.2-1ubuntu0.2&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package libogg0:amd64.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../20-libogg0_1.3.5-3build1_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking libogg0:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1.3.5-3build1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package libopus0:amd64.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../21-libopus0_1.4-1build1_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking libopus0:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1.4-1build1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package libtheora0:amd64.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../22-libtheora0_1.1.1+dfsg.1-16.1build3_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking libtheora0:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1.1.1+dfsg.1-16.1build3&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package libvisual-0.4-0:amd64.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../23-libvisual-0.4-0_0.4.2-2build1_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking libvisual-0.4-0:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;0.4.2-2build1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package libvorbis0a:amd64.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../24-libvorbis0a_1.3.7-1build3_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking libvorbis0a:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1.3.7-1build3&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package libvorbisenc2:amd64.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../25-libvorbisenc2_1.3.7-1build3_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking libvorbisenc2:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1.3.7-1build3&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package gstreamer1.0-plugins-base:amd64.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../26-gstreamer1.0-plugins-base_1.24.2-1ubuntu0.2_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking gstreamer1.0-plugins-base:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1.24.2-1ubuntu0.2&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package libva2:amd64.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../27-libva2_2.20.0-2build1_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking libva2:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;2.20.0-2build1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package libigdgmm12:amd64.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../28-libigdgmm12_22.3.17+ds1-1_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking libigdgmm12:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;22.3.17+ds1-1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package intel-media-va-driver:amd64.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../29-intel-media-va-driver_24.1.0+dfsg1-1_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking intel-media-va-driver:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;24.1.0+dfsg1-1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package libaio1t64:amd64.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../30-libaio1t64_0.3.113-6build1.1_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking libaio1t64:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;0.3.113-6build1.1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package libasyncns0:amd64.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../31-libasyncns0_0.8-6build4_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking libasyncns0:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;0.8-6build4&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package libboost-iostreams1.83.0:amd64.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../32-libboost-iostreams1.83.0_1.83.0-2.1ubuntu3.1_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking libboost-iostreams1.83.0:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1.83.0-2.1ubuntu3.1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package libboost-thread1.83.0:amd64.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../33-libboost-thread1.83.0_1.83.0-2.1ubuntu3.1_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking libboost-thread1.83.0:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1.83.0-2.1ubuntu3.1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package libburn4t64:amd64.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../34-libburn4t64_1.5.6-1.1build1_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking libburn4t64:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1.5.6-1.1build1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package libnspr4:amd64.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../35-libnspr4_2%3a4.35-1.1build1_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking libnspr4:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;2:4.35-1.1build1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package libnss3:amd64.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../36-libnss3_2%3a3.98-1build1_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking libnss3:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;2:3.98-1build1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package libpcsclite1:amd64.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../37-libpcsclite1_2.0.3-1build1_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking libpcsclite1:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;2.0.3-1build1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package libcacard0:amd64.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../38-libcacard0_1%3a2.8.0-3build4_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking libcacard0:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1:2.8.0-3build4&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package libdaxctl1:amd64.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../39-libdaxctl1_77-2ubuntu2_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking libdaxctl1:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;77-2ubuntu2&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package libflac12t64:amd64.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../40-libflac12t64_1.4.3+ds-2.1ubuntu2_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking libflac12t64:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1.4.3+ds-2.1ubuntu2&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package libmp3lame0:amd64.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../41-libmp3lame0_3.100-6build1_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking libmp3lame0:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;3.100-6build1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package libmpg123-0t64:amd64.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../42-libmpg123-0t64_1.32.5-1ubuntu1.1_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking libmpg123-0t64:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1.32.5-1ubuntu1.1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package libsndfile1:amd64.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../43-libsndfile1_1.2.2-1ubuntu5.24.04.1_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking libsndfile1:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1.2.2-1ubuntu5.24.04.1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package libpulse0:amd64.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../44-libpulse0_1%3a16.1+dfsg1-2ubuntu10.1_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking libpulse0:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1:16.1+dfsg1-2ubuntu10.1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package libgvnc-1.0-0:amd64.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../45-libgvnc-1.0-0_1.3.1-1build2_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking libgvnc-1.0-0:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1.3.1-1build2&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package libgtk-vnc-2.0-0:amd64.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../46-libgtk-vnc-2.0-0_1.3.1-1build2_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking libgtk-vnc-2.0-0:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1.3.1-1build2&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package librdmacm1t64:amd64.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../47-librdmacm1t64_50.0-2ubuntu0.2_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking librdmacm1t64:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;50.0-2ubuntu0.2&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package libiscsi7:amd64.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../48-libiscsi7_1.19.0-3build4_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking libiscsi7:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1.19.0-3build4&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package libisofs6t64:amd64.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../49-libisofs6t64_1.5.6.pl01-1.1ubuntu2_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking libisofs6t64:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1.5.6.pl01-1.1ubuntu2&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package libisoburn1t64:amd64.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../50-libisoburn1t64_1%3a1.5.6-1.1ubuntu3_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking libisoburn1t64:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1:1.5.6-1.1ubuntu3&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package libjson-glib-1.0-common.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../51-libjson-glib-1.0-common_1.8.0-2build2_all.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking libjson-glib-1.0-common &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1.8.0-2build2&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package libjson-glib-1.0-0:amd64.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../52-libjson-glib-1.0-0_1.8.0-2build2_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking libjson-glib-1.0-0:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1.8.0-2build2&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package libndctl6:amd64.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../53-libndctl6_77-2ubuntu2_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking libndctl6:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;77-2ubuntu2&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package libnfs14:amd64.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../54-libnfs14_5.0.2-1build1_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking libnfs14:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;5.0.2-1build1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package libphodav-3.0-common.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../55-libphodav-3.0-common_3.0-8build3_all.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking libphodav-3.0-common &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;3.0-8build3&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package libsoup-3.0-common.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../56-libsoup-3.0-common_3.4.4-5ubuntu0.4_all.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking libsoup-3.0-common &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;3.4.4-5ubuntu0.4&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package libsoup-3.0-0:amd64.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../57-libsoup-3.0-0_3.4.4-5ubuntu0.4_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking libsoup-3.0-0:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;3.4.4-5ubuntu0.4&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package libphodav-3.0-0:amd64.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../58-libphodav-3.0-0_3.0-8build3_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking libphodav-3.0-0:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;3.0-8build3&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package libpmem1:amd64.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../59-libpmem1_1.13.1-1.1ubuntu2_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking libpmem1:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1.13.1-1.1ubuntu2&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package libpmemobj1:amd64.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../60-libpmemobj1_1.13.1-1.1ubuntu2_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking libpmemobj1:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1.13.1-1.1ubuntu2&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package libpolkit-gobject-1-0:amd64.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../61-libpolkit-gobject-1-0_124-2ubuntu1.24.04.2_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking libpolkit-gobject-1-0:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;124-2ubuntu1.24.04.2&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package librados2.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../62-librados2_19.2.0-0ubuntu0.24.04.2_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking librados2 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;19.2.0-0ubuntu0.24.04.2&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package librbd1.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../63-librbd1_19.2.0-0ubuntu0.24.04.2_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking librbd1 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;19.2.0-0ubuntu0.24.04.2&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package spice-client-glib-usb-acl-helper.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../64-spice-client-glib-usb-acl-helper_0.42-2ubuntu2_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking spice-client-glib-usb-acl-helper &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;0.42-2ubuntu2&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package libusbredirparser1t64:amd64.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../65-libusbredirparser1t64_0.13.0-2.1build1_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking libusbredirparser1t64:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;0.13.0-2.1build1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package libusbredirhost1t64:amd64.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../66-libusbredirhost1t64_0.13.0-2.1build1_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking libusbredirhost1t64:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;0.13.0-2.1build1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package libspice-client-glib-2.0-8:amd64.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../67-libspice-client-glib-2.0-8_0.42-2ubuntu2_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking libspice-client-glib-2.0-8:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;0.42-2ubuntu2&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package libva-x11-2:amd64.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../68-libva-x11-2_2.20.0-2build1_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking libva-x11-2:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;2.20.0-2build1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package libspice-client-gtk-3.0-5:amd64.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../69-libspice-client-gtk-3.0-5_0.42-2ubuntu2_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking libspice-client-gtk-3.0-5:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;0.42-2ubuntu2&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package liburing2:amd64.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../70-liburing2_2.5-1build1_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking liburing2:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;2.5-1build1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package libyajl2:amd64.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../71-libyajl2_2.1.0-5build1_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking libyajl2:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;2.1.0-5build1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package libvirt0:amd64.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../72-libvirt0_10.0.0-2ubuntu8.7_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking libvirt0:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;10.0.0-2ubuntu8.7&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package libvirt-clients.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../73-libvirt-clients_10.0.0-2ubuntu8.7_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking libvirt-clients &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;10.0.0-2ubuntu8.7&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package libvirt-glib-1.0-data.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../74-libvirt-glib-1.0-data_5.0.0-2build3_all.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking libvirt-glib-1.0-data &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;5.0.0-2build3&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package libvirt-l10n.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../75-libvirt-l10n_10.0.0-2ubuntu8.7_all.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking libvirt-l10n &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;10.0.0-2ubuntu8.7&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package libvte-2.91-0:amd64.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../76-libvte-2.91-0_0.76.0-1ubuntu0.1_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking libvte-2.91-0:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;0.76.0-1ubuntu0.1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package libxslt1.1:amd64.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../77-libxslt1.1_1.1.39-0exp1ubuntu0.24.04.2_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking libxslt1.1:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1.1.39-0exp1ubuntu0.24.04.2&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package mesa-va-drivers:amd64.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../78-mesa-va-drivers_24.2.8-1ubuntu1~24.04.1_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking mesa-va-drivers:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;24.2.8-1ubuntu1~24.04.1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package osinfo-db.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../79-osinfo-db_0.20250124-0ubuntu0.24.04.1_all.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking osinfo-db &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;0.20250124-0ubuntu0.24.04.1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package python3-certifi.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../80-python3-certifi_2023.11.17-1_all.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking python3-certifi &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;2023.11.17-1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package python3-chardet.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../81-python3-chardet_5.2.0+dfsg-1_all.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking python3-chardet &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;5.2.0+dfsg-1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package python3-idna.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../82-python3-idna_3.6-2ubuntu0.1_all.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking python3-idna &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;3.6-2ubuntu0.1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package python3-libvirt.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../83-python3-libvirt_10.0.0-1build1_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking python3-libvirt &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;10.0.0-1build1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package python3-libxml2:amd64.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../84-python3-libxml2_2.9.14+dfsg-1.3ubuntu3.3_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking python3-libxml2:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;2.9.14+dfsg-1.3ubuntu3.3&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package python3-urllib3.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../85-python3-urllib3_2.0.7-1ubuntu0.2_all.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking python3-urllib3 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;2.0.7-1ubuntu0.2&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package python3-requests.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../86-python3-requests_2.31.0+dfsg-1ubuntu1.1_all.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking python3-requests &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;2.31.0+dfsg-1ubuntu1.1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package qemu-utils.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../87-qemu-utils_1%3a8.2.2+ds-0ubuntu1.7_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking qemu-utils &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1:8.2.2+ds-0ubuntu1.7&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package qemu-block-extra.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../88-qemu-block-extra_1%3a8.2.2+ds-0ubuntu1.7_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking qemu-block-extra &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1:8.2.2+ds-0ubuntu1.7&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package i965-va-driver:amd64.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../89-i965-va-driver_2.4.1+dfsg1-1build2_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking i965-va-driver:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;2.4.1+dfsg1-1build2&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package va-driver-all:amd64.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../90-va-driver-all_2.20.0-2build1_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking va-driver-all:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;2.20.0-2build1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package libvirt-glib-1.0-0:amd64.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../91-libvirt-glib-1.0-0_5.0.0-2build3_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking libvirt-glib-1.0-0:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;5.0.0-2build3&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package virt-viewer.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../92-virt-viewer_11.0-3build2_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking virt-viewer &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;11.0-3build2&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package xorriso.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../93-xorriso_1%3a1.5.6-1.1ubuntu3_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking xorriso &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1:1.5.6-1.1ubuntu3&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package libosinfo-l10n.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../94-libosinfo-l10n_1.11.0-2build3_all.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking libosinfo-l10n &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1.11.0-2build3&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package libosinfo-1.0-0:amd64.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../95-libosinfo-1.0-0_1.11.0-2build3_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking libosinfo-1.0-0:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1.11.0-2build3&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package gir1.2-libosinfo-1.0:amd64.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../96-gir1.2-libosinfo-1.0_1.11.0-2build3_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking gir1.2-libosinfo-1.0:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1.11.0-2build3&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package virtinst.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../97-virtinst_1%3a4.1.0-3ubuntu0.1_all.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking virtinst &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1:4.1.0-3ubuntu0.1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up python3-pkg-resources &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;68.1.2-2ubuntu1.2&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up libcdparanoia0:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;3.10.2+debian-14build3&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up pci.ids &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;0.0~2024.03.31-1ubuntu0.1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up gir1.2-freedesktop:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1.80.1-1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up libogg0:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1.3.5-3build1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up libphodav-3.0-common &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;3.0-8build3&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up libvisual-0.4-0:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;0.4.2-2build1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up libyajl2:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;2.1.0-5build1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up libcurl3t64-gnutls:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;8.5.0-2ubuntu10.6&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up libboost-thread1.83.0:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1.83.0-2.1ubuntu3.1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up libigdgmm12:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;22.3.17+ds1-1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up libsoup-3.0-common &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;3.4.4-5ubuntu0.4&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up libmpg123-0t64:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1.32.5-1ubuntu1.1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up libvte-2.91-0:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;0.76.0-1ubuntu0.1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up libunwind8:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1.6.2-3build1.1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up libnfs14:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;5.0.2-1build1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up liborc-0.4-0t64:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1:0.4.38-1ubuntu0.1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up libdw1t64:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;0.190-1.1ubuntu0.1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up python3-libxml2:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;2.9.14+dfsg-1.3ubuntu3.3&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up python3-chardet &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;5.2.0+dfsg-1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up libvirt-glib-1.0-data &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;5.0.0-2build3&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up libva2:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;2.20.0-2build1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up python3-certifi &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;2023.11.17-1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up libnspr4:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;2:4.35-1.1build1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up libboost-iostreams1.83.0:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1.83.0-2.1ubuntu3.1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up libopus0:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1.4-1build1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up intel-media-va-driver:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;24.1.0+dfsg1-1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up libvorbis0a:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1.3.7-1build3&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up python3-idna &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;3.6-2ubuntu0.1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up usb.ids &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;2024.03.18-1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up osinfo-db &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;0.20250124-0ubuntu0.24.04.1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up libpcsclite1:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;2.0.3-1build1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up libfuse3-3:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;3.14.0-5build1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up libdaxctl1:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;77-2ubuntu2&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up python3-urllib3 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;2.0.7-1ubuntu0.2&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up libnuma1:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;2.0.18-1build1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up libvirt0:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;10.0.0-2ubuntu8.7&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up libaio1t64:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;0.3.113-6build1.1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up libvirt-glib-1.0-0:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;5.0.0-2build3&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up libisofs6t64:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1.5.6.pl01-1.1ubuntu2&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up libduktape207:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;2.7.0+tests-0ubuntu3&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up libasyncns0:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;0.8-6build4&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up libusbredirparser1t64:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;0.13.0-2.1build1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up libtheora0:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1.1.1+dfsg.1-16.1build3&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up libxslt1.1:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1.1.39-0exp1ubuntu0.24.04.2&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up libburn4t64:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1.5.6-1.1build1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up libndctl6:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;77-2ubuntu2&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up librdmacm1t64:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;50.0-2ubuntu0.2&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up libjson-glib-1.0-common &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1.8.0-2build2&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up libflac12t64:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1.4.3+ds-2.1ubuntu2&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up libusb-1.0-0:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;2:1.0.27-1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up mesa-va-drivers:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;24.2.8-1ubuntu1~24.04.1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up glib-networking-common &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;2.80.0-1build1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up liburing2:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;2.5-1build1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up libiscsi7:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1.19.0-3build4&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up libisoburn1t64:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1:1.5.6-1.1ubuntu3&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up xorriso &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1:1.5.6-1.1ubuntu3&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up libpmem1:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1.13.1-1.1ubuntu2&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up libva-x11-2:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;2.20.0-2build1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up iso-codes &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;4.16.0-1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up libpolkit-gobject-1-0:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;124-2ubuntu1.24.04.2&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up libgstreamer1.0-0:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1.24.2-1ubuntu0.1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setcap worked! gst-ptp-helper is not suid!&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up libmp3lame0:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;3.100-6build1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up i965-va-driver:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;2.4.1+dfsg1-1build2&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up libosinfo-l10n &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1.11.0-2build3&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up libvorbisenc2:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1.3.7-1build3&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up librados2 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;19.2.0-0ubuntu0.24.04.2&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up libproxy1v5:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;0.5.4-4build1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up python3-libvirt &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;10.0.0-1build1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up libvirt-clients &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;10.0.0-2ubuntu8.7&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up spice-client-glib-usb-acl-helper &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;0.42-2ubuntu2&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up libgstreamer-plugins-base1.0-0:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1.24.2-1ubuntu0.2&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up libnss3:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;2:3.98-1build1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up libcacard0:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1:2.8.0-3build4&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up libusbredirhost1t64:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;0.13.0-2.1build1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up libjson-glib-1.0-0:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1.8.0-2build2&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up gstreamer1.0-plugins-base:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1.24.2-1ubuntu0.2&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up libvirt-l10n &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;10.0.0-2ubuntu8.7&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up va-driver-all:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;2.20.0-2build1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up python3-requests &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;2.31.0+dfsg-1ubuntu1.1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up libpmemobj1:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1.13.1-1.1ubuntu2&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up librbd1 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;19.2.0-0ubuntu0.24.04.2&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up libsndfile1:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1.2.2-1ubuntu5.24.04.1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up qemu-utils &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1:8.2.2+ds-0ubuntu1.7&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up qemu-block-extra &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1:8.2.2+ds-0ubuntu1.7&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Created symlink /etc/systemd/system/multi-user.target.wants/run-qemu.mount → /usr/lib/systemd/system/run-qemu.mount&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up glib-networking-services &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;2.80.0-1build1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up libpulse0:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1:16.1+dfsg1-2ubuntu10.1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up libgvnc-1.0-0:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1.3.1-1build2&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up glib-networking:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;2.80.0-1build1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up libgtk-vnc-2.0-0:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1.3.1-1build2&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up libsoup-3.0-0:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;3.4.4-5ubuntu0.4&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up libphodav-3.0-0:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;3.0-8build3&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up libosinfo-1.0-0:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1.11.0-2build3&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up gir1.2-libosinfo-1.0:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1.11.0-2build3&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up libspice-client-glib-2.0-8:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;0.42-2ubuntu2&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up virtinst &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1:4.1.0-3ubuntu0.1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up libspice-client-gtk-3.0-5:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;0.42-2ubuntu2&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up virt-viewer &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;11.0-3build2&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Processing triggers &lt;span class=&#34;k&#34;&gt;for&lt;/span&gt; libc-bin &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;2.39-0ubuntu8.4&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Processing triggers &lt;span class=&#34;k&#34;&gt;for&lt;/span&gt; man-db &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;2.12.0-4build2&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Processing triggers &lt;span class=&#34;k&#34;&gt;for&lt;/span&gt; libglib2.0-0t64:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;2.80.0-6ubuntu3.4&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Processing triggers &lt;span class=&#34;k&#34;&gt;for&lt;/span&gt; shared-mime-info &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;2.4-4&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Processing triggers &lt;span class=&#34;k&#34;&gt;for&lt;/span&gt; hicolor-icon-theme &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;0.17-2&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;📦&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;waylon@ubuntu ~&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;$ virt-install --version&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;virsh list --all&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;4.1.0&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;error: failed to connect to the hypervisor&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;error: binary &lt;span class=&#34;s1&#34;&gt;&amp;#39;/usr/sbin/libvirtd&amp;#39;&lt;/span&gt; does not exist in &lt;span class=&#34;nv&#34;&gt;$PATH&lt;/span&gt;: No such file or directory&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;📦&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;waylon@ubuntu ~&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;$ &lt;span class=&#34;nb&#34;&gt;exit&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;logout&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;waylon@razorcrest:~$ distrobox enter --additional-flags &lt;span class=&#34;s2&#34;&gt;&amp;#34;--device /dev/kvm&amp;#34;&lt;/span&gt; ubuntu&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Error: unknown flag: --device&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;See &lt;span class=&#34;s1&#34;&gt;&amp;#39;podman exec --help&amp;#39;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;waylon@razorcrest:~$ distrobox enter ubuntu&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;📦&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;waylon@ubuntu ~&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;$ ls -l /run/libvirt/&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;common/               libvirt-sock          nodedev/              secrets/              virtlogd-admin-sock&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;hostdevmgr/           libvirt-sock-ro       nwfilter/             storage/              virtlogd-sock&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;interface/            lxc/                  nwfilter-binding/     virtlockd-admin-sock&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;libvirt-admin-sock    network/              qemu/                 virtlockd-sock&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;📦&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;waylon@ubuntu ~&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;$ ls -l /run/libvirt/libvirt-sock&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;srw-rw-rw-. &lt;span class=&#34;m&#34;&gt;1&lt;/span&gt; nobody nogroup &lt;span class=&#34;m&#34;&gt;0&lt;/span&gt; Jun &lt;span class=&#34;m&#34;&gt;27&lt;/span&gt; 11:09 /run/libvirt/libvirt-sock&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;📦&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;waylon@ubuntu ~&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;$ sudo usermod -aG libvirt &lt;span class=&#34;nv&#34;&gt;$USER&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;usermod: group &lt;span class=&#34;s1&#34;&gt;&amp;#39;libvirt&amp;#39;&lt;/span&gt; does not exist&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;📦&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;waylon@ubuntu ~&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;$ &lt;span class=&#34;nb&#34;&gt;export&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;LIBVIRT_DEFAULT_URI&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;qemu+unix:///system&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;virsh list --all&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt; Id   Name   State&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;--------------------&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;📦&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;waylon@ubuntu ~&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;$ ls -l /run/libvirt/libvirt-sock&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;srw-rw-rw-. &lt;span class=&#34;m&#34;&gt;1&lt;/span&gt; nobody nogroup &lt;span class=&#34;m&#34;&gt;0&lt;/span&gt; Jun &lt;span class=&#34;m&#34;&gt;27&lt;/span&gt; 11:09 /run/libvirt/libvirt-sock&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;📦&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;waylon@ubuntu ~&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;$ virt-install --version&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;virsh list --all&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;4.1.0&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt; Id   Name   State&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;--------------------&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;📦&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;waylon@ubuntu ~&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;$ sudo apt update&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo apt install virt-manager -y&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Hit:1 http://security.ubuntu.com/ubuntu noble-security InRelease&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Hit:2 http://archive.ubuntu.com/ubuntu noble InRelease&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Hit:3 http://archive.ubuntu.com/ubuntu noble-updates InRelease&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Hit:4 http://archive.ubuntu.com/ubuntu noble-backports InRelease&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Reading package lists... Done&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Building dependency tree... Done&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Reading state information... Done&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;m&#34;&gt;4&lt;/span&gt; packages can be upgraded. Run &lt;span class=&#34;s1&#34;&gt;&amp;#39;apt list --upgradable&amp;#39;&lt;/span&gt; to see them.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Reading package lists... Done&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Building dependency tree... Done&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Reading state information... Done&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;The following additional packages will be installed:&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  acl alsa-topology-conf alsa-ucm-conf cpu-checker dmeventd dmidecode dns-root-data dnsmasq-base gettext-base&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  gir1.2-atk-1.0 gir1.2-ayatanaappindicator3-0.1 gir1.2-gdkpixbuf-2.0 gir1.2-gstreamer-1.0 gir1.2-gtk-3.0&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  gir1.2-gtk-vnc-2.0 gir1.2-gtksource-4 gir1.2-harfbuzz-0.0 gir1.2-libvirt-glib-1.0 gir1.2-pango-1.0&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  gir1.2-spiceclientglib-2.0 gir1.2-spiceclientgtk-3.0 gir1.2-vte-2.91 gstreamer1.0-plugins-good gstreamer1.0-x&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  iptables ipxe-qemu ipxe-qemu-256k-compat-efi-roms libaa1 libasound2-data libasound2t64 libavc1394-0&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  libayatana-appindicator3-1 libayatana-ido3-0.4-0 libayatana-indicator3-7 libbrlapi0.8 libcaca0&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  libdbusmenu-glib4 libdbusmenu-gtk3-4 libdecor-0-0 libdecor-0-plugin-1-gtk libdevmapper-event1.02.1 libdv4t64&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  libfdt1 libgstreamer-plugins-good1.0-0 libgtksourceview-4-0 libgtksourceview-4-common libgudev-1.0-0&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  libharfbuzz-gobject0 libiec61883-0 libip4tc2 libip6tc2 libjack-jackd2-0 liblvm2cmd2.03 libnetfilter-conntrack3&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  libnfnetlink0 libnftables1 libnftnl11 libnss-mymachines libpangoxft-1.0-0 libparted2t64 libpipewire-0.3-0t64&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  libpipewire-0.3-common libpolkit-agent-1-0 libraw1394-11 libsamplerate0 libsdl2-2.0-0 libshout3 libslang2&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  libslirp0 libspa-0.2-modules libspeex1 libspice-server1 libtag1v5 libtag1v5-vanilla libtpms0 libtwolame0&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  libv4l-0t64 libv4lconvert0t64 libvirglrenderer1 libvirt-daemon libvirt-daemon-config-network&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  libvirt-daemon-config-nwfilter libvirt-daemon-driver-qemu libvirt-daemon-system libvirt-daemon-system-systemd&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  libvpx9 libwavpack1 libwebrtc-audio-processing1 libxft2 libxml2-utils libxss1 libxv1 logrotate lvm2 mdevctl&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  msr-tools netcat-openbsd nftables ovmf parted polkitd python3-cairo python3-gi-cairo qemu-system-common&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  qemu-system-data qemu-system-gui qemu-system-modules-opengl qemu-system-modules-spice qemu-system-x86 seabios&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  sgml-base swtpm swtpm-tools systemd-container systemd-hwe-hwdb thin-provisioning-tools udev xml-core&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Suggested packages:&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  firewalld kmod alsa-utils libasound2-plugins libdv-bin oss-compat jackd2 libparted-dev libparted-i18n pipewire&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  libraw1394-doc xdg-utils speex gstreamer1.0-libav gstreamer1.0-plugins-ugly&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  libvirt-daemon-driver-storage-gluster libvirt-daemon-driver-storage-iscsi-direct&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  libvirt-daemon-driver-storage-rbd libvirt-daemon-driver-storage-zfs libvirt-daemon-driver-lxc&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  libvirt-daemon-driver-vbox libvirt-daemon-driver-xen numad passt apparmor auditd nfs-common open-iscsi pm-utils&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  systemtap zfsutils bsd-mailx &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt; mailx parted-doc polkitd-pkla samba vde2 sgml-base-doc trousers gir1.2-secret-1&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  gnome-keyring python3-guestfs ssh-askpass debhelper&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;The following NEW packages will be installed:&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  acl alsa-topology-conf alsa-ucm-conf cpu-checker dmeventd dmidecode dns-root-data dnsmasq-base gettext-base&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  gir1.2-atk-1.0 gir1.2-ayatanaappindicator3-0.1 gir1.2-gdkpixbuf-2.0 gir1.2-gstreamer-1.0 gir1.2-gtk-3.0&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  gir1.2-gtk-vnc-2.0 gir1.2-gtksource-4 gir1.2-harfbuzz-0.0 gir1.2-libvirt-glib-1.0 gir1.2-pango-1.0&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  gir1.2-spiceclientglib-2.0 gir1.2-spiceclientgtk-3.0 gir1.2-vte-2.91 gstreamer1.0-plugins-good gstreamer1.0-x&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  iptables ipxe-qemu ipxe-qemu-256k-compat-efi-roms libaa1 libasound2-data libasound2t64 libavc1394-0&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  libayatana-appindicator3-1 libayatana-ido3-0.4-0 libayatana-indicator3-7 libbrlapi0.8 libcaca0&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  libdbusmenu-glib4 libdbusmenu-gtk3-4 libdecor-0-0 libdecor-0-plugin-1-gtk libdevmapper-event1.02.1 libdv4t64&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  libfdt1 libgstreamer-plugins-good1.0-0 libgtksourceview-4-0 libgtksourceview-4-common libgudev-1.0-0&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  libharfbuzz-gobject0 libiec61883-0 libip4tc2 libip6tc2 libjack-jackd2-0 liblvm2cmd2.03 libnetfilter-conntrack3&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  libnfnetlink0 libnftables1 libnftnl11 libnss-mymachines libpangoxft-1.0-0 libparted2t64 libpipewire-0.3-0t64&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  libpipewire-0.3-common libpolkit-agent-1-0 libraw1394-11 libsamplerate0 libsdl2-2.0-0 libshout3 libslang2&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  libslirp0 libspa-0.2-modules libspeex1 libspice-server1 libtag1v5 libtag1v5-vanilla libtpms0 libtwolame0&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  libv4l-0t64 libv4lconvert0t64 libvirglrenderer1 libvirt-daemon libvirt-daemon-config-network&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  libvirt-daemon-config-nwfilter libvirt-daemon-driver-qemu libvirt-daemon-system libvirt-daemon-system-systemd&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  libvpx9 libwavpack1 libwebrtc-audio-processing1 libxft2 libxml2-utils libxss1 libxv1 logrotate lvm2 mdevctl&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  msr-tools netcat-openbsd nftables ovmf parted polkitd python3-cairo python3-gi-cairo qemu-system-common&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  qemu-system-data qemu-system-gui qemu-system-modules-opengl qemu-system-modules-spice qemu-system-x86 seabios&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  sgml-base swtpm swtpm-tools systemd-container systemd-hwe-hwdb thin-provisioning-tools udev virt-manager&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  xml-core&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;m&#34;&gt;0&lt;/span&gt; upgraded, &lt;span class=&#34;m&#34;&gt;119&lt;/span&gt; newly installed, &lt;span class=&#34;m&#34;&gt;0&lt;/span&gt; to remove and &lt;span class=&#34;m&#34;&gt;4&lt;/span&gt; not upgraded.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Need to get 43.2 MB of archives.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;After this operation, &lt;span class=&#34;m&#34;&gt;180&lt;/span&gt; MB of additional disk space will be used.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:1 http://archive.ubuntu.com/ubuntu noble/main amd64 sgml-base all 1.31 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;11.4 kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:2 http://archive.ubuntu.com/ubuntu noble/main amd64 libslang2 amd64 2.3.3-3build2 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;m&#34;&gt;506&lt;/span&gt; kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:3 http://archive.ubuntu.com/ubuntu noble/main amd64 logrotate amd64 3.21.0-2build1 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;52.2 kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:4 http://archive.ubuntu.com/ubuntu noble/main amd64 netcat-openbsd amd64 1.226-1ubuntu2 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;44.3 kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:5 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 udev amd64 255.4-1ubuntu8.8 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;1,874 kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:6 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 systemd-hwe-hwdb all 255.1.4 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;3,200 B&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:7 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 dmidecode amd64 3.5-3ubuntu0.1 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;73.0 kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:8 http://archive.ubuntu.com/ubuntu noble/main amd64 gettext-base amd64 0.21-14ubuntu2 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;38.4 kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:9 http://archive.ubuntu.com/ubuntu noble/main amd64 libip4tc2 amd64 1.8.10-3ubuntu2 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;23.3 kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:10 http://archive.ubuntu.com/ubuntu noble/main amd64 libip6tc2 amd64 1.8.10-3ubuntu2 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;23.7 kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:11 http://archive.ubuntu.com/ubuntu noble/main amd64 libnfnetlink0 amd64 1.0.2-2build1 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;14.8 kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:12 http://archive.ubuntu.com/ubuntu noble/main amd64 libnetfilter-conntrack3 amd64 1.0.9-6build1 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;45.2 kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:13 http://archive.ubuntu.com/ubuntu noble/main amd64 libnftnl11 amd64 1.2.6-2build1 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;66.0 kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:14 http://archive.ubuntu.com/ubuntu noble/main amd64 iptables amd64 1.8.10-3ubuntu2 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;m&#34;&gt;381&lt;/span&gt; kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:15 http://archive.ubuntu.com/ubuntu noble/main amd64 libnftables1 amd64 1.0.9-1build1 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;m&#34;&gt;358&lt;/span&gt; kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:16 http://archive.ubuntu.com/ubuntu noble/main amd64 libparted2t64 amd64 3.6-4build1 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;m&#34;&gt;152&lt;/span&gt; kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:17 http://archive.ubuntu.com/ubuntu noble/main amd64 nftables amd64 1.0.9-1build1 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;69.8 kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:18 http://archive.ubuntu.com/ubuntu noble/main amd64 parted amd64 3.6-4build1 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;43.3 kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:19 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 acl amd64 2.3.2-1build1.1 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;39.4 kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:20 http://archive.ubuntu.com/ubuntu noble/main amd64 alsa-topology-conf all 1.2.5.1-2 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;15.5 kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:21 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 libasound2-data all 1.2.11-1ubuntu0.1 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;21.1 kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:22 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 libasound2t64 amd64 1.2.11-1ubuntu0.1 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;m&#34;&gt;399&lt;/span&gt; kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:23 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 alsa-ucm-conf all 1.2.10-1ubuntu5.7 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;66.4 kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:24 http://archive.ubuntu.com/ubuntu noble/main amd64 msr-tools amd64 1.3-5build1 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;9,610 B&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:25 http://archive.ubuntu.com/ubuntu noble/main amd64 cpu-checker amd64 0.7-1.3build2 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;6,148 B&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:26 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 libdevmapper-event1.02.1 amd64 2:1.02.185-3ubuntu3.2 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;12.6 kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:27 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 liblvm2cmd2.03 amd64 2.03.16-3ubuntu3.2 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;m&#34;&gt;797&lt;/span&gt; kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:28 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 dmeventd amd64 2:1.02.185-3ubuntu3.2 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;38.0 kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:29 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 dns-root-data all 2024071801~ubuntu0.24.04.1 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;5,918 B&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:30 http://archive.ubuntu.com/ubuntu noble/main amd64 dnsmasq-base amd64 2.90-2build2 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;m&#34;&gt;375&lt;/span&gt; kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:31 http://archive.ubuntu.com/ubuntu noble/main amd64 gir1.2-atk-1.0 amd64 2.52.0-1build1 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;23.1 kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:32 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 gir1.2-gdkpixbuf-2.0 amd64 2.42.10+dfsg-3ubuntu3.1 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;9,486 B&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:33 http://archive.ubuntu.com/ubuntu noble/main amd64 libharfbuzz-gobject0 amd64 8.3.0-2build2 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;34.3 kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:34 http://archive.ubuntu.com/ubuntu noble/main amd64 gir1.2-harfbuzz-0.0 amd64 8.3.0-2build2 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;44.5 kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:35 http://archive.ubuntu.com/ubuntu noble/main amd64 libxft2 amd64 2.3.6-1build1 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;45.3 kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:36 http://archive.ubuntu.com/ubuntu noble/main amd64 libpangoxft-1.0-0 amd64 1.52.1+ds-1build1 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;20.3 kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:37 http://archive.ubuntu.com/ubuntu noble/main amd64 gir1.2-pango-1.0 amd64 1.52.1+ds-1build1 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;34.8 kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:38 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 gir1.2-gtk-3.0 amd64 3.24.41-4ubuntu1.3 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;m&#34;&gt;245&lt;/span&gt; kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:39 http://archive.ubuntu.com/ubuntu noble/main amd64 libayatana-ido3-0.4-0 amd64 0.10.1-1build2 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;56.6 kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:40 http://archive.ubuntu.com/ubuntu noble/main amd64 libayatana-indicator3-7 amd64 0.9.4-1build1 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;31.7 kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:41 http://archive.ubuntu.com/ubuntu noble/main amd64 libdbusmenu-glib4 amd64 18.10.20180917~bzr492+repack1-3.1ubuntu5 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;43.0 kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:42 http://archive.ubuntu.com/ubuntu noble/main amd64 libdbusmenu-gtk3-4 amd64 18.10.20180917~bzr492+repack1-3.1ubuntu5 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;27.6 kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:43 http://archive.ubuntu.com/ubuntu noble/main amd64 libayatana-appindicator3-1 amd64 0.5.93-1build3 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;24.7 kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:44 http://archive.ubuntu.com/ubuntu noble/main amd64 gir1.2-ayatanaappindicator3-0.1 amd64 0.5.93-1build3 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;5,838 B&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:45 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 gir1.2-gstreamer-1.0 amd64 1.24.2-1ubuntu0.1 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;88.4 kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:46 http://archive.ubuntu.com/ubuntu noble/universe amd64 gir1.2-gtk-vnc-2.0 amd64 1.3.1-1build2 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;12.1 kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:47 http://archive.ubuntu.com/ubuntu noble/universe amd64 libgtksourceview-4-common all 4.8.4-5build4 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;m&#34;&gt;590&lt;/span&gt; kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:48 http://archive.ubuntu.com/ubuntu noble/universe amd64 libgtksourceview-4-0 amd64 4.8.4-5build4 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;m&#34;&gt;233&lt;/span&gt; kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:49 http://archive.ubuntu.com/ubuntu noble/universe amd64 gir1.2-gtksource-4 amd64 4.8.4-5build4 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;20.3 kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:50 http://archive.ubuntu.com/ubuntu noble/universe amd64 gir1.2-spiceclientglib-2.0 amd64 0.42-2ubuntu2 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;14.4 kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:51 http://archive.ubuntu.com/ubuntu noble/universe amd64 gir1.2-spiceclientgtk-3.0 amd64 0.42-2ubuntu2 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;5,610 B&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:52 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 gir1.2-vte-2.91 amd64 0.76.0-1ubuntu0.1 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;11.5 kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:53 http://archive.ubuntu.com/ubuntu noble/main amd64 libaa1 amd64 1.4p5-51.1 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;49.9 kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:54 http://archive.ubuntu.com/ubuntu noble/main amd64 libraw1394-11 amd64 2.1.2-2build3 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;26.2 kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:55 http://archive.ubuntu.com/ubuntu noble/main amd64 libavc1394-0 amd64 0.5.4-5build3 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;15.4 kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:56 http://archive.ubuntu.com/ubuntu noble/main amd64 libcaca0 amd64 0.99.beta20-4build2 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;m&#34;&gt;208&lt;/span&gt; kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:57 http://archive.ubuntu.com/ubuntu noble/main amd64 libdv4t64 amd64 1.0.0-17.1build1 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;63.2 kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:58 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 libgstreamer-plugins-good1.0-0 amd64 1.24.2-1ubuntu1.1 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;32.9 kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:59 http://archive.ubuntu.com/ubuntu noble/main amd64 libgudev-1.0-0 amd64 1:238-5ubuntu1 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;15.9 kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:60 http://archive.ubuntu.com/ubuntu noble/main amd64 libiec61883-0 amd64 1.2.0-6build1 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;24.5 kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:61 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 libspeex1 amd64 1.2.1-2ubuntu2.24.04.1 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;59.6 kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:62 http://archive.ubuntu.com/ubuntu noble/main amd64 libshout3 amd64 2.4.6-1build2 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;50.3 kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:63 http://archive.ubuntu.com/ubuntu noble/main amd64 libtag1v5-vanilla amd64 1.13.1-1build1 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;m&#34;&gt;326&lt;/span&gt; kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:64 http://archive.ubuntu.com/ubuntu noble/main amd64 libtag1v5 amd64 1.13.1-1build1 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;11.7 kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:65 http://archive.ubuntu.com/ubuntu noble/main amd64 libtwolame0 amd64 0.4.0-2build3 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;52.3 kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:66 http://archive.ubuntu.com/ubuntu noble/main amd64 libv4lconvert0t64 amd64 1.26.1-4build3 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;87.6 kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:67 http://archive.ubuntu.com/ubuntu noble/main amd64 libv4l-0t64 amd64 1.26.1-4build3 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;46.9 kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:68 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 libvpx9 amd64 1.14.0-1ubuntu2.2 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;1,143 kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:69 http://archive.ubuntu.com/ubuntu noble/main amd64 libwavpack1 amd64 5.6.0-1build1 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;84.6 kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:70 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 gstreamer1.0-plugins-good amd64 1.24.2-1ubuntu1.1 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;2,238 kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:71 http://archive.ubuntu.com/ubuntu noble/main amd64 libxv1 amd64 2:1.0.11-1.1build1 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;10.7 kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:72 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 gstreamer1.0-x amd64 1.24.2-1ubuntu0.2 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;85.0 kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:73 http://archive.ubuntu.com/ubuntu noble/main amd64 ipxe-qemu all 1.21.1+git-20220113.fbbdc3926-0ubuntu2 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;1,565 kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:74 http://archive.ubuntu.com/ubuntu noble/main amd64 ipxe-qemu-256k-compat-efi-roms all 1.0.0+git-20150424.a25a16d-0ubuntu5 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;m&#34;&gt;548&lt;/span&gt; kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:75 http://archive.ubuntu.com/ubuntu noble/main amd64 libbrlapi0.8 amd64 6.6-4ubuntu5 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;31.4 kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:76 http://archive.ubuntu.com/ubuntu noble/main amd64 libdecor-0-0 amd64 0.2.2-1build2 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;16.5 kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:77 http://archive.ubuntu.com/ubuntu noble/main amd64 libdecor-0-plugin-1-gtk amd64 0.2.2-1build2 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;22.2 kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:78 http://archive.ubuntu.com/ubuntu noble/main amd64 libsamplerate0 amd64 0.2.2-4build1 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;1,344 kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:79 http://archive.ubuntu.com/ubuntu noble/main amd64 libjack-jackd2-0 amd64 1.9.21~dfsg-3ubuntu3 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;m&#34;&gt;289&lt;/span&gt; kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:80 http://archive.ubuntu.com/ubuntu noble/main amd64 libwebrtc-audio-processing1 amd64 0.3.1-0ubuntu6 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;m&#34;&gt;290&lt;/span&gt; kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:81 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 libspa-0.2-modules amd64 1.0.5-1ubuntu3 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;m&#34;&gt;626&lt;/span&gt; kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:82 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 libpipewire-0.3-0t64 amd64 1.0.5-1ubuntu3 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;m&#34;&gt;252&lt;/span&gt; kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:83 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 libpipewire-0.3-common all 1.0.5-1ubuntu3 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;18.8 kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:84 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 libpolkit-agent-1-0 amd64 124-2ubuntu1.24.04.2 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;17.4 kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:85 http://archive.ubuntu.com/ubuntu noble/main amd64 libxss1 amd64 1:1.2.3-1build3 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;7,204 B&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:86 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 libsdl2-2.0-0 amd64 2.30.0+dfsg-1ubuntu3.1 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;m&#34;&gt;686&lt;/span&gt; kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:87 http://archive.ubuntu.com/ubuntu noble/main amd64 libslirp0 amd64 4.7.0-1ubuntu3 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;63.8 kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:88 http://archive.ubuntu.com/ubuntu noble/main amd64 libspice-server1 amd64 0.15.1-1build2 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;m&#34;&gt;349&lt;/span&gt; kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:89 http://archive.ubuntu.com/ubuntu noble/main amd64 libtpms0 amd64 0.9.3-0ubuntu4 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;m&#34;&gt;373&lt;/span&gt; kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:90 http://archive.ubuntu.com/ubuntu noble/main amd64 libvirglrenderer1 amd64 1.0.0-1ubuntu2 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;m&#34;&gt;226&lt;/span&gt; kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:91 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 libvirt-daemon-driver-qemu amd64 10.0.0-2ubuntu8.7 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;m&#34;&gt;740&lt;/span&gt; kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:92 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 libvirt-daemon amd64 10.0.0-2ubuntu8.7 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;m&#34;&gt;431&lt;/span&gt; kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:93 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 libvirt-daemon-config-network all 10.0.0-2ubuntu8.7 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;3,120 B&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:94 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 libvirt-daemon-config-nwfilter all 10.0.0-2ubuntu8.7 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;6,042 B&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:95 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 systemd-container amd64 255.4-1ubuntu8.8 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;m&#34;&gt;417&lt;/span&gt; kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:96 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 libvirt-daemon-system-systemd all 10.0.0-2ubuntu8.7 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;1,376 B&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:97 http://archive.ubuntu.com/ubuntu noble/main amd64 xml-core all 0.19 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;20.3 kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:98 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 polkitd amd64 124-2ubuntu1.24.04.2 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;95.2 kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:99 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 libvirt-daemon-system amd64 10.0.0-2ubuntu8.7 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;49.6 kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:100 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 libxml2-utils amd64 2.9.14+dfsg-1.3ubuntu3.3 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;39.4 kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:101 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 lvm2 amd64 2.03.16-3ubuntu3.2 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;1,186 kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:102 http://archive.ubuntu.com/ubuntu noble/main amd64 mdevctl amd64 1.3.0-1ubuntu2 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;m&#34;&gt;936&lt;/span&gt; kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:103 http://archive.ubuntu.com/ubuntu noble/main amd64 python3-cairo amd64 1.25.1-2build2 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;m&#34;&gt;119&lt;/span&gt; kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:104 http://archive.ubuntu.com/ubuntu noble/main amd64 python3-gi-cairo amd64 3.48.2-1 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;8,132 B&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:105 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 qemu-system-common amd64 1:8.2.2+ds-0ubuntu1.7 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;1,253 kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:106 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 qemu-system-data all 1:8.2.2+ds-0ubuntu1.7 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;1,793 kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:107 http://archive.ubuntu.com/ubuntu noble/main amd64 libfdt1 amd64 1.7.0-2build1 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;20.1 kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:108 http://archive.ubuntu.com/ubuntu noble/main amd64 seabios all 1.16.3-2 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;m&#34;&gt;175&lt;/span&gt; kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:109 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 qemu-system-x86 amd64 1:8.2.2+ds-0ubuntu1.7 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;11.2 MB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:110 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 qemu-system-modules-opengl amd64 1:8.2.2+ds-0ubuntu1.7 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;m&#34;&gt;184&lt;/span&gt; kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:111 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 qemu-system-gui amd64 1:8.2.2+ds-0ubuntu1.7 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;m&#34;&gt;314&lt;/span&gt; kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:112 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 qemu-system-modules-spice amd64 1:8.2.2+ds-0ubuntu1.7 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;70.2 kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:113 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 swtpm amd64 0.7.3-0ubuntu5.24.04.1 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;53.1 kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:114 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 swtpm-tools amd64 0.7.3-0ubuntu5.24.04.1 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;92.9 kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:115 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 thin-provisioning-tools amd64 0.9.0-2ubuntu5.1 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;m&#34;&gt;436&lt;/span&gt; kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:116 http://archive.ubuntu.com/ubuntu noble/universe amd64 gir1.2-libvirt-glib-1.0 amd64 5.0.0-2build3 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;32.6 kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:117 http://archive.ubuntu.com/ubuntu noble-updates/universe amd64 virt-manager all 1:4.1.0-3ubuntu0.1 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;m&#34;&gt;263&lt;/span&gt; kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:118 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 libnss-mymachines amd64 255.4-1ubuntu8.8 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;m&#34;&gt;153&lt;/span&gt; kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Get:119 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 ovmf all 2024.02-2ubuntu0.4 &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;4,571 kB&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Fetched 43.2 MB in 5s &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;9,539 kB/s&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Extracting templates from packages: 100%&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preconfiguring packages ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package sgml-base.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;Reading database ... &lt;span class=&#34;m&#34;&gt;30439&lt;/span&gt; files and directories currently installed.&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../000-sgml-base_1.31_all.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking sgml-base &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1.31&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package libslang2:amd64.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../001-libslang2_2.3.3-3build2_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking libslang2:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;2.3.3-3build2&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package logrotate.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../002-logrotate_3.21.0-2build1_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking logrotate &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;3.21.0-2build1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package netcat-openbsd.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../003-netcat-openbsd_1.226-1ubuntu2_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking netcat-openbsd &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1.226-1ubuntu2&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package udev.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../004-udev_255.4-1ubuntu8.8_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking udev &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;255.4-1ubuntu8.8&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package systemd-hwe-hwdb.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../005-systemd-hwe-hwdb_255.1.4_all.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking systemd-hwe-hwdb &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;255.1.4&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package dmidecode.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../006-dmidecode_3.5-3ubuntu0.1_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking dmidecode &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;3.5-3ubuntu0.1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package gettext-base.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../007-gettext-base_0.21-14ubuntu2_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking gettext-base &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;0.21-14ubuntu2&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package libip4tc2:amd64.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../008-libip4tc2_1.8.10-3ubuntu2_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking libip4tc2:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1.8.10-3ubuntu2&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package libip6tc2:amd64.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../009-libip6tc2_1.8.10-3ubuntu2_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking libip6tc2:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1.8.10-3ubuntu2&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package libnfnetlink0:amd64.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../010-libnfnetlink0_1.0.2-2build1_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking libnfnetlink0:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1.0.2-2build1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package libnetfilter-conntrack3:amd64.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../011-libnetfilter-conntrack3_1.0.9-6build1_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking libnetfilter-conntrack3:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1.0.9-6build1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package libnftnl11:amd64.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../012-libnftnl11_1.2.6-2build1_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking libnftnl11:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1.2.6-2build1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package iptables.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../013-iptables_1.8.10-3ubuntu2_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking iptables &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1.8.10-3ubuntu2&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package libnftables1:amd64.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../014-libnftables1_1.0.9-1build1_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking libnftables1:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1.0.9-1build1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package libparted2t64:amd64.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../015-libparted2t64_3.6-4build1_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Adding &lt;span class=&#34;s1&#34;&gt;&amp;#39;diversion of /lib/x86_64-linux-gnu/libparted.so.2 to /lib/x86_64-linux-gnu/libparted.so.2.usr-is-merged by&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s1&#34;&gt;libparted2t64&amp;#39;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Adding &lt;span class=&#34;s1&#34;&gt;&amp;#39;diversion of /lib/x86_64-linux-gnu/libparted.so.2.0.5 to /lib/x86_64-linux-gnu/libparted.so.2.0.5.usr-is-me&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s1&#34;&gt;rged by libparted2t64&amp;#39;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking libparted2t64:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;3.6-4build1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package nftables.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../016-nftables_1.0.9-1build1_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking nftables &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1.0.9-1build1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package parted.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../017-parted_3.6-4build1_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking parted &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;3.6-4build1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package acl.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../018-acl_2.3.2-1build1.1_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking acl &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;2.3.2-1build1.1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package alsa-topology-conf.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../019-alsa-topology-conf_1.2.5.1-2_all.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking alsa-topology-conf &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1.2.5.1-2&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package libasound2-data.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../020-libasound2-data_1.2.11-1ubuntu0.1_all.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking libasound2-data &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1.2.11-1ubuntu0.1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package libasound2t64:amd64.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../021-libasound2t64_1.2.11-1ubuntu0.1_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking libasound2t64:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1.2.11-1ubuntu0.1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package alsa-ucm-conf.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../022-alsa-ucm-conf_1.2.10-1ubuntu5.7_all.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking alsa-ucm-conf &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1.2.10-1ubuntu5.7&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package msr-tools.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../023-msr-tools_1.3-5build1_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking msr-tools &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1.3-5build1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package cpu-checker.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../024-cpu-checker_0.7-1.3build2_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking cpu-checker &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;0.7-1.3build2&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package libdevmapper-event1.02.1:amd64.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../025-libdevmapper-event1.02.1_2%3a1.02.185-3ubuntu3.2_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking libdevmapper-event1.02.1:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;2:1.02.185-3ubuntu3.2&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package liblvm2cmd2.03:amd64.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../026-liblvm2cmd2.03_2.03.16-3ubuntu3.2_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking liblvm2cmd2.03:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;2.03.16-3ubuntu3.2&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package dmeventd.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../027-dmeventd_2%3a1.02.185-3ubuntu3.2_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking dmeventd &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;2:1.02.185-3ubuntu3.2&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package dns-root-data.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../028-dns-root-data_2024071801~ubuntu0.24.04.1_all.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking dns-root-data &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;2024071801~ubuntu0.24.04.1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package dnsmasq-base.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../029-dnsmasq-base_2.90-2build2_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking dnsmasq-base &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;2.90-2build2&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package gir1.2-atk-1.0:amd64.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../030-gir1.2-atk-1.0_2.52.0-1build1_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking gir1.2-atk-1.0:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;2.52.0-1build1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package gir1.2-gdkpixbuf-2.0:amd64.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../031-gir1.2-gdkpixbuf-2.0_2.42.10+dfsg-3ubuntu3.1_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking gir1.2-gdkpixbuf-2.0:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;2.42.10+dfsg-3ubuntu3.1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package libharfbuzz-gobject0:amd64.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../032-libharfbuzz-gobject0_8.3.0-2build2_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking libharfbuzz-gobject0:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;8.3.0-2build2&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package gir1.2-harfbuzz-0.0:amd64.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../033-gir1.2-harfbuzz-0.0_8.3.0-2build2_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking gir1.2-harfbuzz-0.0:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;8.3.0-2build2&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package libxft2:amd64.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../034-libxft2_2.3.6-1build1_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking libxft2:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;2.3.6-1build1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package libpangoxft-1.0-0:amd64.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../035-libpangoxft-1.0-0_1.52.1+ds-1build1_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking libpangoxft-1.0-0:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1.52.1+ds-1build1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package gir1.2-pango-1.0:amd64.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../036-gir1.2-pango-1.0_1.52.1+ds-1build1_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking gir1.2-pango-1.0:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1.52.1+ds-1build1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package gir1.2-gtk-3.0:amd64.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../037-gir1.2-gtk-3.0_3.24.41-4ubuntu1.3_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking gir1.2-gtk-3.0:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;3.24.41-4ubuntu1.3&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package libayatana-ido3-0.4-0:amd64.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../038-libayatana-ido3-0.4-0_0.10.1-1build2_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking libayatana-ido3-0.4-0:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;0.10.1-1build2&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package libayatana-indicator3-7:amd64.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../039-libayatana-indicator3-7_0.9.4-1build1_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking libayatana-indicator3-7:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;0.9.4-1build1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package libdbusmenu-glib4:amd64.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../040-libdbusmenu-glib4_18.10.20180917~bzr492+repack1-3.1ubuntu5_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking libdbusmenu-glib4:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;18.10.20180917~bzr492+repack1-3.1ubuntu5&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package libdbusmenu-gtk3-4:amd64.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../041-libdbusmenu-gtk3-4_18.10.20180917~bzr492+repack1-3.1ubuntu5_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking libdbusmenu-gtk3-4:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;18.10.20180917~bzr492+repack1-3.1ubuntu5&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package libayatana-appindicator3-1.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../042-libayatana-appindicator3-1_0.5.93-1build3_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking libayatana-appindicator3-1 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;0.5.93-1build3&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package gir1.2-ayatanaappindicator3-0.1.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../043-gir1.2-ayatanaappindicator3-0.1_0.5.93-1build3_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking gir1.2-ayatanaappindicator3-0.1 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;0.5.93-1build3&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package gir1.2-gstreamer-1.0:amd64.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../044-gir1.2-gstreamer-1.0_1.24.2-1ubuntu0.1_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking gir1.2-gstreamer-1.0:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1.24.2-1ubuntu0.1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package gir1.2-gtk-vnc-2.0:amd64.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../045-gir1.2-gtk-vnc-2.0_1.3.1-1build2_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking gir1.2-gtk-vnc-2.0:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1.3.1-1build2&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package libgtksourceview-4-common.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../046-libgtksourceview-4-common_4.8.4-5build4_all.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking libgtksourceview-4-common &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;4.8.4-5build4&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package libgtksourceview-4-0:amd64.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../047-libgtksourceview-4-0_4.8.4-5build4_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking libgtksourceview-4-0:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;4.8.4-5build4&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package gir1.2-gtksource-4:amd64.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../048-gir1.2-gtksource-4_4.8.4-5build4_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking gir1.2-gtksource-4:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;4.8.4-5build4&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package gir1.2-spiceclientglib-2.0:amd64.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../049-gir1.2-spiceclientglib-2.0_0.42-2ubuntu2_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking gir1.2-spiceclientglib-2.0:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;0.42-2ubuntu2&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package gir1.2-spiceclientgtk-3.0:amd64.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../050-gir1.2-spiceclientgtk-3.0_0.42-2ubuntu2_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking gir1.2-spiceclientgtk-3.0:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;0.42-2ubuntu2&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package gir1.2-vte-2.91:amd64.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../051-gir1.2-vte-2.91_0.76.0-1ubuntu0.1_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking gir1.2-vte-2.91:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;0.76.0-1ubuntu0.1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package libaa1:amd64.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../052-libaa1_1.4p5-51.1_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking libaa1:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1.4p5-51.1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package libraw1394-11:amd64.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../053-libraw1394-11_2.1.2-2build3_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking libraw1394-11:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;2.1.2-2build3&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package libavc1394-0:amd64.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../054-libavc1394-0_0.5.4-5build3_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking libavc1394-0:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;0.5.4-5build3&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package libcaca0:amd64.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../055-libcaca0_0.99.beta20-4build2_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking libcaca0:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;0.99.beta20-4build2&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package libdv4t64:amd64.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../056-libdv4t64_1.0.0-17.1build1_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking libdv4t64:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1.0.0-17.1build1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package libgstreamer-plugins-good1.0-0:amd64.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../057-libgstreamer-plugins-good1.0-0_1.24.2-1ubuntu1.1_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking libgstreamer-plugins-good1.0-0:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1.24.2-1ubuntu1.1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package libgudev-1.0-0:amd64.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../058-libgudev-1.0-0_1%3a238-5ubuntu1_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking libgudev-1.0-0:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1:238-5ubuntu1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package libiec61883-0:amd64.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../059-libiec61883-0_1.2.0-6build1_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking libiec61883-0:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1.2.0-6build1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package libspeex1:amd64.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../060-libspeex1_1.2.1-2ubuntu2.24.04.1_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking libspeex1:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1.2.1-2ubuntu2.24.04.1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package libshout3:amd64.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../061-libshout3_2.4.6-1build2_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking libshout3:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;2.4.6-1build2&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package libtag1v5-vanilla:amd64.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../062-libtag1v5-vanilla_1.13.1-1build1_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking libtag1v5-vanilla:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1.13.1-1build1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package libtag1v5:amd64.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../063-libtag1v5_1.13.1-1build1_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking libtag1v5:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1.13.1-1build1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package libtwolame0:amd64.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../064-libtwolame0_0.4.0-2build3_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking libtwolame0:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;0.4.0-2build3&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package libv4lconvert0t64:amd64.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../065-libv4lconvert0t64_1.26.1-4build3_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking libv4lconvert0t64:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1.26.1-4build3&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package libv4l-0t64:amd64.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../066-libv4l-0t64_1.26.1-4build3_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking libv4l-0t64:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1.26.1-4build3&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package libvpx9:amd64.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../067-libvpx9_1.14.0-1ubuntu2.2_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking libvpx9:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1.14.0-1ubuntu2.2&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package libwavpack1:amd64.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../068-libwavpack1_5.6.0-1build1_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking libwavpack1:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;5.6.0-1build1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package gstreamer1.0-plugins-good:amd64.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../069-gstreamer1.0-plugins-good_1.24.2-1ubuntu1.1_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking gstreamer1.0-plugins-good:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1.24.2-1ubuntu1.1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package libxv1:amd64.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../070-libxv1_2%3a1.0.11-1.1build1_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking libxv1:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;2:1.0.11-1.1build1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package gstreamer1.0-x:amd64.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../071-gstreamer1.0-x_1.24.2-1ubuntu0.2_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking gstreamer1.0-x:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1.24.2-1ubuntu0.2&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package ipxe-qemu.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../072-ipxe-qemu_1.21.1+git-20220113.fbbdc3926-0ubuntu2_all.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking ipxe-qemu &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1.21.1+git-20220113.fbbdc3926-0ubuntu2&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package ipxe-qemu-256k-compat-efi-roms.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../073-ipxe-qemu-256k-compat-efi-roms_1.0.0+git-20150424.a25a16d-0ubuntu5_all.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking ipxe-qemu-256k-compat-efi-roms &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1.0.0+git-20150424.a25a16d-0ubuntu5&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package libbrlapi0.8:amd64.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../074-libbrlapi0.8_6.6-4ubuntu5_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking libbrlapi0.8:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;6.6-4ubuntu5&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package libdecor-0-0:amd64.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../075-libdecor-0-0_0.2.2-1build2_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking libdecor-0-0:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;0.2.2-1build2&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package libdecor-0-plugin-1-gtk:amd64.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../076-libdecor-0-plugin-1-gtk_0.2.2-1build2_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking libdecor-0-plugin-1-gtk:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;0.2.2-1build2&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package libsamplerate0:amd64.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../077-libsamplerate0_0.2.2-4build1_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking libsamplerate0:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;0.2.2-4build1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package libjack-jackd2-0:amd64.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../078-libjack-jackd2-0_1.9.21~dfsg-3ubuntu3_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking libjack-jackd2-0:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1.9.21~dfsg-3ubuntu3&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package libwebrtc-audio-processing1:amd64.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../079-libwebrtc-audio-processing1_0.3.1-0ubuntu6_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking libwebrtc-audio-processing1:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;0.3.1-0ubuntu6&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package libspa-0.2-modules:amd64.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../080-libspa-0.2-modules_1.0.5-1ubuntu3_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking libspa-0.2-modules:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1.0.5-1ubuntu3&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package libpipewire-0.3-0t64:amd64.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../081-libpipewire-0.3-0t64_1.0.5-1ubuntu3_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking libpipewire-0.3-0t64:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1.0.5-1ubuntu3&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package libpipewire-0.3-common.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../082-libpipewire-0.3-common_1.0.5-1ubuntu3_all.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking libpipewire-0.3-common &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1.0.5-1ubuntu3&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package libpolkit-agent-1-0:amd64.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../083-libpolkit-agent-1-0_124-2ubuntu1.24.04.2_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking libpolkit-agent-1-0:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;124-2ubuntu1.24.04.2&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package libxss1:amd64.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../084-libxss1_1%3a1.2.3-1build3_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking libxss1:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1:1.2.3-1build3&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package libsdl2-2.0-0:amd64.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../085-libsdl2-2.0-0_2.30.0+dfsg-1ubuntu3.1_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking libsdl2-2.0-0:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;2.30.0+dfsg-1ubuntu3.1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package libslirp0:amd64.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../086-libslirp0_4.7.0-1ubuntu3_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking libslirp0:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;4.7.0-1ubuntu3&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package libspice-server1:amd64.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../087-libspice-server1_0.15.1-1build2_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking libspice-server1:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;0.15.1-1build2&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package libtpms0:amd64.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../088-libtpms0_0.9.3-0ubuntu4_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking libtpms0:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;0.9.3-0ubuntu4&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package libvirglrenderer1:amd64.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../089-libvirglrenderer1_1.0.0-1ubuntu2_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking libvirglrenderer1:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1.0.0-1ubuntu2&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package libvirt-daemon-driver-qemu.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../090-libvirt-daemon-driver-qemu_10.0.0-2ubuntu8.7_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking libvirt-daemon-driver-qemu &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;10.0.0-2ubuntu8.7&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package libvirt-daemon.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../091-libvirt-daemon_10.0.0-2ubuntu8.7_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking libvirt-daemon &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;10.0.0-2ubuntu8.7&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package libvirt-daemon-config-network.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../092-libvirt-daemon-config-network_10.0.0-2ubuntu8.7_all.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking libvirt-daemon-config-network &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;10.0.0-2ubuntu8.7&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package libvirt-daemon-config-nwfilter.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../093-libvirt-daemon-config-nwfilter_10.0.0-2ubuntu8.7_all.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking libvirt-daemon-config-nwfilter &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;10.0.0-2ubuntu8.7&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package systemd-container.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../094-systemd-container_255.4-1ubuntu8.8_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking systemd-container &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;255.4-1ubuntu8.8&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package libvirt-daemon-system-systemd.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../095-libvirt-daemon-system-systemd_10.0.0-2ubuntu8.7_all.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking libvirt-daemon-system-systemd &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;10.0.0-2ubuntu8.7&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package xml-core.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../096-xml-core_0.19_all.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking xml-core &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;0.19&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package polkitd.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../097-polkitd_124-2ubuntu1.24.04.2_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking polkitd &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;124-2ubuntu1.24.04.2&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package libvirt-daemon-system.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../098-libvirt-daemon-system_10.0.0-2ubuntu8.7_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking libvirt-daemon-system &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;10.0.0-2ubuntu8.7&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package libxml2-utils.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../099-libxml2-utils_2.9.14+dfsg-1.3ubuntu3.3_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking libxml2-utils &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;2.9.14+dfsg-1.3ubuntu3.3&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package lvm2.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../100-lvm2_2.03.16-3ubuntu3.2_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking lvm2 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;2.03.16-3ubuntu3.2&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package mdevctl.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../101-mdevctl_1.3.0-1ubuntu2_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking mdevctl &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1.3.0-1ubuntu2&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package python3-cairo.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../102-python3-cairo_1.25.1-2build2_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking python3-cairo &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1.25.1-2build2&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package python3-gi-cairo.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../103-python3-gi-cairo_3.48.2-1_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking python3-gi-cairo &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;3.48.2-1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package qemu-system-common.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../104-qemu-system-common_1%3a8.2.2+ds-0ubuntu1.7_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking qemu-system-common &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1:8.2.2+ds-0ubuntu1.7&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package qemu-system-data.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../105-qemu-system-data_1%3a8.2.2+ds-0ubuntu1.7_all.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking qemu-system-data &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1:8.2.2+ds-0ubuntu1.7&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package libfdt1:amd64.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../106-libfdt1_1.7.0-2build1_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking libfdt1:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1.7.0-2build1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package seabios.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../107-seabios_1.16.3-2_all.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking seabios &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1.16.3-2&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package qemu-system-x86.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../108-qemu-system-x86_1%3a8.2.2+ds-0ubuntu1.7_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking qemu-system-x86 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1:8.2.2+ds-0ubuntu1.7&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package qemu-system-modules-opengl.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../109-qemu-system-modules-opengl_1%3a8.2.2+ds-0ubuntu1.7_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking qemu-system-modules-opengl &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1:8.2.2+ds-0ubuntu1.7&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package qemu-system-gui.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../110-qemu-system-gui_1%3a8.2.2+ds-0ubuntu1.7_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking qemu-system-gui &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1:8.2.2+ds-0ubuntu1.7&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package qemu-system-modules-spice.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../111-qemu-system-modules-spice_1%3a8.2.2+ds-0ubuntu1.7_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking qemu-system-modules-spice &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1:8.2.2+ds-0ubuntu1.7&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package swtpm.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../112-swtpm_0.7.3-0ubuntu5.24.04.1_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking swtpm &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;0.7.3-0ubuntu5.24.04.1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package swtpm-tools.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../113-swtpm-tools_0.7.3-0ubuntu5.24.04.1_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking swtpm-tools &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;0.7.3-0ubuntu5.24.04.1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package thin-provisioning-tools.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../114-thin-provisioning-tools_0.9.0-2ubuntu5.1_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking thin-provisioning-tools &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;0.9.0-2ubuntu5.1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package gir1.2-libvirt-glib-1.0:amd64.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../115-gir1.2-libvirt-glib-1.0_5.0.0-2build3_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking gir1.2-libvirt-glib-1.0:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;5.0.0-2build3&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package virt-manager.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../116-virt-manager_1%3a4.1.0-3ubuntu0.1_all.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking virt-manager &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1:4.1.0-3ubuntu0.1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package libnss-mymachines:amd64.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../117-libnss-mymachines_255.4-1ubuntu8.8_amd64.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking libnss-mymachines:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;255.4-1ubuntu8.8&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Selecting previously unselected package ovmf.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Preparing to unpack .../118-ovmf_2024.02-2ubuntu0.4_all.deb ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unpacking ovmf &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;2024.02-2ubuntu0.4&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up libip4tc2:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1.8.10-3ubuntu2&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up libpipewire-0.3-common &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1.0.5-1ubuntu3&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up logrotate &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;3.21.0-2build1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Created symlink /etc/systemd/system/timers.target.wants/logrotate.timer → /usr/lib/systemd/system/logrotate.timer.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up libvirt-daemon-config-network &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;10.0.0-2ubuntu8.7&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up gir1.2-gstreamer-1.0:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1.24.2-1ubuntu0.1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up libraw1394-11:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;2.1.2-2build3&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up libxft2:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;2.3.6-1build1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up libtag1v5-vanilla:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1.13.1-1build1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up python3-cairo &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1.25.1-2build2&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up libspeex1:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1.2.1-2ubuntu2.24.04.1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up libdevmapper-event1.02.1:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;2:1.02.185-3ubuntu3.2&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up libv4lconvert0t64:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1.26.1-4build3&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up libpangoxft-1.0-0:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1.52.1+ds-1build1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up libtwolame0:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;0.4.0-2build3&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up gir1.2-gdkpixbuf-2.0:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;2.42.10+dfsg-3ubuntu3.1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up gir1.2-spiceclientglib-2.0:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;0.42-2ubuntu2&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up gir1.2-atk-1.0:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;2.52.0-1build1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up libip6tc2:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1.8.10-3ubuntu2&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up libdbusmenu-glib4:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;18.10.20180917~bzr492+repack1-3.1ubuntu5&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up libspice-server1:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;0.15.1-1build2&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up netcat-openbsd &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1.226-1ubuntu2&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;update-alternatives: using /bin/nc.openbsd to provide /bin/nc &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;nc&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; in auto mode&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up gir1.2-libvirt-glib-1.0:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;5.0.0-2build3&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up msr-tools &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1.3-5build1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up libwebrtc-audio-processing1:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;0.3.1-0ubuntu6&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up gettext-base &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;0.21-14ubuntu2&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up libnftnl11:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1.2.6-2build1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up libharfbuzz-gobject0:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;8.3.0-2build2&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up libfdt1:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1.7.0-2build1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up libayatana-ido3-0.4-0:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;0.10.1-1build2&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up gir1.2-harfbuzz-0.0:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;8.3.0-2build2&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up acl &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;2.3.2-1build1.1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up ovmf &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;2024.02-2ubuntu0.4&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up dns-root-data &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;2024071801~ubuntu0.24.04.1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up libasound2-data &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1.2.11-1ubuntu0.1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up gir1.2-pango-1.0:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1.52.1+ds-1build1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up libgstreamer-plugins-good1.0-0:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1.24.2-1ubuntu1.1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up libasound2t64:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1.2.11-1ubuntu0.1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up libslang2:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;2.3.3-3build2&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up libvirglrenderer1:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1.0.0-1ubuntu2&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up libspa-0.2-modules:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1.0.5-1ubuntu3&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up libxv1:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;2:1.0.11-1.1build1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up libshout3:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;2.4.6-1build2&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up thin-provisioning-tools &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;0.9.0-2ubuntu5.1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up udev &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;255.4-1ubuntu8.8&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Creating group &lt;span class=&#34;s1&#34;&gt;&amp;#39;input&amp;#39;&lt;/span&gt; with GID 995.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Creating group &lt;span class=&#34;s1&#34;&gt;&amp;#39;sgx&amp;#39;&lt;/span&gt; with GID 994.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Creating group &lt;span class=&#34;s1&#34;&gt;&amp;#39;kvm&amp;#39;&lt;/span&gt; with GID 993.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Creating group &lt;span class=&#34;s1&#34;&gt;&amp;#39;render&amp;#39;&lt;/span&gt; with GID 992.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;fchownat&lt;span class=&#34;o&#34;&gt;()&lt;/span&gt; of /dev/snd/seq failed: Operation not permitted&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;fchownat&lt;span class=&#34;o&#34;&gt;()&lt;/span&gt; of /dev/snd/timer failed: Operation not permitted&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;fchownat&lt;span class=&#34;o&#34;&gt;()&lt;/span&gt; of /dev/loop-control failed: Operation not permitted&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;fchmod&lt;span class=&#34;o&#34;&gt;()&lt;/span&gt; of /dev/kvm failed: Operation not permitted&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;fchmod&lt;span class=&#34;o&#34;&gt;()&lt;/span&gt; of /dev/vhost-net failed: Operation not permitted&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;fchmod&lt;span class=&#34;o&#34;&gt;()&lt;/span&gt; of /dev/vhost-vsock failed: Operation not permitted&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up libvirt-daemon-driver-qemu &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;10.0.0-2ubuntu8.7&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up libdv4t64:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1.0.0-17.1build1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up qemu-system-data &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1:8.2.2+ds-0ubuntu1.7&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up seabios &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1.16.3-2&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up systemd-hwe-hwdb &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;255.1.4&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up libv4l-0t64:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1.26.1-4build3&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up systemd-container &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;255.4-1ubuntu8.8&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Created symlink /etc/systemd/system/multi-user.target.wants/machines.target → /usr/lib/systemd/system/machines.targ&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;et.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up libvpx9:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1.14.0-1ubuntu2.2&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up libslirp0:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;4.7.0-1ubuntu3&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up alsa-topology-conf &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1.2.5.1-2&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up libtag1v5:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1.13.1-1build1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up cpu-checker &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;0.7-1.3build2&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up libwavpack1:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;5.6.0-1build1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up libnfnetlink0:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1.0.2-2build1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up ipxe-qemu &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1.21.1+git-20220113.fbbdc3926-0ubuntu2&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up libdecor-0-0:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;0.2.2-1build2&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up libpolkit-agent-1-0:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;124-2ubuntu1.24.04.2&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up ipxe-qemu-256k-compat-efi-roms &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1.0.0+git-20150424.a25a16d-0ubuntu5&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up sgml-base &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1.31&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up libbrlapi0.8:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;6.6-4ubuntu5&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up libxss1:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1:1.2.3-1build3&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up libtpms0:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;0.9.3-0ubuntu4&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up dmidecode &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;3.5-3ubuntu0.1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up libxml2-utils &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;2.9.14+dfsg-1.3ubuntu3.3&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up libvirt-daemon-config-nwfilter &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;10.0.0-2ubuntu8.7&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up libsamplerate0:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;0.2.2-4build1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up libayatana-indicator3-7:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;0.9.4-1build1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up python3-gi-cairo &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;3.48.2-1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up libgtksourceview-4-common &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;4.8.4-5build4&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up libpipewire-0.3-0t64:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1.0.5-1ubuntu3&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up libdecor-0-plugin-1-gtk:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;0.2.2-1build2&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up libgudev-1.0-0:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1:238-5ubuntu1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up libaa1:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1.4p5-51.1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up libiec61883-0:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1.2.0-6build1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up mdevctl &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1.3.0-1ubuntu2&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up libavc1394-0:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;0.5.4-5build3&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up libdbusmenu-gtk3-4:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;18.10.20180917~bzr492+repack1-3.1ubuntu5&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up libnftables1:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1.0.9-1build1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up gstreamer1.0-x:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1.24.2-1ubuntu0.2&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up nftables &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1.0.9-1build1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up qemu-system-common &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1:8.2.2+ds-0ubuntu1.7&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Created symlink /etc/systemd/system/multi-user.target.wants/qemu-kvm.service → /usr/lib/systemd/system/qemu-kvm.ser&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;vice.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up libcaca0:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;0.99.beta20-4build2&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up alsa-ucm-conf &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1.2.10-1ubuntu5.7&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up gstreamer1.0-plugins-good:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1.24.2-1ubuntu1.1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up qemu-system-x86 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1:8.2.2+ds-0ubuntu1.7&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up gir1.2-gtk-3.0:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;3.24.41-4ubuntu1.3&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up libparted2t64:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;3.6-4build1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Removing &lt;span class=&#34;s1&#34;&gt;&amp;#39;diversion of /lib/x86_64-linux-gnu/libparted.so.2 to /lib/x86_64-linux-gnu/libparted.so.2.usr-is-merged b&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s1&#34;&gt;y libparted2t64&amp;#39;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Removing &lt;span class=&#34;s1&#34;&gt;&amp;#39;diversion of /lib/x86_64-linux-gnu/libparted.so.2.0.5 to /lib/x86_64-linux-gnu/libparted.so.2.0.5.usr-is-&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s1&#34;&gt;merged by libparted2t64&amp;#39;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up libgtksourceview-4-0:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;4.8.4-5build4&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up libnss-mymachines:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;255.4-1ubuntu8.8&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up libayatana-appindicator3-1 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;0.5.93-1build3&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up swtpm &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;0.7.3-0ubuntu5.24.04.1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up gir1.2-gtk-vnc-2.0:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1.3.1-1build2&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up libvirt-daemon-system-systemd &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;10.0.0-2ubuntu8.7&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up gir1.2-spiceclientgtk-3.0:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;0.42-2ubuntu2&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up libjack-jackd2-0:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1.9.21~dfsg-3ubuntu3&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up libnetfilter-conntrack3:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1.0.9-6build1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up xml-core &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;0.19&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up gir1.2-vte-2.91:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;0.76.0-1ubuntu0.1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up libvirt-daemon &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;10.0.0-2ubuntu8.7&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up libsdl2-2.0-0:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;2.30.0+dfsg-1ubuntu3.1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up gir1.2-ayatanaappindicator3-0.1 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;0.5.93-1build3&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up gir1.2-gtksource-4:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;4.8.4-5build4&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up qemu-system-modules-opengl &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1:8.2.2+ds-0ubuntu1.7&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up iptables &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1.8.10-3ubuntu2&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;update-alternatives: using /usr/sbin/iptables-legacy to provide /usr/sbin/iptables &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;iptables&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; in auto mode&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;update-alternatives: using /usr/sbin/ip6tables-legacy to provide /usr/sbin/ip6tables &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;ip6tables&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; in auto mode&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;update-alternatives: using /usr/sbin/iptables-nft to provide /usr/sbin/iptables &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;iptables&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; in auto mode&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;update-alternatives: using /usr/sbin/ip6tables-nft to provide /usr/sbin/ip6tables &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;ip6tables&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; in auto mode&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;update-alternatives: using /usr/sbin/arptables-nft to provide /usr/sbin/arptables &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;arptables&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; in auto mode&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;update-alternatives: using /usr/sbin/ebtables-nft to provide /usr/sbin/ebtables &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;ebtables&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; in auto mode&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up qemu-system-gui &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1:8.2.2+ds-0ubuntu1.7&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up parted &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;3.6-4build1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up dnsmasq-base &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;2.90-2build2&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up swtpm-tools &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;0.7.3-0ubuntu5.24.04.1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;info: Selecting GID from range &lt;span class=&#34;m&#34;&gt;100&lt;/span&gt; to &lt;span class=&#34;m&#34;&gt;999&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;info: Adding group &lt;span class=&#34;sb&#34;&gt;`&lt;/span&gt;swtpm&lt;span class=&#34;s1&#34;&gt;&amp;#39; (GID 107) ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s1&#34;&gt;info: The home dir /var/lib/swtpm you specified can&amp;#39;&lt;/span&gt;t be accessed: No such file or directory&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;info: Selecting UID from range &lt;span class=&#34;m&#34;&gt;100&lt;/span&gt; to &lt;span class=&#34;m&#34;&gt;999&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;info: Adding system user &lt;span class=&#34;sb&#34;&gt;`&lt;/span&gt;swtpm&lt;span class=&#34;s1&#34;&gt;&amp;#39; (UID 103) ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s1&#34;&gt;info: Adding new user `swtpm&amp;#39;&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;UID 103&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; with group &lt;span class=&#34;sb&#34;&gt;`&lt;/span&gt;swtpm&lt;span class=&#34;s1&#34;&gt;&amp;#39; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s1&#34;&gt;info: Not creating home directory `/var/lib/swtpm&amp;#39;&lt;/span&gt;.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up virt-manager &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1:4.1.0-3ubuntu0.1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up qemu-system-modules-spice &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1:8.2.2+ds-0ubuntu1.7&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up liblvm2cmd2.03:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;2.03.16-3ubuntu3.2&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up dmeventd &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;2:1.02.185-3ubuntu3.2&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Created symlink /etc/systemd/system/sockets.target.wants/dm-event.socket → /usr/lib/systemd/system/dm-event.socket.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up lvm2 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;2.03.16-3ubuntu3.2&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Created symlink /etc/systemd/system/sysinit.target.wants/blk-availability.service → /usr/lib/systemd/system/blk-ava&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;ilability.service.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Created symlink /etc/systemd/system/sysinit.target.wants/lvm2-monitor.service → /usr/lib/systemd/system/lvm2-monito&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;r.service.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Created symlink /etc/systemd/system/sysinit.target.wants/lvm2-lvmpolld.socket → /usr/lib/systemd/system/lvm2-lvmpol&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;ld.socket.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Processing triggers &lt;span class=&#34;k&#34;&gt;for&lt;/span&gt; libglib2.0-0t64:amd64 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;2.80.0-6ubuntu3.4&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Processing triggers &lt;span class=&#34;k&#34;&gt;for&lt;/span&gt; dbus &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1.14.10-4ubuntu4.1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Processing triggers &lt;span class=&#34;k&#34;&gt;for&lt;/span&gt; hicolor-icon-theme &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;0.17-2&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Processing triggers &lt;span class=&#34;k&#34;&gt;for&lt;/span&gt; libc-bin &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;2.39-0ubuntu8.4&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Processing triggers &lt;span class=&#34;k&#34;&gt;for&lt;/span&gt; man-db &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;2.12.0-4build2&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Processing triggers &lt;span class=&#34;k&#34;&gt;for&lt;/span&gt; sgml-base &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1.31&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up polkitd &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;124-2ubuntu1.24.04.2&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Creating group &lt;span class=&#34;s1&#34;&gt;&amp;#39;polkitd&amp;#39;&lt;/span&gt; with GID 991.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Creating user &lt;span class=&#34;s1&#34;&gt;&amp;#39;polkitd&amp;#39;&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;User &lt;span class=&#34;k&#34;&gt;for&lt;/span&gt; polkitd&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; with UID &lt;span class=&#34;m&#34;&gt;991&lt;/span&gt; and GID 991.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;invoke-rc.d: could not determine current runlevel&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;invoke-rc.d: policy-rc.d denied execution of reload.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;start-stop-daemon: unable to stat /usr/libexec/polkitd &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;No such file or directory&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Setting up libvirt-daemon-system &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;10.0.0-2ubuntu8.7&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;useradd warning: libvirt-qemu&lt;span class=&#34;s1&#34;&gt;&amp;#39;s uid 64055 is greater than SYS_UID_MAX 999&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s1&#34;&gt;chown: changing ownership of &amp;#39;&lt;/span&gt;/var/lib/libvirt/qemu/&lt;span class=&#34;err&#34;&gt;&amp;#39;&lt;/span&gt;: Operation not permitted&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;dpkg: error processing package libvirt-daemon-system &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;--configure&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt;:&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt; installed libvirt-daemon-system package post-installation script subprocess returned error &lt;span class=&#34;nb&#34;&gt;exit&lt;/span&gt; status &lt;span class=&#34;m&#34;&gt;1&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Errors were encountered &lt;span class=&#34;k&#34;&gt;while&lt;/span&gt; processing:&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt; libvirt-daemon-system&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;E: Sub-process /usr/bin/dpkg returned an error code &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;📦&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;waylon@ubuntu ~&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;$ virt-manager&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>csv</title>
    <id>https://waylonwalker.com/csv/</id>
    <updated>2025-06-26T20:44:33Z</updated>
    <published>2025-06-26T20:44:33Z</published>
    <link href="https://waylonwalker.com/csv/" rel="alternate" type="text/html"></link>
    <content type="html">&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;name&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;age&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;city&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;Alice&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;30&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;New York&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;Bob&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;25&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;San Francisco&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;Charlie&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;35&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;Chicago&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;Charlie&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;35&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;Chicago&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;Charlie&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;35&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;Chicago&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;Charlie&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;35&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;Chicago&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;Charlie&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;35&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;Chicago&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;Charlie&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;35&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;Chicago&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;Charlie&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;35&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;Chicago&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;name&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;age&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;city&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;Alice&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;30&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;New York&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;Bob&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;25&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;San Francisco&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;Charlie&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;35&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;Chicago&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;Charlie&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;35&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;Chicago&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;Charlie&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;35&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;Chicago&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;Charlie&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;35&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;Chicago&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;Charlie&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;35&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;Chicago&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;Charlie&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;35&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;Chicago&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;Charlie&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;35&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;Chicago&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;div class=&#34;chartjs-container&#34;&gt;&#xA;  &lt;canvas id=&#34;chartjs-1&#34;&gt;&lt;/canvas&gt;&#xA;&lt;/div&gt;&#xA;&lt;div class=&#34;chartjs-container&#34;&gt;&#xA;  &lt;canvas id=&#34;chartjs-2&#34;&gt;&lt;/canvas&gt;&#xA;&lt;/div&gt;&#xA;&lt;div class=&#34;chartjs-container&#34;&gt;&#xA;  &lt;canvas id=&#34;chartjs-3&#34;&gt;&lt;/canvas&gt;&#xA;&lt;/div&gt;&#xA;&lt;pre class=&#34;mermaid&#34;&gt;&#xA;graph TD&#xA;  A--&gt;B&#xA;  A--&gt;C&#xA;  A--&gt;D&#xA;  D--&gt;E&#xA;&lt;/pre&gt;&#xA;&#xA;&lt;script src=&#34;/assets/vendor/chartjs/chart.min.js&#34;&gt;&lt;/script&gt;&#xA;&lt;script&gt;&#xA;document.addEventListener(&#39;DOMContentLoaded&#39;, function() {&#xA;  (function() {&#xA;    const ctx = document.getElementById(&#39;chartjs-1&#39;);&#xA;    new Chart(ctx, {&#xA;  &#34;type&#34;: &#34;bar&#34;,&#xA;  &#34;data&#34;: {&#xA;    &#34;labels&#34;: [&#34;Red&#34;, &#34;Blue&#34;],&#xA;    &#34;datasets&#34;: [{ &#34;label&#34;: &#34;Votes&#34;, &#34;data&#34;: [12, 19] }]&#xA;  },&#xA;  &#34;options&#34;: {&#xA;    &#34;responsive&#34;: true&#xA;  }&#xA;});&#xA;  })();&#xA;  (function() {&#xA;    const ctx = document.getElementById(&#39;chartjs-2&#39;);&#xA;    new Chart(ctx, {&#xA;  &#34;type&#34;: &#34;line&#34;,&#xA;  &#34;data&#34;: {&#xA;    &#34;labels&#34;: [&#xA;      65,&#xA;      59,&#xA;      80,&#xA;      81,&#xA;      56,&#xA;      55,&#xA;      40&#xA;    ],&#xA;    &#34;datasets&#34;: [&#xA;      {&#xA;        &#34;label&#34;: &#34;My First Dataset&#34;,&#xA;        &#34;data&#34;: [&#xA;          65,&#xA;          59,&#xA;          80,&#xA;          81,&#xA;          56,&#xA;          55,&#xA;          40&#xA;        ],&#xA;        &#34;fill&#34;: false,&#xA;        &#34;borderColor&#34;: &#34;rgb(75, 192, 192)&#34;,&#xA;        &#34;tension&#34;: 0.1&#xA;      }&#xA;    ]&#xA;  }&#xA;});&#xA;  })();&#xA;  (function() {&#xA;    const ctx = document.getElementById(&#39;chartjs-3&#39;);&#xA;    new Chart(ctx, {&#xA;  &#34;type&#34;: &#34;radar&#34;,&#xA;  &#34;data&#34;: {&#xA;    &#34;labels&#34;: [&#xA;      &#34;Minecraft&#34;,&#xA;      &#34;Hollow Knight&#34;,&#xA;      &#34;Animal Well&#34;,&#xA;      &#34;Watching Netflix&#34;,&#xA;      &#34;Tetris&#34;&#xA;&#xA;    ],&#xA;    &#34;datasets&#34;: [&#xA;      {&#xA;        &#34;label&#34;: &#34;MyChoices&#34;,&#xA;        &#34;data&#34;: [&#xA;        8, 9, 7, 4, 3&#xA;        ],&#xA;        &#34;fill&#34;: false,&#xA;        &#34;borderColor&#34;: &#34;rgb(75, 192, 192)&#34;,&#xA;        &#34;tension&#34;: 0.1&#xA;      }&#xA;    ]&#xA;  }&#xA;});&#xA;  })();&#xA;});&#xA;&lt;/script&gt;&#xA;&lt;script type=&#34;module&#34;&gt;&#xA;  import mermaid from &#39;/assets/vendor/mermaid/mermaid.esm.min.mjs&#39;;&#xA;  const rootStyle = getComputedStyle(document.documentElement);&#xA;  const css = (name, fallback) =&gt; (rootStyle.getPropertyValue(name) || fallback).trim();&#xA;  const isDark = window.matchMedia(&#39;(prefers-color-scheme: dark)&#39;).matches ||&#xA;    document.documentElement.dataset.theme === &#39;dark&#39;;&#xA;  const accent = css(&#39;--color-primary&#39;, &#39;#ffcd11&#39;);&#xA;  const flowchart = {&#xA;    nodeSpacing: 60,&#xA;    rankSpacing: 90,&#xA;    padding: 12,&#xA;  };&#xA;  const themeCSS = `&#xA;    .label foreignObject &gt; div { padding: 14px 14px 10px; line-height: 1.2; }&#xA;    .nodeLabel { padding: 14px 14px 10px; line-height: 1.2; }&#xA;    * { cursor: pointer; }&#xA;  `;&#xA;  const themeVariables = {&#xA;    background: css(&#39;--color-background&#39;, &#39;#ffffff&#39;),&#xA;    primaryColor: css(&#39;--color-code-bg&#39;, &#39;#0a0a0a&#39;),&#xA;    primaryTextColor: css(&#39;--color-text&#39;, &#39;#1f2937&#39;),&#xA;    primaryBorderColor: accent,&#xA;    lineColor: accent,&#xA;    textColor: css(&#39;--color-text&#39;, &#39;#1f2937&#39;),&#xA;    nodeBkg: css(&#39;--color-code-bg&#39;, &#39;#0a0a0a&#39;),&#xA;    nodeBorder: accent,&#xA;    nodeTextColor: css(&#39;--color-text&#39;, &#39;#1f2937&#39;),&#xA;    fontSize: &#39;16px&#39;,&#xA;    nodePadding: 20,&#xA;    nodeTextMargin: 14,&#xA;    clusterBkg: isDark ? css(&#39;--color-background&#39;, &#39;#0f0f0f&#39;) : css(&#39;--color-surface&#39;, &#39;#f9fafb&#39;),&#xA;    clusterBorder: accent,&#xA;    clusterTextColor: css(&#39;--color-text&#39;, &#39;#1f2937&#39;),&#xA;    titleColor: css(&#39;--color-text&#39;, &#39;#1f2937&#39;),&#xA;    edgeLabelBackground: css(&#39;--color-code-bg&#39;, &#39;#0a0a0a&#39;),&#xA;  };&#xA;&#xA;  const SVG_PAN_ZOOM_CDN = &#39;https://cdn.jsdelivr.net/npm/svg-pan-zoom@3.6.2/dist/svg-pan-zoom.min.js&#39;;&#xA;  let mermaidLightbox = null;&#xA;  let activePanZoom = null;&#xA;&#xA;  // Inject lightbox styles once&#xA;  const injectLightboxStyles = () =&gt; {&#xA;    if (document.getElementById(&#39;mermaid-lightbox-css&#39;)) return;&#xA;    const style = document.createElement(&#39;style&#39;);&#xA;    style.id = &#39;mermaid-lightbox-css&#39;;&#xA;    style.textContent = `&#xA;      /* Container fills the GLightbox slide */&#xA;      .mermaid-lightbox-wrap {&#xA;        width: 100%;&#xA;        height: 100%;&#xA;        display: flex;&#xA;        align-items: center;&#xA;        justify-content: center;&#xA;        background: transparent;&#xA;        position: relative;&#xA;      }&#xA;      .mermaid-lightbox-wrap svg {&#xA;        width: 100% !important;&#xA;        height: 100% !important;&#xA;        max-width: 100%;&#xA;        max-height: 100%;&#xA;      }&#xA;      /* Hide GLightbox prev/next arrows (single-slide lightbox) */&#xA;      .glightbox-container .gprev,&#xA;      .glightbox-container .gnext {&#xA;        display: none !important;&#xA;      }&#xA;      /* Hide description area that renders as a white box */&#xA;      .glightbox-container .gslide-description,&#xA;      .glightbox-container .gslide-title,&#xA;      .glightbox-container .gdesc-inner,&#xA;      .glightbox-container .gslide-desc {&#xA;        display: none !important;&#xA;      }&#xA;      /* Remove white background from inline slide content */&#xA;      .glightbox-container .gslide-inline {&#xA;        background: transparent !important;&#xA;      }&#xA;      /* Make the inline content area fill the slide */&#xA;      .glightbox-container .ginlined-content {&#xA;        max-width: none !important;&#xA;        max-height: none !important;&#xA;        width: 100%;&#xA;        height: 100%;&#xA;        padding: 0 !important;&#xA;      }&#xA;      /* Remove box-shadow from the media container */&#xA;      .glightbox-container .gslide-media {&#xA;        box-shadow: none !important;&#xA;      }&#xA;      /* Toolbar styling */&#xA;      .mermaid-lightbox-toolbar {&#xA;        position: absolute;&#xA;        top: 8px;&#xA;        right: 8px;&#xA;        z-index: 10;&#xA;        display: flex;&#xA;        gap: 4px;&#xA;      }&#xA;      .mermaid-pz-btn {&#xA;        background: rgba(0,0,0,0.6);&#xA;        color: #fff;&#xA;        border: 1px solid rgba(255,255,255,0.3);&#xA;        border-radius: 4px;&#xA;        padding: 4px 10px;&#xA;        cursor: pointer;&#xA;        font-size: 14px;&#xA;        line-height: 1;&#xA;      }&#xA;      .mermaid-pz-btn:hover {&#xA;        background: rgba(0,0,0,0.8);&#xA;        border-color: rgba(255,255,255,0.6);&#xA;      }&#xA;    `;&#xA;    document.head.appendChild(style);&#xA;  };&#xA;&#xA;  // Lazy-load svg-pan-zoom from CDN, returns a promise&#xA;  const loadSvgPanZoom = () =&gt; {&#xA;    if (typeof svgPanZoom !== &#39;undefined&#39;) return Promise.resolve();&#xA;    return new Promise((resolve, reject) =&gt; {&#xA;      const s = document.createElement(&#39;script&#39;);&#xA;      s.src = SVG_PAN_ZOOM_CDN;&#xA;      s.onload = resolve;&#xA;      s.onerror = reject;&#xA;      document.head.appendChild(s);&#xA;    });&#xA;  };&#xA;&#xA;  // Initialize svg-pan-zoom on the SVG inside the lightbox.&#xA;  // Retries until the lightbox container has settled dimensions.&#xA;  let _pzRetries = 0;&#xA;  const initPanZoom = () =&gt; {&#xA;    if (activePanZoom) return;&#xA;    const container = document.querySelector(&#39;.glightbox-container .gslide.current .mermaid-lightbox-wrap&#39;);&#xA;    if (!container) return;&#xA;    const svgEl = container.querySelector(&#39;svg&#39;);&#xA;    if (!svgEl) return;&#xA;&#xA;    // Ensure the container has layout dimensions before initializing.&#xA;    const cRect = container.getBoundingClientRect();&#xA;    if (cRect.width &lt; 10 || cRect.height &lt; 10) {&#xA;      if (_pzRetries &lt; 20) { _pzRetries++; setTimeout(initPanZoom, 50); }&#xA;      return;&#xA;    }&#xA;&#xA;    // svg-pan-zoom needs a viewBox. Pre-rendered SVGs from mermaid&#xA;    // usually have one; browser-rendered ones may not.&#xA;    if (!svgEl.getAttribute(&#39;viewBox&#39;)) {&#xA;      let w = parseFloat(svgEl.getAttribute(&#39;width&#39;));&#xA;      let h = parseFloat(svgEl.getAttribute(&#39;height&#39;));&#xA;      if (!w &amp;&amp; svgEl.style.maxWidth) w = parseFloat(svgEl.style.maxWidth);&#xA;      if (!w || !h) {&#xA;        const r = svgEl.getBoundingClientRect();&#xA;        if (!w) w = r.width;&#xA;        if (!h) h = r.height;&#xA;      }&#xA;      if (w &gt; 0 &amp;&amp; h &gt; 0) {&#xA;        svgEl.setAttribute(&#39;viewBox&#39;, &#39;0 0 &#39; + w + &#39; &#39; + h);&#xA;      } else if (_pzRetries &lt; 20) {&#xA;        _pzRetries++; setTimeout(initPanZoom, 50); return;&#xA;      }&#xA;    }&#xA;    _pzRetries = 0;&#xA;&#xA;    // Clear inline dimensions so SVG can be sized by the container&#xA;    // and svg-pan-zoom can manage transforms.&#xA;    svgEl.removeAttribute(&#39;width&#39;);&#xA;    svgEl.removeAttribute(&#39;height&#39;);&#xA;    svgEl.style.cssText = &#39;width:100%;height:100%;&#39;;&#xA;&#xA;    try {&#xA;      activePanZoom = svgPanZoom(svgEl, {&#xA;        zoomEnabled: true,&#xA;        panEnabled: true,&#xA;        controlIconsEnabled: false,&#xA;        fit: true,&#xA;        center: true,&#xA;        contain: false,&#xA;        minZoom: 0.3,&#xA;        maxZoom: 10,&#xA;        zoomScaleSensitivity: 0.3,&#xA;        mouseWheelZoomEnabled: true,&#xA;        preventMouseEventsDefault: true,&#xA;      });&#xA;      // Double-check fit after a frame in case dimensions shifted&#xA;      requestAnimationFrame(() =&gt; {&#xA;        if (!activePanZoom) return;&#xA;        activePanZoom.resize();&#xA;        activePanZoom.fit();&#xA;        activePanZoom.center();&#xA;      });&#xA;    } catch (_) {&#xA;      activePanZoom = null;&#xA;    }&#xA;&#xA;    // Add reset/fit buttons&#xA;    let toolbar = container.querySelector(&#39;.mermaid-lightbox-toolbar&#39;);&#xA;    if (!toolbar) {&#xA;      toolbar = document.createElement(&#39;div&#39;);&#xA;      toolbar.className = &#39;mermaid-lightbox-toolbar&#39;;&#xA;      toolbar.innerHTML =&#xA;        &#39;&lt;button class=&#34;mermaid-pz-btn&#34; data-action=&#34;fit&#34; title=&#34;Fit to view&#34;&gt;Fit&lt;/button&gt;&#39; +&#xA;        &#39;&lt;button class=&#34;mermaid-pz-btn&#34; data-action=&#34;zoomin&#34; title=&#34;Zoom in&#34;&gt;+&lt;/button&gt;&#39; +&#xA;        &#39;&lt;button class=&#34;mermaid-pz-btn&#34; data-action=&#34;zoomout&#34; title=&#34;Zoom out&#34;&gt;&amp;minus;&lt;/button&gt;&#39;;&#xA;      toolbar.addEventListener(&#39;click&#39;, (ev) =&gt; {&#xA;        const btn = ev.target.closest(&#39;[data-action]&#39;);&#xA;        if (!btn || !activePanZoom) return;&#xA;        ev.preventDefault();&#xA;        ev.stopPropagation();&#xA;        const action = btn.dataset.action;&#xA;        if (action === &#39;fit&#39;) { activePanZoom.resize(); activePanZoom.fit(); activePanZoom.center(); }&#xA;        else if (action === &#39;zoomin&#39;) { activePanZoom.zoomIn(); }&#xA;        else if (action === &#39;zoomout&#39;) { activePanZoom.zoomOut(); }&#xA;      });&#xA;      container.prepend(toolbar);&#xA;    }&#xA;  };&#xA;&#xA;  // Destroy pan-zoom on lightbox close&#xA;  const destroyPanZoom = () =&gt; {&#xA;    if (activePanZoom) {&#xA;      try { activePanZoom.destroy(); } catch (_) { /* no-op */ }&#xA;      activePanZoom = null;&#xA;    }&#xA;  };&#xA;&#xA;  let _lbRetries = 0;&#xA;  const ensureMermaidLightbox = () =&gt; {&#xA;    const diagrams = document.querySelectorAll(&#39;.mermaid svg&#39;);&#xA;    if (!diagrams.length) {&#xA;      // Mermaid ESM may still be rendering -- retry up to 2s&#xA;      if (_lbRetries &lt; 20) { _lbRetries++; setTimeout(ensureMermaidLightbox, 100); }&#xA;      return;&#xA;    }&#xA;    _lbRetries = 0;&#xA;    injectLightboxStyles();&#xA;    diagrams.forEach((svg) =&gt; {&#xA;      if (svg.dataset.lightboxBound) return;&#xA;      svg.dataset.lightboxBound = &#39;true&#39;;&#xA;      svg.style.cursor = &#39;pointer&#39;;&#xA;      svg.addEventListener(&#39;click&#39;, (e) =&gt; {&#xA;        e.preventDefault();&#xA;        e.stopPropagation();&#xA;        const svgHtml = svg.outerHTML;&#xA;        const openLightbox = () =&gt; {&#xA;          if (!mermaidLightbox) {&#xA;            mermaidLightbox = GLightbox({&#xA;              selector: false,&#xA;              openEffect: &#39;fade&#39;,&#xA;              closeEffect: &#39;fade&#39;,&#xA;              zoomable: false,&#xA;              draggable: false,&#xA;              skin: &#39;clean&#39;,&#xA;            });&#xA;            mermaidLightbox.on(&#39;slide_after_load&#39;, () =&gt; {&#xA;              destroyPanZoom();&#xA;              _pzRetries = 0;&#xA;              loadSvgPanZoom().then(() =&gt; initPanZoom());&#xA;            });&#xA;            mermaidLightbox.on(&#39;close&#39;, destroyPanZoom);&#xA;          }&#xA;          mermaidLightbox.setElements([{&#xA;            content: &#39;&lt;div class=&#34;mermaid-lightbox-wrap&#34;&gt;&#39; + svgHtml + &#39;&lt;/div&gt;&#39;,&#xA;            width: &#39;90vw&#39;,&#xA;            height: &#39;90vh&#39;&#xA;          }]);&#xA;          mermaidLightbox.open();&#xA;          loadSvgPanZoom();&#xA;        };&#xA;        if (typeof GLightbox !== &#39;undefined&#39;) {&#xA;          openLightbox();&#xA;        } else if (window.initGLightbox) {&#xA;          window.initGLightbox();&#xA;          openLightbox();&#xA;        } else {&#xA;          window.addEventListener(&#39;glightbox-ready&#39;, () =&gt; { openLightbox(); }, { once: true });&#xA;        }&#xA;      });&#xA;    });&#xA;  };&#xA;&#xA;  mermaid.initialize({ startOnLoad: false, theme: &#39;base&#39;, themeVariables, flowchart, themeCSS });&#xA;  window.initMermaid = async () =&gt; {&#xA;    try {&#xA;      await mermaid.run();&#xA;    } catch (e) {&#xA;      console.error(&#39;mermaid.run failed:&#39;, e);&#xA;    }&#xA;    ensureMermaidLightbox();&#xA;  };&#xA;  if (document.readyState === &#39;loading&#39;) {&#xA;    document.addEventListener(&#39;DOMContentLoaded&#39;, () =&gt; window.initMermaid());&#xA;  } else {&#xA;    window.initMermaid();&#xA;  }&#xA;&lt;/script&gt;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>perfect</title>
    <id>https://waylonwalker.com/perfect/</id>
    <updated>2025-06-26T13:55:17Z</updated>
    <published>2025-06-26T13:55:17Z</published>
    <link href="https://waylonwalker.com/perfect/" rel="alternate" type="text/html"></link>
    <summary type="text">Perfect is a made up word that humans use to describe something that is above average, or works really well for them. The idea of perfection is fleeting, as...</summary>
    <content type="html">&lt;p&gt;Perfect is a made up word that humans use to describe something that is above&#xA;average, or works really well for them.  The idea of perfection is fleeting, as&#xA;you think more deeply about something, you can continue to chase the idea of&#xA;perfection to unimaginable senses.  Sometimes &lt;em&gt;perfect&lt;/em&gt; simply means &lt;em&gt;good&#xA;enough&lt;/em&gt;.  Could there be something better, &lt;strong&gt;Always&lt;/strong&gt;, but at what cost.  If I&#xA;spent 10 more minutes on this post would it be better, maybe, but I might fuck&#xA;it up.  If I spent my lifetime studying how humans read and think, sole&#xA;focused on how it pertains to this post, ya it would get better.  When I use&#xA;this word perfect it’s not meant in the most literal sense of the word, but&#xA;perfect to me, maybe good enough given the constraints I have, its the best&#xA;thing I’ve got.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ sst opencode</title>
    <id>https://waylonwalker.com/sst-opencode/</id>
    <updated>2025-06-24T14:38:03Z</updated>
    <published>2025-06-24T14:38:03Z</published>
    <link href="https://waylonwalker.com/sst-opencode/" rel="alternate" type="text/html"></link>
    <summary type="text">Looking for inspiration? opencode by sst.</summary>
    <content type="html">&lt;p&gt;Looking for inspiration? &lt;a href=&#34;https://github.com/sst/opencode&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;opencode&lt;/a&gt; by &lt;a href=&#34;https://github.com/sst&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;sst&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;AI coding agent, built for the terminal.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ anomalyco opencode</title>
    <id>https://waylonwalker.com/anomalyco-opencode/</id>
    <updated>2025-06-24T14:38:03Z</updated>
    <published>2025-06-24T14:38:03Z</published>
    <link href="https://waylonwalker.com/anomalyco-opencode/" rel="alternate" type="text/html"></link>
    <summary type="text">I&#39;m impressed by opencode from anomalyco.</summary>
    <content type="html">&lt;p&gt;I’m impressed by &lt;a href=&#34;https://github.com/anomalyco/opencode&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;opencode&lt;/a&gt; from &lt;a href=&#34;https://github.com/anomalyco&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;anomalyco&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;The open source coding agent.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Notes – 06:11 Sun 22 Jun 2025 – David Bushell – Web Dev (UK)</title>
    <id>https://waylonwalker.com/thought-718/</id>
    <updated>2025-06-24T13:25:49Z</updated>
    <published>2025-06-24T13:25:49Z</published>
    <link href="https://waylonwalker.com/thought-718/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://dbushell.com/notes/2025-06-22T06:11Z/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://dbushell.com/notes/2025-06-22T06:11Z/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://dbushell.com/assets/images/ogimage.png&#34; alt=&#34;Notes – 06:11 Sun 22 Jun 2025 — Notes – 06:11 Sun 22 Jun 2025&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: Notes – 06:11 Sun 22 Jun 2025 — Notes – 06:11 Sun 22 Jun 2025&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Notes – 06:11 Sun 22 Jun 2025&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Notes – 06:11 Sun 22 Jun 2025&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;dbushell.com · dbushell.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;What’s even real anymore?  What a shitty age we are in that you have to form an opinion about news outlets and media outlets.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 neverjust</title>
    <id>https://waylonwalker.com/thought-717/</id>
    <updated>2025-06-23T23:55:57Z</updated>
    <published>2025-06-23T23:55:57Z</published>
    <link href="https://waylonwalker.com/thought-717/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.neverjust.net/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://www.neverjust.net/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://www.neverjust.net/opengraph-image.png?fcfb5c7c48aa740e&#34; alt=&#34;neverjust — a guide to better developer communication&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: neverjust — a guide to better developer communication&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;neverjust&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;a guide to better developer communication&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;neverjust · neverjust.net&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;I just never quite understood why the word &lt;em&gt;just&lt;/em&gt; can send people over the top.  I get it when you don’t know someone, you don’t have history with them, and they come in saying you are doing something wrong.&lt;/p&gt;&#xA;&lt;p&gt;I pulled this out into a full post &lt;a href=&#34;/just/&#34; class=&#34;wikilink&#34; data-title=&#34;just&#34; data-description=&#34;I just never quite understood why the word can send people over the top. I get it when you don&amp;#39;t know someone, you don&amp;#39;t have history with them, and they...&#34; data-date=&#34;2025-06-23&#34; data-preview=&#34;I just never quite understood why the word can send people over the top. I get it when you don&amp;#39;t know someone, you don&amp;#39;t have history with them, and they...&#34;&gt;just&lt;/a&gt;&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>just</title>
    <id>https://waylonwalker.com/just/</id>
    <updated>2025-06-23T19:02:29Z</updated>
    <published>2025-06-23T19:02:29Z</published>
    <link href="https://waylonwalker.com/just/" rel="alternate" type="text/html"></link>
    <summary type="text">I just never quite understood why the word can send people over the top. I get it when you don&#39;t know someone, you don&#39;t have history with them, and they...</summary>
    <content type="html">&lt;p&gt;I just never quite understood why the word &lt;code&gt;just&lt;/code&gt; can send people over the top. I&#xA;get it when you don’t know someone, you don’t have history with them, and they&#xA;come in saying you are doing something wrong.&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;When you say “just,” you’re skipping over all the invisible complexity. You’re assuming the problem is simple, and that the person asking for help hasn’t already considered the obvious.&lt;/p&gt;&#xA;&lt;p&gt;You’re not seeing the constraints:&lt;/p&gt;&#xA;&lt;p&gt;Legacy code&#xA;Business requirements&#xA;Team conventions&#xA;Time, budget, or technical debt&#xA;Platform limitations&lt;/p&gt;&#xA;&lt;p&gt;~&lt;a href=&#34;https://www.neverjust.net/&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/www.neverjust.net.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/www.neverjust.net.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;https://www.neverjust.net/&lt;/a&gt;&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;p&gt;If I’ve worked with someone for more than 6 months, we have established&#xA;patterns for problems, libraries we use, and they are deep in the weeds of&#xA;trying to fix something, I want to ask  “Why don’t you just do the same thing&#xA;we do everywhere else?”&lt;/p&gt;&#xA;&lt;p&gt;I don’t need a snarky ass response, I don’t need you to get bent out of shape&#xA;about it. I &lt;strong&gt;am&lt;/strong&gt; communicating that I do not know the damn constraints to&#xA;this problem.  I am communicating I am ignorant to the pain you have suffered&#xA;trying to do something for days that I thought should be copy paste pr up in 10&#xA;minutes.&lt;/p&gt;&#xA;&lt;p&gt;What I want to hear is “Well here’s the story of why this particular one is&#xA;complex, and let me take you on my travels.” or “I’m about there and don’t have&#xA;time right now just understand that this is different, we can discuss later.”&lt;/p&gt;&#xA;&lt;p&gt;My &lt;em&gt;just&lt;/em&gt; should not cause you pain, it should &lt;strong&gt;not&lt;/strong&gt; cause you to feel belittled,&#xA;If we have worked together for any amount of time and have respect for each&#xA;other, you should understand that this is not coming from a place of&#xA;belittlement, rather its an open door for you to explain why this thing is not&#xA;what it seems at surface level.&lt;/p&gt;&#xA;&lt;h2 id=&#34;just-use-another-library&#34;&gt;Just use another library &lt;a href=&#34;#just-use-another-library&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/4404a111-40be-4066-9ba0-08720133f011.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;image&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/4404a111-40be-4066-9ba0-08720133f011.webp&#34; alt=&#34;image&#34;/ data-glightbox=&#34;description: image&#34;&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;~&lt;a href=&#34;https://www.neverjust.net/&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/www.neverjust.net.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/www.neverjust.net.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;https://www.neverjust.net/&lt;/a&gt;&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;&lt;p&gt;Here Sam asks “Why don’t you just use another library?”, and Alex replies “If&#xA;it were that easy, I would have done it already.”&lt;/p&gt;&#xA;&lt;p&gt;Honestly this example is a little vague and non-specific.  On boarding a new&#xA;library to a team can be a big ask.  It becomes something that the team has to&#xA;integrate and depend on, and take on supply chain risk.  This example would be&#xA;better with something more specific, if the team often uses a mix of SQL,&#xA;pandas, and occasionally pulls out polars for bigger tasks, Sam  might&#xA;legitimately ask “why don’t you just use &amp;lt;insert pandas, polars, SQL&amp;gt;”.&lt;/p&gt;&#xA;&lt;p&gt;This communicates that Sam see’s the obvious we use polars when things get&#xA;tough, or we use SQL when data transfer gets too slow.&lt;/p&gt;&#xA;&lt;h2 id=&#34;you-are-not-dumb&#34;&gt;You are not Dumb &lt;a href=&#34;#you-are-not-dumb&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;I want to hear the story. In no way am I calling you dumb, in fact I’m probably&#xA;claiming ignorance to the problem at hand.  I see that you have a lot more time&#xA;invested than me and I’m offering help, not asking for snarky ass remarks back&#xA;&lt;strong&gt;Alex&lt;/strong&gt;.&lt;/p&gt;&#xA;&lt;p&gt;In fact take it as a sign that I am this comfortable with you and that you are&#xA;so far from dumb that I don’t have to risk being taken out of context.&lt;/p&gt;&#xA;&lt;h2 id=&#34;or-maybe-you-are&#34;&gt;Or maybe you are &lt;a href=&#34;#or-maybe-you-are&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;Or maybe Sam is trying to belittle Alex here, if that’s the case we need to&#xA;have a conversation and work some shit out or find somewhere else to be, Alex&#xA;should not be belittled like this because Sam is full of himself.&lt;/p&gt;&#xA;&lt;h2 id=&#34;suggestions&#34;&gt;Suggestions &lt;a href=&#34;#suggestions&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/b84360f0-a6bf-4c63-84d2-1710c6b06eca.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;image&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/b84360f0-a6bf-4c63-84d2-1710c6b06eca.webp&#34; alt=&#34;image&#34;/ data-glightbox=&#34;description: image&#34;&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;~&lt;a href=&#34;https://www.neverjust.net/&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/www.neverjust.net.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/www.neverjust.net.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;https://www.neverjust.net/&lt;/a&gt;&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;&lt;p&gt;The suggestions are &lt;em&gt;fine&lt;/em&gt;, but they feel like they are asking me to hunt&#xA;around for the problem rather than you recognizing my ignorance to the issue,&#xA;and let Sam tell me “Why don’t you just use another library?”&lt;/p&gt;&#xA;&lt;h2 id=&#34;final-thoughts&#34;&gt;Final Thoughts &lt;a href=&#34;#final-thoughts&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;In recognizing how much pain this causes others I do try to limit my use of&#xA;just, it comes out from time to time, though I try not to.  I try to remain&#xA;kind, humble, and helpful.  And typically in the first few weeks or months&#xA;interaction with new teams/people I kinda walk on eggshells for a bit.  I don’t&#xA;know you or where you are, if I make it sound like you are dumb and turns out&#xA;that’s what people think of you I’m gonna feel kinda bad.  Just understand that&#xA;not everyone is trying to attack you, communication via text is hard, give&#xA;folks a break before jumping them.&lt;/p&gt;&#xA;&lt;h2 id=&#34;dont-be-an-ass&#34;&gt;Don’t be an Ass &lt;a href=&#34;#dont-be-an-ass&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;This post is not trying to say that you can freely belittle your team, go forth&#xA;and be the irritating guy on the team that comes off like a know it all.  I’m&#xA;saying when you are on the receiving end try not to take it with such offense&#xA;and as an opportunity to explain without the need to dance around the issue.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Software engineer get laid off in 2025 - YouTube</title>
    <id>https://waylonwalker.com/thought-716/</id>
    <updated>2025-06-23T13:13:58Z</updated>
    <published>2025-06-23T13:13:58Z</published>
    <link href="https://waylonwalker.com/thought-716/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/shorts/_HcN2zdNoms</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;_HcN2zdNoms&#34; title=&#34;Software engineer get laid off in 2025&#34; playlabel=&#34;Play: Software engineer get laid off in 2025&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;2025 is not the year to get put on the market, its rough out there.  Junior’s have little chance, senior+ are even struggling.  We had it easy from 2020-2023, now its over saturated and you have to want to be in this industry to be here and stay here.  It used to be a fine place to get a good job to pay the bills, the bar has been raised and if you don’t want to be here you are going to struggle.  Theo covers this in this linked video deeply [[ thoughts-472 ]].&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 If Netflix Made a ‘Day in the Life of a Software Engineer’ - Y...</title>
    <id>https://waylonwalker.com/thought-715/</id>
    <updated>2025-06-23T12:51:39Z</updated>
    <published>2025-06-23T12:51:39Z</published>
    <link href="https://waylonwalker.com/thought-715/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/watch?v=bvINaJEQNSQ</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;bvINaJEQNSQ&#34; title=&#34;If Netflix Made a ‘Day in the Life of a Software Engineer’&#34; playlabel=&#34;Play: If Netflix Made a ‘Day in the Life of a Software Engineer’&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Nailed the netflix documentary style.  Videos like this make me so grateful that I have  a job in this rough market, if you’ve followed jepi’s series you know he’s been out of a job for months, and he is not alone in this.  This is the year of “laid of, i didn’t get laid off, I left to focus on my startup”, [[ thoughts-716 ]]&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Notes – 09:32 Thu 19 Jun 2025 – David Bushell – Web Dev (UK)</title>
    <id>https://waylonwalker.com/thought-708/</id>
    <updated>2025-06-19T13:18:20Z</updated>
    <published>2025-06-19T13:18:20Z</published>
    <link href="https://waylonwalker.com/thought-708/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://dbushell.com/notes/2025-06-19T09:32Z/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://dbushell.com/notes/2025-06-19T09:32Z/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://dbushell.com/assets/images/ogimage.png&#34; alt=&#34;Notes – 09:32 Thu 19 Jun 2025 — Notes – 09:32 Thu 19 Jun 2025&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: Notes – 09:32 Thu 19 Jun 2025 — Notes – 09:32 Thu 19 Jun 2025&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Notes – 09:32 Thu 19 Jun 2025&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Notes – 09:32 Thu 19 Jun 2025&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;dbushell.com · dbushell.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;David’s design on his blog is fantastic likely from years of small improvements like this converting ugly quotes to pretty quotes and optimizing fonts.&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;It’s common for markdown libraries to convert the first to the second like my build script does.&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;p&gt;This is new to me, I had no idea that markdown libraries did this, I’m now interested if markdown-it does it.&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;For subsetting I use the fontTools library but I’ve no idea how to setup Python environments. I got it working once and failed to document the process.&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;p&gt;David, David, David, I’m sorry python has done you this dirty.  I should do a post on making python environments in the age of &lt;a href=&#34;/tags/uv/&#34; class=&#34;wikilink&#34; data-title=&#34;Posts tagged: uv&#34; data-description=&#34;All posts with the tag &amp;#34;uv&amp;#34;&#34; data-preview=&#34;All posts with the tag &amp;#34;uv&amp;#34;&#34;&gt;Posts tagged: uv&lt;/a&gt;.  You got options to run in docker/podman, a whole ass vm, uv venv, uvx, uv run, uv script, python -m venv, virtualenv, poetry, hatch, and too many more.  The ones that matter are containers or uv.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>copier vcs quirks</title>
    <id>https://waylonwalker.com/copier-vcs-quirks/</id>
    <updated>2025-06-19T08:04:51Z</updated>
    <published>2025-06-19T08:04:51Z</published>
    <link href="https://waylonwalker.com/copier-vcs-quirks/" rel="alternate" type="text/html"></link>
    <summary type="text">Copier has a few quirks with vcs that I just discovered by trying to test out some changes. I may have some config that I have long forgotten about somewhere...</summary>
    <content type="html">&lt;p&gt;Copier has a few quirks with vcs that I just discovered by trying to test out&#xA;some changes.  I may have some config that I have long forgotten about&#xA;somewhere deep in my dotfiles, I don’t think so, but id love to be wrong and&#xA;corrected, please reach out.&lt;/p&gt;&#xA;&lt;h2 id=&#34;what-doesnt-work&#34;&gt;What Doesn’t Work &lt;a href=&#34;#what-doesnt-work&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;I tried throwing everything at this template to make it work.  I tried a bunch&#xA;of flags that did not work. I tried making commits to the local repo to get rid&#xA;of the dirty warning. I really wanted to test new changes locally without&#xA;committing and pushing untested and potentially broken changes.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;uvx copier copy ../markata-blog-starter .&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;uvx copier copy gh:waylonwalker/markata-blog-starter@develop .&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;uvx copier copy ../markata-blog-starter . -wlg --trust&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;h2 id=&#34;what-works-----vcs-ref&#34;&gt;What Works - –vcs-ref &lt;a href=&#34;#what-works-----vcs-ref&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;Finally after trying everything to get the local copy to work, and my guess of&#xA;@branch not working I found this to work.  It does require me to go to the repo&#xA;on my develop branch.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;uvx copier copy gh:waylonwalker/markata-blog-starter --vcs-ref develop .&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;h2 id=&#34;what-works---delete-&lt;a href=&#34;/glossary/git/&#34; class=&#34;glossary-term&#34; title=&#34;Git is a version control system for tracking changes in source code during software development. In the beginning there were many, some were licensed. As...&#34;&gt;git&lt;/a&gt;&#34;&gt;What Works - delete .git &lt;a href=&#34;#what-works---delete-git&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;Really this might be my best option to make quick changes and test them locally&#xA;without going through a version control system.  It is not ideal, but makes it&#xA;easy to quickly iterate on.  I might be renaming .git, or copying to /tmp for&#xA;quick iteration.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;rm -rf .git&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;uvx copier copy ../markata-blog-starter .&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;h2 id=&#34;copier-i-love&#34;&gt;Copier I love &lt;a href=&#34;#copier-i-love&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;Copier is a great templating tool.  I really love it.  I use it every single&#xA;day to create posts on this blog using &lt;a href=&#34;/tmux-copier-templates/&#34; class=&#34;wikilink&#34; data-title=&#34;Tmux hotkey for copier templates&#34; data-description=&#34;I have added a hotkey to my copier template setup to quickly access all my templates at any time from tmux. At any point I can hit , thats holding control...&#34; data-date=&#34;2022-01-24&#34; data-preview=&#34;I have added a hotkey to my copier template setup to quickly access all my templates at any time from tmux. At any point I can hit , thats holding control...&#34;&gt;Tmux hotkey for copier templates&lt;/a&gt;.  This is&#xA;the first time this quirk has got me and it had me puzzled for 45 minutes as I&#xA;did not expect this behavior whatsoever.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ canonical checkbox</title>
    <id>https://waylonwalker.com/canonical-checkbox/</id>
    <updated>2025-06-18T02:07:34Z</updated>
    <published>2025-06-18T02:07:34Z</published>
    <link href="https://waylonwalker.com/canonical-checkbox/" rel="alternate" type="text/html"></link>
    <summary type="text">I came across checkbox from canonical, and it&#39;s packed with great features and ideas.</summary>
    <content type="html">&lt;p&gt;I came across &lt;a href=&#34;https://github.com/canonical/checkbox&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;checkbox&lt;/a&gt; from &lt;a href=&#34;https://github.com/canonical&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;canonical&lt;/a&gt;, and it’s packed with great features and ideas.&lt;/p&gt;&#xA;&lt;p&gt;Checkbox is a testing framework used to validate device compatibility with Ubuntu Linux. It’s the testing tool developed for the purposes of the Ubuntu Certification program.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Bug: Pypi metadata is wrong (Requires: Python &gt;=3.6) · Issue #...</title>
    <id>https://waylonwalker.com/thought-704/</id>
    <updated>2025-06-18T02:04:41Z</updated>
    <published>2025-06-18T02:04:41Z</published>
    <link href="https://waylonwalker.com/thought-704/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://github.com/jmcnamara/XlsxWriter/issues/1131</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://github.com/jmcnamara/XlsxWriter/issues/1131&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://opengraph.githubassets.com/bb386566ec32565615608d972769aa7a4695afabb6146c28fdec0287958ea9ac/jmcnamara/XlsxWriter/issues/1131&#34; alt=&#34;Bug: Pypi metadata is wrong (Requires: Python &amp;gt;=3.6) · Issue #1131 · jmcnamara/XlsxWriter — Current behavior When pulling the dependency with pip (without pinning the version), our python3.6 tester pulls 3.2.3 and not 3.2.2 even though the version is no longer compatible with python 3.6. ...&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: Bug: Pypi metadata is wrong (Requires: Python &amp;gt;=3.6) · Issue #1131 · jmcnamara/XlsxWriter — Current behavior When pulling the dependency with pip (without pinning the version), our python3.6 tester pulls 3.2.3 and not 3.2.2 even though the version is no longer compatible with python 3.6. ...&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Bug: Pypi metadata is wrong (Requires: Python &amp;gt;=3.6) · Issue #1131 · jmcnamara/XlsxWriter&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Current behavior When pulling the dependency with pip (without pinning the version), our python3.6 tester pulls 3.2.3 and not 3.2.2 even though the version is no longer compatible with python 3.6. ...&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;GitHub · github.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;pypi yanks suck, they are rare, this one got me today as it was a pinned dependency in my dependency chain.  The latest release broke python 3.6/3.7 (which 3.6 has  been EOL for 3.5 years btw), and it claimed &amp;gt;=3.6.  In order to allow users to still install xlsxwriter without pinning down it needed yanked.  I’m not sure if there was another way around it as pypi releases are immutable, so you cannot fix&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/2ba70753-5723-4b96-8f2b-8090be07d6ad.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;image&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/2ba70753-5723-4b96-8f2b-8090be07d6ad.webp&#34; alt=&#34;image&#34;/ data-glightbox=&#34;description: image&#34;&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;This now has me wondering what the heck is using it with old pythons.&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;&lt;p&gt;It appears to have broken builds on Canonical/checkbox for ubuntu 18.04.  Checkbox is a device compatibility testing framework.&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://github.com/canonical/checkbox/actions/runs/14644718138/job/41098549191#step:8:125&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;https://github.com/canonical/checkbox/actions/runs/14644718138/job/41098549191#step:8:125&lt;/a&gt;&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/6fe3e01b-e180-4d2a-a00c-6b9fab727626.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;image&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/6fe3e01b-e180-4d2a-a00c-6b9fab727626.webp&#34; alt=&#34;image&#34;/ data-glightbox=&#34;description: image&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Conventional Commits</title>
    <id>https://waylonwalker.com/thought-703/</id>
    <updated>2025-06-17T16:37:14Z</updated>
    <published>2025-06-17T16:37:14Z</published>
    <link href="https://waylonwalker.com/thought-703/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.conventionalcommits.org/en/v1.0.0/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://www.conventionalcommits.org/en/v1.0.0/&#34; class=&#34;embed-card-link  has-avatar has-avatar-before&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/www.conventionalcommits.org.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/www.conventionalcommits.org.ico&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Conventional Commits&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;A specification for adding human and machine readable meaning to commit messages&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;Conventional Commits · conventionalcommits.org&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;I try to use conventional commits on all of my commits, but I often end up only using feat/fix.  I need to keep this page handy and get new verbiage worked into my language&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;fix:&lt;/li&gt;&#xA;&lt;li&gt;feat:&lt;/li&gt;&#xA;&lt;li&gt;build:&lt;/li&gt;&#xA;&lt;li&gt;chore:&lt;/li&gt;&#xA;&lt;li&gt;ci:&lt;/li&gt;&#xA;&lt;li&gt;docs:&lt;/li&gt;&#xA;&lt;li&gt;style:&lt;/li&gt;&#xA;&lt;li&gt;refactor:&lt;/li&gt;&#xA;&lt;li&gt;perf:&lt;/li&gt;&#xA;&lt;li&gt;test:&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;Optionally include a scope &lt;code&gt;fix(parser):&lt;/code&gt;&lt;/p&gt;&#xA;&lt;p&gt;A bang indicates a breaking change note. For example …&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;chore!: drop support &lt;span class=&#34;k&#34;&gt;for&lt;/span&gt; Node &lt;span class=&#34;m&#34;&gt;6&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;BREAKING CHANGE: use JavaScript features not available in Node 6.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 FROGS ep1 The home - YouTube</title>
    <id>https://waylonwalker.com/thought-702/</id>
    <updated>2025-06-17T13:08:54Z</updated>
    <published>2025-06-17T13:08:54Z</published>
    <link href="https://waylonwalker.com/thought-702/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/watch?v=bPlPkDEcZBA&amp;list=TLPQMTcwNjIwMjVHHHsm3llljQ&amp;index=3</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;bPlPkDEcZBA&#34; title=&#34;FROGS ep1 The home&#34; playlabel=&#34;Play: FROGS ep1 The home&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Wyatt built out this full world to start making a film series about FROGS.  The entire set it built on a flat world, but yet feels so immersive.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Visualizing My Blog’s Internal Links - Jim Nielsen’s Blog</title>
    <id>https://waylonwalker.com/thought-695/</id>
    <updated>2025-06-16T00:48:19Z</updated>
    <published>2025-06-16T00:48:19Z</published>
    <link href="https://waylonwalker.com/thought-695/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://blog.jim-nielsen.com/2022/visualizing-my-blogs-links/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://blog.jim-nielsen.com/2022/visualizing-my-blogs-links/&#34; class=&#34;embed-card-link  has-avatar has-avatar-before&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/blog.jim-nielsen.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/blog.jim-nielsen.com.ico&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Visualizing My Blog’s Internal Links&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Writing about the big beautiful mess that is making things for the world wide web.&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;blog.jim-nielsen.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;I like Jim’s visualizations on his site, reminds me a lot of obsidian.  I’ve tried to do the same on my &lt;a href=&#34;/analytics/&#34; class=&#34;wikilink&#34; data-title=&#34;analytics&#34; data-description=&#34;I&amp;#39;ve been posting on this site since 2016, when layoffs were rolling through the company I worked for at the time. Starting a personal blog and a pile of...&#34; data-date=&#34;2025-01-22&#34; data-preview=&#34;I&amp;#39;ve been posting on this site since 2016, when layoffs were rolling through the company I worked for at the time. Starting a personal blog and a pile of...&#34;&gt;analytics&lt;/a&gt; page in the past, but it didn’t come out right.  I’m going to have to give this another go.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Your Framework is Showing 😳 – David Bushell – Web Dev (UK)</title>
    <id>https://waylonwalker.com/thought-694/</id>
    <updated>2025-06-15T00:02:28Z</updated>
    <published>2025-06-15T00:02:28Z</published>
    <link href="https://waylonwalker.com/thought-694/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://dbushell.com/2025/06/13/your-framework-is-showing-nextjs-error/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://dbushell.com/2025/06/13/your-framework-is-showing-nextjs-error/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://dbushell.com/images/articles/2025-06-13-your-framework-is-showing-nextjs-error.png&#34; alt=&#34;Your Framework is Showing — The one where I’ve had enough of the same Next.js error&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: Your Framework is Showing — The one where I’ve had enough of the same Next.js error&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Your Framework is Showing&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;The one where I’ve had enough of the same Next.js error&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;dbushell.com · dbushell.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Great breakdown of nextjs.  I was highly unaware of its &lt;em&gt;performance&lt;/em&gt; optimizations before reading this.  The smell of vendor lock in from next/vercel has been there from the start, this is the first real claim I’ve seen.&lt;/p&gt;&#xA;&lt;p&gt;I’m out on modern js front ends, complex builds that change every 6 months, design patterns are out of date just as fast.  Its hard to keep up, especially when you don’t have the use case for highly interactive apps.  Libraries like &lt;a href=&#34;/htmx/&#34; class=&#34;glossary-term&#34; title=&#34;htmx is a frontend javascript library for creating dynamic web applications.&#34;&gt;htmx&lt;/a&gt; or plain ol js gets the job done on the majority of sites and everything I tend to work on.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 I DONT KNOW WHY - YouTube</title>
    <id>https://waylonwalker.com/thought-693/</id>
    <updated>2025-06-14T22:44:34Z</updated>
    <published>2025-06-14T22:44:34Z</published>
    <link href="https://waylonwalker.com/thought-693/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/shorts/Se6HHCcy8q4</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;Se6HHCcy8q4&#34; title=&#34;I DONT KNOW WHY&#34; playlabel=&#34;Play: I DONT KNOW WHY&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;I’m totally with Prime here, there is something about the read only, mouse clicking part of my brain that causes me to be more critical of the code at a different level.  It doesn’t hit the part of my brain thinking about the edit or how to do the edit, it hits a part thats thinking about how I will have to deal with the code moving forward.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Next.js 15.1+ is unusable outside of Vercel | Omar Abid - Pers...</title>
    <id>https://waylonwalker.com/thought-692/</id>
    <updated>2025-06-14T18:10:58Z</updated>
    <published>2025-06-14T18:10:58Z</published>
    <link href="https://waylonwalker.com/thought-692/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://omarabid.com/nextjs-vercel</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://omarabid.com/nextjs-vercel&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Next.js 15.1+ is unusable outside of Vercel&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;TBD&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;Omar Abid - Personal Blog · omarabid.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Vendor lock in disguised as performance.  Nextjs aparantly now streams all of your metadata on the fly with js.  This would obviously kill all seo right, well not if you’re on vercel they automatically detect search crawlers and serve the metadata.  Why the f do they need to do this and not just serve everyone the metadata.  The Web is this beautiful place where anyone can create and build amazing things with a relatively low skill.  Js is meant to be enhancement, not degrade the experience of its users.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>using yek to serialize text files into llm friendly file</title>
    <id>https://waylonwalker.com/using-yek/</id>
    <updated>2025-06-11T11:01:34Z</updated>
    <published>2025-06-11T11:01:34Z</published>
    <link href="https://waylonwalker.com/using-yek/" rel="alternate" type="text/html"></link>
    <summary type="text">I&#39;ve been using gitingest web ui thoughts-516 for quite awhile to serialize git repo into llm friendly text files. This gives tools context about repos that...</summary>
    <content type="html">&lt;p&gt;I’ve been using &lt;a href=&#34;https://gitingest.com/&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/gitingest.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/gitingest.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;gitingest&lt;/a&gt; web ui [[ thoughts-516 ]]&#xA;for quite awhile to serialize &lt;a href=&#34;/glossary/git/&#34; class=&#34;glossary-term&#34; title=&#34;Git is a version control system for tracking changes in source code during software development. In the beginning there were many, some were licensed. As...&#34;&gt;git&lt;/a&gt; repo into llm friendly text files.  This&#xA;gives tools context about repos that are not in the training data so that it&#xA;knows about it and how to use the code in the repo.  gitingest also has a&#xA;python library [[ thoughts-517 ]]&lt;/p&gt;&#xA;&lt;p&gt;I had a use case for a project not yet on git, and found yek.&lt;/p&gt;&#xA;&lt;h2 id=&#34;installing-yek&#34;&gt;Installing yek &lt;a href=&#34;#installing-yek&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;Their instructions tell you to curl to bash.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;curl -fsSL https://bodo.run/yek.sh &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt; bash&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;I don’t like curl to bash from random sites, so I have my own &lt;a href=&#34;/self-host/&#34; class=&#34;glossary-term&#34; title=&#34;Self hosting is the act of hosting your own applications and services without using a SAS provider. This is typically done with your own hardware, but there...&#34;&gt;self hosted&lt;/a&gt;&#xA;version of i.jpillora.com.  I like using this because it pulls from github and&#xA;I trust github as a source for artifacts as good as the repo I am pulling&#xA;from.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;curl https://i.jpillora.com/bodo-run/yek &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt; bash&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;h2 id=&#34;using-yek&#34;&gt;Using yek &lt;a href=&#34;#using-yek&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;yek&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;blockquote&gt;&#xA;&lt;p&gt;/tmp/yek-output/yek-output-bb01e621.txt&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;p&gt;This will give you a link to a text file that you can add to many llm tools.&#xA;This happened so fast for me that I didn’t even believe that it worked&#xA;properly.&lt;/p&gt;&#xA;&lt;h2 id=&#34;more-options&#34;&gt;more options &lt;a href=&#34;#more-options&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;As with most clis, you can run &lt;code&gt;yek --help&lt;/code&gt; to see the options available.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;yek --help&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>brightnessctl adjust screen brightness</title>
    <id>https://waylonwalker.com/brightnessctl-adjust-screen-brightness/</id>
    <updated>2025-06-11T08:42:36Z</updated>
    <published>2025-06-11T08:42:36Z</published>
    <link href="https://waylonwalker.com/brightnessctl-adjust-screen-brightness/" rel="alternate" type="text/html"></link>
    <summary type="text">Today I discovered to adjust the screen brightness on my AwesomeWM machine. Its a command line utility that you can use to adjust the brightness of your...</summary>
    <content type="html">&lt;p&gt;Today I discovered &lt;code&gt;brightnessctl&lt;/code&gt; to adjust the screen brightness on my&#xA;AwesomeWM machine.  Its a command line utility that you can use to adjust the&#xA;brightness of your screen.  A command line interface like this gives you the&#xA;ability to bind keys with something like [[xbindkeys]] or your window manager&#xA;configuration.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo apt install brightnessctl&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# or &lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;paru -S brightnessctl&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Now that you have it installed you can use it to adjust the brightness of your&#xA;screen, this worked particularly well for my laptop screen, I don’t think this&#xA;works for monitors, in my experience they are usually controlled by the built&#xA;in osd.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# Increase brightness by 10%&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;brightnessctl &lt;span class=&#34;nb&#34;&gt;set&lt;/span&gt; +10%&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# Decrease brightness by 10%&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;brightnessctl &lt;span class=&#34;nb&#34;&gt;set&lt;/span&gt; 10%-&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# Set brightness to 50%&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;brightnessctl &lt;span class=&#34;nb&#34;&gt;set&lt;/span&gt; 50%&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# Set brightness to 100%&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;brightnessctl &lt;span class=&#34;nb&#34;&gt;set&lt;/span&gt; 100%&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;on my machine I had to use `sudo` to run the command, otherwise I got the following error:&#xA;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Can&lt;span class=&#34;err&#34;&gt;&amp;#39;&lt;/span&gt;t modify brightness: Permission denied&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;You should run this program with root privileges.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Alternatively, get write permissions &lt;span class=&#34;k&#34;&gt;for&lt;/span&gt; device files.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Think less, ship more</title>
    <id>https://waylonwalker.com/thought-684/</id>
    <updated>2025-06-10T13:02:28Z</updated>
    <published>2025-06-10T13:02:28Z</published>
    <link href="https://waylonwalker.com/thought-684/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://cassidoo.co/post/think-less/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://cassidoo.co/post/think-less/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://cassidoo.co/og-image/think-less.png&#34; alt=&#34;Think less, ship more — I do too much thinking about what I want to make, and not enough actually making the thing.&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: Think less, ship more — I do too much thinking about what I want to make, and not enough actually making the thing.&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Think less, ship more&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;I do too much thinking about what I want to make, and not enough actually making the thing.&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;cassidoo.co&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;I thin a lot of us have this issues, &lt;strong&gt;especially&lt;/strong&gt; on side projects.  At work therre are expectations, jira tickets and so on, keeping you shipping.  I think there is something to be said about getting that quick and dirty POC to the right group of people early for feedback before you add redis caching, kubernetes, auto scaling, disruption budget, distributed nodes, high availability, backups, disaster recovery.  At work you kinda  have to have the right person to shoot ideas by that can understand that you probably need some of these complex things for your app and it will take time to get right.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 robinroy03/videoeditor: Video Editor Application using React, ...</title>
    <id>https://waylonwalker.com/thought-683/</id>
    <updated>2025-06-10T02:31:25Z</updated>
    <published>2025-06-10T02:31:25Z</published>
    <link href="https://waylonwalker.com/thought-683/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://github.com/robinroy03/videoeditor</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://github.com/robinroy03/videoeditor&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://repository-images.githubusercontent.com/988575614/c172efea-e6db-4922-b695-abaddc42b4c9&#34; alt=&#34;GitHub - trykimu/videoeditor: Your Creative Copilot for Video Editing — Your Creative Copilot for Video Editing. Contribute to trykimu/videoeditor development by creating an account on GitHub.&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: GitHub - trykimu/videoeditor: Your Creative Copilot for Video Editing — Your Creative Copilot for Video Editing. Contribute to trykimu/videoeditor development by creating an account on GitHub.&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;GitHub - trykimu/videoeditor: Your Creative Copilot for Video Editing&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Your Creative Copilot for Video Editing. Contribute to trykimu/videoeditor development by creating an account on GitHub.&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;GitHub · github.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;I would love to have a browser based video editor I could throw on a server and do quick edits from anywhere.  I tried to get this one to work and struggled to get front end to send api requets to backend.  I think the root of it was their redis wants to run on 80, this caused a permission error so I tried to run 8880:80, but redis was still unable to start due to a config permission error.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ trykimu videoeditor</title>
    <id>https://waylonwalker.com/trykimu-videoeditor/</id>
    <updated>2025-06-10T02:27:48Z</updated>
    <published>2025-06-10T02:27:48Z</published>
    <link href="https://waylonwalker.com/trykimu-videoeditor/" rel="alternate" type="text/html"></link>
    <summary type="text">I&#39;m impressed by videoeditor from trykimu.</summary>
    <content type="html">&lt;p&gt;I’m impressed by &lt;a href=&#34;https://github.com/trykimu/videoeditor&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;videoeditor&lt;/a&gt; from &lt;a href=&#34;https://github.com/trykimu&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;trykimu&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Your Creative Copilot for Video Editing&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ robinroy03 videoeditor</title>
    <id>https://waylonwalker.com/robinroy03-videoeditor/</id>
    <updated>2025-06-10T02:27:48Z</updated>
    <published>2025-06-10T02:27:48Z</published>
    <link href="https://waylonwalker.com/robinroy03-videoeditor/" rel="alternate" type="text/html"></link>
    <summary type="text">If you&#39;re into interesting projects, don&#39;t miss out on videoeditor, created by robinroy03.</summary>
    <content type="html">&lt;p&gt;If you’re into interesting projects, don’t miss out on &lt;a href=&#34;https://github.com/robinroy03/videoeditor&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;videoeditor&lt;/a&gt;, created by &lt;a href=&#34;https://github.com/robinroy03&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;robinroy03&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Video Editor Application using React, Remotion &amp;amp; TypeScript.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Taming file zoos: Data science with DuckDB database files - Al...</title>
    <id>https://waylonwalker.com/thought-681/</id>
    <updated>2025-06-09T13:31:30Z</updated>
    <published>2025-06-09T13:31:30Z</published>
    <link href="https://waylonwalker.com/thought-681/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/watch?v=Yq-hxgysWLQ</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;Yq-hxgysWLQ&#34; title=&#34;Taming file zoos: Data science with DuckDB database files - Alex Monahan&#34; playlabel=&#34;Play: Taming file zoos: Data science with DuckDB database files - Alex Monahan&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;The ability to query s3 buckets so seamless looks like such a pleasure to work with if you have a use case for that.  Kedro catalog takes care of this most of the time for me, but I wonder if there are some cross project searching use cases I might find for this.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 PocketCal Build Log</title>
    <id>https://waylonwalker.com/thought-677/</id>
    <updated>2025-06-08T00:29:14Z</updated>
    <published>2025-06-08T00:29:14Z</published>
    <link href="https://waylonwalker.com/thought-677/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://cassidoo.co/post/pocketcal-build-log/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://cassidoo.co/post/pocketcal-build-log/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://cassidoo.co/og-image/pocketcal-build-log.png&#34; alt=&#34;PocketCal Build Log — I made a date-sharing app called PocketCal. Here&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: PocketCal Build Log — I made a date-sharing app called PocketCal. Here&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;PocketCal Build Log&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;I made a date-sharing app called PocketCal. Here&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;cassidoo.co&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;I love this idea of tiny useful apps for yourself.  In fact I’m working on a project to built out &lt;a href=&#34;/tinyapps/&#34; class=&#34;wikilink&#34; data-title=&#34;tinyapps&#34; data-description=&#34;I&amp;#39;m working on replacing my usage of google inline search apps with real apps, these are ones that I create and host on my own homelab. The first three that...&#34; data-date=&#34;2025-05-22&#34; data-preview=&#34;I&amp;#39;m working on replacing my usage of google inline search apps with real apps, these are ones that I create and host on my own homelab. The first three that...&#34;&gt;tinyapps&lt;/a&gt; for myself to replace my common needs.  I absolutely love that all of the state is stored in the url bar, nothing is stored server side.  As much as I love to hate js, I really appreciate that things like this can be built to just live on the web, be accessible from anywhere, and live practically forever as they require such little hosting demand.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 numtide/treefmt: one CLI to format your repo [maintainers=@zim...</title>
    <id>https://waylonwalker.com/thought-675/</id>
    <updated>2025-06-08T00:20:41Z</updated>
    <published>2025-06-08T00:20:41Z</published>
    <link href="https://waylonwalker.com/thought-675/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://github.com/numtide/treefmt</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://github.com/numtide/treefmt&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://opengraph.githubassets.com/784b3c4398d8537aa4ac33ca18d17cf922259fe928b70f67bd12b0d991f122ce/numtide/treefmt&#34; alt=&#34;GitHub - numtide/treefmt: the formatter multiplexer [maintainers=@zimbatm,@brianmcgee] — the formatter multiplexer [maintainers=@zimbatm,@brianmcgee] - numtide/treefmt&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: GitHub - numtide/treefmt: the formatter multiplexer [maintainers=@zimbatm,@brianmcgee] — the formatter multiplexer [maintainers=@zimbatm,@brianmcgee] - numtide/treefmt&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;GitHub - numtide/treefmt: the formatter multiplexer [maintainers=@zimbatm,@brianmcgee]&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;the formatter multiplexer [maintainers=@zimbatm,@brianmcgee] - numtide/treefmt&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;GitHub · github.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;This looks like a very useful formatting tool to keep in the back of my mind.  I do a lot of python and our tool tends to be pre-commit, named after the &lt;a href=&#34;/glossary/git/&#34; class=&#34;glossary-term&#34; title=&#34;Git is a version control system for tracking changes in source code during software development. In the beginning there were many, some were licensed. As...&#34;&gt;git&lt;/a&gt; hook pre-commit.  It specifies a bunch of tools to run, you can run them in ci, manually, and opt into doing it before commit.  I like the simplicity of this one not needing a whole ecosystem, but rather just leveraging the cli commands from those tools.  This would probably be something that would get in the way of setup for new devs and not something I would throw on one project by itself, its another thing for everyone to figure out how to install and run on every platform, I’m sure its not hard, but being on python teams pre-commit just fits in.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Keynote Speaker - Cory Doctorow - YouTube</title>
    <id>https://waylonwalker.com/thought-674/</id>
    <updated>2025-06-07T23:00:50Z</updated>
    <published>2025-06-07T23:00:50Z</published>
    <link href="https://waylonwalker.com/thought-674/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/watch?v=ydVmzg_SJLw</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;ydVmzg_SJLw&#34; title=&#34;Keynote Speaker - Cory Doctorow&#34; playlabel=&#34;Play: Keynote Speaker - Cory Doctorow&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;This is one of the greatest pycon keynotes I’ve ever seen, bookmarking this to come back and leave better thoughts on later.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Dopamine Driven Development - YouTube</title>
    <id>https://waylonwalker.com/thought-673/</id>
    <updated>2025-06-07T22:59:04Z</updated>
    <published>2025-06-07T22:59:04Z</published>
    <link href="https://waylonwalker.com/thought-673/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/watch?v=AWZ9AgjPfwo&amp;t=654s</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;AWZ9AgjPfwo&#34; title=&#34;Dopamine Driven Development&#34; playlabel=&#34;Play: Dopamine Driven Development&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Focus on the joy, not the suck.  Nothing you do in life will be absolute pure joy with no downsides forever, life does not work that way, your brain does not look that way.  Look at anyone who ever got massive billion dollar payouts for something like minecraft and how much their life is not glorious when they have nothing to really look forward to.&lt;/p&gt;&#xA;&lt;p&gt;Prime talks about it in almost a cliche way, every boring ass task is an opportunity to grow.  This is so real though, if you look at every task ask a shit you gotta do to check that jira ticket off and make bossy lady not scream at you its going to be a hell.  If you rather look at it as opportunities to implement new features in new ways or learn something to better yourself and watch yourself grow you are going to take a big dopamine hit.  I think prime talks about this in the sense of larger projects.  He as talked about his experience being much less of a daily standup, but more of a ok we got three months to figure this out lets go boys.  When you are stuck in that daily jira grind it’s harder to see that larger picture of the learning and growing you are doing over the course of 3 or 6 months.&lt;/p&gt;&#xA;&lt;p&gt;Timestamped to the part of the video that really dives into gratitude and finding the joy in the work that you have to do on purpose, but the whole vid is fire.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 DHH IS RIGHT ABOUT EVERYTHING (Again)? - YouTube</title>
    <id>https://waylonwalker.com/thought-672/</id>
    <updated>2025-06-07T22:49:47Z</updated>
    <published>2025-06-07T22:49:47Z</published>
    <link href="https://waylonwalker.com/thought-672/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/watch?v=EIBxRMH4bvs</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;EIBxRMH4bvs&#34; title=&#34;DHH IS RIGHT ABOUT EVERYTHING (Again)?&#34; playlabel=&#34;Play: DHH IS RIGHT ABOUT EVERYTHING (Again)?&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Should I go to college?  Was my education worth it? Should I keep going.  A question that comes in all too often accross most industries that require some level of education.  DHH has such great takes on it, some I had never fully thought about.  He starts out with should we have people study niche topics (using Russian Poetry as an example).  Yes the world deserves people who can make their life works out of something that brings them and many other so much joy, but no you probably shouldn’t go 100k’s into debt to do it.  Should I get a software engineering degree, or become a doctor also have similar answers, it needs to be somewhat justified and not outrageous as has become the norm.&lt;/p&gt;&#xA;&lt;p&gt;We used to listen in to Dave Ramsey on long car rides and he would have people call in and say, they went half a million dollars into debt to become a dentist, only to discover they did not want to do dentistry.  At this point it’s too bad, you gotta suck it up and pay that off with something that makes some serious cash, and the only skill you probably got that can bring in that level of cash is … dentistry.&lt;/p&gt;&#xA;&lt;p&gt;They dive into the college experience, learning to have adult debates with classmates about which direction a project should go or how to complete it.  Great stuff!&lt;/p&gt;&#xA;&lt;p&gt;Something I had never put thoughts to is how do you feel when class is cancelled or an assignment is removed.  Are you excited to “not have to do it”?  I’d bet that most people do.  That’s probably a good sign that you are there for the wrong reasons.  What other industry do you pay a f*** ton of money for a product and be like nah ill just take the receipt, you keep the thing.&lt;/p&gt;&#xA;&lt;p&gt;This all just gets your foot in the door.  If you spent none of that time learning it will become apparent really fast and you will not climb the ladder.  Yes climbing the corp ladder is cliche, but at some point you probably want paid more and get opportunity to make more decisions.  And if it turns out you really suck, you’re going to find yourself looking for a new job with no skill and a big pile of student debt sitting behind you.&lt;/p&gt;&#xA;&lt;p&gt;Student debt is probably one of the biggest issues of our generation that only appears to be getting worse, everything signals your need to go to college, presige is important.  It feels like the other side is filled with glory lots of money and you will have all that debt paid off in no time.  I get it when you’re 18 and you see 50k or 100k in student debt, but 80k or 150k salaries on the other side its like damn I make nothing right now I’ll have that paid off in no time.  Then you get out and realize everything costs serious money, housing, kids, cars, broken AC units, and you cant pay off 50k in a year and a half making 80k.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 WebTUI</title>
    <id>https://waylonwalker.com/thought-671/</id>
    <updated>2025-06-07T22:32:42Z</updated>
    <published>2025-06-07T22:32:42Z</published>
    <link href="https://waylonwalker.com/thought-671/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://webtui.ironclad.sh/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://webtui.ironclad.sh/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://webtui.ironclad.sh/cover.png&#34; alt=&#34;WebTUI — Modular CSS Library that brings the beauty of Terminal UIs to the browser&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: WebTUI — Modular CSS Library that brings the beauty of Terminal UIs to the browser&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;WebTUI&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Modular CSS Library that brings the beauty of Terminal UIs to the browser&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;webtui.ironclad.sh&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;webtui, looks like a pretty sick design aesthetic.  I like the keyboard driven nature of it, the look and feel is on point to a terminal interface, sadly it looks like it is not a 2 way street, you don’t automatically get a tui our of your website, just one that looks the part in the browser.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Arch Wizard Brodie Robertson vs My Mac Life - Will He Convert ...</title>
    <id>https://waylonwalker.com/thought-668/</id>
    <updated>2025-06-07T01:05:25Z</updated>
    <published>2025-06-07T01:05:25Z</published>
    <link href="https://waylonwalker.com/thought-668/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/watch?v=bAmJQuX4-ak&amp;t=1684s</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;bAmJQuX4-ak&#34; title=&#34;Arch Wizard Brodie Robertson vs My Mac Life - Will He Convert Me?&#34; playlabel=&#34;Play: Arch Wizard Brodie Robertson vs My Mac Life - Will He Convert Me?&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;I’ve never heard of niri, or a scrolling window manager, it looks quite interesting.  I think tiling window manager misses out on named sessions and hotkey straight to tmux sessions, Brodi mentions not using tmux right before this segment.  Niri looks quite interesting, but looks like it suffers specificity.  maybe there are other tools that allow me to jump straight to something like brave, or steam, but I don’t see how I could jump to a specific terminal.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ niri-wm niri</title>
    <id>https://waylonwalker.com/niri-wm-niri/</id>
    <updated>2025-06-07T01:03:02Z</updated>
    <published>2025-06-07T01:03:02Z</published>
    <link href="https://waylonwalker.com/niri-wm-niri/" rel="alternate" type="text/html"></link>
    <summary type="text">I recently discovered niri by niri-wm, and it&#39;s truly impressive.</summary>
    <content type="html">&lt;p&gt;I recently discovered &lt;a href=&#34;https://github.com/niri-wm/niri&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;niri&lt;/a&gt; by &lt;a href=&#34;https://github.com/niri-wm&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;niri-wm&lt;/a&gt;, and it’s truly impressive.&lt;/p&gt;&#xA;&lt;p&gt;A scrollable-tiling Wayland compositor.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ YaLTeR niri</title>
    <id>https://waylonwalker.com/yalter-niri/</id>
    <updated>2025-06-07T01:03:02Z</updated>
    <published>2025-06-07T01:03:02Z</published>
    <link href="https://waylonwalker.com/yalter-niri/" rel="alternate" type="text/html"></link>
    <summary type="text">I&#39;m impressed by niri from YaLTeR.</summary>
    <content type="html">&lt;p&gt;I’m impressed by &lt;a href=&#34;https://github.com/YaLTeR/niri&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;niri&lt;/a&gt; from &lt;a href=&#34;https://github.com/YaLTeR&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;YaLTeR&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;A scrollable-tiling Wayland compositor.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Backups interrupted by full disk usage</title>
    <id>https://waylonwalker.com/thought-667/</id>
    <updated>2025-06-06T15:53:41Z</updated>
    <published>2025-06-06T15:53:41Z</published>
    <link href="https://waylonwalker.com/thought-667/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://pype.dev/backups-interrupted-by-full-disk-usage/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://pype.dev/backups-interrupted-by-full-disk-usage/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://cdn.statically.io/gh/pypeaday/pype.dev/main/pages/media/og-02.png&#34; alt=&#34;Backups interrupted by full disk usage | Nic Payne — I just got a message from HCIO that my primary backup script is late... This&#xA;happens every now and then but I decided to check on it... Quickly `ssh` in and&#xA;I n&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: Backups interrupted by full disk usage | Nic Payne — I just got a message from HCIO that my primary backup script is late... This&#xA;happens every now and then but I decided to check on it... Quickly `ssh` in and&#xA;I n&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Backups interrupted by full disk usage | Nic Payne&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;I just got a message from HCIO that my primary backup script is late... This&#xA;happens every now and then but I decided to check on it... Quickly `ssh` in and&#xA;I n&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;pype.dev&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;I’m way behind on my notification game and need to pick it up. maybe I’ll look into hcio as well.  maybe I’ll look into something that goes straight to signal or just get things working on ntfy.   An 80GB log file is massive and the kind of thing id like to see notifications more.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Queso Notes</title>
    <id>https://waylonwalker.com/thought-666/</id>
    <updated>2025-06-06T15:50:43Z</updated>
    <published>2025-06-06T15:50:43Z</published>
    <link href="https://waylonwalker.com/thought-666/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://pype.dev/queso-notes/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://pype.dev/queso-notes/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://cdn.statically.io/gh/pypeaday/pype.dev/main/pages/media/og-02.png&#34; alt=&#34;Queso Notes | Nic Payne — It occured to me that this is my blog... I can write about whatever the heck I want! May 2025 Made 2 quesos very similar - they consisted of: 1.5 lbs ground bee&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: Queso Notes | Nic Payne — It occured to me that this is my blog... I can write about whatever the heck I want! May 2025 Made 2 quesos very similar - they consisted of: 1.5 lbs ground bee&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Queso Notes | Nic Payne&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;It occured to me that this is my blog... I can write about whatever the heck I want! May 2025 Made 2 quesos very similar - they consisted of: 1.5 lbs ground bee&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;pype.dev&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Taking this as inspiration to do more non-tech on my blog, I’ve branched out into &lt;a href=&#34;/tags/gaming/&#34; class=&#34;wikilink&#34; data-title=&#34;Posts tagged: gaming&#34; data-description=&#34;All posts with the tag &amp;#34;gaming&amp;#34;&#34; data-preview=&#34;All posts with the tag &amp;#34;gaming&amp;#34;&#34;&gt;Posts tagged: gaming&lt;/a&gt;, but need take it to the next step.  excited to watch &lt;a href=&#34;pype.dev&#34;&gt;pype.dev&lt;/a&gt; evolve as well.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ zk-org zk</title>
    <id>https://waylonwalker.com/zk-org-zk/</id>
    <updated>2025-06-06T01:22:44Z</updated>
    <published>2025-06-06T01:22:44Z</published>
    <link href="https://waylonwalker.com/zk-org-zk/" rel="alternate" type="text/html"></link>
    <summary type="text">zk by zk-org is a game-changer in its space. Excited to see how it evolves.</summary>
    <content type="html">&lt;p&gt;&lt;a href=&#34;https://github.com/zk-org/zk&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;zk&lt;/a&gt; by &lt;a href=&#34;https://github.com/zk-org&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;zk-org&lt;/a&gt; is a game-changer in its space. Excited to see how it evolves.&lt;/p&gt;&#xA;&lt;p&gt;A plain text note-taking assistant&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ get-alex alex</title>
    <id>https://waylonwalker.com/get-alex-alex/</id>
    <updated>2025-06-06T01:18:53Z</updated>
    <published>2025-06-06T01:18:53Z</published>
    <link href="https://waylonwalker.com/get-alex-alex/" rel="alternate" type="text/html"></link>
    <summary type="text">If you&#39;re into interesting projects, don&#39;t miss out on alex, created by get-alex.</summary>
    <content type="html">&lt;p&gt;If you’re into interesting projects, don’t miss out on &lt;a href=&#34;https://github.com/get-alex/alex&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;alex&lt;/a&gt;, created by &lt;a href=&#34;https://github.com/get-alex&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;get-alex&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Catch insensitive, inconsiderate writing&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ lukas-reineke cbfmt</title>
    <id>https://waylonwalker.com/lukas-reineke-cbfmt/</id>
    <updated>2025-06-06T01:18:47Z</updated>
    <published>2025-06-06T01:18:47Z</published>
    <link href="https://waylonwalker.com/lukas-reineke-cbfmt/" rel="alternate" type="text/html"></link>
    <summary type="text">The work on cbfmt by lukas-reineke.</summary>
    <content type="html">&lt;p&gt;The work on &lt;a href=&#34;https://github.com/lukas-reineke/cbfmt&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;cbfmt&lt;/a&gt; by &lt;a href=&#34;https://github.com/lukas-reineke&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;lukas-reineke&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;A tool to format codeblocks inside markdown and org documents.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ Feel-ix-343 markdown-oxide</title>
    <id>https://waylonwalker.com/feel-ix-343-markdown-oxide/</id>
    <updated>2025-06-06T01:18:37Z</updated>
    <published>2025-06-06T01:18:37Z</published>
    <link href="https://waylonwalker.com/feel-ix-343-markdown-oxide/" rel="alternate" type="text/html"></link>
    <summary type="text">Check out Feel-ix-343 and their project markdown-oxide.</summary>
    <content type="html">&lt;p&gt;Check out &lt;a href=&#34;https://github.com/Feel-ix-343&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;Feel-ix-343&lt;/a&gt; and their project &lt;a href=&#34;https://github.com/Feel-ix-343/markdown-oxide&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;markdown-oxide&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;PKM Markdown Language Server&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ hougesen mdsf</title>
    <id>https://waylonwalker.com/hougesen-mdsf/</id>
    <updated>2025-06-06T01:18:28Z</updated>
    <published>2025-06-06T01:18:28Z</published>
    <link href="https://waylonwalker.com/hougesen-mdsf/" rel="alternate" type="text/html"></link>
    <summary type="text">I like hougesen&#39;s project mdsf.</summary>
    <content type="html">&lt;p&gt;I like &lt;a href=&#34;https://github.com/hougesen&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;hougesen’s&lt;/a&gt; project &lt;a href=&#34;https://github.com/hougesen/mdsf&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;mdsf&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Format markdown code blocks using your favorite tools&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ numtide treefmt</title>
    <id>https://waylonwalker.com/numtide-treefmt/</id>
    <updated>2025-06-06T01:18:23Z</updated>
    <published>2025-06-06T01:18:23Z</published>
    <link href="https://waylonwalker.com/numtide-treefmt/" rel="alternate" type="text/html"></link>
    <summary type="text">The work on treefmt by numtide.</summary>
    <content type="html">&lt;p&gt;The work on &lt;a href=&#34;https://github.com/numtide/treefmt&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;treefmt&lt;/a&gt; by &lt;a href=&#34;https://github.com/numtide&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;numtide&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;one CLI to format your repo [maintainers=@zimbatm,@brianmcgee]&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>rich theme</title>
    <id>https://waylonwalker.com/rich-theme/</id>
    <updated>2025-06-05T20:37:10Z</updated>
    <published>2025-06-05T20:37:10Z</published>
    <link href="https://waylonwalker.com/rich-theme/" rel="alternate" type="text/html"></link>
    <summary type="text">The rich console is themeable, I&#39;ve been a long time user of rich and had no Idea. You can define your own theme keywords and use them just like you use...</summary>
    <content type="html">&lt;p&gt;The rich console is themeable, I’ve been a long time user of rich and had no&#xA;Idea.  You can define your own theme keywords and use them just like you use&#xA;normal rich keywords in square brackets like&lt;code&gt;&amp;#39;[bold red]&amp;#39;&lt;/code&gt;.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;kn&#34;&gt;from&lt;/span&gt; &lt;span class=&#34;nn&#34;&gt;rich.console&lt;/span&gt; &lt;span class=&#34;kn&#34;&gt;import&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;Console&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;kn&#34;&gt;from&lt;/span&gt; &lt;span class=&#34;nn&#34;&gt;rich.theme&lt;/span&gt; &lt;span class=&#34;kn&#34;&gt;import&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;Theme&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;custom_theme&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;Theme&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;({&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;s2&#34;&gt;&amp;#34;info&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;dim cyan&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;s2&#34;&gt;&amp;#34;warning&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;magenta&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;s2&#34;&gt;&amp;#34;danger&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;bold red&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;})&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;console&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;Console&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;theme&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;custom_theme&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;console&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;print&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;This is information&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;style&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;info&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;console&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;print&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;[warning]The pod bay doors are locked[/warning]&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;console&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;print&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;Something terrible happened!&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;style&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;danger&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 The ethics of README ads – Will McGugan – Will McGugan&#39;s essays</title>
    <id>https://waylonwalker.com/thought-665/</id>
    <updated>2025-06-05T14:49:09Z</updated>
    <published>2025-06-05T14:49:09Z</published>
    <link href="https://waylonwalker.com/thought-665/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://willmcgugan.github.io/the-ethics-of-readme-ads/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://willmcgugan.github.io/the-ethics-of-readme-ads/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://willmcgugan.github.io/images/will2025.jpeg&#34; alt=&#34;The ethics of README ads — I’ve been considering accepting sponsorship again for my projects.&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: The ethics of README ads — I’ve been considering accepting sponsorship again for my projects.&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;The ethics of README ads&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;I’ve been considering accepting sponsorship again for my projects.&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;Will McGugan · willmcgugan.github.io&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;I’ve long avoided running ads on my blog for the same reason.  For a few months I ran an ad above the fold.  It was a “Your Ad Here” kind of thing, and in the messaging I was looking for content relevant to my content, not google driven ads. This resulted in nothing, no hits, not a one.  I’m kinda with Will on this one beer money is not worth degrading the project for.  I seriously thought some of the big projects with a moderate level of success got a good cut for these sponsorships.  Some of the companies are big companies, like how do they even go through meetings and decide who gets beer money without spending more than that in decision making resources.  Maybe they have a guy with more autonomy than I would expect.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 minio/minio Tags | Docker Hub</title>
    <id>https://waylonwalker.com/thought-664/</id>
    <updated>2025-06-04T13:58:40Z</updated>
    <published>2025-06-04T13:58:40Z</published>
    <link href="https://waylonwalker.com/thought-664/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://hub.docker.com/r/minio/minio/tags?name=RELEASE.2025-04-08</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://hub.docker.com/r/minio/minio/tags?name=RELEASE.2025-04-08&#34; class=&#34;embed-card-link  has-avatar has-avatar-before&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/hub.docker.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/hub.docker.com.ico&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;minio/minio - Docker Image&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;hub.docker.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Browsing for the minio tag that I have running right now I discovered that you can do &lt;code&gt;minio --version&lt;/code&gt; and you get the same version that matches the docker tag, this is super convenient and helpful.  I also notice that they use timestamped version numbers.  I kinda dont mind this.  It feels easy to understand how far behind it is. I really appreciate that the version in the container matches the version inside the container.&lt;/p&gt;&#xA;&lt;p&gt;It’s not as pretty or flexible as semver, it does not communicate trees of majors and minors, but how often do we continue supporting/patching older majors and minors, in my experience only really big teams or teams with sufficient motivation are doing this.&lt;/p&gt;&#xA;&lt;p&gt;food for thought.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>unset multiple environment variables</title>
    <id>https://waylonwalker.com/unset-multiple-environment-variables/</id>
    <updated>2025-06-03T11:21:11Z</updated>
    <published>2025-06-03T11:21:11Z</published>
    <link href="https://waylonwalker.com/unset-multiple-environment-variables/" rel="alternate" type="text/html"></link>
    <summary type="text">You can unset multiple environment variables at once. I did not know this was a thing, its something that ended up happening organically on a call and asking...</summary>
    <content type="html">&lt;p&gt;You can unset multiple environment variables at once. I did not know this was a&#xA;thing, its something that ended up happening organically on a call and asking&#xA;someone to run &lt;code&gt;unset&lt;/code&gt;.  They had never done it before and did not know how it&#xA;works, but did exactly as I said instead of what I meant.  I like this handy&#xA;shortcut doing it in one line rather than each one individually, I will be&#xA;using this in the future. You might need this for something like&#xA;&lt;a href=&#34;/running-aws-cli-commands-with-localstack/&#34; class=&#34;wikilink&#34; data-title=&#34;running aws cli commands with localstack&#34; data-description=&#34;Upon first running an cli command using localstack you might end up with the following error.&#34; data-date=&#34;2022-10-17&#34; data-preview=&#34;Upon first running an cli command using localstack you might end up with the following error.&#34;&gt;running aws cli commands with localstack&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;unset&lt;/span&gt; AWS_ACCESS_KEY_ID AWS_SECRET_ACCESS_KEY AWS_DEFAULT_REGION&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 The 1-3-1 Writing Technique</title>
    <id>https://waylonwalker.com/thought-663/</id>
    <updated>2025-06-02T20:07:09Z</updated>
    <published>2025-06-02T20:07:09Z</published>
    <link href="https://waylonwalker.com/thought-663/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/shorts/SIKo2lCzfhE</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;SIKo2lCzfhE&#34; title=&#34;The 1-3-1 Writing Technique&#34; playlabel=&#34;Play: The 1-3-1 Writing Technique&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;I am going to start trying to employ this rhythm to my writing.  I’m not very sure how I feel about it, there is something almost too assertive about it.  It’s giving me a (i’m great and you should too) kind of vibe.   I want to become more assertive in my writing.&lt;/p&gt;&#xA;&lt;p&gt;I’m giving this a shot and see what I learn, you might notice in my tils.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>i3lock on AwesomeWM</title>
    <id>https://waylonwalker.com/i3lock-on-awesomewm/</id>
    <updated>2025-06-02T14:40:56Z</updated>
    <published>2025-06-02T14:40:56Z</published>
    <link href="https://waylonwalker.com/i3lock-on-awesomewm/" rel="alternate" type="text/html"></link>
    <summary type="text">is a fantastic lockscreen for tiling window managers.</summary>
    <content type="html">&lt;p&gt;&lt;code&gt;i3lock&lt;/code&gt; is a fantastic lockscreen for tiling window managers.&lt;/p&gt;&#xA;&lt;p&gt;If you are using a tiling window manager within a public space you need to add&#xA;a lockscreen.  I have one machine that I take with me to a public space.  Its&#xA;secure enough that I can leave it, but not secure enough that I want to leave&#xA;it unlocked.  So when I need to leave it behind for the restroom I need to lock&#xA;it up.&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://man.archlinux.org/man/extra/i3lock/i3lock.1.en&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/man.archlinux.org.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/man.archlinux.org.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;arch wiki&lt;/a&gt;&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;paru -S i3lock&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# or&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;apt install i3lock&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Now that you have &lt;code&gt;i3lock&lt;/code&gt; installed lets lock that screen.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# lock it with a pure white flashbang&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;i3lock&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# lock it with a black background&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;i3lock -c &lt;span class=&#34;m&#34;&gt;000000&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# lock it with a custom color&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;i3lock -c 2e1330&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# lock it with a wallpaper&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;i3lock -c &lt;span class=&#34;m&#34;&gt;000000&lt;/span&gt; ~/Pictures/Wallpapers/mywallpaper.png&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;You can use your window manager or something more generic like xbindkeys to set&#xA;a hotkey. This way you don’t have to open a terminal and type out the command&#xA;every time you leave your desk.  You can just press something like &lt;code&gt;SUPER+L&lt;/code&gt;&#xA;like you would on other OS’s.&lt;/p&gt;&#xA;&lt;h2 id=&#34;fancy&#34;&gt;Fancy &lt;a href=&#34;#fancy&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;If you like it a bit fancier, you can use &lt;code&gt;i3lock-fancy&lt;/code&gt;, it can blur,&#xA;pixelate, and greyscale your current screen.  I did not really like this&#xA;because you can still tell what is going on the screen.  It’s probably secure&#xA;enough and looks better, but I went with regular &lt;code&gt;i3lock&lt;/code&gt;.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;paru -S i3lock-fancy-git&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# or&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;apt install i3lock-fancy&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>kraft</title>
    <id>https://waylonwalker.com/kraft/</id>
    <updated>2025-06-01T20:32:39Z</updated>
    <published>2025-06-01T20:32:39Z</published>
    <link href="https://waylonwalker.com/kraft/" rel="alternate" type="text/html"></link>
    <summary type="text">Kraft is the family gaming server that we started early 2025.</summary>
    <content type="html">&lt;p&gt;Kraft is the family gaming server that we started early 2025.&lt;/p&gt;&#xA;&lt;h2 id=&#34;repopulating&#34;&gt;Repopulating &lt;a href=&#34;#repopulating&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;Villagers are really hard to get gong.  We have this huge villager tower on the&#xA;server, we nearly every bed filled, and one day we logged in and there were&#xA;three.  Not sure what happened until I witnessed one of them jump maybe 3&#xA;blocks down and off himself.  I checked my last two villagers and they were&#xA;each on one or two hearts left.  We almost lost every single villager on the&#xA;server.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/5c160226-1018-4b07-b3a2-a50588006c17.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;villager-tower-needs-repopulated.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/5c160226-1018-4b07-b3a2-a50588006c17.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/5c160226-1018-4b07-b3a2-a50588006c17.mp4&#34; type=&#34;video/mp4&#34;&gt;villager-tower-needs-repopulated.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;p&gt;To get villagers to breed and make baby villagers you need beds, which we&#xA;already have, and food.  I gave my guys some food and they started making baby&#xA;villagers immediately, crisis averted as we start to get the first few fresh&#xA;full health villagers on the server.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/9f618595-f998-4ba7-a925-92c282607a1b.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;repopulatingv4.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/9f618595-f998-4ba7-a925-92c282607a1b.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/9f618595-f998-4ba7-a925-92c282607a1b.mp4&#34; type=&#34;video/mp4&#34;&gt;repopulatingv4.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 From Prisma Founder to LiveStore: Building local-first apps wi...</title>
    <id>https://waylonwalker.com/thought-662/</id>
    <updated>2025-05-31T20:58:05Z</updated>
    <published>2025-05-31T20:58:05Z</published>
    <link href="https://waylonwalker.com/thought-662/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/watch?v=aKTbGIrkrLE&amp;t=3260s</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;aKTbGIrkrLE&#34; title=&#34;From Prisma Founder to LiveStore: Building local-first apps with Johannes Schickling&#34; playlabel=&#34;Play: From Prisma Founder to LiveStore: Building local-first apps with Johannes Schickling&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;This talk about live store really made me think about database transactions in a new way.  They are talking about live-store, and the complexity of distributed applications like a notes app with the ability to go offline and continue working.  The complexity of resyncing each instance is not simple, conflict resolution accross all the possible installs that may or may not even be online is a really hard problem.  They go deep on discussing an event driven paradigm that is driven off of a log of events and how this changes how we deal with databases.  Using the event log as the source of truth we can do things like forget about database migrations, we can replay all of the events onto a new database.  Its very interesting to rethink in terms of a log system that speaks in terms of understandable events (not table operations) as the source of truth for an application.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>my nvim spellcheck setup</title>
    <id>https://waylonwalker.com/my-nvim-spellcheck-setup/</id>
    <updated>2025-05-31T20:11:59Z</updated>
    <published>2025-05-31T20:11:59Z</published>
    <link href="https://waylonwalker.com/my-nvim-spellcheck-setup/" rel="alternate" type="text/html"></link>
    <summary type="text">I&#39;ve gone too long without a proper spellcheck setup in nvim. I know it&#39;s there, I just don&#39;t use it, I don&#39;t have the right keybinds, like I do with...</summary>
    <content type="html">&lt;p&gt;I’ve gone too long without a proper spellcheck setup in nvim.  I know it’s&#xA;there, I just don’t use it, I don’t have the right keybinds, like I do with&#xA;&lt;a href=&#34;/vim-date/&#34; class=&#34;wikilink&#34; data-title=&#34;vim date&#34; data-description=&#34;When I want to put a date in a document like a blog post from vim I use !!date from insert mode. Note that entering from normal mode puts you in command mode...&#34; data-date=&#34;2025-02-12&#34; data-preview=&#34;When I want to put a date in a document like a blog post from vim I use !!date from insert mode. Note that entering from normal mode puts you in command mode...&#34;&gt;vim date&lt;/a&gt;, to make it work, and its clunky.&lt;/p&gt;&#xA;&lt;h2 id=&#34;default-keybinds&#34;&gt;Default keybinds &lt;a href=&#34;#default-keybinds&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;z= show spell suggestions&lt;/li&gt;&#xA;&lt;li&gt;zg add word to dictionary&lt;/li&gt;&#xA;&lt;li&gt;zw remove word from dictionary&lt;/li&gt;&#xA;&lt;li&gt;]s jump to next misspelled word&lt;/li&gt;&#xA;&lt;li&gt;[s jump to previous misspelled word&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;I really struggle with bracketed keybinds, they don’t flow for me.  I have to&#xA;shift into it and hit two keys, you cant just pop through them with intent, it&#xA;always feels clunky to me.&lt;/p&gt;&#xA;&lt;h2 id=&#34;custom-keybinds&#34;&gt;Custom keybinds &lt;a href=&#34;#custom-keybinds&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;I barely use F-keys in my keymap so that was free game.  On my keyboard I have&#xA;F1-F9 in a numpad layout on my right hand, so F4-F6 are home row, these are&#xA;super easy to pop through and update.  I really refrain from using such high&#xA;real estate keys like this unless it’s for something good, and I do a lot of&#xA;writing in nvim, so fingers crossed I use the heck out of it.&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;f4&gt; jump to next misspelled word&lt;/f4&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;f5&gt; jump to previous misspelled word&lt;/f5&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;f6&gt; show spell suggestions&lt;/f6&gt;&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;I still use zg and zw, they seem fine to me.&lt;/p&gt;&#xA;&lt;h2 id=&#34;the-setup&#34;&gt;The Setup &lt;a href=&#34;#the-setup&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;In my keymap.lua file I added these to the end, they are working so far and&#xA;hopefully I use spellcheck more on my posts now that I’ve made it easy.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;set&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;n&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;&amp;lt;f4&amp;gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;]s&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;set&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;n&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;&amp;lt;f5&amp;gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;[s&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;set&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;n&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;&amp;lt;f6&amp;gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;&amp;lt;cmd&amp;gt;Telescope spell_suggest&amp;lt;cr&amp;gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;h2 id=&#34;one-failure&#34;&gt;One Failure &lt;a href=&#34;#one-failure&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;I went down a long rabbit hole before this trying to populate the quickfix with&#xA;spelling errors, I tried looking for existing plugins, tried to get ai to give&#xA;me a good prototype to start with, and everything was over complicated.  So far&#xA;I’m really liking this setup.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 DHH on X: &#34;You don&#39;t need a mentor. There&#39;s no secret sauce le...</title>
    <id>https://waylonwalker.com/thought-661/</id>
    <updated>2025-05-31T19:49:38Z</updated>
    <published>2025-05-31T19:49:38Z</published>
    <link href="https://waylonwalker.com/thought-661/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://x.com/dhh/status/1928856582588076171</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://x.com/dhh/status/1928856582588076171&#34; class=&#34;embed-card-link  has-avatar has-avatar-before&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/x.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/x.com.ico&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;External Link&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;X (formerly Twitter) · x.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;I need to find this podcast, was DHH this animated through the whole thing?&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;You don’t need a mentor. There’s no secret sauce left inside anyone’s head any more. It’s all been tapped, bottled, tweeted, and shared a million times. Sample some of that, but also guard your ignorance. You’ll lose it soon enough.&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;p&gt;It takes work, one on one hand holding is a shortcut.  Sometimes one that we need.  Sometimes we need to level up quick, hence why your job might pair you up with someone for the first few months, but it is not something you need, you can figure shit out on your own with hard work.  These days we have things like gippity to bounce ideas off, and you can generally get the sense of the direction the average of the internet it was trained on.  Always add your own experience and make a choice for yourself.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Self-Host Weekly</title>
    <id>https://waylonwalker.com/thought-660/</id>
    <updated>2025-05-31T16:29:26Z</updated>
    <published>2025-05-31T16:29:26Z</published>
    <link href="https://waylonwalker.com/thought-660/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://selfh.st/weekly/2025-05-30/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://selfh.st/weekly/2025-05-30/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://selfh.st/content/images/2025/05/2025-05-30-featured-image.png&#34; alt=&#34;Self-Host Weekly (30 May 2025) — Self-hosted news, updates, launches, and content for the week ending Friday, May 30, 2025&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: Self-Host Weekly (30 May 2025) — Self-hosted news, updates, launches, and content for the week ending Friday, May 30, 2025&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Self-Host Weekly (30 May 2025)&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Self-hosted news, updates, launches, and content for the week ending Friday, May 30, 2025&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;selfh.st · selfh.st&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;The object storage (S3-compatible) platform MinIO created a bit of a stir this week&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;p&gt;I had not heard about this before it came in through selfh.st.  I use minio a lot, and did not know there are so many great alternatives out there for it.  I might be looking into some of these options such as &lt;a href=&#34;https://garagehq.deuxfleurs.fr/?ref=selfh.st&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/garagehq.deuxfleurs.fr.png&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/garagehq.deuxfleurs.fr.png&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;garage&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Its hard to tell from this article what mino dropped, but luckily for me it seems to be all ui related.    I use the UI for debugging/feedback/sometimes learning, but at this point I’ve got good flows for setting up new access keys, buckets, and everything with the cli.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 DHH on X: &#34;NIH: Not Invented Here Syndrome might come from a g...</title>
    <id>https://waylonwalker.com/thought-659/</id>
    <updated>2025-05-31T15:40:11Z</updated>
    <published>2025-05-31T15:40:11Z</published>
    <link href="https://waylonwalker.com/thought-659/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://x.com/dhh/status/1928450457262850053</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://x.com/dhh/status/1928450457262850053&#34; class=&#34;embed-card-link  has-avatar has-avatar-before&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/x.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/x.com.ico&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;External Link&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;X (formerly Twitter) · x.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;I suffer hard from NIH, I’m cheap, I like building things, I hate reading the docs, the perfect recipe for some bad NIH.  I really like DHH’s take here.  If no one builds anything new we get stuck with the same old shit.  I think theres a lot of things that as far as my use case is concerned feature complete and needs no more.  I would just build with it or on it, but not re-invent.  It’s a slippery slope.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 feat: add hackernews hits on home page · jimniels/blog@b1a250b</title>
    <id>https://waylonwalker.com/thought-658/</id>
    <updated>2025-05-31T01:56:00Z</updated>
    <published>2025-05-31T01:56:00Z</published>
    <link href="https://waylonwalker.com/thought-658/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://github.com/jimniels/blog/commit/b1a250b2357d21e69a58ce3265114e1761fb47f8</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://github.com/jimniels/blog/commit/b1a250b2357d21e69a58ce3265114e1761fb47f8&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://opengraph.githubassets.com/892f6fed54ab75821aa86deeb035f754e41eb0f9f405d6b058aa958579ccd866/jimniels/blog/commit/b1a250b2357d21e69a58ce3265114e1761fb47f8&#34; alt=&#34;feat: add hackernews hits on home page · jimniels/blog@b1a250b — Contribute to jimniels/blog development by creating an account on GitHub.&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: feat: add hackernews hits on home page · jimniels/blog@b1a250b — Contribute to jimniels/blog development by creating an account on GitHub.&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;feat: add hackernews hits on home page · jimniels/blog@b1a250b&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Contribute to jimniels/blog development by creating an account on GitHub.&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;GitHub · github.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Jim Nielsen fetches his hacker news ranked articles for his home page.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Hackernews query by url</title>
    <id>https://waylonwalker.com/thought-657/</id>
    <updated>2025-05-31T01:54:59Z</updated>
    <published>2025-05-31T01:54:59Z</published>
    <link href="https://waylonwalker.com/thought-657/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://hn.algolia.com/api/v1/search?query=waylonwalker.com&amp;restrictSearchableAttributes=url</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://hn.algolia.com/api/v1/search?query=waylonwalker.com&amp;amp;restrictSearchableAttributes=url&#34; class=&#34;embed-card-link  has-avatar has-avatar-before&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/hn.algolia.com.png&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/hn.algolia.com.png&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;External Link&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;hn.algolia.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://blog.jim-nielsen.com/2022/playing-with-blog-home/&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/blog.jim-nielsen.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/blog.jim-nielsen.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;this post&lt;/a&gt; by Jim Nielsen, lead me to &lt;a href=&#34;https://github.com/jimniels/blog/commit/b1a250b2357d21e69a58ce3265114e1761fb47f8&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;this commit&lt;/a&gt; where I found that he was including posts of his that wound up on hackernews.  I really like this idea and might take it, even though i have very few HN linked posts.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 External Links - Jim Nielsen’s Blog</title>
    <id>https://waylonwalker.com/thought-656/</id>
    <updated>2025-05-31T01:51:13Z</updated>
    <published>2025-05-31T01:51:13Z</published>
    <link href="https://waylonwalker.com/thought-656/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://blog.jim-nielsen.com/about/external-links/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://blog.jim-nielsen.com/about/external-links/&#34; class=&#34;embed-card-link  has-avatar has-avatar-before&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/blog.jim-nielsen.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/blog.jim-nielsen.com.ico&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;External Links - Jim Nielsen’s Blog&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Writing about the big beautiful mess that is making things for the world wide web.&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;blog.jim-nielsen.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;I really like the idea of Jim’s Eternal Links, and really want to take it for myself.  To expand here I want to be able to look for common places for rss feeds, and be able to scrape out rss feeds for sites that I tend to link to often.  Also if they have something like a /blogroll it might be a good place to find new great people to follow.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Could I Have Some More Friction in My Life, Please? - Jim Niel...</title>
    <id>https://waylonwalker.com/thought-655/</id>
    <updated>2025-05-31T01:49:35Z</updated>
    <published>2025-05-31T01:49:35Z</published>
    <link href="https://waylonwalker.com/thought-655/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://blog.jim-nielsen.com/2025/more-friction-please/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://blog.jim-nielsen.com/2025/more-friction-please/&#34; class=&#34;embed-card-link  has-avatar has-avatar-before&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/blog.jim-nielsen.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/blog.jim-nielsen.com.ico&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Could I Have Some More Friction in My Life, Please?&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Writing about the big beautiful mess that is making things for the world wide web.&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;blog.jim-nielsen.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;Maybe we need a little more friction in the world. More things that merit our time. Less things that don’t.&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;p&gt;I can resonate with this post, less friction feels like it leads me to thinking less, having less skin in the game, understanding less, feeling less fulfilled.  &lt;a href=&#34;/vibe-coding/&#34; class=&#34;glossary-term&#34; title=&#34;A coding style popularized in 2025. It is the act of using LLMs to generate code for an application, but the author never looks at the output. The author...&#34;&gt;Vibe coding&lt;/a&gt; is a new trend of 2025, it feels like the future, but it does not quite feel like the present yet.  It’s riddled with errors and I only get frustrated when it doesn’t work.  I like having some friction that leads me to think and pay attention.  There might be a future where this is not required for some things like coding up crud apps, but that does not feel like today.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 A Gentle Intro to RSS</title>
    <id>https://waylonwalker.com/thought-654/</id>
    <updated>2025-05-31T01:44:36Z</updated>
    <published>2025-05-31T01:44:36Z</published>
    <link href="https://waylonwalker.com/thought-654/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://derekkedziora.com/blog/rss-guide</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://derekkedziora.com/blog/rss-guide&#34; class=&#34;embed-card-link  has-avatar has-avatar-before&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/derekkedziora.com.png&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/derekkedziora.com.png&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;A Gentle Intro to RSS&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;A guide to RSS for the less tech savvy.&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;Derek Kedziora · derekkedziora.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;Some of the best things from the old internet are still preserved with RSS. Content is shared via simple files, which means the slow-loading, ad-stuffed and tracker-filled clutter of the modern internet are mostly absent.&lt;/p&gt;&#xA;&lt;p&gt;There aren’t any algorithms. RSS readers are wonderfully dumb. There’s no AI sifting through content to find whatever will outrage you the most. You just get new posts and mark them as read. It’s a calmer world.&lt;/p&gt;&#xA;&lt;p&gt;With RSS I follow lots of people writing about normal people things. People blog about getting back into playing the drums, a fun book they just read, a tough problem they’re working through and the other day to day things of life. This type of content tends to get buried on social media — it doesn’t get the clicks and sell ads like fear and outrage do.&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;p&gt;I feel like a curmudgeon, but i feel all of these things. I dont think that the new web is completely terrible, what is terrible is that the options of an algorithm ran by companies with differing goals is seemingly the only option.  RSS still works, its fantastic, I personally love it, but theres only a small fraction of the internet that it reaches both ways.  Few people have a reader, even fewer have a feed.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Command Line | gitignore.io / docs</title>
    <id>https://waylonwalker.com/thought-653/</id>
    <updated>2025-05-29T16:22:42Z</updated>
    <published>2025-05-29T16:22:42Z</published>
    <link href="https://waylonwalker.com/thought-653/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://docs.gitignore.io/install/command-line</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://docs.gitignore.io/install/command-line&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://docs.gitignore.io/~gitbook/ogimage/-LIvvKfMD3PkcDQCppzH&#34; alt=&#34;Command Line | gitignore.io / docs — To run gitignore.io from your command line you need an active internet connection and an environment function. You need to add a function to your environment that lets you access the gitignore.io API.&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: Command Line | gitignore.io / docs — To run gitignore.io from your command line you need an active internet connection and an environment function. You need to add a function to your environment that lets you access the gitignore.io API.&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Command Line | gitignore.io / docs&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;To run gitignore.io from your command line you need an active internet connection and an environment function. You need to add a function to your environment that lets you access the gitignore.io API.&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;docs.gitignore.io&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;This is a very interesting cli, its so simple.  I stumbled accross the &lt;code&gt;gi&lt;/code&gt; command awhile back and was like pfft, I dont want to install something for that.  Didn’t even realize that you &lt;strong&gt;don’t&lt;/strong&gt; install it, its just http.  Their &lt;em&gt;install&lt;/em&gt; instructions lead you to putting a curl funtion in your bashrc.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;function&lt;/span&gt; gi&lt;span class=&#34;o&#34;&gt;()&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;{&lt;/span&gt; curl -sLw &lt;span class=&#34;se&#34;&gt;\&amp;#34;\\\n\&amp;#34;&lt;/span&gt; https://www.toptal.com/developers/gitignore/api/&lt;span class=&#34;se&#34;&gt;\$&lt;/span&gt;@ &lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;This now has me wondering “What else can build like this?”&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 My Keyboard Has Sublayers… and It’s Insane - YouTube</title>
    <id>https://waylonwalker.com/thought-652/</id>
    <updated>2025-05-29T13:04:50Z</updated>
    <published>2025-05-29T13:04:50Z</published>
    <link href="https://waylonwalker.com/thought-652/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/watch?v=wz5eOowV9iw</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;wz5eOowV9iw&#34; title=&#34;My Hyper key Has Sublayers… Let me Show you Why&#34; playlabel=&#34;Play: My Hyper key Has Sublayers… Let me Show you Why&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;linkarzu has a way to navigate his entire mac using a hyper key.  Everything looks so tight and polished, also a lot to remember!  Lucky he has a system of mnemonics that make it easy to remember.  His setup is very Mac focused using mac only apps, so this would not work for me, though I’m sure I could get something similar on linux.  He did mention Kanata which is cross platform.&lt;/p&gt;&#xA;&lt;h2 id=&#34;what-i-do&#34;&gt;What I do &lt;a href=&#34;#what-i-do&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;I use a far different system that is fast loose and easy.  On every system I run I have 9 workspaces that let me put 9 applications, I can easily move apps to different workspaces and have a side by side if I need.  The core of what I do is terminal, web browser, and chat. Those go on workspaces 4,5,6, whch are home-row keys.  If I’m running obs, that is on 8, steam goes on 1. but I have some freedom to move.  Sometimes 2 will be an image editor or a video editor, sometimes something else all together, but I can quickly go to each app.&lt;/p&gt;&#xA;&lt;h2 id=&#34;what-i-like-from-linkazru&#34;&gt;What I like from Linkazru &lt;a href=&#34;#what-i-like-from-linkazru&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;I do like his layered approach.  I run a 42 key keyboard so things can get a bit cramped quickly. And when thinking in mnemonics you only get 26 letters in the alphabet, but prefixing these with another layer this number goes up exponentially.  Sublayers sound sick to be honest.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Forrest Knight on X: &#34;you&#39;re not allowed to write comments in ...</title>
    <id>https://waylonwalker.com/thought-651/</id>
    <updated>2025-05-29T01:41:41Z</updated>
    <published>2025-05-29T01:41:41Z</published>
    <link href="https://waylonwalker.com/thought-651/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://x.com/ForrestPKnight/status/1927398791398719997</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://x.com/ForrestPKnight/status/1927398791398719997&#34; class=&#34;embed-card-link  has-avatar has-avatar-before&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/x.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/x.com.ico&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;External Link&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;X (formerly Twitter) · x.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Oh, I feel this.  I go through the effort of removing dum ai comments so the ai looks less ai.&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;you’re not allowed to write comments in your code anymore, because if you do everyone will just think it’s ai generated.&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 The adapter pattern in python | Rob Parsons</title>
    <id>https://waylonwalker.com/thought-650/</id>
    <updated>2025-05-28T21:19:27Z</updated>
    <published>2025-05-28T21:19:27Z</published>
    <link href="https://waylonwalker.com/thought-650/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://robp.dev/the-adapter-pattern-in-python/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://robp.dev/the-adapter-pattern-in-python/&#34; class=&#34;embed-card-link  has-avatar has-avatar-before&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/robp.dev.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/robp.dev.ico&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;The adapter pattern in python&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;The Adapter pattern is a design pattern that allows objects with incompatible interfaces to work together. It provides a way to convert the interface of an object into another interface that client...&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;Rob Parsons · robp.dev&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;This has me wondering if I need to really learn more patterns, data structures, and algorithms.  This looks particularly useful when trying to combine several objects that you dont have full control over and make them behave similarly.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>kubernetes node labels</title>
    <id>https://waylonwalker.com/kubernetes-node-labels/</id>
    <updated>2025-05-28T18:49:19Z</updated>
    <published>2025-05-28T18:49:19Z</published>
    <link href="https://waylonwalker.com/kubernetes-node-labels/" rel="alternate" type="text/html"></link>
    <summary type="text">If you need to target a specific k8s node in the cluster, you can use labels. You want to treat your nodes as much like cattle as you can, but sometimes...</summary>
    <content type="html">&lt;p&gt;If you need to target a specific k8s node in the cluster, you can use labels.&#xA;You want to treat your nodes as much like cattle as you can, but sometimes&#xA;budgets get in the way.  You might be like me and just run any free hardware&#xA;you can get in your cluster, or you might have some large storage or gpu needs&#xA;that you can’t afford to put on every node in the cluster.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;kubectl get nodes --show-labels&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# add the bigpool label&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;kubectl label node k8s-1 &lt;span class=&#34;nv&#34;&gt;bigpool&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;true&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;kubectl get nodes --show-labels&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# remove the bigpool label&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;kubectl label node k8s-1 bigpool-&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;To use the label in a pod set &lt;code&gt;spec.nodeSelector&lt;/code&gt; to the label that you&#xA;applied.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nt&#34;&gt;apiVersion&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;l&#34;&gt;v1&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nt&#34;&gt;kind&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;l&#34;&gt;Pod&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nt&#34;&gt;metadata&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;name&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;l&#34;&gt;busybox&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nt&#34;&gt;spec&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;containers&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;- &lt;span class=&#34;nt&#34;&gt;name&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;l&#34;&gt;busybox&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;    &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;image&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;l&#34;&gt;busybox&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;nodeSelector&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;    &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;bigpool&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;true&amp;#34;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Adding a Dynamic Now Page in Jekyll</title>
    <id>https://waylonwalker.com/thought-649/</id>
    <updated>2025-05-28T13:56:38Z</updated>
    <published>2025-05-28T13:56:38Z</published>
    <link href="https://waylonwalker.com/thought-649/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://derekkedziora.com/blog/dynamic-now-page</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://derekkedziora.com/blog/dynamic-now-page&#34; class=&#34;embed-card-link  has-avatar has-avatar-before&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/derekkedziora.com.png&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/derekkedziora.com.png&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Adding a Dynamic Now Page in Jekyll&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Make an auto-updating now page on a static site like Jekyll, Hugo, 11ty or Gatsby&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;Derek Kedziora · derekkedziora.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;wow looking at how this is done kinda draws me towards jekyll a little bit, I did not realize some of the similarities that it has with markata.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 CSS if() functions &amp; reading-flow (in Chrome 137) - YouTube</title>
    <id>https://waylonwalker.com/thought-648/</id>
    <updated>2025-05-28T03:02:11Z</updated>
    <published>2025-05-28T03:02:11Z</published>
    <link href="https://waylonwalker.com/thought-648/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/watch?v=Apn8ucs7AL0</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;Apn8ucs7AL0&#34; title=&#34;CSS if() functions &amp;amp; reading-flow (in Chrome 137)&#34; playlabel=&#34;Play: CSS if() functions &amp;amp; reading-flow (in Chrome 137)&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;css if() just landed, I’m struggling to understand what I an do with this that I can’t do with something as old as classes.  I can get it if I don’t have control over &lt;a href=&#34;/html/&#34; class=&#34;glossary-term&#34; title=&#34;HTML (HyperText Markup Language) is the standard markup language used to create and design documents on the World Wide Web. It structures web content by...&#34;&gt;html&lt;/a&gt; creation or js to add classes.  The example that Una shows includes data that could directly be a classname with a set of styles in css rather than this crazy css variable unpacking out of a data attribute and an if statement.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 wants | maya.land</title>
    <id>https://waylonwalker.com/thought-647/</id>
    <updated>2025-05-28T02:00:31Z</updated>
    <published>2025-05-28T02:00:31Z</published>
    <link href="https://waylonwalker.com/thought-647/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://maya.land/wants/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://maya.land/wants/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://maya.land/assets/vanitas-big.jpg&#34; alt=&#34;wants — Personal website. Webby personsite. Amateur hour round the clock.&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: wants — Personal website. Webby personsite. Amateur hour round the clock.&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;wants&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Personal website. Webby personsite. Amateur hour round the clock.&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;maya.land · maya.land&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;Allen Carr1 on quitting smoking:&#xA;[Carr] recommends working to really notice and internalise that disconnect [between what we want and what we enjoy]. He tells smokers to pay attention to their next cigarette. It’s like mindfulness but for noticing the unpleasantness.&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;p&gt;I can appreciate the restraint here, theres something about the mindfulness behind it all.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>wants</title>
    <id>https://waylonwalker.com/wants/</id>
    <updated>2025-05-27T21:01:14Z</updated>
    <published>2025-05-27T21:01:14Z</published>
    <link href="https://waylonwalker.com/wants/" rel="alternate" type="text/html"></link>
    <summary type="text">Inspired by mara.town/wants</summary>
    <content type="html">&lt;p&gt;Inspired by &lt;a href=&#34;https://maya.land/wants/&#34;&gt;mara.town/wants&lt;/a&gt;&lt;/p&gt;&#xA;&lt;h2 id=&#34;want-but-do-not-enjoy&#34;&gt;want but do not enjoy &lt;a href=&#34;#want-but-do-not-enjoy&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;New hardware that cannot be repaired&lt;/li&gt;&#xA;&lt;li&gt;Disciplining Children&lt;/li&gt;&#xA;&lt;li&gt;Nice landscaping which requires regular maintenance&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;h2 id=&#34;enjoy-but-do-not-want&#34;&gt;enjoy but do not want &lt;a href=&#34;#enjoy-but-do-not-want&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;breakfast&lt;/li&gt;&#xA;&lt;li&gt;Fancy things&lt;/li&gt;&#xA;&lt;li&gt;Manual Labor in moderation&lt;/li&gt;&#xA;&lt;li&gt;Vacations to far away places&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Linux Is About Choice</title>
    <id>https://waylonwalker.com/linux-is-about-choice/</id>
    <updated>2025-05-27T13:37:00Z</updated>
    <published>2025-05-27T13:37:00Z</published>
    <link href="https://waylonwalker.com/linux-is-about-choice/" rel="alternate" type="text/html"></link>
    <summary type="text">This Luke Smith video came across my feed Linux, Bitcoin: When Tech Projects Become &#34;Too Popular...&#34; Don&#39;t forget the goal.. It&#39;s interesting to hear his...</summary>
    <content type="html">&lt;p&gt;This Luke Smith video came across my feed &lt;a href=&#34;https://www.youtube.com/watch?v=0-lS8Y79L7g&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/www.youtube.com.png&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/www.youtube.com.png&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;Linux, Bitcoin: When Tech Projects&#xA;Become “Too Popular…” Don’t forget the&#xA;goal.&lt;/a&gt;.  It’s interesting to hear&#xA;his perspective about Linux, FOSS, Free Software being the end goal, and that we&#xA;are loosing sight of the goal.  This sentiment really aligns with the early&#xA;FOSS movement from Stallman, but was this ever the goal?&lt;/p&gt;&#xA;&lt;h2 id=&#34;taken-over-by-apathetic-interests&#34;&gt;Taken over by apathetic interests &lt;a href=&#34;#taken-over-by-apathetic-interests&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;Luke talks about these projects getting taken over by people with no passion&#xA;for the original goal of freedom and privacy.  They want the projects to grow,&#xA;get bigger, and become mainstream.  This feels exactly the opposite of&#xA;anything Luke would want, so my bias alarm goes off here.  Honestly I do see&#xA;some of the grossness of projects like this that were grassroots, for freedom&#xA;and privacy get taken over for money grabs.  I’m completely out on bitcoin so I&#xA;cannot make any comment there, but I Truly believe that the Linux kernel is&#xA;not a money grab as Luke makes the new face of bitcoin sound.&lt;/p&gt;&#xA;&lt;h2 id=&#34;corporate-backing-is-ok&#34;&gt;Corporate backing is OK &lt;a href=&#34;#corporate-backing-is-ok&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;I’m going to take a counter point here from Luke, that it’s OK for Companies to&#xA;be made, and money to be made on FOSS.  While the Nats relicense has caused a&#xA;Kerfuffle, I appreciate their side of the relicense, as a they discussed on &lt;a href=&#34;https://www.youtube.com/watch?v=hQ7nekmDFfQ&amp;amp;t=2300s&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/www.youtube.com.png&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/www.youtube.com.png&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;The&#xA;Changelog: NATS and the CNCF kerfuffle | Derek Collison shares NATS/Synadia&#xA;story&lt;/a&gt;.  They had a&#xA;struggle to make money as a small project in the Linux Foundation.  Large&#xA;companies would not pay for their service as they have already paid into the&#xA;foundation.  They chose to relicense new versions of the server so such that it&#xA;would become FOSS after 2 years.  This gives them time to pay for their development.&lt;/p&gt;&#xA;&lt;p&gt;Rug pulls, price gouging, and other bad behaviors aside Funding is overall good&#xA;for the FOSS community.  It is a good thing that Torvalds is able to make a&#xA;living from the work he has done on the kernel.&lt;/p&gt;&#xA;&lt;h2 id=&#34;foss-hardware&#34;&gt;FOSS hardware &lt;a href=&#34;#foss-hardware&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;Luke mentions FOSS hardware in the video.  I think this is great and really&#xA;plays to the longevity of a product and limiting e-waste.  I think the main&#xA;goal here is not necessarily openness, but repairability.  At least for me.  I&#xA;could not care to build out ram or hard drives from scratch, but what I do care&#xA;is that I can repair my hardware.   I don’t want my investments into hardware&#xA;to go to waste and be thrown away because of a component failure.  I get that&#xA;we are largely there on the mobile side, and that really sucks.&lt;/p&gt;&#xA;&lt;h2 id=&#34;choice&#34;&gt;Choice &lt;a href=&#34;#choice&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;I really feel like the goal of Linux is choice, its not locked into FOSS.  FOSS&#xA;is a great option, and is really only there for Linux, and not at all an option&#xA;for Windows or MacOS.  I’d argue that at the beginning of the Linux project&#xA;there was no choice your only real option was closed source all the way&#xA;around.  These days not only do we have the freedom to choose an OS, but we can&#xA;choose how we want our Linux.  If you want to deploy Linux at a large company,&#xA;and you are willing to pay for support from someone like Red Hat or Canonical&#xA;that’s an option, but its not the only option.&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://www.youtube.com/watch?v=bWX7jI9t7j8&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/www.youtube.com.png&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/www.youtube.com.png&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;macOS Power User Asks DistroTube: Which Linux Never Breaks?&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;In this interview DT talks about getting new hardware sent to him, and they ask&#xA;do you want us to put Linux on it?  His answer, No, it doesn’t matter, I wont&#xA;use it anyways.  You see DT is not here purely for the Linux, he is here for&#xA;the choice.  His choice is to pick every last config option, and tailor every&#xA;installed executable to fit his needs.  His preferences happen to be in the&#xA;full Free as in Freedom realm.&lt;/p&gt;&#xA;&lt;h2 id=&#34;infinite-linux&#34;&gt;Infinite Linux &lt;a href=&#34;#infinite-linux&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;Linux has infinite options of configuration, hundreds of distros, hundreds of&#xA;desktop environments.  You can Choose a Floating window manager, Tiling window&#xA;manager, or go full TTY with no graphical environment.  With MacOS and Windows&#xA;you get it the way they decide you get it with a level of configuration that&#xA;pales in comparison to what you get on Linux.&lt;/p&gt;&#xA;&lt;h2 id=&#34;immutable-linux&#34;&gt;Immutable Linux &lt;a href=&#34;#immutable-linux&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;A very recent and modern example of this is immutable or cloud native distros,&#xA;the idea is that they are more like an appliance, giving you less freedom and&#xA;control than you typically would have on a normal bare metal install of linux,&#xA;&lt;code&gt;bootc&lt;/code&gt; is just really taking off this year.  I’m currently running one of&#xA;these distro’s called bazzite and I am really loving it.  I have a couple of&#xA;desktop applications that I install from the discover store as flatpaks, but&#xA;mosty I live in a fully custom distrobox that I put every ounce of ricing and&#xA;configuration that I want into.  For me it has been ultra reliable, rather than&#xA;rolling my own thing that is a combination of packages unique to me, I have&#xA;something that is rock hard in the community and I run versioned images of my&#xA;devtainer that make it easy for me to roll back on if something were to break.&lt;/p&gt;&#xA;&lt;p&gt;For me this is feedom, I get to fully control the environment I really care&#xA;about, my terminal.  I get a window manager with 9 workspaces that I can hotkey&#xA;to, and I never miss a game night with my kids due to some weird graphics issue.&lt;/p&gt;&#xA;&lt;h2 id=&#34;freedom&#34;&gt;Freedom &lt;a href=&#34;#freedom&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;In the end Linux was born of this freedom, and is an important part.  While its&#xA;great that there are players here that are able to make money, be good citizens&#xA;and give back, there are bad players.  Even if all the players are good not&#xA;everyone is going to agree and money will only spoil their hurt feelings even&#xA;more.  If Linux looses this freedom of choice and becomes something that you&#xA;only get littered with Closed source software, or on paid platforms, or imposes&#xA;any level of restrictions on to you its lost, and we need a new revolution to&#xA;rise in its ashes.&lt;/p&gt;&#xA;&lt;h2 id=&#34;fin&#34;&gt;Fin &lt;a href=&#34;#fin&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;I’m trying to write more free flowing articles philosophical in nature.  There&#xA;are probably grammatical and spelling misttakes.  There are probably things I&#xA;will re-read in 6 months and not agree with, but these are my free flowing&#xA;thoughts right now. I think we are missing really good opinion pieces on the&#xA;internet these days. Too much AI generated, “Hello World”, shoulda read the&#xA;docs BS.  I subscribe to a lot of other good folks that give their real&#xA;opinions you can find them on my&#xA;&lt;a href=&#34;https://reader.waylonwalker.com/blogroll&#34;&gt;blogroll&lt;/a&gt;.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Blogroll</title>
    <id>https://waylonwalker.com/thought-646/</id>
    <updated>2025-05-27T02:33:08Z</updated>
    <published>2025-05-27T02:33:08Z</published>
    <link href="https://waylonwalker.com/thought-646/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://reader.waylonwalker.com/blogroll/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://reader.waylonwalker.com/blogroll/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://shots.wayl.one/shot/?url=https://waylonwalker.com/reader/og/&amp;amp;height=600&amp;amp;width=1200&amp;amp;scaled_width=1200&amp;amp;scaled_height=600&#34; alt=&#34;Blogroll — Blogroll - a collection of awesome people I follow online&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: Blogroll — Blogroll - a collection of awesome people I follow online&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Blogroll&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Blogroll - a collection of awesome people I follow online&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;Waylon Walker · reader.waylonwalker.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;I rolled out the blogroll today, nothing pretty, but is one single page of the rss feeds I follow.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Late Night Linux – Episode 335 - YouTube</title>
    <id>https://waylonwalker.com/thought-645/</id>
    <updated>2025-05-27T02:31:53Z</updated>
    <published>2025-05-27T02:31:53Z</published>
    <link href="https://waylonwalker.com/thought-645/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/watch?v=warmcBBfZn0</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;warmcBBfZn0&#34; title=&#34;Late Night Linux – Episode 335&#34; playlabel=&#34;Play: Late Night Linux – Episode 335&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Markata got a shout out part way through the latest episode of LNL, I will go back, re-listen and take some of the feedback.  His thoughts on Markata were interesting. On one hand it really is a thing for me that works for me, and as a person with too many side projects I don’t have the focus to really give it polish.  On the other hand it really confirms why listen to podcasts, news, finger on the pulse, opinions and how often these guys are wrong, they are not the expert they probably look at 6 things like this a week.  He said that it was some sort of javascript thing, that maybe he could fix or customize with javascript if he wanted, kinda shocking, I thought maybe I accidentally added node modules or something dumb, nope, I have a whopping 1.4% js.  So most of the comments were plain wrong.  I get it he probably peeked at it for 30s and realized it wasn’t the thing for his problem.  At the same time I should probably do a better job at marketing what it really is, cleaning up the docs and demo.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Root for Your Friends · Joseph Thacker</title>
    <id>https://waylonwalker.com/thought-644/</id>
    <updated>2025-05-27T02:27:24Z</updated>
    <published>2025-05-27T02:27:24Z</published>
    <link href="https://waylonwalker.com/thought-644/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://josephthacker.com/personal/2025/05/13/root-for-your-friends.html</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;/static/https://josephthacker.com/personal/2025/05/13/root-for-your-friends.html&#34; class=&#34;glightbox-link&#34; aria-label=&#34;https://josephthacker.com/personal/2025/05/13/root-for-your-friends.html&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;/static/https://josephthacker.com/personal/2025/05/13/root-for-your-friends.html&#34; alt=&#34;https://josephthacker.com/personal/2025/05/13/root-for-your-friends.html&#34;/ data-glightbox=&#34;description: https://josephthacker.com/personal/2025/05/13/root-for-your-friends.html&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;p&gt;Such a great message right now.  I feel like everywhere I turn is negativity, especially social media.  It feels like so many things are trying to divide and create hate.  “This” is what we should be doing with social media.  There are a lot of elements of “there are two ways to have the biggest building in town, tear down all the bigger buildings, or just build the biggest fucking building”, If you want to be successful in X then surround yourself with others successful in X.  This is a catalytic skill that everyone needs to have in their belt.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>javascript b64</title>
    <id>https://waylonwalker.com/javascript-b64/</id>
    <updated>2025-05-25T21:01:04Z</updated>
    <published>2025-05-25T21:01:04Z</published>
    <link href="https://waylonwalker.com/javascript-b64/" rel="alternate" type="text/html"></link>
    <summary type="text">I&#39;m currently replacing-google-search-apps-with-self-hosted-web-apps and decided to create a simple b64 encoder/decoder, just start typing to enter text,...</summary>
    <content type="html">&lt;p&gt;I’m currently [[replacing-google-search-apps-with-&lt;a href=&#34;/self-host/&#34; class=&#34;glossary-term&#34; title=&#34;Self hosting is the act of hosting your own applications and services without using a SAS provider. This is typically done with your own hardware, but there...&#34;&gt;self-hosted&lt;/a&gt;-web-apps]] and&#xA;decided to create a simple b64 encoder/decoder, just start typing to enter&#xA;text, escape to deselect, then e/d to encode/decode.&lt;/p&gt;&#xA;&lt;p&gt;I’m trying to make these apps super simple, self hosted out of minio, static&#xA;&lt;a href=&#34;/html/&#34; class=&#34;glossary-term&#34; title=&#34;HTML (HyperText Markup Language) is the standard markup language used to create and design documents on the World Wide Web. It structures web content by...&#34;&gt;html&lt;/a&gt;, and javascript.  It’s been fun to get back to some simple interactive web&#xA;development like this. No build just a website that does something.  No broken&#xA;builds, no containers to deploy, just push to minio.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nx&#34;&gt;encoded&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;nx&#34;&gt;btoa&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;nx&#34;&gt;content&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nx&#34;&gt;decoded&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;nx&#34;&gt;atob&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;nx&#34;&gt;encoded&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Here is the result.&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://b64.wayl.one&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://shots.waylonwalker.com/shot/?url=https://b64.wayl.one&amp;amp;height=450&amp;amp;width=800&amp;amp;scaled_width=800&amp;amp;scaled_height=450&amp;amp;selectors=&#34; alt=&#34;screenshot of https://b64.wayl.one&#34;/ data-glightbox=&#34;description: screenshot of https://b64.wayl.one&#34;&gt;&lt;/a&gt;&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ ayoisaiah f2</title>
    <id>https://waylonwalker.com/ayoisaiah-f2/</id>
    <updated>2025-05-24T21:00:49Z</updated>
    <published>2025-05-24T21:00:49Z</published>
    <link href="https://waylonwalker.com/ayoisaiah-f2/" rel="alternate" type="text/html"></link>
    <summary type="text">f2 by ayoisaiah is a game-changer in its space. Excited to see how it evolves.</summary>
    <content type="html">&lt;p&gt;&lt;a href=&#34;https://github.com/ayoisaiah/f2&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;f2&lt;/a&gt; by &lt;a href=&#34;https://github.com/ayoisaiah&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;ayoisaiah&lt;/a&gt; is a game-changer in its space. Excited to see how it evolves.&lt;/p&gt;&#xA;&lt;p&gt;F2 is a cross-platform command-line tool for batch renaming files and directories quickly and safely. Written in Go!&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Billy Basso on code architecture of Animal Well! - YouTube</title>
    <id>https://waylonwalker.com/thought-642/</id>
    <updated>2025-05-24T19:38:21Z</updated>
    <published>2025-05-24T19:38:21Z</published>
    <link href="https://waylonwalker.com/thought-642/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/watch?v=YngwUu4bXR4&amp;t=6039s</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;YngwUu4bXR4&#34; title=&#34;Billy Basso on code architecture of Animal Well!&#34; playlabel=&#34;Play: Billy Basso on code architecture of Animal Well!&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Great conversation with Billy Basso the creator of Animal Well on the code architecture of Animal well.  It’s all hand crafted C++. He talks about early games he tried to build being heavy in oop, and really got lost in oop.  Animal well is very flat, there is no inheritance, just lists of entities that all implement similar methods in their own way.  Layering and order of entities becomes very important.  Its crazy how much he had to think about hardware and MS build being very helpful with this, but needing to know all of the console apis.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Just fucking code.</title>
    <id>https://waylonwalker.com/thought-641/</id>
    <updated>2025-05-24T19:31:09Z</updated>
    <published>2025-05-24T19:31:09Z</published>
    <link href="https://waylonwalker.com/thought-641/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.justfuckingcode.com/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://www.justfuckingcode.com/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Just fucking code.&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;justfuckingcode.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;This is great, beautifully captures a modern backend view of &lt;a href=&#34;https://motherfuckingwebsite.com/&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/motherfuckingwebsite.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/motherfuckingwebsite.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;https://motherfuckingwebsite.com/&lt;/a&gt;.  I honestly resonate with almost all of this.  I have found myself in more trouble than help when trying to fully vibe out a project.  It never refactors, it leaves it shit everywhere, it mostly does what you say, until you get to something that seems easy, so you try to do it yourself, but you break its brittle piece of shit into pieces any time you try to touch it.  AI coding help is great, mcp seems like it really has some game changing abilities, but hands of vibe coded crap aint there yet for me.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 The Plot of &#34;Hollow Knight&#34; in One Minute - YouTube</title>
    <id>https://waylonwalker.com/thought-640/</id>
    <updated>2025-05-24T00:01:07Z</updated>
    <published>2025-05-24T00:01:07Z</published>
    <link href="https://waylonwalker.com/thought-640/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/shorts/3xWgKFISG5U</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;3xWgKFISG5U&#34; title=&#34;The Plot of &amp;#34;Hollow Knight&amp;#34; in One Minute&#34; playlabel=&#34;Play: The Plot of &amp;#34;Hollow Knight&amp;#34; in One Minute&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;I did not realize half of this, and it took me at least 4 watches through this to catch everything.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 k8s-monitoring-helm/charts/k8s-monitoring/docs/examples/privat...</title>
    <id>https://waylonwalker.com/thought-639/</id>
    <updated>2025-05-23T19:58:59Z</updated>
    <published>2025-05-23T19:58:59Z</published>
    <link href="https://waylonwalker.com/thought-639/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://github.com/grafana/k8s-monitoring-helm/blob/main/charts/k8s-monitoring/docs/examples/private-image-registries/globally/values.yaml#L29</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://github.com/grafana/k8s-monitoring-helm/blob/main/charts/k8s-monitoring/docs/examples/private-image-registries/globally/values.yaml#L29&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://opengraph.githubassets.com/bd30bddc248979379c0a4d2c422d12513988c13c580e31633599ca100b715c7b/grafana/k8s-monitoring-helm&#34; alt=&#34;k8s-monitoring-helm/charts/k8s-monitoring/docs/examples/private-image-registries/globally/values.yaml at main · grafana/k8s-monitoring-helm — Contribute to grafana/k8s-monitoring-helm development by creating an account on GitHub.&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: k8s-monitoring-helm/charts/k8s-monitoring/docs/examples/private-image-registries/globally/values.yaml at main · grafana/k8s-monitoring-helm — Contribute to grafana/k8s-monitoring-helm development by creating an account on GitHub.&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;k8s-monitoring-helm/charts/k8s-monitoring/docs/examples/private-image-registries/globally/values.yaml at main · grafana/k8s-monitoring-helm&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Contribute to grafana/k8s-monitoring-helm development by creating an account on GitHub.&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;GitHub · github.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;k8s-monitoring requires setting imageregistry and pullsecrets twice&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nt&#34;&gt;global&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;image&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;    &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;registry&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;l&#34;&gt;my.registry.com&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;    &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;pullSecrets&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;      &lt;/span&gt;- &lt;span class=&#34;nt&#34;&gt;name&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;l&#34;&gt;my-registry-creds&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;imageRegistry&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;l&#34;&gt;my.registry.com&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;imagePullSecrets&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;    &lt;/span&gt;- &lt;span class=&#34;nt&#34;&gt;name&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;l&#34;&gt;my-registry-creds&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 No docs, no bugs</title>
    <id>https://waylonwalker.com/thought-638/</id>
    <updated>2025-05-22T19:50:40Z</updated>
    <published>2025-05-22T19:50:40Z</published>
    <link href="https://waylonwalker.com/thought-638/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://simonwillison.net/2025/May/22/no-docs-no-bugs/#atom-everything</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://simonwillison.net/2025/May/22/no-docs-no-bugs/#atom-everything&#34; class=&#34;embed-card-link  has-avatar has-avatar-before&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/simonwillison.net.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/simonwillison.net.ico&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;No docs, no bugs&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;If your library doesn&amp;#39;t have any documentation, it can&amp;#39;t have any bugs. Documentation specifies what your code is supposed to do. Your tests specify what it actually does. Bugs exist …&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;Simon Willison’s Weblog · simonwillison.net&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;Bugs exist when your test-enforced implementation fails to match the behavior described in your documentation. Without documentation a bug is just undefined behavior.&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;p&gt;This is quite an interesting thought, so does this mean that, none of my undocumented side projects have bugs?  no I think there is still some implied behavior that naming things covers.  a function &lt;code&gt;get_bucket_contents&lt;/code&gt; implies doing something wtih s3, getting stuff from your local filesystem or crashing would be considered a bug.  I think the argument here is that if I start mining bitcoin when you call &lt;code&gt;get_bucket_contents&lt;/code&gt; and I have not documented it that this is a feature not a bug.  If I were to take this a step further, now do I need to document that this does not also start a bitcoin miner?  maybe this is more of an unwanted feature than a bug, I’m convincing myself more and more.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 The Subtle Details That Make Hollow Knight Great - YouTube</title>
    <id>https://waylonwalker.com/thought-637/</id>
    <updated>2025-05-22T19:00:50Z</updated>
    <published>2025-05-22T19:00:50Z</published>
    <link href="https://waylonwalker.com/thought-637/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/watch?v=Vxt8uud5o_4&amp;t=1s</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;Vxt8uud5o_4&#34; title=&#34;The Subtle Details That Make Hollow Knight Great&#34; playlabel=&#34;Play: The Subtle Details That Make Hollow Knight Great&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;So many small details go into making hollow knight such a great game, but it starts with such good controls, every thing is so fluid and predictable.  I knew about coyote time, but not some of the other details that Juniper covers, such as hang time, and faster decent than jump.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>tinyapps</title>
    <id>https://waylonwalker.com/tinyapps/</id>
    <updated>2025-05-22T14:31:29Z</updated>
    <published>2025-05-22T14:31:29Z</published>
    <link href="https://waylonwalker.com/tinyapps/" rel="alternate" type="text/html"></link>
    <summary type="text">I&#39;m working on replacing my usage of google inline search apps with real apps, these are ones that I create and host on my own homelab. The first three that...</summary>
    <content type="html">&lt;p&gt;I’m working on replacing my usage of google inline search apps with real apps,&#xA;these are ones that I create and host on my own &lt;a href=&#34;/homelab/&#34; class=&#34;glossary-term&#34; title=&#34;A place to self host applications. For me this is primarily self built web applications, and applications for sharing files with my family. Techno Tim has a...&#34;&gt;homelab&lt;/a&gt;.  The first three that&#xA;I created are mostly chatgpt based, with a bit of hand edit after the fact,&#xA;uploaded to minio and become an app on my&#xA;&lt;a href=&#34;https://github.com/waylonwalker/k8s-pages&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;k8s-pages&lt;/a&gt;&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;renamed&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;The original title of this post was &amp;#34;Replacing Google Search Apps With Self Hosted Web Apps&amp;#34;&#xA;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;I’m leaning on &lt;a href=&#34;/web-wakelock/&#34; class=&#34;wikilink&#34; data-title=&#34;web wakelock&#34; data-description=&#34;I&amp;#39;m trying to replace my usage of google inline search apps with real apps, today I used a stopwatch to time some things out at work by opening stopwatch....&#34; data-date=&#34;2025-05-21&#34; data-preview=&#34;I&amp;#39;m trying to replace my usage of google inline search apps with real apps, today I used a stopwatch to time some things out at work by opening stopwatch....&#34;&gt;web wakelock&lt;/a&gt; to keep the screen on while these apps are&#xA;running, primarily clos, timer, and stopwatch.&lt;/p&gt;&#xA;&lt;h2 id=&#34;clock&#34;&gt;Clock &lt;a href=&#34;#clock&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;A large displya clock.&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://clock.wayl.one&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://shots.waylonwalker.com/shot/?url=https://clock.wayl.one&amp;amp;height=450&amp;amp;width=800&amp;amp;scaled_width=800&amp;amp;scaled_height=450&amp;amp;selectors=&#34; alt=&#34;screenshot of https://clock.wayl.one&#34;/ data-glightbox=&#34;description: screenshot of https://clock.wayl.one&#34;&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;h2 id=&#34;timer&#34;&gt;Timer &lt;a href=&#34;#timer&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;A simple timer that counts down from thet set time.&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://timer.wayl.one&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://shots.waylonwalker.com/shot/?url=https://timer.wayl.one&amp;amp;height=450&amp;amp;width=800&amp;amp;scaled_width=800&amp;amp;scaled_height=450&amp;amp;selectors=&#34; alt=&#34;screenshot of https://timer.wayl.one&#34;/ data-glightbox=&#34;description: screenshot of https://timer.wayl.one&#34;&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;h2 id=&#34;stopwatch&#34;&gt;Stopwatch &lt;a href=&#34;#stopwatch&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;This is the one that inspired it all, I need to run a few stopwatches at work,&#xA;and chose to just do it right in the google search with a few tabs running.&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://stopwatch.wayl.one&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://shots.waylonwalker.com/shot/?url=https://stopwatch.wayl.one&amp;amp;height=450&amp;amp;width=800&amp;amp;scaled_width=800&amp;amp;scaled_height=450&amp;amp;selectors=&#34; alt=&#34;screenshot of https://stopwatch.wayl.one&#34;/ data-glightbox=&#34;description: screenshot of https://stopwatch.wayl.one&#34;&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;h2 id=&#34;dice&#34;&gt;Dice &lt;a href=&#34;#dice&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;A simple dice roller, this one is the one that I decided to start adding &lt;code&gt;?&lt;/code&gt;&#xA;for help.&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://dice.wayl.one&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://shots.waylonwalker.com/shot/?url=https://dice.wayl.one&amp;amp;height=450&amp;amp;width=800&amp;amp;scaled_width=800&amp;amp;scaled_height=450&amp;amp;selectors=&#34; alt=&#34;screenshot of https://dice.wayl.one&#34;/ data-glightbox=&#34;description: screenshot of https://dice.wayl.one&#34;&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;h2 id=&#34;uuid&#34;&gt;UUID &lt;a href=&#34;#uuid&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;It displays a uuid, thats it.  &lt;kbd&gt;ctrl&lt;/kbd&gt; + &lt;kbd&gt;c&lt;/kbd&gt; to copy.&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://uuid.wayl.one&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://shots.waylonwalker.com/shot/?url=https://uuid.wayl.one&amp;amp;height=450&amp;amp;width=800&amp;amp;scaled_width=800&amp;amp;scaled_height=450&amp;amp;selectors=&#34; alt=&#34;screenshot of https://uuid.wayl.one&#34;/ data-glightbox=&#34;description: screenshot of https://uuid.wayl.one&#34;&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;h2 id=&#34;b64&#34;&gt;b64 &lt;a href=&#34;#b64&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;Today i spent some time on &lt;a href=&#34;b64.wayl.one&#34;&gt;b64&lt;/a&gt;, it is a base64 decoder/encoder.&#xA;Just start tying to enter text, or paste, escape to deselect the text box, d to&#xA;decode, e to encode, ? for help.  It took a bit to get all of the keymaps right&#xA;with the differnt modes and make sure that for instance you don’t keep typing&#xA;in the input box while in help mode, or decode/encode while in the input box.&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://b64.wayl.one&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://shots.waylonwalker.com/shot/?url=https://b64.wayl.one&amp;amp;height=450&amp;amp;width=800&amp;amp;scaled_width=800&amp;amp;scaled_height=450&amp;amp;selectors=&#34; alt=&#34;screenshot of https://b64.wayl.one&#34;/ data-glightbox=&#34;description: screenshot of https://b64.wayl.one&#34;&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;h2 id=&#34;pocketcal&#34;&gt;PocketCal &lt;a href=&#34;#pocketcal&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;This one is not mine, it’s made by &lt;a href=&#34;https://cassidoo.co/post/pocketcal-build-log/&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/cassidoo.co.png&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/cassidoo.co.png&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;Cassidy&#xA;Williams&lt;/a&gt;), but is within the&#xA;ethos and deserves a mention here.  Its a single page calendar that is a static&#xA;site completely rendered on the front end, data is stored in the url as you&#xA;interact with it.  None of your data goes to a server.&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://pocketcal.com&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://shots.waylonwalker.com/shot/?url=https://pocketcal.com&amp;amp;height=450&amp;amp;width=800&amp;amp;scaled_width=800&amp;amp;scaled_height=450&amp;amp;selectors=&#34; alt=&#34;screenshot of https://pocketcal.com&#34;/ data-glightbox=&#34;description: screenshot of https://pocketcal.com&#34;&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;h2 id=&#34;qrcode&#34;&gt;qrcode &lt;a href=&#34;#qrcode&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;Today I wanted to finish an article that I was on afk and It killed me to get&#xA;it from my work computer to my phone, so I made a qrcode generator.  Paste in&#xA;or type in your message and it shows up as a qr code live.  This one needed an&#xA;event listener for window resize since the library creates a rigid canvas qr&#xA;code that does not fit on the screen once you create it then resize the window.&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://qrcode.waylonwalker.com/?text=https://waylonwalker.com/replacing-google-search-apps-with-self-hosted-web-apps/&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://shots.waylonwalker.com/shot/?url=https://qrcode.waylonwalker.com/?text=https://waylonwalker.com/replacing-google-search-apps-with-self-hosted-web-apps%2F%3Ftext%3Dhttps%3A%2F%2Fshots.waylonwalker.com%2F&amp;amp;width=450&amp;amp;height=500&#34; alt=&#34;screenshot of https://b64.wayl.one&#34;/ data-glightbox=&#34;description: screenshot of https://b64.wayl.one&#34;&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;I even added query params to pass hex codes in for &lt;code&gt;color&lt;/code&gt; and &lt;code&gt;bg&lt;/code&gt;.&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://qrcode.waylonwalker.com/?text=https://waylonwalker.com/replacing-google-search-apps-with-self-hosted-web-apps/&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://shots.waylonwalker.com/shot/?url=https://qrcode.waylonwalker.com/?text=https://waylonwalker.com/replacing-google-search-apps-with-self-hosted-web-apps%2F%3Ftext%3Dhttps%3A%2F%2Fshots.waylonwalker.com%2F%26color%3Dff69b4%26bg%3Dffcc00&amp;amp;width=450&amp;amp;height=500&#34; alt=&#34;screenshot of https://b64.wayl.one&#34;/ data-glightbox=&#34;description: screenshot of https://b64.wayl.one&#34;&gt;&lt;/a&gt;&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>web wakelock</title>
    <id>https://waylonwalker.com/web-wakelock/</id>
    <updated>2025-05-21T20:50:22Z</updated>
    <published>2025-05-21T20:50:22Z</published>
    <link href="https://waylonwalker.com/web-wakelock/" rel="alternate" type="text/html"></link>
    <summary type="text">I&#39;m trying to replace my usage of google inline search apps with real apps, today I used a stopwatch to time some things out at work by opening stopwatch....</summary>
    <content type="html">&lt;p&gt;I’m trying to replace my usage of google inline search apps with real apps,&#xA;today I used a stopwatch to time some things out at work by opening stopwatch.&#xA;This was something I just wanted running in a tab on another screen, it was not&#xA;timing running code or anything, I was using it as a reminder to check browser&#xA;caches every 5 minutes or so for some testing.&lt;/p&gt;&#xA;&lt;p&gt;So tonight I whipped up a &lt;a href=&#34;https://stopwatch.wayl.one&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/stopwatch.wayl.one.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/stopwatch.wayl.one.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;stopwatch&lt;/a&gt;,&#xA;&lt;a href=&#34;https://clock.wayl.one&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/clock.wayl.one.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/clock.wayl.one.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;clock&lt;/a&gt; and &lt;a href=&#34;https://timer.wayl.one&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/timer.wayl.one.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/timer.wayl.one.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;timer&lt;/a&gt;, all of&#xA;which are using the wakelock API to keep the screen on while the app is&#xA;running.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;c1&#34;&gt;// Wake Lock support&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;kd&#34;&gt;let&lt;/span&gt; &lt;span class=&#34;nx&#34;&gt;wakeLock&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;kc&#34;&gt;null&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;kr&#34;&gt;async&lt;/span&gt; &lt;span class=&#34;kd&#34;&gt;function&lt;/span&gt; &lt;span class=&#34;nx&#34;&gt;requestWakeLock&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;()&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;      &lt;span class=&#34;k&#34;&gt;try&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;k&#34;&gt;if&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;wakeLock&amp;#39;&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;in&lt;/span&gt; &lt;span class=&#34;nx&#34;&gt;navigator&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;          &lt;span class=&#34;nx&#34;&gt;wakeLock&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;kr&#34;&gt;await&lt;/span&gt; &lt;span class=&#34;nx&#34;&gt;navigator&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nx&#34;&gt;wakeLock&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nx&#34;&gt;request&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;screen&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;          &lt;span class=&#34;nx&#34;&gt;console&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nx&#34;&gt;log&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;Wake lock acquired&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;p&#34;&gt;}&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;      &lt;span class=&#34;p&#34;&gt;}&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;catch&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;nx&#34;&gt;err&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;nx&#34;&gt;console&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nx&#34;&gt;error&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;Wake lock error:&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;nx&#34;&gt;err&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;      &lt;span class=&#34;p&#34;&gt;}&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;p&#34;&gt;}&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;nb&#34;&gt;document&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nx&#34;&gt;addEventListener&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;visibilitychange&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;()&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;=&amp;gt;&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;      &lt;span class=&#34;k&#34;&gt;if&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;nx&#34;&gt;wakeLock&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;!==&lt;/span&gt; &lt;span class=&#34;kc&#34;&gt;null&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;&amp;amp;&amp;amp;&lt;/span&gt; &lt;span class=&#34;nb&#34;&gt;document&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nx&#34;&gt;visibilityState&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;===&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;visible&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;nx&#34;&gt;requestWakeLock&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;();&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;      &lt;span class=&#34;p&#34;&gt;}&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;p&#34;&gt;});&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;nx&#34;&gt;requestWakeLock&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;();&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ pypeaday dbztui</title>
    <id>https://waylonwalker.com/pypeaday-dbztui/</id>
    <updated>2025-05-19T16:40:31Z</updated>
    <published>2025-05-19T16:40:31Z</published>
    <link href="https://waylonwalker.com/pypeaday-dbztui/" rel="alternate" type="text/html"></link>
    <summary type="text">I&#39;m impressed by dbztui from pypeaday.</summary>
    <content type="html">&lt;p&gt;I’m impressed by &lt;a href=&#34;https://github.com/pypeaday/dbztui&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;dbztui&lt;/a&gt; from &lt;a href=&#34;https://github.com/pypeaday&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;pypeaday&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;A DBZ TUI built with an early version of ninesUI and Windsurf&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Python: The Documentary [OFFICIAL TRAILER] - YouTube</title>
    <id>https://waylonwalker.com/thought-636/</id>
    <updated>2025-05-18T16:43:12Z</updated>
    <published>2025-05-18T16:43:12Z</published>
    <link href="https://waylonwalker.com/thought-636/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/watch?v=pqBqdNIPrbo</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;pqBqdNIPrbo&#34; title=&#34;Python: The Documentary [OFFICIAL TRAILER] | Out now! 🚨&#34; playlabel=&#34;Play: Python: The Documentary [OFFICIAL TRAILER] | Out now! 🚨&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Excited to hear this story, they have so many key players in the trailer this will be fantastic.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>vhs themes</title>
    <id>https://waylonwalker.com/vhs-themes/</id>
    <updated>2025-05-16T08:24:51Z</updated>
    <published>2025-05-16T08:24:51Z</published>
    <link href="https://waylonwalker.com/vhs-themes/" rel="alternate" type="text/html"></link>
    <summary type="text">I&#39;ve been working on ninesui, inspired by k9s see thoughts-633. I want a good flow for making video for the readme and I am using charm.sh&#39;s vhs for this....</summary>
    <content type="html">&lt;p&gt;I’ve been working on&#xA;&lt;a href=&#34;https://github.com/WaylonWalker/ninesui/blob/main/README.md&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;ninesui&lt;/a&gt;,&#xA;inspired by k9s see &lt;a href=&#34;https://thoughts.waylonwalker.com/post/633&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/thoughts.waylonwalker.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/thoughts.waylonwalker.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;thoughts-633&lt;/a&gt;.&#xA;I want a good flow for making video for the readme and I am using &lt;a href=&#34;https://charm.sh/apps/&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/charm.sh.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/charm.sh.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;charm.sh&lt;/a&gt;’s &lt;a href=&#34;https://github.com/charmbracelet/vhs&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;vhs&lt;/a&gt; for this.&#xA;Its running in an archBTW distrobox and looks gawdaweful.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/e86047ed-6881-43f7-8e3a-30411d51afaf.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;sort.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/e86047ed-6881-43f7-8e3a-30411d51afaf.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/e86047ed-6881-43f7-8e3a-30411d51afaf.mp4&#34; type=&#34;video/mp4&#34;&gt;sort.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;p&gt;The over saturated colors give it a really retro look, seems fine, but not my&#xA;cup of tea.  I tried to change the textual theme to &lt;code&gt;tokyo-night&lt;/code&gt; and it might&#xA;have made it a bit better, but still over-saturated.&lt;/p&gt;&#xA;&lt;h2 id=&#34;after&#34;&gt;After &lt;a href=&#34;#after&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;What I found is that vhs has themes, setting it to &lt;code&gt;dracula&lt;/code&gt; made everything much better.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;# sort.tape&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Output assets/sort.mp4&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Output assets/sort.gif&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Require echo&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Set Shell &amp;#34;bash&amp;#34;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Set FontSize 32&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Set Width 1920&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Set Height 1080&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;gi&#34;&gt;+ Set Theme &amp;#39;Dracula&amp;#39;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/ada8f04d-88ac-41c3-9983-d9e849cc13ad.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;sort.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/ada8f04d-88ac-41c3-9983-d9e849cc13ad.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/ada8f04d-88ac-41c3-9983-d9e849cc13ad.mp4&#34; type=&#34;video/mp4&#34;&gt;sort.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;ninesui&#34;&gt;NinesUI &lt;a href=&#34;#ninesui&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;I’m using these in my &lt;a href=&#34;https://github.com/WaylonWalker/ninesui&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;ninesui&lt;/a&gt;&#xA;project, right now they are in the readme, but maybe some docs will grow&#xA;eventually.  Right now its hardcore explore phase.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Chris Biscardi&#39;s Digital Garden</title>
    <id>https://waylonwalker.com/thought-635/</id>
    <updated>2025-05-12T13:05:33Z</updated>
    <published>2025-05-12T13:05:33Z</published>
    <link href="https://waylonwalker.com/thought-635/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.christopherbiscardi.com/wtf-is-kubernetes</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://www.christopherbiscardi.com/wtf-is-kubernetes&#34; class=&#34;embed-card-link  has-avatar has-avatar-before&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/www.christopherbiscardi.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/www.christopherbiscardi.com.ico&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;External Link&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;christopherbiscardi.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Interesting take on kubernetes from a front end perspective.  All valid arguments to me, and really the answer to any do you &lt;strong&gt;need&lt;/strong&gt; to any specific implementation of tech is probably no.  We got along just fine before k8s ever existed and you still can, but its really nice in a lot of cases.  If your skills lean toward backend or infrastructure I encourage you to give it a try.&lt;/p&gt;&#xA;&lt;h2 id=&#34;k8s--distros-&#34;&gt;k8s &lt;em&gt;distros&lt;/em&gt; &lt;a href=&#34;#k8s--distros-&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;There are a lot of beginner friendly k8s distros that you can setup with relative ease, kind and k0s are great for single node, If you want multi-node k3s is what I generally use.  If you want a very lightweight OS that you only interact with through an api, and has a very small attack surface talos is an amazing product.&lt;/p&gt;&#xA;&lt;h2 id=&#34;when-else-might-you-want-k8s&#34;&gt;When else might you want k8s &lt;a href=&#34;#when-else-might-you-want-k8s&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;Internal, on-prem, &lt;a href=&#34;/self-host/&#34; class=&#34;glossary-term&#34; title=&#34;Self hosting is the act of hosting your own applications and services without using a SAS provider. This is typically done with your own hardware, but there...&#34;&gt;self hosted&lt;/a&gt;.  If you are trying to avoid the cloud for cost, rules, regulations, red tape, kubernetes is a great option to manage your container workflows yourself without needing to have a cloud budget, get approvals and sign offs on running workflows in a public cloud.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Custom Keyboard Keycaps</title>
    <id>https://waylonwalker.com/shots/2x2-test-board/</id>
    <updated>2025-05-11T11:39:40Z</updated>
    <published>2025-05-11T11:39:40Z</published>
    <link href="https://waylonwalker.com/shots/2x2-test-board/" rel="alternate" type="text/html"></link>
    <summary type="text">A comparison of different custom mechanical keyboard keycap sets.</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;http://dropper.waylonwalker.com/file/ee3d4a1b-0c44-4011-ba67-8a0a146f6e05.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Two sets of custom mechanical keyboard keycaps, one set of four keys and another set of three keys, are displayed on a wooden surface.&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;http://dropper.waylonwalker.com/file/ee3d4a1b-0c44-4011-ba67-8a0a146f6e05.webp&#34; alt=&#34;Two sets of custom mechanical keyboard keycaps, one set of four keys and another set of three keys, are displayed on a wooden surface.&#34;/ data-glightbox=&#34;description: Two sets of custom mechanical keyboard keycaps, one set of four keys and another set of three keys, are displayed on a wooden surface.&#34;&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;A fresh print of caps and a 2x2 test board.&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>m9a devlog 1</title>
    <id>https://waylonwalker.com/m9a-devlog-1/</id>
    <updated>2025-05-11T09:33:44Z</updated>
    <published>2025-05-11T09:33:44Z</published>
    <link href="https://waylonwalker.com/m9a-devlog-1/" rel="alternate" type="text/html"></link>
    <summary type="text">It&#39;s sad to see textualize.io close the doors, but textual is still alive and maintained as a n open source project. I tried to use it very early, and...</summary>
    <content type="html">&lt;p&gt;It’s sad to see textualize.io close the doors, but textual is still alive and&#xA;maintained as a n open source project.  I tried to use it very early, and&#xA;struggled, this was before docs and tutorials really existed, before a lot of&#xA;the widgets and components existed.  Then as we all do I got busy and moved on&#xA;to other things in life and did not have the capacity to build TUIs.&lt;/p&gt;&#xA;&lt;h2 id=&#34;i-like-tuis&#34;&gt;I like tuis &lt;a href=&#34;#i-like-tuis&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;I like tuis, I like staying in the terminal.  I use&#xA;&lt;a href=&#34;https://github.com/gokcehan/lf&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;lf&lt;/a&gt; daily to move files around when I&#xA;want something more than &lt;code&gt;mv&lt;/code&gt; and &lt;code&gt;cp&lt;/code&gt;.  I use&#xA;&lt;a href=&#34;https://github.com/derailed/k9s&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;k9s&lt;/a&gt; hourly to monitor and manage my&#xA;kubernetes cluster.&lt;/p&gt;&#xA;&lt;h2 id=&#34;are-they-worth-the-effort&#34;&gt;Are they worth the effort?? &lt;a href=&#34;#are-they-worth-the-effort&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;As awesome as tui’s are, they are more effort to build, and less automatable.&#xA;I feel like the first stage into automation of a project really needs to be a&#xA;good cli, and this is often good enough for the project and I move on.&lt;/p&gt;&#xA;&lt;h2 id=&#34;m9a-em---nine---ah&#34;&gt;m9a (em - nine - ah) &lt;a href=&#34;#m9a-em---nine---ah&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;&lt;em&gt;inspired by k9s&lt;/em&gt;&lt;/p&gt;&#xA;&lt;p&gt;Like I said I really like k9s and use it all the time, It really makes running&#xA;kubectl commands a breeze and much less verbose.  I don’t know how useful this&#xA;will be, but as a learning exercise I am working on a k9s experience for my&#xA;blog generator &lt;a href=&#34;/markata/&#34; class=&#34;wikilink&#34; data-title=&#34;markata&#34; data-description=&#34;This post is a work in progress.&#34; data-date=&#34;2024-05-30&#34; data-preview=&#34;This post is a work in progress.&#34;&gt;markata&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/53671f5a-acc5-4d17-aa2d-2e9ac6db5674.webm&#34; class=&#34;glightbox-link&#34; aria-label=&#34;m9a-1-trimmed.webm&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/53671f5a-acc5-4d17-aa2d-2e9ac6db5674.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/53671f5a-acc5-4d17-aa2d-2e9ac6db5674.webm&#34; type=&#34;video/webm&#34;&gt;m9a-1-trimmed.webm&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;learning&#34;&gt;Learning &lt;a href=&#34;#learning&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;So far this is just for learning and not quite the most useful thing, I am not&#xA;sure if there is a way to do it, but I am interested in the idea of some sort&#xA;of framework (maybe just widgets) that can more easily turn pydantic objects&#xA;into this kind of tui.  I don’t quite know how it would work, or if it could&#xA;work, for now just exploring the idea, and I think I hit a fairly crude clone&#xA;of k9s so far.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 GrafanaCON 2025 Keynote Livestream - YouTube</title>
    <id>https://waylonwalker.com/thought-634/</id>
    <updated>2025-05-11T02:59:15Z</updated>
    <published>2025-05-11T02:59:15Z</published>
    <link href="https://waylonwalker.com/thought-634/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/watch?v=JYVf-Z320Y0</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;JYVf-Z320Y0&#34; title=&#34;GrafanaCON 2025 Keynote Livestream&#34; playlabel=&#34;Play: GrafanaCON 2025 Keynote Livestream&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Just listened to this as I am really starting to get into grafana and feel like there isn’t a mountain of setup this time around realizing how much of my stack is brand new.  Drill Down and Alloy are both new and key to my setup.  The Ai integrations at the end sound wicked good, I will be interested if you can do similar things with an MCP vs how much proprietary  stuff needs grafana cloud.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 The future of Textualize - Textual</title>
    <id>https://waylonwalker.com/thought-633/</id>
    <updated>2025-05-10T14:27:58Z</updated>
    <published>2025-05-10T14:27:58Z</published>
    <link href="https://waylonwalker.com/thought-633/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://textual.textualize.io/blog/2025/05/07/the-future-of-textualize/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://textual.textualize.io/blog/2025/05/07/the-future-of-textualize/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://raw.githubusercontent.com/Textualize/textual/main/imgs/textual.png&#34; alt=&#34;Textual - The future of Textualize — Textual is a TUI framework for Python, inspired by modern web development.&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: Textual - The future of Textualize — Textual is a TUI framework for Python, inspired by modern web development.&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Textual - The future of Textualize&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Textual is a TUI framework for Python, inspired by modern web development.&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;Textual Documentation · textual.textualize.io&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;Ultimately though a business needs a product. Textual has always been a solution in search of a problem. And while there are plenty of problems to which Textual is a fantastic solution, we weren’t able to find a shared problem or pain-point to build a viable business around.&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;p&gt;I can totally see this. Finding a marketable business idea is not easy, working in the developer space where everyone wants to do it themselves is no better.  Textual specifically I could see, I really wanted to build things on it as it came out, I had ideas, it was hard to use at the time and changing, so I took a break, got busy with far too many other things, and really I ’m good with rich most of the time.&lt;/p&gt;&#xA;&lt;p&gt;I daily use k9s, its absolutely amazing at what it does and appreciate that I could build something like it in python, its just hard to justify the time investment for the things I tend to work on.&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;Which is why Textualize, the company, will be wrapping up in the next few weeks.&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;p&gt;Damn, that hit hard, its been an adventure watching textual get built, things like posting look fantastic!  Glad to see that its still alive with open source and Will is not leaving, but there will be no company.  This likely means significanly less velocity, but it might mean that not being tied to making money other opportunities open up.&lt;/p&gt;&#xA;&lt;p&gt;Thanks for giving us amazing terminal products Will.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 What&#39;s next? – Will McGugan – Will McGugan&#39;s essays</title>
    <id>https://waylonwalker.com/thought-632/</id>
    <updated>2025-05-10T14:08:45Z</updated>
    <published>2025-05-10T14:08:45Z</published>
    <link href="https://waylonwalker.com/thought-632/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://willmcgugan.github.io/whats-next/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://willmcgugan.github.io/whats-next/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://willmcgugan.github.io/images/will2025.jpeg&#34; alt=&#34;What’s next? — Some years ago I had the opportunity to work fulltime on project of mine. This was at a time where I fully intended to take a year off, but being able to make a living off a project of your own creation is something software engineers dream of. Working on Textualize has been a blast, but it has come to an end. Perhaps not in the way I would have liked, but I am satisfied I have contributed something awesome to the tech community.&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: What’s next? — Some years ago I had the opportunity to work fulltime on project of mine. This was at a time where I fully intended to take a year off, but being able to make a living off a project of your own creation is something software engineers dream of. Working on Textualize has been a blast, but it has come to an end. Perhaps not in the way I would have liked, but I am satisfied I have contributed something awesome to the tech community.&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;What’s next?&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Some years ago I had the opportunity to work fulltime on project of mine. This was at a time where I fully intended to take a year off, but being able to make a living off a project of your own cre...&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;Will McGugan · willmcgugan.github.io&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;So it’s back to plan A: taking a year off. I plan on using this time to focus on my health–something I haven’t prioritized while working as a CEO / Founder of a startup.&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;p&gt;Wish you the best Will, you have given us textual and rich, and from what I can tell left it in some great hands.&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;All I can say for certain is that I would like to write more. Writing scratches many of the same itches as software development, and it is a skill I’d like to nurture.&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;p&gt;Go get em Will, write to your hearts desire, and resist the urge to make an SSG company this time.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Too much magic – Will McGugan – Will McGugan&#39;s essays</title>
    <id>https://waylonwalker.com/thought-631/</id>
    <updated>2025-05-10T01:49:34Z</updated>
    <published>2025-05-10T01:49:34Z</published>
    <link href="https://waylonwalker.com/thought-631/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://willmcgugan.github.io/too-much-magic/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://willmcgugan.github.io/too-much-magic/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://willmcgugan.github.io/images/will2025.jpeg&#34; alt=&#34;Too much magic — A common criticisms of frameworks like Textual is that they have “too much magic”.&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: Too much magic — A common criticisms of frameworks like Textual is that they have “too much magic”.&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Too much magic&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;A common criticisms of frameworks like Textual is that they have “too much magic”.&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;Will McGugan · willmcgugan.github.io&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;Now “too much magic” is not the same thing as “bad magic”, although they are often conflated. Bad magic is when the implementation details leak out from the level below. This can manifest itself as cryptic errors that reference the magic’s implementation.&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Markdown&#39;s biggest hater | Knut Melvær - YouTube</title>
    <id>https://waylonwalker.com/thought-630/</id>
    <updated>2025-05-10T00:52:59Z</updated>
    <published>2025-05-10T00:52:59Z</published>
    <link href="https://waylonwalker.com/thought-630/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/watch?v=TACa-vtHQ9k&amp;t=2s</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;TACa-vtHQ9k&#34; title=&#34;Markdown&amp;#39;s biggest hater | Knut Melvær&#34; playlabel=&#34;Play: Markdown&amp;#39;s biggest hater | Knut Melvær&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Dang Strong takes against markdown here with a strong push for bespoke content models/structures.  This idea is completely foreign and wild to me.  I get it that markdown has its issues with flavors, add ons and what not, but overall its mostly transportable, its a skill that works most content sites and writing tools.  I am so far on the other side that I seek out tools with markdown as an option and lean away from wsiwyg tools with specialized data formats on the backend.&lt;/p&gt;&#xA;&lt;p&gt;I’ll end with, I’m also a dev that creates very simplified content and maybe seeing the backend of a site with lots of custom fields would be very eye opening for me.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Week Links №2: April 2025 - daverupert.com</title>
    <id>https://waylonwalker.com/thought-629/</id>
    <updated>2025-05-09T13:49:04Z</updated>
    <published>2025-05-09T13:49:04Z</published>
    <link href="https://waylonwalker.com/thought-629/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://daverupert.com/2025/05/week-links-2/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://daverupert.com/2025/05/week-links-2/&#34; class=&#34;embed-card-link  has-avatar has-avatar-before&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/daverupert.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/daverupert.com.ico&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Week Links №2: April 2025&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Last year I attempted to do some newsletter-style link aggregation… that good intention imploded spectacularly. But I switched to Obsidian this month and now I have a better system for aggregatin...&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;daverupert.com · daverupert.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;Last year I attempted to do some newsletter-style link aggregation… that good intention imploded spectacularly. But I switched to Obsidian this month and now I have a better system for aggregating links (post on that coming later). Inside this issue you’ll find some games, some &lt;a href=&#34;/homelab/&#34; class=&#34;glossary-term&#34; title=&#34;A place to self host applications. For me this is primarily self built web applications, and applications for sharing files with my family. Techno Tim has a...&#34;&gt;homelab&lt;/a&gt; server hardware, some AI discourse™, some musical instruments, and more.&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;p&gt;This hits so close to home, I even went through the effort of making a weeknotes script, one weeknote post.  I also was inspired by obsidian but it didn’t work out for me, so my script uses data from markata.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/b1a5212b-846f-4144-82ab-51cd9ace086d.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;image&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/b1a5212b-846f-4144-82ab-51cd9ace086d.webp&#34; alt=&#34;image&#34;/ data-glightbox=&#34;description: image&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 What ChatGPT is NOT - Tech Raven Blog</title>
    <id>https://waylonwalker.com/thought-627/</id>
    <updated>2025-05-09T13:45:18Z</updated>
    <published>2025-05-09T13:45:18Z</published>
    <link href="https://waylonwalker.com/thought-627/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://blog.techravenconsulting.com/what-chatgpt-is-not/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://blog.techravenconsulting.com/what-chatgpt-is-not/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://blog.techravenconsulting.com/wp-content/uploads/2023/05/not-excited-ai.jpg&#34; alt=&#34;What ChatGPT is NOT - Tech Raven Blog — There is a lot of excitement about ChatGPT and how it allows us to interact with information and technology. I am actually excited that it now exists and still, I think it is being way overhyped. I know, SHOCKER, Silicon Valley overhypes a new technology. I have seen a bunch of things said, even by&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: What ChatGPT is NOT - Tech Raven Blog — There is a lot of excitement about ChatGPT and how it allows us to interact with information and technology. I am actually excited that it now exists and still, I think it is being way overhyped. I know, SHOCKER, Silicon Valley overhypes a new technology. I have seen a bunch of things said, even by&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;What ChatGPT is NOT - Tech Raven Blog&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;There is a lot of excitement about ChatGPT and how it allows us to interact with information and technology. I am actually excited that it now exists and still, I think it is being way overhyped. I...&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;Tech Raven Blog - · blog.techravenconsulting.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;Do you remember regression models from college: given some data, you find a best fit line that allows you to predict Y given X. At the end of the day, ChatGPT, and LLMs in general, are the same thing as the regression model – it’s just that ChatGPT is the largest and fanciest model we currently have to model language and information.&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;p&gt;I really am coming to the idea of calling it a “word calculator”, this seems to be the most succinct description of llms that the lay person can comprehend and relate to.&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;ChatGPT does not hallucinate or become unhinged&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;p&gt;I think Steve goes much deeper on this in his &lt;a href=&#34;https://www.fafo.fm/vectorizing-your-databases-with-steve-pousty/&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/www.fafo.fm.jpg&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/www.fafo.fm.jpg&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;intervew on fafo.fm&lt;/a&gt;.  They describe it more as a pleaser or “yes man”  essentially all the companies that are building these models want to give the “best” answer, better than their competitors.  With this comes the risk of it being completely wrong, they are designed to always give an answer.&lt;/p&gt;&#xA;&lt;p&gt;On that episode they talk about how each word has a statistical probability tied to it and in some visualizations you can see the confidence, in almost every example of “hallucination” you will find some set of very poor confidence followed by BS.  Thats not to say that every time there is low confidence there is BS though, that is why this is such a hard problem.&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;ChatGPT is not a replacement for search&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;p&gt;I’ve become really bad at this.  This is slowly becoming my starting point for a lot of research, not my only research, but the first wet finger in the air.  Most often done with low effort, low risk tasks.&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;In ChatGPT, just like in the shelf full of the Encyclopedia Britannica I had when I was a kid, information on topics has been reduced to good summaries and presented in logical format. In this case we have removed the human authors and replaced them with a very large neural network.&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;p&gt;I really like this description and it matches up with my last comment.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 “I’d rather read the prompt” – Chris Coyier</title>
    <id>https://waylonwalker.com/thought-626/</id>
    <updated>2025-05-09T13:09:30Z</updated>
    <published>2025-05-09T13:09:30Z</published>
    <link href="https://waylonwalker.com/thought-626/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://chriscoyier.net/2025/05/08/id-rather-read-the-prompt/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://chriscoyier.net/2025/05/08/id-rather-read-the-prompt/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://jetpack.com/redirect/?source=sigenerate&amp;amp;query=t%3DeyJ0eHQiOiImIzgyMjA7SSYjODIxNztkIHJhdGhlciByZWFkIHRoZSBwcm9tcHQmIzgyMjE7IiwidGVtcGxhdGUiOiJmdWxsc2NyZWVuIiwiYmxvZ19pZCI6NzQwNzQyNDh9.W9bhDbBZweMngafWgIePBE_Oh-bseQDYOjq6RtAwCN8MQ&#34; alt=&#34;“I’d rather read the prompt” — Clayton Ramsey grades student assignments and gets papers that are just obviously ChatGPT output. I think any of us can spot it by now: awkward repetitive prose, heavy on bullet points with bold in…&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: “I’d rather read the prompt” — Clayton Ramsey grades student assignments and gets papers that are just obviously ChatGPT output. I think any of us can spot it by now: awkward repetitive prose, heavy on bullet points with bold in…&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;“I’d rather read the prompt”&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Clayton Ramsey grades student assignments and gets papers that are just obviously ChatGPT output. I think any of us can spot it by now: awkward repetitive prose, heavy on bullet points with bold in…&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;Chris Coyier · chriscoyier.net&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;I’ll triple down on the link-blog chain here, see this one going around all over this week and finally had time to read through when it hit my rss reader via Chris.&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;It should come as no surprise that nearly every vibe-coded app on the Internet struggles with security issues; look no further than the vibe-coded recipe app that leaks its OpenAI keys. Every time one generates code by prompt, they create a new stillborn program; &lt;a href=&#34;/vibe-coding/&#34; class=&#34;glossary-term&#34; title=&#34;A coding style popularized in 2025. It is the act of using LLMs to generate code for an application, but the author never looks at the output. The author...&#34;&gt;vibe coding&lt;/a&gt; is the art of stitching together their corpses into Frankenstein’s monster.&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;p&gt;Damn, that is a strong statement, stitching together the corpses, strong statement here.  The OpenAI key thing feels kind of obvious to me, every set of docs, blogs and examples on the internet need to be runnable for people to learn and try out new tech easy, putting secrets in the wrong place is easy, putting them somewhere that you can decode them without sharing them is hard team specific, app specific, and so nuanced to your architecture that its rarely included in public examples.  I imagine there are a lot of good code example out there that follow good practice, but it feels like that might have missed the training data here.&lt;/p&gt;&#xA;&lt;p&gt;It alrso reminds me of &lt;a href=&#34;https://thoughts.waylonwalker.com/post/625&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/thoughts.waylonwalker.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/thoughts.waylonwalker.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;thought-625-the-rule&lt;/a&gt;, where prime talks about small apps being happy and easy and at some point every change is hard, and likely  impossible to vibe code.&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;The whole point of making creative work is to share one’s own experience - if there’s no experience to share, why bother? If it’s not worth writing, it’s not worth reading.&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;p&gt;llms are not capable of being creative, they are word calculators, statistical models that predict the next likely word based on their experience, they are not capable of new discoveries.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 The Rule - YouTube</title>
    <id>https://waylonwalker.com/thought-625/</id>
    <updated>2025-05-09T13:01:16Z</updated>
    <published>2025-05-09T13:01:16Z</published>
    <link href="https://waylonwalker.com/thought-625/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/shorts/emlDGTXuhts</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;emlDGTXuhts&#34; title=&#34;The Rule&#34; playlabel=&#34;Play: The Rule&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Under 2000 everything is happy, green field.  Any decision you have made is relatively easy to back out of (barring you making a library with downstream users), but as you go, regret kicks in.  Regret we didn’t make that pydantic 2 upgrade earlier, as new features become more apealing.  Regret that we chose sqlite for simplicity, speed, agility, and now we might need robust and distributed.  Regret that you chose a front end framework, or to have a front end at all to a backend problem.  Regret that you put 6 layers of abstraction on your db early on and now that you understand the problem you want different abstractions, but all of your endpoints deeply depend on the current one.&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;/vibe-coding/&#34; class=&#34;glossary-term&#34; title=&#34;A coding style popularized in 2025. It is the act of using LLMs to generate code for an application, but the author never looks at the output. The author...&#34;&gt;Vibe coding&lt;/a&gt; will not save you, it will only make these wrong decisions for you without the context that you have.  You will hate it’s decisions more because you had no input into some of them.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 THE STANDUP - Coding DIRTY Episode 7</title>
    <id>https://waylonwalker.com/thought-624/</id>
    <updated>2025-05-07T18:00:09Z</updated>
    <published>2025-05-07T18:00:09Z</published>
    <link href="https://waylonwalker.com/thought-624/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/watch?v=hbEWfC4k-Gw</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;hbEWfC4k-Gw&#34; title=&#34;🚨🚨 THE STANDUP - Coding DIRTY Episode 7 🚨🚨&#34; playlabel=&#34;Play: 🚨🚨 THE STANDUP - Coding DIRTY Episode 7 🚨🚨&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;“Gradually roll out your releases to a small group of people”&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;p&gt;~ roughly what prime said (I’m listening live)&lt;/p&gt;&#xA;&lt;p&gt;This really hit home with me, tests can be so good at making sure that we dont repeat bugs and that laser focused things work, tests are generally small and focused, but this does not replace some sort of integration testing.  These days very few things are written as a monolith, and hence there are a lot of interactions that really need to play well together accross various systems.&lt;/p&gt;&#xA;&lt;p&gt;They call out Crowdstrike here, which took down the world blue screening critical windows systems everywhere in 2024.  It was revealed that a small changed was rushed through and skipped critical rollout paths since it seemed like a small change.  Crowdstrike also runs at a super low kernel level of access and a small memory bug can kill the system.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Learning monitoring</title>
    <id>https://waylonwalker.com/thought-623/</id>
    <updated>2025-05-07T15:05:45Z</updated>
    <published>2025-05-07T15:05:45Z</published>
    <link href="https://waylonwalker.com/thought-623/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://waylonwalker.com/thoughts/thought-623/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://waylonwalker.com/thoughts/thought-623/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;External Link&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;waylonwalker.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;I’m trying to level up my sre game.  I’m trying to set up grafana dashboards for everything and it is such a wide surface area.  It’s never just one thing you have to have 3 or more things hooked together in order for the data to flow.&lt;/p&gt;&#xA;&lt;p&gt;I’m really getting not invented here vibes, and thoughts that I can just build this myself.  Not grafana and it’s scalability necessarily, but small components of observability.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Kubernetes Monitoring Helm tutorial | Grafana Loki documentation</title>
    <id>https://waylonwalker.com/thought-622/</id>
    <updated>2025-05-07T01:42:38Z</updated>
    <published>2025-05-07T01:42:38Z</published>
    <link href="https://waylonwalker.com/thought-622/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://grafana.com/docs/loki/latest/send-data/k8s-monitoring-helm/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://grafana.com/docs/loki/latest/send-data/k8s-monitoring-helm/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://grafana.com/meta-generator/Kubernetes+Monitoring+Helm+tutorial@@@loki@@@9.png&#34; alt=&#34;Kubernetes Monitoring Helm tutorial | Grafana Loki documentation&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: Kubernetes Monitoring Helm tutorial | Grafana Loki documentation&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;&#xA;  Kubernetes Monitoring Helm tutorial | Grafana Loki documentation&#xA;&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;Grafana Labs · grafana.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;This is a really  great guide to setting up kubernetes monitoring with helm, it uses loki as a log datasource and alloy as a collector of kubernetes logs, events, and nodes.  The charts are setup really well to start collecting logs from all your kubernetes pods.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Configure the Tempo data source | Grafana documentation</title>
    <id>https://waylonwalker.com/thought-621/</id>
    <updated>2025-05-07T01:38:20Z</updated>
    <published>2025-05-07T01:38:20Z</published>
    <link href="https://waylonwalker.com/thought-621/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://grafana.com/docs/grafana/latest/datasources/tempo/configure-tempo-data-source/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://grafana.com/docs/grafana/latest/datasources/tempo/configure-tempo-data-source/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://grafana.com/meta-generator/Configure+the+Tempo+data+source@@@grafana@@@8.png&#34; alt=&#34;Configure the Tempo data source | Grafana documentation&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: Configure the Tempo data source | Grafana documentation&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;&#xA;  Configure the Tempo data source | Grafana documentation&#xA;&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;Grafana Labs · grafana.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Really helpful article to getting tempo datasource setup in grafana, this enables you to see span and trace data within grafana.  This data helps debug and work through issues that you might come into  with performance and need to see the timing of requests along with logs.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>grafana dashboards as k8s configmap</title>
    <id>https://waylonwalker.com/grafana-dashboards-as-k8s-configmap/</id>
    <updated>2025-05-06T20:24:35Z</updated>
    <published>2025-05-06T20:24:35Z</published>
    <link href="https://waylonwalker.com/grafana-dashboards-as-k8s-configmap/" rel="alternate" type="text/html"></link>
    <summary type="text">I&#39;m trying to learn proper logs, monitoring, otel, and grafana. Today I imported a bunch of pre-made k8s dashboards and made a few of my own for specific...</summary>
    <content type="html">&lt;p&gt;I’m trying to learn proper logs, monitoring, otel, and grafana.  Today I&#xA;imported a bunch of pre-made k8s dashboards and made a few of my own for&#xA;specific apps, and it made me want to know how I can turn my own custom&#xA;dashboards into infrastructure as code.  Turns out grafana makes it pretty easy&#xA;to do this, if you have the grafana dashboard sidecar running.  It will pick up&#xA;any ConfigMap with the grafana_dashboard label and import it.&lt;/p&gt;&#xA;&lt;p&gt;Go to Dashboards -&amp;gt; Pick a Dashboard -&amp;gt; Export -&amp;gt; JSON.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/530e8515-a72a-4341-82d7-37f6f985e327.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;image&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/530e8515-a72a-4341-82d7-37f6f985e327.webp&#34; alt=&#34;image&#34;/ data-glightbox=&#34;description: image&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/d792b2db-2dcf-465f-a400-e84f199ec22d.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;image&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/d792b2db-2dcf-465f-a400-e84f199ec22d.webp&#34; alt=&#34;image&#34;/ data-glightbox=&#34;description: image&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/684701cc-efec-4e2b-9630-c8aea7ff5b14.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;image&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/684701cc-efec-4e2b-9630-c8aea7ff5b14.webp&#34; alt=&#34;image&#34;/ data-glightbox=&#34;description: image&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nt&#34;&gt;apiVersion&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;l&#34;&gt;v1&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nt&#34;&gt;kind&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;l&#34;&gt;ConfigMap&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nt&#34;&gt;metadata&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;name&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;l&#34;&gt;my-dashboard&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;namespace&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;l&#34;&gt;meta&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;labels&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;    &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;grafana_dashboard&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;1&amp;#34;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nt&#34;&gt;data&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;my-dashboard.json&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;&lt;span class=&#34;sd&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;sd&#34;&gt;    {&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;sd&#34;&gt;      &amp;#34;annotations&amp;#34;: {&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;sd&#34;&gt;        &amp;#34;list&amp;#34;: [&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;sd&#34;&gt;      ...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;sd&#34;&gt;      &amp;#34;uid&amp;#34;: &amp;#34;fel2uhjhepg5ce&amp;#34;,&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;sd&#34;&gt;      &amp;#34;version&amp;#34;: 3&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;sd&#34;&gt;    }&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ gitroomhq postiz-app</title>
    <id>https://waylonwalker.com/gitroomhq-postiz-app/</id>
    <updated>2025-05-06T18:23:48Z</updated>
    <published>2025-05-06T18:23:48Z</published>
    <link href="https://waylonwalker.com/gitroomhq-postiz-app/" rel="alternate" type="text/html"></link>
    <summary type="text">Just starred postiz-app by gitroomhq. It&#39;s an exciting project with a lot to offer.</summary>
    <content type="html">&lt;p&gt;Just starred &lt;a href=&#34;https://github.com/gitroomhq/postiz-app&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;postiz-app&lt;/a&gt; by &lt;a href=&#34;https://github.com/gitroomhq&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;gitroomhq&lt;/a&gt;. It’s an exciting project with a lot to offer.&lt;/p&gt;&#xA;&lt;p&gt;📨 The ultimate social media scheduling tool, with a bunch of AI  🤖&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>hollow knight home row layout</title>
    <id>https://waylonwalker.com/hollow-knight-home-row-layout/</id>
    <updated>2025-05-05T20:44:36Z</updated>
    <published>2025-05-05T20:44:36Z</published>
    <link href="https://waylonwalker.com/hollow-knight-home-row-layout/" rel="alternate" type="text/html"></link>
    <summary type="text">I just made it past 100% in my main hollow knight run, so now I will allow myself to get silksong when it comes out. I did this with a little bit of YT...</summary>
    <content type="html">&lt;p&gt;I just made it past 100% in my main hollow knight run, so now I will allow&#xA;myself to get silksong when it comes out.  I did this with a little bit of YT&#xA;guidance, but mostly just figuring it out.  I only just discovered the&#xA;&lt;a href=&#34;/reznormichael-hollow-knight-completion-check/&#34; class=&#34;wikilink&#34; data-title=&#34;⭐ ReznoRMichael hollow-knight-completion-check&#34; data-description=&#34;Check out ReznoRMichael and their project hollow-knight-completion-check.&#34; data-date=&#34;2025-04-20&#34; data-preview=&#34;Check out ReznoRMichael and their project hollow-knight-completion-check.&#34;&gt;⭐ ReznoRMichael hollow-knight-completion-check&lt;/a&gt; which got me an extra 2% for&#xA;a few items I must have got and not saved on, because I was sure I had them.&lt;/p&gt;&#xA;&lt;h2 id=&#34;controller&#34;&gt;Controller &lt;a href=&#34;#controller&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;Hollow Knight is a game that can be played with keyboard or controller, You can&#xA;use analog stick for movements, but they just translate to dpad, there really&#xA;are no analog moves in the game.  This makes it ripe for playing on pure&#xA;keyboard.  I really favor controller when there are more than one analog&#xA;(throttle, brake, steering for example).&lt;/p&gt;&#xA;&lt;p&gt;On controller I’ve switched to only using d-pad as I feel like it gives me the&#xA;most crisp of controls.  It is really easy to miss a pogo on analog by hitting&#xA;slightly left or right.&lt;/p&gt;&#xA;&lt;h2 id=&#34;my-keyboard&#34;&gt;My Keyboard &lt;a href=&#34;#my-keyboard&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;My daily driver keyboard is a custom built 40% monoblock keyboard I absolutely&#xA;love using it, it perfectly plops down on a laptop when I am in laptop mode and&#xA;really fits me quite well for my wrok as a software/infrastructure engineer.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/9fd1dbf7-4c5d-4bb3-adaf-138755f90d54.png&#34; class=&#34;glightbox-link&#34; aria-label=&#34;screenshot-2025-05-06T02-36-55-641Z.png&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/9fd1dbf7-4c5d-4bb3-adaf-138755f90d54.png&#34; alt=&#34;screenshot-2025-05-06T02-36-55-641Z.png&#34;/ data-glightbox=&#34;description: screenshot-2025-05-06T02-36-55-641Z.png&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;wasd&#34;&gt;WASD &lt;a href=&#34;#wasd&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;&lt;em&gt;We’ve got to talk about pinky stagger&lt;/em&gt;&lt;/p&gt;&#xA;&lt;p&gt;I can use wasd perfectly fine on it, I have a layer that has no holds on any&#xA;keys so that they are all nice and crisp and tailored to gaming operations that&#xA;would require a hold.&lt;/p&gt;&#xA;&lt;p&gt;Now what I haven’t ran into before is that trying to game with wasd and use the&#xA;right side is very uncomfortable with this steep of a pinky stagger.  Generally&#xA;with keyboard an mouse games I have the keyboard a little slanted and move my&#xA;fingers to wasd just fine, but it just does not work well with both hands on&#xA;the keyboard.&lt;/p&gt;&#xA;&lt;h2 id=&#34;enter-asdf&#34;&gt;Enter asdf &lt;a href=&#34;#enter-asdf&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;Today is day one, I’m not quite sure how long it will last, but I am giving&#xA;asdf a try for arrow keys.  This will work much more akin to a fight stick&#xA;where each finger has a primary direction instead of using one finger for both&#xA;up and down.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;vim keys, but mirrored&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;I chose to mirror vim keys with down towards the middle.  I had it the other&#xA;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt;way, but when I played, I kept pressing it the other way.&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;a - left&lt;/li&gt;&#xA;&lt;li&gt;s - up&lt;/li&gt;&#xA;&lt;li&gt;d - down&lt;/li&gt;&#xA;&lt;li&gt;f - right&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;/div&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;power keys&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;I wanted to put the most common keys on the strongest finger (feels like&#xA;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt;left pinky breaks this mantra, but whatever).&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;j - attack&lt;/li&gt;&#xA;&lt;li&gt;k - dash&lt;/li&gt;&#xA;&lt;li&gt;l - focus/cast&lt;/li&gt;&#xA;&lt;li&gt;h - quick cast&lt;/li&gt;&#xA;&lt;li&gt;e - inventory&lt;/li&gt;&#xA;&lt;li&gt;u - super dash&lt;/li&gt;&#xA;&lt;li&gt;m - map&lt;/li&gt;&#xA;&lt;li&gt;g - dream nail&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;/div&gt;&#xA;&lt;h2 id=&#34;this-seems-weird&#34;&gt;This seems weird &lt;a href=&#34;#this-seems-weird&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;So Ya, I know it’s weird. I did some searching wasn’t able to find much other&#xA;than this one &lt;a href=&#34;https://www.reddit.com/r/KeyboardLayouts/comments/18kdnl0/using_asdf_instead_of_wasd_for_gaming/&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/www.reddit.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/www.reddit.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;reddit post&lt;/a&gt;&#xA;talking about using asdf.  oddly one person reccommended sdfg, this souds so&#xA;much like vim, which makes a lot of sense, but brings back moving fingers off&#xA;of home row position or using one finger for down and right, which aint gonna&#xA;work.&lt;/p&gt;&#xA;&lt;h2 id=&#34;first-thoughts&#34;&gt;First thoughts &lt;a href=&#34;#first-thoughts&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;I’m about 20 minutes in and struggling on False Knight, I could be a bit more&#xA;patient, but I’m trying to work on pogos on all the mobs on the way in.&lt;/p&gt;&#xA;&lt;h3 id=&#34;holding-up-or-down&#34;&gt;Holding up or down &lt;a href=&#34;#holding-up-or-down&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h3&gt;&#xA;&lt;p&gt;The ability to just hold up or down as you run through the map with enemies&#xA;coming from above or below feels superior, and its going to be nice, I really&#xA;just got to put some time in to get use to the layout, maybe even make some&#xA;changes.&lt;/p&gt;&#xA;&lt;p&gt;I realize now that Hollow Knight rarely needs quick swiching between up and&#xA;down and would probably be fine on a wasd layout if i were to be using a split&#xA;keyboard or a bit less pinky stagger that would work out, but for now I am&#xA;giving this a shot.&lt;/p&gt;&#xA;&lt;h2 id=&#34;my-sons-experience&#34;&gt;My Son’s experience &lt;a href=&#34;#my-sons-experience&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;So my son is playing along with me, new save as well. He went with wasd and&#xA;mouse, while this sounds insane to me to use mouse for clicking and no movement&#xA;the natural feel that it has, has him blazing through faster than he does on&#xA;controller, doing pogos he’s never done before.&lt;/p&gt;&#xA;&lt;h2 id=&#34;false-knight-down&#34;&gt;False Knight down &lt;a href=&#34;#false-knight-down&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;The recording somehow stuck on the menu screen and did not record video, but I&#xA;got this screenshot of the victory.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/be00de02-1cac-4dc2-8c05-9c52c9f1f124.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;image&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/be00de02-1cac-4dc2-8c05-9c52c9f1f124.webp&#34; alt=&#34;image&#34;/ data-glightbox=&#34;description: image&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;vengeful-spirit&#34;&gt;Vengeful Spirit &lt;a href=&#34;#vengeful-spirit&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;Day 2 I managed to make it to the Ancestral Mound and get the Vengeful Spirit&#xA;cast.  Everything is starting to feel much better and more natural.&#xA;Surprisingly my main issue is with up and down since they are used a bit less,&#xA;left with my pinky has not been any issue.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/3c461bd2-3276-45da-8411-c85073f66497.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;hollow-knight-keeb-run-vengeful-spirit.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/3c461bd2-3276-45da-8411-c85073f66497.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/3c461bd2-3276-45da-8411-c85073f66497.mp4&#34; type=&#34;video/mp4&#34;&gt;hollow-knight-keeb-run-vengeful-spirit.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;hornet-battle-1&#34;&gt;Hornet Battle 1 &lt;a href=&#34;#hornet-battle-1&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;I made it successfully through the first hornet battle I was able to snag this&#xA;clip of a few nicely timed pogos.  Its getting better, I am still really&#xA;struggling between down srike and up strike.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/f627cb2c-8da5-4508-9d05-c3a12ed4c2b9.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;hollow-knight-keeb-run-hornet-pogos.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/f627cb2c-8da5-4508-9d05-c3a12ed4c2b9.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/f627cb2c-8da5-4508-9d05-c3a12ed4c2b9.mp4&#34; type=&#34;video/mp4&#34;&gt;hollow-knight-keeb-run-hornet-pogos.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;mothwing-cloak&#34;&gt;Mothwing Cloak &lt;a href=&#34;#mothwing-cloak&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;I got so lucky  with the finish of hornet, I thought she hit me while healing,&#xA;kinda lost where we were tanked a hit and almost took one last hit again and&#xA;beat her to the final punch.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/d8784c22-2baa-410a-af23-d7ebebaa6608.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;hollow-knight-keeb-run-hornet-finish.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/d8784c22-2baa-410a-af23-d7ebebaa6608.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/d8784c22-2baa-410a-af23-d7ebebaa6608.mp4&#34; type=&#34;video/mp4&#34;&gt;hollow-knight-keeb-run-hornet-finish.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/d82dd000-a7b1-401e-8f78-72939a296328.jpg&#34; class=&#34;glightbox-link&#34; aria-label=&#34;20250507172106_1.jpg&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/d82dd000-a7b1-401e-8f78-72939a296328.jpg&#34; alt=&#34;20250507172106_1.jpg&#34;/ data-glightbox=&#34;description: 20250507172106_1.jpg&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;gruz-mother&#34;&gt;Gruz Mother &lt;a href=&#34;#gruz-mother&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;After completing gruz mother I went to grab my macropad to click the clip&#xA;button when her babies came out, and it was at this moment my son told me I was&#xA;done for, there was no recovering from this.  I was already at 2 hearts, and a&#xA;mistake left me with one.  You can see me fumble for the up key in the clip as&#xA;I get repositioned fully on back on the board.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/0a6ffb43-f416-46e4-9e17-05c3ac9c3429.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;hollow-knight-keeb-run-gruz-mother.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/0a6ffb43-f416-46e4-9e17-05c3ac9c3429.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/0a6ffb43-f416-46e4-9e17-05c3ac9c3429.mp4&#34; type=&#34;video/mp4&#34;&gt;hollow-knight-keeb-run-gruz-mother.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;p&gt;Now we have Sly the merchant unlocked and can buy items from him.&lt;/p&gt;&#xA;&lt;h2 id=&#34;city&#34;&gt;City &lt;a href=&#34;#city&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;I made it to the city, but on my way, it looks like one of the smokey layers&#xA;were getting put on top of the game instead of layer in behind. I’ve never seen&#xA;this, so I really have no idea what it is.  During the thorny area it was in&#xA;and out and right as I entered the city it locked on top and did not leave.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/f2fe3da0-9078-4292-9fef-9f4efd306d63.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;image&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/f2fe3da0-9078-4292-9fef-9f4efd306d63.webp&#34; alt=&#34;image&#34;/ data-glightbox=&#34;description: image&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;soul-master&#34;&gt;Soul Master &lt;a href=&#34;#soul-master&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;I made my way over to the soul master, dying several times along the way to a&#xA;few &lt;a href=&#34;https://hollowknight.fandom.com/wiki/Soul_Twister&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/hollowknight.fandom.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/hollowknight.fandom.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;Soul Twisters&lt;/a&gt;, its&#xA;time to battle.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/2d664476-ac45-4461-8e33-43211d493e9e.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;hollow-knight-keeb-run-soul-meeting-master.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/2d664476-ac45-4461-8e33-43211d493e9e.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/2d664476-ac45-4461-8e33-43211d493e9e.mp4&#34; type=&#34;video/mp4&#34;&gt;hollow-knight-keeb-run-soul-meeting-master.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;p&gt;After beating his second room, (this clip makes him look way too easy as he&#xA;wasn’t targeting me fore some reason at the end), I picked up desolate dive,&#xA;which brings a new key combo to get familiar with down+cast.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/af9df166-33cd-4260-85df-910e8a18116c.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;hollow-knight-keeb-run-soul-master-finish.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/af9df166-33cd-4260-85df-910e8a18116c.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/af9df166-33cd-4260-85df-910e8a18116c.mp4&#34; type=&#34;video/mp4&#34;&gt;hollow-knight-keeb-run-soul-master-finish.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;moss-knight&#34;&gt;Moss Knight &lt;a href=&#34;#moss-knight&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;I took a break for awhile on the game, my son got bored and moved on.  He tends&#xA;to switch out games a lot faster than me.  I came back to it tonight after a&#xA;few months off and just got some geo from the moss knights for awhile.  I got&#xA;this decent clip of clearing them, I’m no pro, but getting better at timing on&#xA;the keeb layout.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/d8571451-7a1e-4997-85eb-b5ce2cfdc209.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;hollow-knight-keeb-moss-knight.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/d8571451-7a1e-4997-85eb-b5ce2cfdc209.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/d8571451-7a1e-4997-85eb-b5ce2cfdc209.mp4&#34; type=&#34;video/mp4&#34;&gt;hollow-knight-keeb-moss-knight.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;lumafly-lantern&#34;&gt;Lumafly Lantern &lt;a href=&#34;#lumafly-lantern&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;While I had a lot of geo from the Moss Knights I finished out getting 1800 geo&#xA;to get the lumafly lantern from sly’s shop at dirtmouth.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/2ea5790c-66d7-401d-95c7-c81a2bccb743.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;hollow-knight-keeb-lumafly-lantern.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/2ea5790c-66d7-401d-95c7-c81a2bccb743.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/2ea5790c-66d7-401d-95c7-c81a2bccb743.mp4&#34; type=&#34;video/mp4&#34;&gt;hollow-knight-keeb-lumafly-lantern.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;royal-waterway&#34;&gt;Royal Waterway &lt;a href=&#34;#royal-waterway&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;I decided to head back to the city of tears and into the royal waterway to&#xA;fight the dung defender and collect Isma’s tear.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/3713bdd1-c645-46c5-85d2-451356383842.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;hollow-knight-keeb-royal-waterway-unlock.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/3713bdd1-c645-46c5-85d2-451356383842.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/3713bdd1-c645-46c5-85d2-451356383842.mp4&#34; type=&#34;video/mp4&#34;&gt;hollow-knight-keeb-royal-waterway-unlock.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/58235f4d-701f-4ddc-a26d-ab5f9e0bdbfc.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;hollow-knight-keeb-royal-waterway-entering.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/58235f4d-701f-4ddc-a26d-ab5f9e0bdbfc.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/58235f4d-701f-4ddc-a26d-ab5f9e0bdbfc.mp4&#34; type=&#34;video/mp4&#34;&gt;hollow-knight-keeb-royal-waterway-entering.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/bdf1985b-6a32-4bf4-9f9a-d6f814db7136.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;hollow-knight-keeb-royal-waterway-bench.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/bdf1985b-6a32-4bf4-9f9a-d6f814db7136.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/bdf1985b-6a32-4bf4-9f9a-d6f814db7136.mp4&#34; type=&#34;video/mp4&#34;&gt;hollow-knight-keeb-royal-waterway-bench.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;p&gt;The Dung Defender battle, great lore with this guy, lots of bouncy movement,&#xA;but overall not too hard of a boss.  He is not very accurate with attacks, so&#xA;you have time to just sit in the corners and heal.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/982091a0-a65a-44a4-aca6-fbffcff9ed90.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;hollow-knight-keeb-dung-defender.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/982091a0-a65a-44a4-aca6-fbffcff9ed90.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/982091a0-a65a-44a4-aca6-fbffcff9ed90.mp4&#34; type=&#34;video/mp4&#34;&gt;hollow-knight-keeb-dung-defender.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;p&gt;Once the Dung Defender was defeated, I continued on up to the Kings Station and unlocked it.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/3651c0e1-6d99-4b54-95eb-5b955323a2e9.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;hollow-knight-keeb-kings-station.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/3651c0e1-6d99-4b54-95eb-5b955323a2e9.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/3651c0e1-6d99-4b54-95eb-5b955323a2e9.mp4&#34; type=&#34;video/mp4&#34;&gt;hollow-knight-keeb-kings-station.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;p&gt;I could not remember where ismas tear was and I ended up all the way down in&#xA;deep nest, the climb out is a bit of a challenge, here I am going right by the&#xA;route you take with crystal dash to get isma’s tear.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/9a4befef-e694-4a3c-8b0e-edd06a3f741c.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;climbing-out-of-deep-nest.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/9a4befef-e694-4a3c-8b0e-edd06a3f741c.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/9a4befef-e694-4a3c-8b0e-edd06a3f741c.mp4&#34; type=&#34;video/mp4&#34;&gt;climbing-out-of-deep-nest.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;ismas-tear&#34;&gt;Isma’s Tear &lt;a href=&#34;#ismas-tear&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;I managed to find my way through the royal waterway and where you crystal dash&#xA;over to isma’s tear.  This battle took two attempts, because the first I had no&#xA;health left and walked in with two masks.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/4dd7d2cd-7d4a-473e-a483-f8f8512c6442.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;hollow-knight-keeb-ismas-tear-battle.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/4dd7d2cd-7d4a-473e-a483-f8f8512c6442.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/4dd7d2cd-7d4a-473e-a483-f8f8512c6442.mp4&#34; type=&#34;video/mp4&#34;&gt;hollow-knight-keeb-ismas-tear-battle.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;p&gt;Now the tear coats our shell and allows us to swim through the acid, and we can&#xA;get a lot more places, and some places are just easier to get without precision&#xA;parkour over the acid.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/c6a334a4-d8d3-4742-82ea-3b6e9eaa9923.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;hollow-knight-keeb-ismas-tear.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/c6a334a4-d8d3-4742-82ea-3b6e9eaa9923.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/c6a334a4-d8d3-4742-82ea-3b6e9eaa9923.mp4&#34; type=&#34;video/mp4&#34;&gt;hollow-knight-keeb-ismas-tear.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;thorny-mask&#34;&gt;Thorny Mask &lt;a href=&#34;#thorny-mask&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;I wandered around the world a bit today and found a few small items, nothing of major concequence.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/2b9b5302-7437-4910-a98c-bc96650e353c.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;hollow-knight-keeb-thorny-mask-shard.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/2b9b5302-7437-4910-a98c-bc96650e353c.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/2b9b5302-7437-4910-a98c-bc96650e353c.mp4&#34; type=&#34;video/mp4&#34;&gt;hollow-knight-keeb-thorny-mask-shard.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/a15c7895-bd25-4238-9634-f58c2590730a.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;hollow-knight-keeb-spore-shroom.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/a15c7895-bd25-4238-9634-f58c2590730a.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/a15c7895-bd25-4238-9634-f58c2590730a.mp4&#34; type=&#34;video/mp4&#34;&gt;hollow-knight-keeb-spore-shroom.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/d8cdee6e-4627-444a-99a0-b5b35e960dd8.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;hollow-knight-keeb-thorny-wanderers-journal.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/d8cdee6e-4627-444a-99a0-b5b35e960dd8.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/d8cdee6e-4627-444a-99a0-b5b35e960dd8.mp4&#34; type=&#34;video/mp4&#34;&gt;hollow-knight-keeb-thorny-wanderers-journal.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;challenging-mantis-lords&#34;&gt;Challenging Mantis Lords &lt;a href=&#34;#challenging-mantis-lords&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;It felt like time to challenge the Mantis Lords.  For the reason to prove to&#xA;myself that I am getting better at this layout.&lt;/p&gt;&#xA;&lt;p&gt;I drew my nail and ready for the challenge.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/dfe1c93b-3dd8-4941-8991-7ec8d4b49beb.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;hollow-knight-keeb-challenging-mantis-lords.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/dfe1c93b-3dd8-4941-8991-7ec8d4b49beb.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/dfe1c93b-3dd8-4941-8991-7ec8d4b49beb.mp4&#34; type=&#34;video/mp4&#34;&gt;hollow-knight-keeb-challenging-mantis-lords.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;p&gt;First try I made it past the first one, and deep into the second one, I think&#xA;If I would have remembered the healing window for them I would have had a shot&#xA;at a first try on them.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/98e34601-2cdd-4a38-98a1-97719b38c843.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;hollow-knight-keeb-mantis-lords-1.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/98e34601-2cdd-4a38-98a1-97719b38c843.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/98e34601-2cdd-4a38-98a1-97719b38c843.mp4&#34; type=&#34;video/mp4&#34;&gt;hollow-knight-keeb-mantis-lords-1.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;p&gt;After three tries I had it.  Maybe its not apples to apples with my first ever&#xA;run years ago on steam deck, but it took months.  I would have about 20 minutes&#xA;a day waiting for kids pickup at school and I would just keep grinding at them&#xA;for what added up to be likely several hours.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/90bb2a30-c781-4dfd-98aa-ed933b24f1e3.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;hollow-knight-keeb-defeating-mantis-lords.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/90bb2a30-c781-4dfd-98aa-ed933b24f1e3.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/90bb2a30-c781-4dfd-98aa-ed933b24f1e3.mp4&#34; type=&#34;video/mp4&#34;&gt;hollow-knight-keeb-defeating-mantis-lords.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;p&gt;After defeating them I’m let into the treasure room where I get a bench,&#xA;Hallownest seal, a big loot box, and the &lt;a href=&#34;https://hollowknight.fandom.com/wiki/Mark_of_Pride&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/hollowknight.fandom.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/hollowknight.fandom.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;mark of&#xA;pride&lt;/a&gt;.  This is actually&#xA;one of my favorite charms as it gives you an extra 25% range to your nail&#xA;attacks.  This opens up the window for pogos and reach attacks without taking&#xA;damage.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/b9af2296-60e9-4d92-989f-1529a59c75a1.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;hollow-knight-keeb-mark-of-pride.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/b9af2296-60e9-4d92-989f-1529a59c75a1.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/b9af2296-60e9-4d92-989f-1529a59c75a1.mp4&#34; type=&#34;video/mp4&#34;&gt;hollow-knight-keeb-mark-of-pride.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ wezterm wezterm</title>
    <id>https://waylonwalker.com/wezterm-wezterm/</id>
    <updated>2025-05-05T15:23:46Z</updated>
    <published>2025-05-05T15:23:46Z</published>
    <link href="https://waylonwalker.com/wezterm-wezterm/" rel="alternate" type="text/html"></link>
    <summary type="text">I recently discovered wezterm by wezterm, and it&#39;s truly impressive.</summary>
    <content type="html">&lt;p&gt;I recently discovered &lt;a href=&#34;https://github.com/wezterm/wezterm&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;wezterm&lt;/a&gt; by &lt;a href=&#34;https://github.com/wezterm&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;wezterm&lt;/a&gt;, and it’s truly impressive.&lt;/p&gt;&#xA;&lt;p&gt;A GPU-accelerated cross-platform terminal emulator and multiplexer written by @wez and implemented in Rust&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>fix feed descriptions</title>
    <id>https://waylonwalker.com/fix-feed-descriptions/</id>
    <updated>2025-05-05T10:32:04Z</updated>
    <published>2025-05-05T10:32:04Z</published>
    <link href="https://waylonwalker.com/fix-feed-descriptions/" rel="alternate" type="text/html"></link>
    <summary type="text">Today I fixed a bug in markata that has been occurring for a few months where the description for posts come out as None if coming from cache, the issue was...</summary>
    <content type="html">&lt;p&gt;Today I fixed a bug in markata that has been occurring for a few months where&#xA;the description for posts come out as None if coming from cache, the issue was&#xA;a pretty simple check and pull properly from cache.  This fixes all the&#xA;descriptions in feeds and metadata on the post.&lt;/p&gt;&#xA;&lt;h2 id=&#34;better-description&#34;&gt;Better description &lt;a href=&#34;#better-description&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;While in there we went ahead and improved our get_description to more&#xA;accurately return plain text without escaped characters, remove cutoff words,&#xA;and add an elipsis if the description cuts off the text.&lt;/p&gt;&#xA;&lt;h2 id=&#34;more-description&#34;&gt;More description &lt;a href=&#34;#more-description&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;While I was there I made longer form posts, &lt;code&gt;til, blog-post&lt;/code&gt; use the super&#xA;description of 500 characters instead of the regular 120 character description.&lt;/p&gt;&#xA;&lt;h2 id=&#34;before&#34;&gt;Before &lt;a href=&#34;#before&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/8e9cf8e3-50ab-4e0a-be76-7241fbfe44c5.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;image&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/8e9cf8e3-50ab-4e0a-be76-7241fbfe44c5.webp&#34; alt=&#34;image&#34;/ data-glightbox=&#34;description: image&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;after&#34;&gt;After &lt;a href=&#34;#after&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/29f96255-a89f-4ec6-b9e7-f61551366264.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;image&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/29f96255-a89f-4ec6-b9e7-f61551366264.webp&#34; alt=&#34;image&#34;/ data-glightbox=&#34;description: image&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Vectorizing Your Databases with Steve Pousty</title>
    <id>https://waylonwalker.com/thought-620/</id>
    <updated>2025-05-04T17:54:39Z</updated>
    <published>2025-05-04T17:54:39Z</published>
    <link href="https://waylonwalker.com/thought-620/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.fafo.fm/vectorizing-your-databases-with-steve-pousty/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://www.fafo.fm/vectorizing-your-databases-with-steve-pousty/&#34; class=&#34;embed-card-link  has-avatar has-avatar-before&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/www.fafo.fm.jpg&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/www.fafo.fm.jpg&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;External Link&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;fafo.fm&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Steve is such a great listen, the neurospicy 🌶️ rambles this episode goes on is so relatable.  I feel like I really missed out on some great takes on intellij vs neovim, but got some really great knowledge about vector db’s, embedding, text compression, similarities to vector algegra like infinite craft.&lt;/p&gt;&#xA;&lt;p&gt;Just popped open infinitecraft and I’ve definitely played this with my kids before, super fun, just could not remember the name of this one.  I do remember an android one as well that is alchemist or something like that, which we have also played a lot.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Recovering from Disaster with Seth Eliot</title>
    <id>https://waylonwalker.com/thought-618/</id>
    <updated>2025-05-04T17:48:54Z</updated>
    <published>2025-05-04T17:48:54Z</published>
    <link href="https://waylonwalker.com/thought-618/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.fafo.fm/recovering-from-disaster-with-seth-eliot/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://www.fafo.fm/recovering-from-disaster-with-seth-eliot/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://images.podpage.com/tr:w-1200,h-630,c-force,bl-50:l-image,i-ik_canvas,bg-E8AA3A33,w-1200,h-630,l-end:l-image,ie-aHR0cHM6Ly9pbWcudHJhbnNpc3Rvci5mbS9NbldmdHVqTURFeHJ4STlDdUFkUnNfUkYwOWZMdDNkNjBLNk9PR3gyMzZFL3JzOmZpbGw6MDowOjEvdzoxNDAwL2g6MTQwMC9xOjYwL21iOjUwMDAwMC9hSFIwY0hNNkx5OXBiV2N0L2RYQnNiMkZrTFhCeWIyUjEvWTNScGIyNHVkSEpoYm5OcC9jM1J2Y2k1bWJTOHhZamt4L1pXVTFPVE00TURZeE1XRXovWm1FMFlqUTROMlprTlRKbS9aRFZsTmk1d2JtYy5qcGc,w-550,h-550,c-at_max,lx-40,ly-40,lfo-top_left,l-end:l-text,ie-UmVjb3ZlcmluZyBmcm9tIERpc2FzdGVyIHdpdGggU2V0aCBFbGlvdA,w-550,fs-64,ff-Poppins,co-ffffff,ia-left,lx-630,ly-40,lfo-top_left,l-end/https://img.transistor.fm/MnWftujMDExrxI9CuAdRs_RF09fLt3d60K6OOGx236E/rs:fill:0:0:1/w:1400/h:1400/q:60/mb:500000/aHR0cHM6Ly9pbWct/dXBsb2FkLXByb2R1/Y3Rpb24udHJhbnNp/c3Rvci5mbS8xYjkx/ZWU1OTM4MDYxMWEz/ZmE0YjQ4N2ZkNTJm/ZDVlNi5wbmc.jpg&#34; alt=&#34;Recovering from Disaster with Seth Eliot — Disaster recovery is more than automation and infrastructure. There&amp;#39;s a lot that goes into your services and some of those things can&amp;#39;t be defined as code or automa…&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: Recovering from Disaster with Seth Eliot — Disaster recovery is more than automation and infrastructure. There&amp;#39;s a lot that goes into your services and some of those things can&amp;#39;t be defined as code or automa…&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Recovering from Disaster with Seth Eliot&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Disaster recovery is more than automation and infrastructure. There&amp;#39;s a lot that goes into your services and some of those things can&amp;#39;t be defined as code or automa…&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;Fork Around And Find Out · fafo.fm&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;This episode really got me thinking about the difference between HA and DR and my approach to each one.  They talk about it from the perspective of a cach cow kind of app rather than a &lt;a href=&#34;/homelab/&#34; class=&#34;glossary-term&#34; title=&#34;A place to self host applications. For me this is primarily self built web applications, and applications for sharing files with my family. Techno Tim has a...&#34;&gt;homelab&lt;/a&gt; or internal tooling, but think of HA as 9’s how many 9s are we willing to pay for, tink of DR as dollars how many dollars will we loose during the period of recovery.  So much more in the episode, a lot of talk around cloud vendors and what they give you vs a purpose build platform with HA and DR in mind.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ kubero-dev kubero</title>
    <id>https://waylonwalker.com/kubero-dev-kubero/</id>
    <updated>2025-05-04T17:39:16Z</updated>
    <published>2025-05-04T17:39:16Z</published>
    <link href="https://waylonwalker.com/kubero-dev-kubero/" rel="alternate" type="text/html"></link>
    <summary type="text">Just starred kubero by kubero-dev. It&#39;s an exciting project with a lot to offer.</summary>
    <content type="html">&lt;p&gt;Just starred &lt;a href=&#34;https://github.com/kubero-dev/kubero&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;kubero&lt;/a&gt; by &lt;a href=&#34;https://github.com/kubero-dev&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;kubero-dev&lt;/a&gt;. It’s an exciting project with a lot to offer.&lt;/p&gt;&#xA;&lt;p&gt;A free and &lt;a href=&#34;/self-host/&#34; class=&#34;glossary-term&#34; title=&#34;Self hosting is the act of hosting your own applications and services without using a SAS provider. This is typically done with your own hardware, but there...&#34;&gt;self-hosted&lt;/a&gt; PaaS alternative to Heroku / Netlify / Coolify / Vercel / Dokku / Portainer running on Kubernetes&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>ruff single line import</title>
    <id>https://waylonwalker.com/ruff-single-line-import/</id>
    <updated>2025-05-04T14:23:41Z</updated>
    <published>2025-05-04T14:23:41Z</published>
    <link href="https://waylonwalker.com/ruff-single-line-import/" rel="alternate" type="text/html"></link>
    <summary type="text">I&#39;ve been using ruff to lint my python code for quite awhile now, I was pretty early to jump on it after release. Some of my projects have had a nice...</summary>
    <content type="html">&lt;p&gt;I’ve been using ruff to lint my python code for quite awhile now, I was pretty&#xA;early to jump on it after release.  Some of my projects have had a nice&#xA;force-single-line setting and some have not.  I dug into the docs and it was&#xA;not clear what I needed to make it work.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;nx&#34;&gt;tool&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nx&#34;&gt;ruff&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nx&#34;&gt;select&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;I&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]&lt;/span&gt; &lt;span class=&#34;c&#34;&gt;# you probably want others as well&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;nx&#34;&gt;tool&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nx&#34;&gt;ruff&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nx&#34;&gt;isort&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nx&#34;&gt;force-single-line&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;kc&#34;&gt;true&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Turns out I was missing &lt;strong&gt;I&lt;/strong&gt;sort in the select list.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Red-Knot: Ruff&#39;s new Type Checker - Talk Python Live Stream - ...</title>
    <id>https://waylonwalker.com/thought-617/</id>
    <updated>2025-05-02T01:06:05Z</updated>
    <published>2025-05-02T01:06:05Z</published>
    <link href="https://waylonwalker.com/thought-617/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/watch?v=XVwpL_cAvrw</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;XVwpL_cAvrw&#34; title=&#34;ty: Astral&amp;#39;s New Type Checker (Formerly Red-Knot) - Talk Python to Me Ep. 506&#34; playlabel=&#34;Play: ty: Astral&amp;#39;s New Type Checker (Formerly Red-Knot) - Talk Python to Me Ep. 506&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Astral is doing great things in the python industry.  They are disrupting entire categories of tools with extremely fast, easy to use, and feature rich alternatives that make it really hard to keep using the incumbent.   So far I am seeing no signs of evil, sometimes with such a disrupter there is some sort of downside that make it hard to want to do the switch.  In the interview they even mention things like leaning on lsp so that it works across all editors rather than building out vscode integrations that work for &lt;strong&gt;most&lt;/strong&gt; developers.  As a neovim user I greatly apreciate this.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Playground | Red Knot</title>
    <id>https://waylonwalker.com/thought-616/</id>
    <updated>2025-05-02T01:02:31Z</updated>
    <published>2025-05-02T01:02:31Z</published>
    <link href="https://waylonwalker.com/thought-616/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://types.ruff.rs/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://types.ruff.rs/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;/Astral.png&#34; alt=&#34;Playground | ty — An in-browser playground for ty, an extremely fast Python type-checker written in Rust.&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: Playground | ty — An in-browser playground for ty, an extremely fast Python type-checker written in Rust.&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Playground | ty&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;An in-browser playground for ty, an extremely fast Python type-checker written in Rust.&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;types.ruff.rs&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;ty, has a playground running at types.ruff.rs.  You can edit code in there and see what the type checker results would be in browser.  This looks good, excited to see it running in my lsp.&lt;/p&gt;&#xA;&lt;p&gt;Here is an example where a Optional may not be defined.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/783e4d9e-8b23-4304-8921-2ae05aebcc8a.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;image&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/783e4d9e-8b23-4304-8921-2ae05aebcc8a.webp&#34; alt=&#34;image&#34;/ data-glightbox=&#34;description: image&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;p&gt;Checking for existance before using it resolves the issue.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/cc28335c-4130-4bf4-829d-0ff39f2aa32d.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;image&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/cc28335c-4130-4bf4-829d-0ff39f2aa32d.webp&#34; alt=&#34;image&#34;/ data-glightbox=&#34;description: image&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Markata list posts by year</title>
    <id>https://waylonwalker.com/markata-list-posts-by-year/</id>
    <updated>2025-05-01T22:35:47Z</updated>
    <published>2025-05-01T22:35:47Z</published>
    <link href="https://waylonwalker.com/markata-list-posts-by-year/" rel="alternate" type="text/html"></link>
    <summary type="text">I was looking back at my analytics page today and wondered what were my posts about back at the beginning. My blog is managed by markata so I looked at a few...</summary>
    <content type="html">&lt;p&gt;I was looking back at my &lt;a href=&#34;/analytics/&#34; class=&#34;wikilink&#34; data-title=&#34;analytics&#34; data-description=&#34;I&amp;#39;ve been posting on this site since 2016, when layoffs were rolling through the company I worked for at the time. Starting a personal blog and a pile of...&#34; data-date=&#34;2025-01-22&#34; data-preview=&#34;I&amp;#39;ve been posting on this site since 2016, when layoffs were rolling through the company I worked for at the time. Starting a personal blog and a pile of...&#34;&gt;analytics&lt;/a&gt; page today and wondered what were my&#xA;posts about back at the beginning.  My blog is managed by &lt;a href=&#34;/markata/&#34; class=&#34;wikilink&#34; data-title=&#34;markata&#34; data-description=&#34;This post is a work in progress.&#34; data-date=&#34;2024-05-30&#34; data-preview=&#34;This post is a work in progress.&#34;&gt;markata&lt;/a&gt; so I&#xA;looked at a few ways you could pull those posts up.  Turns out it’s pretty&#xA;simple to do, use the markata map with a filter.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;kn&#34;&gt;from&lt;/span&gt; &lt;span class=&#34;nn&#34;&gt;markata&lt;/span&gt; &lt;span class=&#34;kn&#34;&gt;import&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;Markata&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;m&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;map&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;title, slug, date&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;nb&#34;&gt;filter&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;date.year==2016&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;sort&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;date&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;the filter is python eval that should evaluate to a boolean, all of the&#xA;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt;attributes of the post are available to filter on.&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;&lt;h3 id=&#34;result&#34;&gt;Result &lt;a href=&#34;#result&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h3&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;⭐ jupyterlab jupyterlab&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;s1&#34;&gt;&amp;#39;jupyterlab-jupyterlab&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;datetime&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;date&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;2016&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;mi&#34;&gt;12&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;mi&#34;&gt;13&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)),&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;⭐ nickhould tidy-data-python&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;s1&#34;&gt;&amp;#39;nickhould-tidy-data-python&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;datetime&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;date&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;2016&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;mi&#34;&gt;12&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;mi&#34;&gt;9&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)),&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;s1&#34;&gt;&amp;#39;⭐ mikeckennedy write-pythonic-code-demos&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;s1&#34;&gt;&amp;#39;mikeckennedy-write-pythonic-code-demos&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;n&#34;&gt;datetime&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;date&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;2016&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;mi&#34;&gt;11&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;mi&#34;&gt;22&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;p&#34;&gt;),&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;s1&#34;&gt;&amp;#39;⭐ mikeckennedy write-pythonic-code-for-better-data-science-webcast&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;s1&#34;&gt;&amp;#39;mikeckennedy-write-pythonic-code-for-better-data-science-webcast&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;n&#34;&gt;datetime&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;date&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;2016&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;mi&#34;&gt;11&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;mi&#34;&gt;22&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;p&#34;&gt;),&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;⭐ rajshah4 dlgroup&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;s1&#34;&gt;&amp;#39;rajshah4-dlgroup&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;datetime&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;date&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;2016&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;mi&#34;&gt;11&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;mi&#34;&gt;18&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)),&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;⭐ pandas-dev pandas&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;s1&#34;&gt;&amp;#39;pandas-dev-pandas&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;datetime&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;date&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;2016&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;mi&#34;&gt;10&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;mi&#34;&gt;5&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;))&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;You could use the &lt;code&gt;list&lt;/code&gt; command as well right within your shell and the same&#xA;map and filters work.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;⬢ &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;devtainer-0.1.3&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt; ❯ markata list --map title --filter&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;date.year==2016&amp;#39;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;22:35:06&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt; 2088/2145 posts skipped                                                                       skip.py:36&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;           57/2145 posts not skipped                                                                     skip.py:37&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;⭐ pandas-dev pandas&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;⭐ rajshah4 dlgroup&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;⭐ mikeckennedy write-pythonic-code-for-better-data-science-webcast&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;⭐ mikeckennedy write-pythonic-code-demos&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;⭐ nickhould tidy-data-python&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;⭐ jupyterlab jupyterlab&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;You could also do it with jin right inside of a markdown post using the&#xA;&lt;a href=&#34;https://markata.dev/markata/plugins/jinja-md/&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/markata.dev.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/markata.dev.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;jinja_md&lt;/a&gt; plugin.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;{% raw %}&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;{% for title, slug, date in markata.map(&amp;#39;title, slug, date&amp;#39;, filter=&amp;#39;date.year==2016&amp;#39;, sort=&amp;#39;date&amp;#39;) %}&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;*&lt;/span&gt; [&lt;span class=&#34;nt&#34;&gt;{{title}}&lt;/span&gt;](&lt;span class=&#34;na&#34;&gt;{{slug}}&lt;/span&gt;) - {{date}}&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;{% endfor %}&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;{% endraw %}&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;You do have to `jinja: true` in the frontmatter of the post.&#xA;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;/div&gt;&#xA;&lt;h3 id=&#34;result-1&#34;&gt;Result &lt;a href=&#34;#result-1&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h3&gt;&#xA;&lt;p&gt;{% for title, slug, date in markata.map(’title, slug, date’, filter=‘date.year==2016’, sort=‘date’) %}&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;a href=&#34;%7B%7Bslug%7D%7D&#34;&gt;{{title}}&lt;/a&gt; - {{date}}&#xA;{% endfor %}&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 pypi package ty</title>
    <id>https://waylonwalker.com/thought-615/</id>
    <updated>2025-05-01T20:44:27Z</updated>
    <published>2025-05-01T20:44:27Z</published>
    <link href="https://waylonwalker.com/thought-615/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://pypi.org/project/ty/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://pypi.org/project/ty/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://pypi.org/static/images/twitter.abaf4b19.webp&#34; alt=&#34;ty — An extremely fast Python type checker, written in Rust.&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: ty — An extremely fast Python type checker, written in Rust.&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;ty&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;An extremely fast Python type checker, written in Rust.&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;PyPI · pypi.org&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Astral is working on some great things around python, they have created a high standard for python tooling built on rust that works really well, runs fast and covers everything in the space it resides in. ty appears to be their linter coming soon.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 3D Printable Power Brick Bracket Designer</title>
    <id>https://waylonwalker.com/thought-614/</id>
    <updated>2025-05-01T14:17:43Z</updated>
    <published>2025-05-01T14:17:43Z</published>
    <link href="https://waylonwalker.com/thought-614/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://bracket.engineer/?width=113.5&amp;height=63&amp;depth=98&amp;bracketThickness=3&amp;ribbingCount=9&amp;ribbingThickness=2.5&amp;holeDiameter=5&amp;holeCount=1&amp;earWidth=17&amp;keyHo...</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://bracket.engineer/?width=113.5&amp;amp;height=63&amp;amp;depth=98&amp;amp;bracketThickness=3&amp;amp;ribbingCount=9&amp;amp;ribbingThickness=2.5&amp;amp;holeDiameter=5&amp;amp;holeCount=1&amp;amp;earWidth=17&amp;amp;keyHole=on&amp;amp;color=%2344ff00&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;/assets/og-BzQVqFKk.png&#34; alt=&#34;3D Printable Power Brick Bracket Designer — Generate custom 3D printable power brick brackets for your devices. Design and export your own mounting solutions.&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: 3D Printable Power Brick Bracket Designer — Generate custom 3D printable power brick brackets for your devices. Design and export your own mounting solutions.&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;3D Printable Power Brick Bracket Designer&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Generate custom 3D printable power brick brackets for your devices. Design and export your own mounting solutions.&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;Bracket Engineer · bracket.engineer&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;This is madness that Wes Bos made this with manifold.js and no openscad!  Yes, I have these stupid brackets everywhere, yes, I hand model my own brackets.  No I don’t do it enough.  I don’t like that these model generators like openscad cannot make fillets and chamfers, but I appreciate the heck out of the speed and automation you can make iterations of things.&lt;/p&gt;&#xA;&lt;p&gt;Link to the promo video.&#xA;&lt;a href=&#34;https://bsky.app/profile/wesbos.com/post/3lo4h7unk6s2i&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/bsky.app.png&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/bsky.app.png&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;https://bsky.app/profile/wesbos.com/post/3lo4h7unk6s2i&lt;/a&gt;&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ wesbos bracket.engineer</title>
    <id>https://waylonwalker.com/wesbos-bracket-engineer/</id>
    <updated>2025-05-01T14:02:55Z</updated>
    <published>2025-05-01T14:02:55Z</published>
    <link href="https://waylonwalker.com/wesbos-bracket-engineer/" rel="alternate" type="text/html"></link>
    <summary type="text">bracket.engineer by wesbos is a game-changer in its space. Excited to see how it evolves.</summary>
    <content type="html">&lt;p&gt;&lt;a href=&#34;https://github.com/wesbos/bracket.engineer&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;bracket.engineer&lt;/a&gt; by &lt;a href=&#34;https://github.com/wesbos&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;wesbos&lt;/a&gt; is a game-changer in its space. Excited to see how it evolves.&lt;/p&gt;&#xA;&lt;p&gt;Generate 3D printable power brick brackets.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 661: Working Vacations, Ripping Out JavaScript, and Non-US Clo...</title>
    <id>https://waylonwalker.com/thought-613/</id>
    <updated>2025-05-01T14:00:47Z</updated>
    <published>2025-05-01T14:00:47Z</published>
    <link href="https://waylonwalker.com/thought-613/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://shoptalkshow.com/661/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://shoptalkshow.com/661/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://i0.wp.com/shoptalkshow.com/wp-content/uploads/2013/03/logo-itunes-1400.png?fit=1200%2C1200&amp;amp;ssl=1&#34; alt=&#34;661: Working Vacations, Ripping Out JavaScript, and Non-US Cloud Service Options — What are the non-US cloud services options, falling off the blogging train and trying to get back on, working on vacation, Chris recaps the Alaskan Folk Festival experience, how often do you go bac…&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: 661: Working Vacations, Ripping Out JavaScript, and Non-US Cloud Service Options — What are the non-US cloud services options, falling off the blogging train and trying to get back on, working on vacation, Chris recaps the Alaskan Folk Festival experience, how often do you go bac…&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;661: Working Vacations, Ripping Out JavaScript, and Non-US Cloud Service Options&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;What are the non-US cloud services options, falling off the blogging train and trying to get back on, working on vacation, Chris recaps the Alaskan Folk Festival experience, how often do you go bac…&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;ShopTalk · shoptalkshow.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Chris hit me where it feels about 10 minutes in.  He said he has not been writing on his site as much lately and how hard it is to get back in.  He mentions having a baby idea of a post, but then having the thought do you really want to come back from a long break with this!&lt;/p&gt;&#xA;&lt;p&gt;Momentum is a b**** when you got it you cant stop, and when you don’t you can’t stop.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 The Worst OS - YouTube</title>
    <id>https://waylonwalker.com/thought-612/</id>
    <updated>2025-05-01T12:54:13Z</updated>
    <published>2025-05-01T12:54:13Z</published>
    <link href="https://waylonwalker.com/thought-612/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/watch?v=8T5pyGiTPdE</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;8T5pyGiTPdE&#34; title=&#34;The Worst OS&#34; playlabel=&#34;Play: The Worst OS&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;How is usability and it doing the thing I paid for it to do a selling point??  Any time I’ve touched a windows machine in the past 7 years has felt awkward, I have no idea where things are now, but they look so much worse.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 The Worst OS - YouTube</title>
    <id>https://waylonwalker.com/thought-611/</id>
    <updated>2025-05-01T12:54:12Z</updated>
    <published>2025-05-01T12:54:12Z</published>
    <link href="https://waylonwalker.com/thought-611/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/watch?v=8T5pyGiTPdE</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;8T5pyGiTPdE&#34; title=&#34;The Worst OS&#34; playlabel=&#34;Play: The Worst OS&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;How is usability and it doing the thing I paid for it to do a selling point??  Any time I’ve touched a windows machine in the past 7 years has felt awkward, I have no idea where things are now, but they look so much worse.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 A quote from Mark Zuckerberg</title>
    <id>https://waylonwalker.com/thought-610/</id>
    <updated>2025-05-01T12:50:52Z</updated>
    <published>2025-05-01T12:50:52Z</published>
    <link href="https://waylonwalker.com/thought-610/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://simonwillison.net/2025/May/1/mark-zuckerberg/#atom-everything</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://simonwillison.net/2025/May/1/mark-zuckerberg/#atom-everything&#34; class=&#34;embed-card-link  has-avatar has-avatar-before&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/simonwillison.net.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/simonwillison.net.ico&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;A quote from Mark Zuckerberg&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;You also mentioned the whole Chatbot Arena thing, which I think is interesting and points to the challenge around how you do benchmarking. How do you know what models are …&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;Simon Willison’s Weblog · simonwillison.net&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Interesting how confidently he says we can easily go to the top.  really makes you wonder what we the normies are leaving on the table by using these general purpose models and what could be achieved with really tuned in models.  Could I make an automatic blog tagger more accurately, maybe smaller, maybe tuned so well it runs fine on cpu?&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Chris Coyier</title>
    <id>https://waylonwalker.com/thought-609/</id>
    <updated>2025-05-01T12:48:04Z</updated>
    <published>2025-05-01T12:48:04Z</published>
    <link href="https://waylonwalker.com/thought-609/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://chriscoyier.net/2025/04/30/12292/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://chriscoyier.net/2025/04/30/12292/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://jetpack.com/redirect/?source=sigenerate&amp;amp;query=t%3DeyJ0eHQiOiIiLCJ0ZW1wbGF0ZSI6ImZ1bGxzY3JlZW4iLCJibG9nX2lkIjo3NDA3NDI0OH0.zracDfi8GeV59c7on0CEZkCHzSNytmK5iu1Pxt9ADYUMQ&#34; alt=&#34;— P. Martin Ortiz: Web apps can easily adapt to whatever device you’re on. A single responsive website can run on your desktop, phone, tablet, or even a VR headset. What’s even more, they can be upda…&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: — P. Martin Ortiz: Web apps can easily adapt to whatever device you’re on. A single responsive website can run on your desktop, phone, tablet, or even a VR headset. What’s even more, they can be upda…&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt; &lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;P. Martin Ortiz: Web apps can easily adapt to whatever device you’re on. A single responsive website can run on your desktop, phone, tablet, or even a VR headset. What’s even more, they can be ...&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;Chris Coyier · chriscoyier.net&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;The web is everywhere, its the one true write once and run anywhere platform.  Millions sunk into browser performance and things like the v8 engine allow us to run our shitty websites anywhere and it still runs good…. most of the time&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Helm - Postiz Docs</title>
    <id>https://waylonwalker.com/thought-608/</id>
    <updated>2025-04-30T21:44:17Z</updated>
    <published>2025-04-30T21:44:17Z</published>
    <link href="https://waylonwalker.com/thought-608/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://docs.postiz.com/installation/kubernetes-helm</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://docs.postiz.com/installation/kubernetes-helm&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://postiz.mintlify.app/mintlify-assets/_next/image?url=%2F_mintlify%2Fapi%2Fog%3Fdivision%3DInstallation%26title%3DHelm%26description%3DInstall%2BPostiz%2Busing%2BKubernetes%2Band%2BHelm%26logoLight%3Dhttps%253A%252F%252Fmintcdn.com%252Fpostiz%252FSZ3zBABjhg7UQcI8%252Flogo%252Flight.png%253Ffit%253Dmax%2526auto%253Dformat%2526n%253DSZ3zBABjhg7UQcI8%2526q%253D85%2526s%253Dab950a1a5aa687eb0de8156022f7c7c9%26logoDark%3Dhttps%253A%252F%252Fmintcdn.com%252Fpostiz%252FSZ3zBABjhg7UQcI8%252Flogo%252Fdark.png%253Ffit%253Dmax%2526auto%253Dformat%2526n%253DSZ3zBABjhg7UQcI8%2526q%253D85%2526s%253D4134d88b8fc8339a26775f8e48e95f7e%26primaryColor%3D%25239900e6%26lightColor%3D%2523b266ff%26darkColor%3D%25237700b3%26backgroundLight%3D%2523ffffff%26backgroundDark%3D%25230c0b10&amp;amp;w=1200&amp;amp;q=100&#34; alt=&#34;Helm - Postiz Documentation — Install Postiz using Kubernetes and Helm&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: Helm - Postiz Documentation — Install Postiz using Kubernetes and Helm&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Helm - Postiz Documentation&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Install Postiz using Kubernetes and Helm&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;Postiz Documentation · docs.postiz.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;I didn’t realize that postiz had a helm chart, I just hand rolled mine based on the compose file they provide.  I went from running the compose stack locally to running in my &lt;a href=&#34;/homelab/&#34; class=&#34;glossary-term&#34; title=&#34;A place to self host applications. For me this is primarily self built web applications, and applications for sharing files with my family. Techno Tim has a...&#34;&gt;homelab&lt;/a&gt; with kubernetes.  I am using cnpg rather than a postgres container which I really like the workflow of as far as backup and restore.  The one hiccup I ran into was changing the domain from localhost to my homelab domain killed all of my integrations and they needed the redirect url updated.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>portal-platformer-devlog-1</title>
    <id>https://waylonwalker.com/portal-platformer-devlog-1/</id>
    <updated>2025-04-28T19:56:58Z</updated>
    <published>2025-04-28T19:56:58Z</published>
    <link href="https://waylonwalker.com/portal-platformer-devlog-1/" rel="alternate" type="text/html"></link>
    <summary type="text">Here is the current state of my platformer yet to really be named, I want to make something in between hollow knight and portal.</summary>
    <content type="html">&lt;p&gt;Here is the current state of my platformer yet to really be named, I want to&#xA;make something in between hollow knight and portal.&lt;/p&gt;&#xA;&lt;h2 id=&#34;starting&#34;&gt;Starting &lt;a href=&#34;#starting&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;I made one once in make code arcace on a pybadge.  It was quick and dirty, but&#xA;fun to work on.  It had the basic of blocks that I could move, blocks i could&#xA;put a portal onto, and a goal for each level.  Some levels you can just walk&#xA;through and some levels required you to really think about where to place the&#xA;portal.&lt;/p&gt;&#xA;&lt;h2 id=&#34;history&#34;&gt;History &lt;a href=&#34;#history&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;So this version of the game is a least 2 years in the making, I open it every&#xA;few months give it a day or two and move on.  Its mostly something that I work&#xA;on with my son.  He really likes to jump around on projects so its hard to make&#xA;real progress on something, but we are hitting an age where he is able to come&#xA;back to projects a little better.&lt;/p&gt;&#xA;&lt;p&gt;All of this is built in python, and mostly before &lt;a href=&#34;/vibe-coding/&#34; class=&#34;glossary-term&#34; title=&#34;A coding style popularized in 2025. It is the act of using LLMs to generate code for an application, but the author never looks at the output. The author...&#34;&gt;vibe coding&lt;/a&gt; was a thing, its&#xA;mostly me trying to get out ideas as quick as my son is spitting out the the&#xA;next idea.&lt;/p&gt;&#xA;&lt;h2 id=&#34;coyote&#34;&gt;Coyote &lt;a href=&#34;#coyote&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;It includes a few frames of coyote so it feels a bit more like most games.&lt;/p&gt;&#xA;&lt;p&gt;!! Note&#xA;If you are unfamiliar with the term coyote in platformers it allows you to&#xA;jump for a few frames after falling off a platform, like wiley coyoyte in&#xA;Luney Toons.&lt;/p&gt;&#xA;&lt;h2 id=&#34;wall-slidejump&#34;&gt;Wall slide/jump &lt;a href=&#34;#wall-slidejump&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;Wall slide and jump work, but so is wall climb as an unintended side effect.&#xA;When you are touching a wall, your fall speed is halved.&lt;/p&gt;&#xA;&lt;h2 id=&#34;levels-and-loader&#34;&gt;Levels and loader &lt;a href=&#34;#levels-and-loader&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;There is a crude level loader that loads json levels with pydantic.  No editor&#xA;yet, just hand editing levels with json.&lt;/p&gt;&#xA;&lt;h2 id=&#34;checkpoints&#34;&gt;Checkpoints &lt;a href=&#34;#checkpoints&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;It makes checkpoints, when you die, you go back to your last checkpoint.&#xA;Checkpoints can be invisible, and have a link that turns them into a door to&#xA;another level.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/66c5b984-5450-48ee-9978-00fec4815807.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;66c5b984-5450-48ee-9978-00fec4815807.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/66c5b984-5450-48ee-9978-00fec4815807.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/66c5b984-5450-48ee-9978-00fec4815807.mp4&#34; type=&#34;video/mp4&#34;&gt;66c5b984-5450-48ee-9978-00fec4815807.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;no-art&#34;&gt;no art &lt;a href=&#34;#no-art&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;There is no art yet, just the skin of a platformer, levels, checkpoints, and&#xA;coyote.  No portals, but there is a pointer with a janky box that covers my&#xA;lighting.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ block goose</title>
    <id>https://waylonwalker.com/block-goose/</id>
    <updated>2025-04-28T01:37:03Z</updated>
    <published>2025-04-28T01:37:03Z</published>
    <link href="https://waylonwalker.com/block-goose/" rel="alternate" type="text/html"></link>
    <summary type="text">Check out goose by block. It&#39;s a well-crafted project with great potential.</summary>
    <content type="html">&lt;p&gt;Check out &lt;a href=&#34;https://github.com/block/goose&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;goose&lt;/a&gt; by &lt;a href=&#34;https://github.com/block&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;block&lt;/a&gt;. It’s a well-crafted project with great potential.&lt;/p&gt;&#xA;&lt;p&gt;an open source, extensible AI agent that goes beyond code suggestions - install, execute, edit, and test with any LLM&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ manusa kubernetes-mcp-server</title>
    <id>https://waylonwalker.com/manusa-kubernetes-mcp-server/</id>
    <updated>2025-04-28T01:36:45Z</updated>
    <published>2025-04-28T01:36:45Z</published>
    <link href="https://waylonwalker.com/manusa-kubernetes-mcp-server/" rel="alternate" type="text/html"></link>
    <summary type="text">Check out kubernetes-mcp-server by manusa. It&#39;s a well-crafted project with great potential.</summary>
    <content type="html">&lt;p&gt;Check out &lt;a href=&#34;https://github.com/manusa/kubernetes-mcp-server&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;kubernetes-mcp-server&lt;/a&gt; by &lt;a href=&#34;https://github.com/manusa&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;manusa&lt;/a&gt;. It’s a well-crafted project with great potential.&lt;/p&gt;&#xA;&lt;p&gt;Model Context Protocol (MCP) server for Kubernetes and OpenShift&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ containers kubernetes-mcp-server</title>
    <id>https://waylonwalker.com/containers-kubernetes-mcp-server/</id>
    <updated>2025-04-28T01:36:45Z</updated>
    <published>2025-04-28T01:36:45Z</published>
    <link href="https://waylonwalker.com/containers-kubernetes-mcp-server/" rel="alternate" type="text/html"></link>
    <summary type="text">Looking for inspiration? kubernetes-mcp-server by containers.</summary>
    <content type="html">&lt;p&gt;Looking for inspiration? &lt;a href=&#34;https://github.com/containers/kubernetes-mcp-server&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;kubernetes-mcp-server&lt;/a&gt; by &lt;a href=&#34;https://github.com/containers&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;containers&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Model Context Protocol (MCP) server for Kubernetes and OpenShift&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ punkpeye awesome-mcp-servers</title>
    <id>https://waylonwalker.com/punkpeye-awesome-mcp-servers/</id>
    <updated>2025-04-28T01:36:29Z</updated>
    <published>2025-04-28T01:36:29Z</published>
    <link href="https://waylonwalker.com/punkpeye-awesome-mcp-servers/" rel="alternate" type="text/html"></link>
    <summary type="text">Check out punkpeye and their project awesome-mcp-servers.</summary>
    <content type="html">&lt;p&gt;Check out &lt;a href=&#34;https://github.com/punkpeye&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;punkpeye&lt;/a&gt; and their project &lt;a href=&#34;https://github.com/punkpeye/awesome-mcp-servers&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;awesome-mcp-servers&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;A collection of MCP servers.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ mozilla-ai any-agent</title>
    <id>https://waylonwalker.com/mozilla-ai-any-agent/</id>
    <updated>2025-04-28T01:36:25Z</updated>
    <published>2025-04-28T01:36:25Z</published>
    <link href="https://waylonwalker.com/mozilla-ai-any-agent/" rel="alternate" type="text/html"></link>
    <summary type="text">I&#39;m really excited about any-agent, an amazing project by mozilla-ai. It&#39;s worth exploring!</summary>
    <content type="html">&lt;p&gt;I’m really excited about &lt;a href=&#34;https://github.com/mozilla-ai/any-agent&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;any-agent&lt;/a&gt;, an amazing project by &lt;a href=&#34;https://github.com/mozilla-ai&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;mozilla-ai&lt;/a&gt;. It’s worth exploring!&lt;/p&gt;&#xA;&lt;p&gt;A single interface to build and evaluate different agent frameworks&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Louis Rossmann&#39;s Keynote Speech on Right to Repair - YouTube</title>
    <id>https://waylonwalker.com/thought-598/</id>
    <updated>2025-04-27T19:35:21Z</updated>
    <published>2025-04-27T19:35:21Z</published>
    <link href="https://waylonwalker.com/thought-598/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/watch?v=2ol3rMem_Eg</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;2ol3rMem_Eg&#34; title=&#34;Louis Rossmann&amp;#39;s Keynote Speech on Right to Repair&#34; playlabel=&#34;Play: Louis Rossmann&amp;#39;s Keynote Speech on Right to Repair&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Great talk from Lous Rossman!  TLDR you don’t own it, and stop pointing the finger calling everyone else an idiot for supporting the other brand, cause your’s probably also has different issues.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ dtnewman zev</title>
    <id>https://waylonwalker.com/dtnewman-zev/</id>
    <updated>2025-04-25T13:40:11Z</updated>
    <published>2025-04-25T13:40:11Z</published>
    <link href="https://waylonwalker.com/dtnewman-zev/" rel="alternate" type="text/html"></link>
    <summary type="text">Check out dtnewman and their project zev.</summary>
    <content type="html">&lt;p&gt;Check out &lt;a href=&#34;https://github.com/dtnewman&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;dtnewman&lt;/a&gt; and their project &lt;a href=&#34;https://github.com/dtnewman/zev&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;zev&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;A simple CLI tool to help you remember terminal commands&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ stakater Reloader</title>
    <id>https://waylonwalker.com/stakater-reloader/</id>
    <updated>2025-04-24T02:03:36Z</updated>
    <published>2025-04-24T02:03:36Z</published>
    <link href="https://waylonwalker.com/stakater-reloader/" rel="alternate" type="text/html"></link>
    <summary type="text">Looking for inspiration? Reloader by stakater.</summary>
    <content type="html">&lt;p&gt;Looking for inspiration? &lt;a href=&#34;https://github.com/stakater/Reloader&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;Reloader&lt;/a&gt; by &lt;a href=&#34;https://github.com/stakater&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;stakater&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;A Kubernetes controller to watch changes in ConfigMap and Secrets and do rolling upgrades on Pods with their associated Deployment, StatefulSet, DaemonSet and DeploymentConfig – [✩Star] if you’re using it!&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ ublue-os bazzite-arch</title>
    <id>https://waylonwalker.com/ublue-os-bazzite-arch/</id>
    <updated>2025-04-22T12:59:37Z</updated>
    <published>2025-04-22T12:59:37Z</published>
    <link href="https://waylonwalker.com/ublue-os-bazzite-arch/" rel="alternate" type="text/html"></link>
    <summary type="text">I&#39;m impressed by bazzite-arch from ublue-os.</summary>
    <content type="html">&lt;p&gt;I’m impressed by &lt;a href=&#34;https://github.com/ublue-os/bazzite-arch&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;bazzite-arch&lt;/a&gt; from &lt;a href=&#34;https://github.com/ublue-os&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;ublue-os&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;A ready-to-game Arch Linux based OCI designed for use exclusively in distrobox.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ ublue-os arch-distrobox</title>
    <id>https://waylonwalker.com/ublue-os-arch-distrobox/</id>
    <updated>2025-04-22T12:59:35Z</updated>
    <published>2025-04-22T12:59:35Z</published>
    <link href="https://waylonwalker.com/ublue-os-arch-distrobox/" rel="alternate" type="text/html"></link>
    <summary type="text">ublue-os has done a fantastic job with arch-distrobox. Highly recommend taking a look.</summary>
    <content type="html">&lt;p&gt;&lt;a href=&#34;https://github.com/ublue-os&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;ublue-os&lt;/a&gt; has done a fantastic job with &lt;a href=&#34;https://github.com/ublue-os/arch-distrobox&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;arch-distrobox&lt;/a&gt;. Highly recommend taking a look.&lt;/p&gt;&#xA;&lt;p&gt;An Arch Linux OCI meant for use exclusively in Distrobox&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ ReznoRMichael hollow-knight-completion-check</title>
    <id>https://waylonwalker.com/reznormichael-hollow-knight-completion-check/</id>
    <updated>2025-04-20T16:28:11Z</updated>
    <published>2025-04-20T16:28:11Z</published>
    <link href="https://waylonwalker.com/reznormichael-hollow-knight-completion-check/" rel="alternate" type="text/html"></link>
    <summary type="text">Check out ReznoRMichael and their project hollow-knight-completion-check.</summary>
    <content type="html">&lt;p&gt;Check out &lt;a href=&#34;https://github.com/ReznoRMichael&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;ReznoRMichael&lt;/a&gt; and their project &lt;a href=&#34;https://github.com/ReznoRMichael/hollow-knight-completion-check&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;hollow-knight-completion-check&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;App for reading and analyzing a Hollow Knight save file. Shows what remains to do for full 112% Game Completion, Achievements, Hunter’s Journal, Collectibles, True Completion %. Includes a self-designed Hint system.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 True Non-Planar Slicing is Here - YouTube</title>
    <id>https://waylonwalker.com/thought-597/</id>
    <updated>2025-04-19T15:39:34Z</updated>
    <published>2025-04-19T15:39:34Z</published>
    <link href="https://waylonwalker.com/thought-597/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/watch?v=M51bMMVWbC8</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;M51bMMVWbC8&#34; title=&#34;3D Print Anything Without Supports&#34; playlabel=&#34;Play: 3D Print Anything Without Supports&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;This is a wild concept for a slicer, essentially he didn’t even make a slicer just a crazy  pre-process and post prossess to cura slicer,  deforming the part until it doesn’t have any overhangs, creating a normal planar slice, then undeforming the output from cura.  He also mentions that the rapid moved needed modified as well. I’m assuming this is because they are generally long distances and not short, without breaking these long lines up we would still end up wtih a straight line after deform.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Marp: Markdown Presentation Ecosystem</title>
    <id>https://waylonwalker.com/thought-596/</id>
    <updated>2025-04-17T13:01:40Z</updated>
    <published>2025-04-17T13:01:40Z</published>
    <link href="https://waylonwalker.com/thought-596/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://marp.app/#get-started</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://marp.app/#get-started&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://marp.app/assets/og-image.png&#34; alt=&#34;Marp: Markdown Presentation Ecosystem — Marp (also known as the Markdown Presentation Ecosystem) provides an intuitive experience for creating beautiful slide decks. You only have to focus on writing your story in a Markdown document.&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: Marp: Markdown Presentation Ecosystem — Marp (also known as the Markdown Presentation Ecosystem) provides an intuitive experience for creating beautiful slide decks. You only have to focus on writing your story in a Markdown document.&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Marp: Markdown Presentation Ecosystem&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Marp (also known as the Markdown Presentation Ecosystem) provides an intuitive experience for creating beautiful slide decks. You only have to focus on writing your story in a Markdown document.&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;marp.app&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Intersting markdown presentation tool, Looks very simple.  I really like split on &lt;code&gt;---&lt;/code&gt; much better than by h1 or h2.  Their theme looks really nice in the screenshots.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Build UIs that don&#39;t suck - YouTube</title>
    <id>https://waylonwalker.com/thought-595/</id>
    <updated>2025-04-15T13:50:53Z</updated>
    <published>2025-04-15T13:50:53Z</published>
    <link href="https://waylonwalker.com/thought-595/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/watch?v=-h9rH539x1k</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;-h9rH539x1k&#34; title=&#34;Build UIs that don&amp;#39;t suck&#34; playlabel=&#34;Play: Build UIs that don&amp;#39;t suck&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;How to make an entire clickable without presenting the entire content of the card as the link title.  These videos are great, I’ve ran into these types of problems so many times, and definitely did not know about things like isolate to keep the z-index scoped to one element.&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;isolate - scope z-index inside this element so that it does not leak out.&lt;/li&gt;&#xA;&lt;li&gt;[.relative [.absolute, inset-0, z-10]] - the inset zero is a modern shorthand for zeroing all sides, top-0, right-0, bottom-0, left-0.&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Let&#39;s Talk Open Source - Prime Reacts - YouTube</title>
    <id>https://waylonwalker.com/thought-594/</id>
    <updated>2025-04-15T13:21:53Z</updated>
    <published>2025-04-15T13:21:53Z</published>
    <link href="https://waylonwalker.com/thought-594/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/watch?v=SQ0mBnJmd6I</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;SQ0mBnJmd6I&#34; title=&#34;Let&amp;#39;s Talk Open Source - Prime Reacts&#34; playlabel=&#34;Play: Let&amp;#39;s Talk Open Source - Prime Reacts&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;This is an absolute banger of a review by prime and Dylan Beetle.  I love the similar takes with different perspectives, would really like to see them podcast together, but this one way style interview does really well to cover a lot of issues in open source, rug pulls, version pinning, thankless maintainers, what its like to open source from a large company.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Self-Hosted 29: Perils of Self-Hosting</title>
    <id>https://waylonwalker.com/thought-593/</id>
    <updated>2025-04-15T13:18:51Z</updated>
    <published>2025-04-15T13:18:51Z</published>
    <link href="https://waylonwalker.com/thought-593/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://selfhosted.show/29?t=637</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://selfhosted.show/29?t=637&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://media24.fireside.fm/file/fireside-images-2024/podcasts/images/7/7296e34a-2697-479a-adfb-ad32329dd0b0/cover_medium.jpg?v=0&#34; alt=&#34;Perils of Self-Hosting — We speak to Kevin and Patricia from Traefik, discuss Alex&amp;#39;s recent ZFS snafu and we wonder if the new Chromecasts can match up to the Nvidia Shield.&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: Perils of Self-Hosting — We speak to Kevin and Patricia from Traefik, discuss Alex&amp;#39;s recent ZFS snafu and we wonder if the new Chromecasts can match up to the Nvidia Shield.&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Perils of Self-Hosting&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;We speak to Kevin and Patricia from Traefik, discuss Alex&amp;#39;s recent ZFS snafu and we wonder if the new Chromecasts can match up to the Nvidia Shield.&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;Self-Hosted · selfhosted.show&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Interesting takes on Diun here. I agree that I like to be in control of updates and pinning not to latest.  both seemed like they weren’t going to run it because they can look up the latest version.  Maybe I need to be less aggressive on keeping things up to date and its a me problem.  I just got diun setup and hooked into ntfy, and I kinda like the automated checklist of new images that I can review and update.&lt;/p&gt;&#xA;&lt;p&gt;To be a bit more clear, having control over changes coming in from others,  even if I dont care to see the changelog, it is nice to roll out an update, have it in your &lt;a href=&#34;/glossary/git/&#34; class=&#34;glossary-term&#34; title=&#34;Git is a version control system for tracking changes in source code during software development. In the beginning there were many, some were licensed. As...&#34;&gt;git&lt;/a&gt; history, watch it deploy and work like before, if not roll back and read the changelog.  For internal applications I’m down for automated releases like argo image updater give you, this thing has already gone through review, launch the damn thing at least to a dev space.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Spring 2025: Self-Hosted Update – David Bushell – Web Dev (UK)</title>
    <id>https://waylonwalker.com/thought-592/</id>
    <updated>2025-04-13T13:59:32Z</updated>
    <published>2025-04-13T13:59:32Z</published>
    <link href="https://waylonwalker.com/thought-592/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://dbushell.com/2025/04/13/self-hosted-update-spring-2025/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://dbushell.com/2025/04/13/self-hosted-update-spring-2025/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://dbushell.com/images/articles/2025-04-13-self-hosted-update-spring-2025.png&#34; alt=&#34;Spring 2025: Self-Hosted Update — The one where things plod along&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: Spring 2025: Self-Hosted Update — The one where things plod along&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Spring 2025: Self-Hosted Update&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;The one where things plod along&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;dbushell.com · dbushell.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Davids blogs always have so many links that send me down new rabbit holes.  Interesting that his experience with smart home is turning away, I’ve been somewhat interested for awhile, but never fully pulled the trigger on buying things.&lt;/p&gt;&#xA;&lt;p&gt;I really hope tailscale enshitification does not take off, but really for me, I barely use it even as a homelabber.  Idk why, but every other homelabber praises it so much and I just dont find myself using it.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Characters - Xe Iaso</title>
    <id>https://waylonwalker.com/thought-591/</id>
    <updated>2025-04-12T20:02:35Z</updated>
    <published>2025-04-12T20:02:35Z</published>
    <link href="https://waylonwalker.com/thought-591/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://xeiaso.net/characters/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://xeiaso.net/characters/&#34; class=&#34;embed-card-link  has-avatar has-avatar-before&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/xeiaso.net.png&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/xeiaso.net.png&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Characters&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Xe Iaso&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;xeiaso.net&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;xeiaso, has the coolest characters on her blog.  Definitely something I’d like to replicate.  I really appreciate how each one has its own sprite sheet, and they have conversations with each other.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/77dd4cb5-4fdb-4d09-8b9b-d9cdd72b2490.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;image&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/77dd4cb5-4fdb-4d09-8b9b-d9cdd72b2490.webp&#34; alt=&#34;image&#34;/ data-glightbox=&#34;description: image&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Comparing Crazy Suspension Setups on a Bumpy Road! [Trailmaker...</title>
    <id>https://waylonwalker.com/thought-590/</id>
    <updated>2025-04-12T01:34:34Z</updated>
    <published>2025-04-12T01:34:34Z</published>
    <link href="https://waylonwalker.com/thought-590/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/watch?v=zolrLsjs1c4</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;zolrLsjs1c4&#34; title=&#34;Comparing Crazy Suspension Setups on a Bumpy Road! [Trailmakers]&#34; playlabel=&#34;Play: Comparing Crazy Suspension Setups on a Bumpy Road! [Trailmakers]&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;I want to go build these now, these are suspension setups I had no idea you could do in trailmakers.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>backup distrobox image</title>
    <id>https://waylonwalker.com/backup-distrobox-image/</id>
    <updated>2025-04-09T17:35:50Z</updated>
    <published>2025-04-09T17:35:50Z</published>
    <link href="https://waylonwalker.com/backup-distrobox-image/" rel="alternate" type="text/html"></link>
    <summary type="text">Today I&#39;m upgrading my distrobox, but don&#39;t want to end up in a situation where I can&#39;t get anything done becauase I work out of my distrobox.</summary>
    <content type="html">&lt;p&gt;Today I’m upgrading my distrobox, but don’t want to end up in a situation where&#xA;I can’t get anything done becauase I work out of my distrobox.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;distrobox ls&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;distrobox stop devtainer&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;distrobox create --clone devtainer --name devtainer-20250409&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;distrobox enter devtainer&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 adrianlopezroche/fdupes: FDUPES is a program for identifying o...</title>
    <id>https://waylonwalker.com/thought-589/</id>
    <updated>2025-04-09T12:56:53Z</updated>
    <published>2025-04-09T12:56:53Z</published>
    <link href="https://waylonwalker.com/thought-589/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://github.com/adrianlopezroche/fdupes</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://github.com/adrianlopezroche/fdupes&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://opengraph.githubassets.com/927bc41ba08ee458eb8c29880d368e701f4ad966b3092d810641a5379dc1eeaf/adrianlopezroche/fdupes&#34; alt=&#34;GitHub - adrianlopezroche/fdupes: FDUPES is a program for identifying or deleting duplicate files residing within specified directories. — FDUPES is a program for identifying or deleting duplicate files residing within specified directories. - adrianlopezroche/fdupes&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: GitHub - adrianlopezroche/fdupes: FDUPES is a program for identifying or deleting duplicate files residing within specified directories. — FDUPES is a program for identifying or deleting duplicate files residing within specified directories. - adrianlopezroche/fdupes&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;GitHub - adrianlopezroche/fdupes: FDUPES is a program for identifying or deleting duplicate files residing within specified directories.&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;FDUPES is a program for identifying or deleting duplicate files residing within specified directories. - adrianlopezroche/fdupes&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;GitHub · github.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;keeping this in my back pocket for now.  I just moved a few TB’s of data in the &lt;a href=&#34;/homelab/&#34; class=&#34;glossary-term&#34; title=&#34;A place to self host applications. For me this is primarily self built web applications, and applications for sharing files with my family. Techno Tim has a...&#34;&gt;homelab&lt;/a&gt; and I am expecting a lot of duplication to show up.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ adrianlopezroche fdupes</title>
    <id>https://waylonwalker.com/adrianlopezroche-fdupes/</id>
    <updated>2025-04-09T12:55:41Z</updated>
    <published>2025-04-09T12:55:41Z</published>
    <link href="https://waylonwalker.com/adrianlopezroche-fdupes/" rel="alternate" type="text/html"></link>
    <summary type="text">I&#39;m really excited about fdupes, an amazing project by adrianlopezroche. It&#39;s worth exploring!</summary>
    <content type="html">&lt;p&gt;I’m really excited about &lt;a href=&#34;https://github.com/adrianlopezroche/fdupes&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;fdupes&lt;/a&gt;, an amazing project by &lt;a href=&#34;https://github.com/adrianlopezroche&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;adrianlopezroche&lt;/a&gt;. It’s worth exploring!&lt;/p&gt;&#xA;&lt;p&gt;FDUPES is a program for identifying or deleting duplicate files residing within specified directories.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Diun</title>
    <id>https://waylonwalker.com/thought-588/</id>
    <updated>2025-04-07T13:33:20Z</updated>
    <published>2025-04-07T13:33:20Z</published>
    <link href="https://waylonwalker.com/thought-588/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://crazymax.dev/diun/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://crazymax.dev/diun/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://crazymax.dev/diun/assets/meta/card.png&#34; alt=&#34;Diun — Receive notifications when a Docker image is updated on a Docker registry&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: Diun — Receive notifications when a Docker image is updated on a Docker registry&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Diun&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Receive notifications when a Docker image is updated on a Docker registry&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;crazymax.dev&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Diun, looks like a very interesting tool to monitor for image updates, it does not make any change, it only makes notifications.  This feels like an easy start to getting image updates started with low effort, keep &lt;a href=&#34;/glossary/git/&#34; class=&#34;glossary-term&#34; title=&#34;Git is a version control system for tracking changes in source code during software development. In the beginning there were many, some were licensed. As...&#34;&gt;git&lt;/a&gt; ops, but requires manual updates.  I see this as a tool that would be a great start and pair well with automated image updaters to ensure they are working as expected.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Keel</title>
    <id>https://waylonwalker.com/thought-587/</id>
    <updated>2025-04-07T13:30:49Z</updated>
    <published>2025-04-07T13:30:49Z</published>
    <link href="https://waylonwalker.com/thought-587/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://keel.sh/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://keel.sh/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Keel&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Kubernetes Operator to automate Helm, DaemonSet, StatefulSet &amp;amp; Deployment updates&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;keel.sh&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Keel looks interesting, I might give it a try as a simple image updater. I’m unsure if it fits my gitops patterns though.  I like to keep everything defined in &lt;a href=&#34;/glossary/git/&#34; class=&#34;glossary-term&#34; title=&#34;Git is a version control system for tracking changes in source code during software development. In the beginning there were many, some were licensed. As...&#34;&gt;git&lt;/a&gt;, I don’t like drift outside of that so Keel might not be the thing I want.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Changing k8s Storage Class - Migration Job</title>
    <id>https://waylonwalker.com/changing-k8s-storage-class-migration-job/</id>
    <updated>2025-04-04T09:57:50Z</updated>
    <published>2025-04-04T09:57:50Z</published>
    <link href="https://waylonwalker.com/changing-k8s-storage-class-migration-job/" rel="alternate" type="text/html"></link>
    <summary type="text">I&#39;m setting up longhorn in my homelab, and I ran into an issue where I initially setup some pvcs under longhorn, and later realized that to get longhorn to...</summary>
    <content type="html">&lt;p&gt;I’m setting up longhorn in my &lt;a href=&#34;/homelab/&#34; class=&#34;glossary-term&#34; title=&#34;A place to self host applications. For me this is primarily self built web applications, and applications for sharing files with my family. Techno Tim has a...&#34;&gt;homelab&lt;/a&gt;, and I ran into an issue where I&#xA;initially setup some pvcs under longhorn, and later realized that to get&#xA;longhorn to snapshot and backup I needed to hand edit volumes after the fact or&#xA;change storage class.  I’m all in on gitops so option 1 was not an option.  So&#xA;changing storageclass it is.&lt;/p&gt;&#xA;&lt;p&gt;Now the issue is that you CANNOT mutate storageclass on a provisioned pvc, it&#xA;is an immutable attribute.&lt;/p&gt;&#xA;&lt;h2 id=&#34;migration-job&#34;&gt;Migration Job &lt;a href=&#34;#migration-job&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;This migration job will create a new pvc with the new storageclass and move the&#xA;data from the old pvc to the new pvc.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Existing Pods&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt; This migration job will not work if you have a pod using the old pvc.  You&#xA;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt;will need to shutdown the pod and delete it.&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c&#34;&gt;# old pvc with longhorn storageclass&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nt&#34;&gt;apiVersion&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;l&#34;&gt;v1&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nt&#34;&gt;kind&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;l&#34;&gt;PersistentVolumeClaim&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nt&#34;&gt;metadata&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;name&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;l&#34;&gt;site-pvc-longhorn&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;namespace&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;l&#34;&gt;waylonwalker-com&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nt&#34;&gt;spec&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;storageClassName&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;l&#34;&gt;longhorn-backup&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;accessModes&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;    &lt;/span&gt;- &lt;span class=&#34;l&#34;&gt;ReadWriteOnce&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;resources&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;    &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;requests&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;      &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;storage&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;l&#34;&gt;5Gi&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c&#34;&gt;# new pvc with longhorn-backup storageclass&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nt&#34;&gt;apiVersion&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;l&#34;&gt;v1&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nt&#34;&gt;kind&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;l&#34;&gt;PersistentVolumeClaim&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nt&#34;&gt;metadata&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;name&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;l&#34;&gt;site-pvc-longhorn-backup&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;namespace&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;l&#34;&gt;waylonwalker-com&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nt&#34;&gt;spec&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;storageClassName&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;l&#34;&gt;longhorn-backup&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;accessModes&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;    &lt;/span&gt;- &lt;span class=&#34;l&#34;&gt;ReadWriteOnce&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;resources&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;    &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;requests&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;      &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;storage&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;l&#34;&gt;5Gi&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nn&#34;&gt;---&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c&#34;&gt;# migration job to move the data to the new pvc&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nt&#34;&gt;apiVersion&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;l&#34;&gt;batch/v1&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nt&#34;&gt;kind&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;l&#34;&gt;Job&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nt&#34;&gt;metadata&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;name&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;l&#34;&gt;pvc-migration&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;namespace&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;l&#34;&gt;waylonwalker-com&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nt&#34;&gt;spec&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;template&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;    &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;spec&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;      &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;containers&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;      &lt;/span&gt;- &lt;span class=&#34;nt&#34;&gt;name&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;l&#34;&gt;pvc-migration&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;        &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;image&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;l&#34;&gt;ubuntu:22.04&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;        &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;command&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;/bin/bash&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;-c&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;        &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;args&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;          &lt;/span&gt;- &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;&lt;span class=&#34;sd&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;sd&#34;&gt;            echo &amp;#34;Starting migration...&amp;#34;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;sd&#34;&gt;            cd /data&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;sd&#34;&gt;            cp -av source/. destination/&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;sd&#34;&gt;            echo &amp;#34;Migration complete!&amp;#34;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;        &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;volumeMounts&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;        &lt;/span&gt;- &lt;span class=&#34;nt&#34;&gt;name&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;l&#34;&gt;source-vol&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;          &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;mountPath&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;l&#34;&gt;/data/source&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;        &lt;/span&gt;- &lt;span class=&#34;nt&#34;&gt;name&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;l&#34;&gt;dest-vol&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;          &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;mountPath&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;l&#34;&gt;/data/destination&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;      &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;restartPolicy&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;l&#34;&gt;Never&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;      &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;volumes&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;      &lt;/span&gt;- &lt;span class=&#34;nt&#34;&gt;name&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;l&#34;&gt;source-vol&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;        &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;persistentVolumeClaim&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;          &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;claimName&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;l&#34;&gt;site-pvc-longhorn&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;      &lt;/span&gt;- &lt;span class=&#34;nt&#34;&gt;name&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;l&#34;&gt;dest-vol&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;        &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;persistentVolumeClaim&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;          &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;claimName&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;l&#34;&gt;site-pvc-longhorn-backup&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Apply the manifests and wait for the job to complete.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;kubectl apply -f pvc-migration.yaml&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;h2 id=&#34;cleanup&#34;&gt;Cleanup &lt;a href=&#34;#cleanup&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;I had chatgpt create me a script to help me find what is using the pvc so that&#xA;it can be deleted.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;cp&#34;&gt;#!/bin/bash&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nv&#34;&gt;NAMESPACE&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;waylonwalker-com&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nv&#34;&gt;PVC_NAME&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;site-pvc-longhorn-new&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;echo&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;⏳ Checking if PVC exists...&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;kubectl get pvc &lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;$PVC_NAME&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt; -n &lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;$NAMESPACE&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;||&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;{&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  &lt;span class=&#34;nb&#34;&gt;echo&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;✅ PVC already deleted.&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  &lt;span class=&#34;nb&#34;&gt;exit&lt;/span&gt; &lt;span class=&#34;m&#34;&gt;0&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;echo&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;🔍 Describe PVC...&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;kubectl describe pvc &lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;$PVC_NAME&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt; -n &lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;$NAMESPACE&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;echo&lt;/span&gt; -e &lt;span class=&#34;s2&#34;&gt;&amp;#34;\n🔗 Checking if any pod is using this PVC...&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;kubectl get pods -n &lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;$NAMESPACE&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt; -o json &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt; jq -r &lt;span class=&#34;se&#34;&gt;\&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  --arg PVC &lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;$PVC_NAME&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt; &lt;span class=&#34;se&#34;&gt;\&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  &lt;span class=&#34;s1&#34;&gt;&amp;#39;.items[] | select(.spec.volumes[].persistentVolumeClaim.claimName == $PVC) | .metadata.name&amp;#39;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;echo&lt;/span&gt; -e &lt;span class=&#34;s2&#34;&gt;&amp;#34;\n🧹 Checking finalizers...&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;kubectl get pvc &lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;$PVC_NAME&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt; -n &lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;$NAMESPACE&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt; -o json &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt; jq &lt;span class=&#34;s1&#34;&gt;&amp;#39;.metadata.finalizers&amp;#39;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;echo&lt;/span&gt; -e &lt;span class=&#34;s2&#34;&gt;&amp;#34;\n🔎 Checking associated VolumeAttachment...&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nv&#34;&gt;PV_NAME&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;$(&lt;/span&gt;kubectl get pvc &lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;$PVC_NAME&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt; -n &lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;$NAMESPACE&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt; -o &lt;span class=&#34;nv&#34;&gt;jsonpath&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;{.spec.volumeName}&amp;#39;&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;echo&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;🔗 PVC is bound to PV: &lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;$PV_NAME&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;kubectl get volumeattachment -A -o json &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt; jq &lt;span class=&#34;se&#34;&gt;\&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  --arg PV &lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;$PV_NAME&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt; &lt;span class=&#34;se&#34;&gt;\&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  &lt;span class=&#34;s1&#34;&gt;&amp;#39;.items[] | select(.spec.source.persistentVolumeName == $PV) | {name: .metadata.name, node: .spec.nodeName, attached: .status.attached}&amp;#39;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;echo&lt;/span&gt; -e &lt;span class=&#34;s2&#34;&gt;&amp;#34;\n🚀 Done.&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;I had still had cronjob pods completed, so I had to delete them first.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;🔗 Checking &lt;span class=&#34;k&#34;&gt;if&lt;/span&gt; any pod is using this PVC...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;pvc-migration-ndv92&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;waylonwalker-com-cronjob-29057840-8s92p&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;waylonwalker-com-cronjob-29057850-4rvm9&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;waylonwalker-com-cronjob-29057860-6g89j&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;kubectl delete pod pvc-migration-ndv92 -n waylonwalker-com&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;kubectl delete pod waylonwalker-com-cronjob-29057840-8s92p -n waylonwalker-com&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;kubectl delete pod waylonwalker-com-cronjob-29057850-4rvm9 -n waylonwalker-com&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;kubectl delete pod waylonwalker-com-cronjob-29057860-6g89j -n waylonwalker-com&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 World&#39;s easiest Live dashboard with htmx - YouTube</title>
    <id>https://waylonwalker.com/thought-586/</id>
    <updated>2025-03-29T15:04:45Z</updated>
    <published>2025-03-29T15:04:45Z</published>
    <link href="https://waylonwalker.com/thought-586/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/watch</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://www.youtube.com/watch&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://www.youtube.com/img/desktop/yt_1200.png&#34; alt=&#34;YouTube — Enjoy the videos and music you love, upload original content, and share it all with friends, family, and the world on YouTube.&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: YouTube — Enjoy the videos and music you love, upload original content, and share it all with friends, family, and the world on YouTube.&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;YouTube&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Enjoy the videos and music you love, upload original content, and share it all with friends, family, and the world on YouTube.&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;youtube.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Damn he makes this easy.  I did not know about &lt;code&gt;hx-select&lt;/code&gt;.  yes there is waste in requesting the entire thing every 5s, but damn that was easy to get life reload.  I’ve only done very specific backend endpoints, built pages up from partials, made endpoints for partials.  keeping this one in my back pocket.&lt;/p&gt;&#xA;&lt;p&gt;I’m just kind of amazed that he could do this all in &lt;a href=&#34;/html/&#34; class=&#34;glossary-term&#34; title=&#34;HTML (HyperText Markup Language) is the standard markup language used to create and design documents on the World Wide Web. It structures web content by...&#34;&gt;html&lt;/a&gt; without touching the backend or js, typically things like this require one or the other.  Yes js is running, but no other js library I’m aware of lets you do this.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>homelab drive ids</title>
    <id>https://waylonwalker.com/homelab-drive-ids/</id>
    <updated>2025-03-26T11:22:07Z</updated>
    <published>2025-03-26T11:22:07Z</published>
    <link href="https://waylonwalker.com/homelab-drive-ids/" rel="alternate" type="text/html"></link>
    <summary type="text">Drive Bay 1 ata-ST4000VN008-2DR166_ZDHBZSWZ</summary>
    <content type="html">&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;ls -l /dev/disk/by-id/&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Drive Bay 1&#xA;ata-ST4000VN008-2DR166_ZDHBZSWZ&lt;/p&gt;&#xA;&lt;p&gt;+————————————————————————-+&#xA;| [ Power]  [ Reset ]                                                     |&#xA;+————————————————————————-+&#xA;| [ BAY 5 ]  3TB WD30EFRX WMC4N0D3J9R7 ext4 /mnt/sdf4                     |&#xA;+————————————————————————-+&#xA;| [ BAY 4 ]  14TB EXOS ZTM09R9N zfs main pool mirror /mnt/main            |&#xA;+————————————————————————-+&#xA;| [ BAY 3 ]  14TB EXOS ZTM0AALS zfs main pool mirror /mnt/main            |&#xA;+——————————————-+&#xA;| [ BAY 2 ]  4TB IRONWOLF ZDHBZV3N zfs tank pool mirror /mnt/tank         |&#xA;+————————————————————————-+&#xA;| [ BAY 1 ]  4TB IRONWOLF ZDHBZSWZ zfs tank pool mirror /mnt/tank         |&#xA;+————————————————————————-+&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ Ramilito kubectl.nvim</title>
    <id>https://waylonwalker.com/ramilito-kubectl-nvim/</id>
    <updated>2025-03-25T19:16:43Z</updated>
    <published>2025-03-25T19:16:43Z</published>
    <link href="https://waylonwalker.com/ramilito-kubectl-nvim/" rel="alternate" type="text/html"></link>
    <summary type="text">I recently discovered kubectl.nvim by Ramilito, and it&#39;s truly impressive.</summary>
    <content type="html">&lt;p&gt;I recently discovered &lt;a href=&#34;https://github.com/Ramilito/kubectl.nvim&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;kubectl.nvim&lt;/a&gt; by &lt;a href=&#34;https://github.com/Ramilito&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;Ramilito&lt;/a&gt;, and it’s truly impressive.&lt;/p&gt;&#xA;&lt;p&gt;⎈ Streamline your Kubernetes management within Neovim—control and monitor your cluster seamlessly, all without leaving your coding environment.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Resetting a lost admin password — Nextcloud latest Administrat...</title>
    <id>https://waylonwalker.com/thought-585/</id>
    <updated>2025-03-24T00:26:45Z</updated>
    <published>2025-03-24T00:26:45Z</published>
    <link href="https://waylonwalker.com/thought-585/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://docs.nextcloud.com/server/latest/admin_user/reset_password.html</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;/static/https://docs.nextcloud.com/server/latest/admin_manual/configuration_user/reset_admin_password.html&#34; class=&#34;glightbox-link&#34; aria-label=&#34;https://docs.nextcloud.com/server/latest/admin_manual/configuration_user/reset_admin_password.html&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;/static/https://docs.nextcloud.com/server/latest/admin_manual/configuration_user/reset_admin_password.html&#34; alt=&#34;https://docs.nextcloud.com/server/latest/admin_manual/configuration_user/reset_admin_password.html&#34;/ data-glightbox=&#34;description: https://docs.nextcloud.com/server/latest/admin_manual/configuration_user/reset_admin_password.html&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;p&gt;This is a handy line to reset your admin password in nextcloud.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Redis configuration | Docs</title>
    <id>https://waylonwalker.com/thought-584/</id>
    <updated>2025-03-20T20:14:57Z</updated>
    <published>2025-03-20T20:14:57Z</published>
    <link href="https://waylonwalker.com/thought-584/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://redis.io/docs/latest/operate/oss_stack/management/config/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://redis.io/docs/latest/operate/oss_and_stack/management/config/&#34; class=&#34;embed-card-link  has-avatar has-avatar-before&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/redis.io.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/redis.io.ico&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Redis configuration&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Overview of redis.conf, the Redis configuration file&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;Docs · redis.io&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;redis has all of their default self documented configs hosted here.  You can pull the default redis.conf for any of the major releases.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ xpipe-io xpipe-webtop</title>
    <id>https://waylonwalker.com/xpipe-io-xpipe-webtop/</id>
    <updated>2025-03-20T14:05:37Z</updated>
    <published>2025-03-20T14:05:37Z</published>
    <link href="https://waylonwalker.com/xpipe-io-xpipe-webtop/" rel="alternate" type="text/html"></link>
    <summary type="text">If you&#39;re into interesting projects, don&#39;t miss out on xpipe-webtop, created by xpipe-io.</summary>
    <content type="html">&lt;p&gt;If you’re into interesting projects, don’t miss out on &lt;a href=&#34;https://github.com/xpipe-io/xpipe-webtop&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;xpipe-webtop&lt;/a&gt;, created by &lt;a href=&#34;https://github.com/xpipe-io&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;xpipe-io&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;A containerized web-based desktop environment for XPipe&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ xpipe-io xpipe</title>
    <id>https://waylonwalker.com/xpipe-io-xpipe/</id>
    <updated>2025-03-17T23:00:55Z</updated>
    <published>2025-03-17T23:00:55Z</published>
    <link href="https://waylonwalker.com/xpipe-io-xpipe/" rel="alternate" type="text/html"></link>
    <summary type="text">xpipe by xpipe-io is a game-changer in its space. Excited to see how it evolves.</summary>
    <content type="html">&lt;p&gt;&lt;a href=&#34;https://github.com/xpipe-io/xpipe&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;xpipe&lt;/a&gt; by &lt;a href=&#34;https://github.com/xpipe-io&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;xpipe-io&lt;/a&gt; is a game-changer in its space. Excited to see how it evolves.&lt;/p&gt;&#xA;&lt;p&gt;Access your entire server infrastructure from your local desktop&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Use pbpaste for clean shell history</title>
    <id>https://waylonwalker.com/use-pbpaste-for-clean-shell-history/</id>
    <updated>2025-03-17T12:00:00Z</updated>
    <published>2025-03-17T12:00:00Z</published>
    <link href="https://waylonwalker.com/use-pbpaste-for-clean-shell-history/" rel="alternate" type="text/html"></link>
    <summary type="text">Using for command substitution keeps sensitive or long URLs out of your shell history. Instead of typing , copy the URL to clipboard and run . This prevents...</summary>
    <content type="html">&lt;p&gt;Using &lt;code&gt;pbpaste&lt;/code&gt; for command substitution keeps sensitive or long URLs out of&#xA;your shell history. Instead of typing &lt;code&gt;git clone https://github.com/user/repo-with-long-name.git&lt;/code&gt;, copy the URL to clipboard and&#xA;run &lt;code&gt;git clone &amp;#34;$(pbpaste)&amp;#34;&lt;/code&gt;. This prevents the URL from appearing in&#xA;&lt;code&gt;~/.bash_history&lt;/code&gt; or &lt;code&gt;~/.zsh_history&lt;/code&gt;.&lt;/p&gt;&#xA;&lt;p&gt;To get pbpaste working on both Xorg and Wayland, add this to your shell config:&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;if&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;[[&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;$(&lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;command&lt;/span&gt; -v wl-copy&lt;span class=&#34;k&#34;&gt;)&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;]]&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;then&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;nb&#34;&gt;alias&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;pbcopy&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;wl-copy&amp;#39;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    pbpaste&lt;span class=&#34;o&#34;&gt;()&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;{&lt;/span&gt; wl-paste&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;}&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;elif&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;[[&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;$(&lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;command&lt;/span&gt; -v xclip&lt;span class=&#34;k&#34;&gt;)&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;]]&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;then&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;nb&#34;&gt;alias&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;pbcopy&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;xclip -selection clipboard&amp;#39;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    pbpaste&lt;span class=&#34;o&#34;&gt;()&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;{&lt;/span&gt; xclip -selection clipboard -o&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;}&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;fi&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;The function approach (instead of alias) enables command substitution, while&#xA;the quotes around &lt;code&gt;$(pbpaste)&lt;/code&gt; handle spaces and special characters safely.&lt;/p&gt;&#xA;&lt;p&gt;Now you can use it.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;git clone &lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;$(&lt;/span&gt;pbpaste&lt;span class=&#34;k&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;More importantly secrets can stay out of your history.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;export&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;GITHUB_TOKEN&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;$(&lt;/span&gt;pbpaste&lt;span class=&#34;k&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;export&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;AWS_ACCESS_KEY_ID&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;$(&lt;/span&gt;pbpaste&lt;span class=&#34;k&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;export&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;AWS_SECRET_ACCESS_KEY&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;$(&lt;/span&gt;pbpaste&lt;span class=&#34;k&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;export&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;DATABASE_URL&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;$(&lt;/span&gt;pbpaste&lt;span class=&#34;k&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 hotel_bookings.csv</title>
    <id>https://waylonwalker.com/thought-583/</id>
    <updated>2025-03-15T22:32:44Z</updated>
    <published>2025-03-15T22:32:44Z</published>
    <link href="https://waylonwalker.com/thought-583/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.kaggle.com/datasets/ahmedsafwatgb20/hotel-bookingscsv?resource=download</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://www.kaggle.com/datasets/ahmedsafwatgb20/hotel-bookingscsv?resource=download&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://storage.googleapis.com/kaggle-datasets-images/new-version-temp-images/default-backgrounds-55.png-8181871/dataset-card.png&#34; alt=&#34;hotel_bookings.csv — Discover what actually works in AI. Join millions of builders, researchers, and labs evaluating agents, models, and frontier technology through crowdsourced benchmarks, competitions, and hackathons.&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: hotel_bookings.csv — Discover what actually works in AI. Join millions of builders, researchers, and labs evaluating agents, models, and frontier technology through crowdsourced benchmarks, competitions, and hackathons.&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;hotel_bookings.csv&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Discover what actually works in AI. Join millions of builders, researchers, and labs evaluating agents, models, and frontier technology through crowdsourced benchmarks, competitions, and hackathons.&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;kaggle.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;nice dataset to use for example / test projects.  I’m using it to play with duckdb currently.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>THPS 1 Downtown Gaps</title>
    <id>https://waylonwalker.com/thps-1-downtown-gaps/</id>
    <updated>2025-03-15T18:46:01Z</updated>
    <published>2025-03-15T18:46:01Z</published>
    <link href="https://waylonwalker.com/thps-1-downtown-gaps/" rel="alternate" type="text/html"></link>
    <summary type="text">Previously thps-1-skate-park-gaps</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/74936acc-5cfb-430a-b31b-d8f9888b437d.png&#34; class=&#34;glightbox-link&#34; aria-label=&#34;screenshot-2025-02-28T00-44-32-696Z.png&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/74936acc-5cfb-430a-b31b-d8f9888b437d.png&#34; alt=&#34;screenshot-2025-02-28T00-44-32-696Z.png&#34;/ data-glightbox=&#34;description: screenshot-2025-02-28T00-44-32-696Z.png&#34;&gt;&lt;/a&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/bb603b2c-e1be-4d8f-80e3-47c2715a2643.png&#34; class=&#34;glightbox-link&#34; aria-label=&#34;screenshot-2025-02-28T00-45-05-468Z.png&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/bb603b2c-e1be-4d8f-80e3-47c2715a2643.png&#34; alt=&#34;screenshot-2025-02-28T00-45-05-468Z.png&#34;/ data-glightbox=&#34;description: screenshot-2025-02-28T00-45-05-468Z.png&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;p&gt;Previously &lt;a href=&#34;/thps-1-skate-park-gaps/&#34; class=&#34;wikilink&#34; data-title=&#34;THPS 1 Skate Park Gaps&#34; data-description=&#34;Previously thps-1-mall-gaps Next thps-1-downtown-gaps&#34; data-date=&#34;2025-03-08&#34; data-preview=&#34;Previously thps-1-mall-gaps Next thps-1-downtown-gaps&#34;&gt;THPS 1 Skate Park Gaps&lt;/a&gt;&lt;/p&gt;&#xA;&lt;h2 id=&#34;big-ass&#34;&gt;Big Ass &lt;a href=&#34;#big-ass&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/c9020f68-1398-468b-8235-235be767f89d.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;THPS1-5-BigAss.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/c9020f68-1398-468b-8235-235be767f89d.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/c9020f68-1398-468b-8235-235be767f89d.mp4&#34; type=&#34;video/mp4&#34;&gt;THPS1-5-BigAss.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;billboard-grind&#34;&gt;Billboard Grind &lt;a href=&#34;#billboard-grind&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/34593c9a-ca7d-435f-b1df-cd23081d13e9.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;THPS1-5-BillboardGrind.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/34593c9a-ca7d-435f-b1df-cd23081d13e9.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/34593c9a-ca7d-435f-b1df-cd23081d13e9.mp4&#34; type=&#34;video/mp4&#34;&gt;THPS1-5-BillboardGrind.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;bs-gap&#34;&gt;BS Gap &lt;a href=&#34;#bs-gap&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/5521048b-9929-4153-994c-5abc7e88fc2a.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;THPS1-5-BSGap.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/5521048b-9929-4153-994c-5abc7e88fc2a.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/5521048b-9929-4153-994c-5abc7e88fc2a.mp4&#34; type=&#34;video/mp4&#34;&gt;THPS1-5-BSGap.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;bs-grind&#34;&gt;BS Grind &lt;a href=&#34;#bs-grind&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/737d36ef-323c-4bf2-8294-cd962d0c5f47.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;THPS1-5-BSGrind.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/737d36ef-323c-4bf2-8294-cd962d0c5f47.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/737d36ef-323c-4bf2-8294-cd962d0c5f47.mp4&#34; type=&#34;video/mp4&#34;&gt;THPS1-5-BSGrind.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;burly-deck-gap&#34;&gt;Burly Deck Gap &lt;a href=&#34;#burly-deck-gap&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/edcb7767-f6d9-4ce0-b6f3-07d5ceb82bbc.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;THPS1-5-BurlyDeckGap.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/edcb7767-f6d9-4ce0-b6f3-07d5ceb82bbc.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/edcb7767-f6d9-4ce0-b6f3-07d5ceb82bbc.mp4&#34; type=&#34;video/mp4&#34;&gt;THPS1-5-BurlyDeckGap.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;car-ollie&#34;&gt;Car Ollie &lt;a href=&#34;#car-ollie&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/e9a91ddf-318c-4e10-9268-b41c607ff8e8.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;THPS1-5-CarOllie.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/e9a91ddf-318c-4e10-9268-b41c607ff8e8.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/e9a91ddf-318c-4e10-9268-b41c607ff8e8.mp4&#34; type=&#34;video/mp4&#34;&gt;THPS1-5-CarOllie.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/5b813fb2-8b22-4129-a01e-3a1f9b7fcb3e.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;THPS1-5-CarPlant.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/5b813fb2-8b22-4129-a01e-3a1f9b7fcb3e.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/5b813fb2-8b22-4129-a01e-3a1f9b7fcb3e.mp4&#34; type=&#34;video/mp4&#34;&gt;THPS1-5-CarPlant.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;cheesy-deck-gap&#34;&gt;Cheesy Deck Gap &lt;a href=&#34;#cheesy-deck-gap&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/c17b7db0-77b4-4769-af36-640070325846.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;THPS1-5-CheesyDeckGap.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/c17b7db0-77b4-4769-af36-640070325846.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/c17b7db0-77b4-4769-af36-640070325846.mp4&#34; type=&#34;video/mp4&#34;&gt;THPS1-5-CheesyDeckGap.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;death-grind&#34;&gt;Death Grind &lt;a href=&#34;#death-grind&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/af8da429-0ac1-469e-97fd-37971ad0ba79.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;THPS1-5-DeathGrind.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/af8da429-0ac1-469e-97fd-37971ad0ba79.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/af8da429-0ac1-469e-97fd-37971ad0ba79.mp4&#34; type=&#34;video/mp4&#34;&gt;THPS1-5-DeathGrind.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;deck-gap&#34;&gt;Deck Gap &lt;a href=&#34;#deck-gap&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/95ec787a-6520-4868-ae8c-b2953a2a1551.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;THPS1-5-DeckGap.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/95ec787a-6520-4868-ae8c-b2953a2a1551.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/95ec787a-6520-4868-ae8c-b2953a2a1551.mp4&#34; type=&#34;video/mp4&#34;&gt;THPS1-5-DeckGap.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;dirty-rail&#34;&gt;Dirty Rail &lt;a href=&#34;#dirty-rail&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/16028649-1e78-4a5a-a88b-f143eac6b538.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;THPS1-5-DirtyRail.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/16028649-1e78-4a5a-a88b-f143eac6b538.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/16028649-1e78-4a5a-a88b-f143eac6b538.mp4&#34; type=&#34;video/mp4&#34;&gt;THPS1-5-DirtyRail.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;glass-gap&#34;&gt;Glass Gap &lt;a href=&#34;#glass-gap&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/4138f100-9ec0-4e38-b328-20d3a2fd41b7.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;THPS1-5-GlassGap.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/4138f100-9ec0-4e38-b328-20d3a2fd41b7.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/4138f100-9ec0-4e38-b328-20d3a2fd41b7.mp4&#34; type=&#34;video/mp4&#34;&gt;THPS1-5-GlassGap.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;kicker-gap&#34;&gt;Kicker Gap &lt;a href=&#34;#kicker-gap&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/4b0a0af2-24bd-4011-8c2c-536ef63fd63c.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;THPS1-5-KickerGap.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/4b0a0af2-24bd-4011-8c2c-536ef63fd63c.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/4b0a0af2-24bd-4011-8c2c-536ef63fd63c.mp4&#34; type=&#34;video/mp4&#34;&gt;THPS1-5-KickerGap.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;kicker-2-edge&#34;&gt;Kicker 2 Edge &lt;a href=&#34;#kicker-2-edge&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/16e84f08-73ba-4cc3-ba51-90dceb35e91d.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;THPS1-5-Kicker2Edge.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/16e84f08-73ba-4cc3-ba51-90dceb35e91d.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/16e84f08-73ba-4cc3-ba51-90dceb35e91d.mp4&#34; type=&#34;video/mp4&#34;&gt;THPS1-5-Kicker2Edge.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;kicker-2-street&#34;&gt;Kicker 2 Street &lt;a href=&#34;#kicker-2-street&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/a3c73018-c602-4bd0-9c96-7e81b128889b.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;THPS1-5-Kicker2Street.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/a3c73018-c602-4bd0-9c96-7e81b128889b.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/a3c73018-c602-4bd0-9c96-7e81b128889b.mp4&#34; type=&#34;video/mp4&#34;&gt;THPS1-5-Kicker2Street.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;rail-2-rail&#34;&gt;Rail 2 Rail &lt;a href=&#34;#rail-2-rail&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/b07d1500-0e3a-4c0f-b98d-27d6a75ca305.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;THPS1-5-Rail2Rail.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/b07d1500-0e3a-4c0f-b98d-27d6a75ca305.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/b07d1500-0e3a-4c0f-b98d-27d6a75ca305.mp4&#34; type=&#34;video/mp4&#34;&gt;THPS1-5-Rail2Rail.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;roof-2-roof&#34;&gt;Roof 2 Roof &lt;a href=&#34;#roof-2-roof&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/fdcd25cd-a73a-49c4-bf06-e2058eb7cecb.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;THPS1-5-Roof2Roof.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/fdcd25cd-a73a-49c4-bf06-e2058eb7cecb.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/fdcd25cd-a73a-49c4-bf06-e2058eb7cecb.mp4&#34; type=&#34;video/mp4&#34;&gt;THPS1-5-Roof2Roof.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;secret-tunnel-entrance&#34;&gt;Secret Tunnel Entrance &lt;a href=&#34;#secret-tunnel-entrance&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/06f4bcef-ec5a-4480-80e8-8ea8423f5b28.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;THPS1-5-SecretTunnelEntrance.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/06f4bcef-ec5a-4480-80e8-8ea8423f5b28.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/06f4bcef-ec5a-4480-80e8-8ea8423f5b28.mp4&#34; type=&#34;video/mp4&#34;&gt;THPS1-5-SecretTunnelEntrance.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;sucky-room-gap&#34;&gt;Sucky Room Gap &lt;a href=&#34;#sucky-room-gap&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/352402c1-943b-4588-9001-e79a8e25f45e.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;THPS1-5-SuckyRoomGap.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/352402c1-943b-4588-9001-e79a8e25f45e.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/352402c1-943b-4588-9001-e79a8e25f45e.mp4&#34; type=&#34;video/mp4&#34;&gt;THPS1-5-SuckyRoomGap.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;t-2-t-gap&#34;&gt;T 2 T Gap &lt;a href=&#34;#t-2-t-gap&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/3ce8d7d9-93ea-4b9b-b25b-9b0436b4c664.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;THPS1-5-T2TGap.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/3ce8d7d9-93ea-4b9b-b25b-9b0436b4c664.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/3ce8d7d9-93ea-4b9b-b25b-9b0436b4c664.mp4&#34; type=&#34;video/mp4&#34;&gt;THPS1-5-T2TGap.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;transfer&#34;&gt;Transfer &lt;a href=&#34;#transfer&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/c58bb5c0-bd71-4e0a-9cf4-35ee09be7fef.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;THPS1-5-Transfer.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/c58bb5c0-bd71-4e0a-9cf4-35ee09be7fef.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/c58bb5c0-bd71-4e0a-9cf4-35ee09be7fef.mp4&#34; type=&#34;video/mp4&#34;&gt;THPS1-5-Transfer.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;truck-gap&#34;&gt;Truck Gap &lt;a href=&#34;#truck-gap&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/75f35652-a4d5-45bf-a5a6-3f9c7d60556e.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;THPS1-5-TruckGap.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/75f35652-a4d5-45bf-a5a6-3f9c7d60556e.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/75f35652-a4d5-45bf-a5a6-3f9c7d60556e.mp4&#34; type=&#34;video/mp4&#34;&gt;THPS1-5-TruckGap.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;tunnel-gap&#34;&gt;Tunnel Gap &lt;a href=&#34;#tunnel-gap&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/e687f094-8b2e-4bd6-b393-bf856b8c6e82.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;THPS1-5-TunnelGap.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/e687f094-8b2e-4bd6-b393-bf856b8c6e82.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/e687f094-8b2e-4bd6-b393-bf856b8c6e82.mp4&#34; type=&#34;video/mp4&#34;&gt;THPS1-5-TunnelGap.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;wimpy-gap&#34;&gt;Wimpy Gap &lt;a href=&#34;#wimpy-gap&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/9b6b2e48-51b2-415a-8058-d9f9f325535f.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;THPS1-5-WimpyGap.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/9b6b2e48-51b2-415a-8058-d9f9f325535f.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/9b6b2e48-51b2-415a-8058-d9f9f325535f.mp4&#34; type=&#34;video/mp4&#34;&gt;THPS1-5-WimpyGap.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;mechanic-gap&#34;&gt;Mechanic Gap &lt;a href=&#34;#mechanic-gap&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/8a35d3a0-0566-4d4e-a641-7bc1cd950b99.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;THPS1-5-MechanicGap.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/8a35d3a0-0566-4d4e-a641-7bc1cd950b99.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/8a35d3a0-0566-4d4e-a641-7bc1cd950b99.mp4&#34; type=&#34;video/mp4&#34;&gt;THPS1-5-MechanicGap.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;box-office-gap&#34;&gt;Box Office Gap &lt;a href=&#34;#box-office-gap&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/9b8a3021-8cb7-42b6-b073-f5512bfa3f5f.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;THPS1-5-BoxOfficeGap.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/9b8a3021-8cb7-42b6-b073-f5512bfa3f5f.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/9b8a3021-8cb7-42b6-b073-f5512bfa3f5f.mp4&#34; type=&#34;video/mp4&#34;&gt;THPS1-5-BoxOfficeGap.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;skyway-gap&#34;&gt;Skyway Gap &lt;a href=&#34;#skyway-gap&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/af7ec993-5409-401b-9c91-5265530dab47.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;THPS1-5-SkywayGap.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/af7ec993-5409-401b-9c91-5265530dab47.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/af7ec993-5409-401b-9c91-5265530dab47.mp4&#34; type=&#34;video/mp4&#34;&gt;THPS1-5-SkywayGap.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;super-skyway-gap&#34;&gt;Super Skyway Gap &lt;a href=&#34;#super-skyway-gap&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/d3e05a69-8295-46b6-ae99-a7dca9021306.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;THPS1-5-SuperSkywayGap.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/d3e05a69-8295-46b6-ae99-a7dca9021306.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/d3e05a69-8295-46b6-ae99-a7dca9021306.mp4&#34; type=&#34;video/mp4&#34;&gt;THPS1-5-SuperSkywayGap.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 The State of Secrets Sprawl 2025</title>
    <id>https://waylonwalker.com/thought-582/</id>
    <updated>2025-03-14T18:16:07Z</updated>
    <published>2025-03-14T18:16:07Z</published>
    <link href="https://waylonwalker.com/thought-582/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://blog.gitguardian.com/the-state-of-secrets-sprawl-2025/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://blog.gitguardian.com/the-state-of-secrets-sprawl-2025/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://storage.ghost.io/c/42/5d/425d266f-cf99-406e-9436-597a19bed011/content/images/2025/03/Stateof25@2x.png&#34; alt=&#34;The State of Secrets Sprawl 2025 — GitGuardian&amp;#39;s 2025 report reveals 70% of leaked secrets remain active two years later. Discover the alarming state of secrets sprawl &amp;amp; protect your organization.&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: The State of Secrets Sprawl 2025 — GitGuardian&amp;#39;s 2025 report reveals 70% of leaked secrets remain active two years later. Discover the alarming state of secrets sprawl &amp;amp; protect your organization.&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;The State of Secrets Sprawl 2025&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;GitGuardian&amp;#39;s 2025 report reveals 70% of leaked secrets remain active two years later. Discover the alarming state of secrets sprawl &amp;amp; protect your organization.&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;GitGuardian Blog - Take Control of Your Secrets Security · blog.gitguardian.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Good report, make notes later&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Mill-Max Hotswap Sockets  – Keebio</title>
    <id>https://waylonwalker.com/thought-581/</id>
    <updated>2025-03-14T01:02:15Z</updated>
    <published>2025-03-14T01:02:15Z</published>
    <link href="https://waylonwalker.com/thought-581/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://keeb.io/products/mill-max-hotswap-sockets?variant=32377167511646</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://keeb.io/products/mill-max-hotswap-sockets?variant=32377167511646&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://keeb.io/cdn/shop/products/image_88f7613a-6692-4f4d-bc3c-00220e175516.jpg?v=1612558347&#34; alt=&#34;Mill-Max Hotswap Sockets — Mill-Max sockets for adding hotswap support to regular PCBs. Sold in packs of 60 (good for 30 switches). Info about the different types 7305-0: Gold-plated sockets (7305-0-15-15-47-27-10-0) Shorter leg that can be more difficult to solder, but has a shorter lip above the PCB that&amp;#39;s more flush 0305-2: Tin-plated sockets&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: Mill-Max Hotswap Sockets — Mill-Max sockets for adding hotswap support to regular PCBs. Sold in packs of 60 (good for 30 switches). Info about the different types 7305-0: Gold-plated sockets (7305-0-15-15-47-27-10-0) Shorter leg that can be more difficult to solder, but has a shorter lip above the PCB that&amp;#39;s more flush 0305-2: Tin-plated sockets&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Mill-Max Hotswap Sockets&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Mill-Max sockets for adding hotswap support to regular PCBs. Sold in packs of 60 (good for 30 switches). Info about the different types 7305-0: Gold-plated sockets (7305-0-15-15-47-27-10-0) Shorter...&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;Keebio · keeb.io&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;looking into trying these Mill-Max pins on a handwired 3d printed build to see if I can get away from specialty hot swap sockets.  Damn they aren’t exactly cheap, I really want the nice short ones but they start at $20 per 60ct and you need two per key, that adds up quick.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 r.jina.ai</title>
    <id>https://waylonwalker.com/thought-580/</id>
    <updated>2025-03-13T17:12:44Z</updated>
    <published>2025-03-13T17:12:44Z</published>
    <link href="https://waylonwalker.com/thought-580/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://r.jina.ai/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://r.jina.ai/&#34; class=&#34;embed-card-link  has-avatar has-avatar-before&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/r.jina.ai.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/r.jina.ai.ico&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;External Link&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;r.jina.ai&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;jina reader is a pretty sweet tool to convert a site to ai compatible text.  There are other web to markdown types of tools, but the convenience of just adding r.jina.ai to the front of any page makes it so easy to grab for one page of docs.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Why did Framework build a desktop? - YouTube</title>
    <id>https://waylonwalker.com/thought-579/</id>
    <updated>2025-03-12T13:01:44Z</updated>
    <published>2025-03-12T13:01:44Z</published>
    <link href="https://waylonwalker.com/thought-579/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/watch?v=zI6ZQls54Ms</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;zI6ZQls54Ms&#34; title=&#34;Why did Framework build a desktop?&#34; playlabel=&#34;Play: Why did Framework build a desktop?&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;the racked up 4 framework mainboards sound wild.  connected with usb4 and 5gig ethernet.  they said they can run big models quantized down from 600Gb to within the 512GB limit they have.  This seems wild to bring this level of capability to such a low price point.  It will be really cool to start to see demos come out.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ Y2Z monolith</title>
    <id>https://waylonwalker.com/y2z-monolith/</id>
    <updated>2025-03-11T14:18:31Z</updated>
    <published>2025-03-11T14:18:31Z</published>
    <link href="https://waylonwalker.com/y2z-monolith/" rel="alternate" type="text/html"></link>
    <summary type="text">Just starred monolith by Y2Z. It&#39;s an exciting project with a lot to offer.</summary>
    <content type="html">&lt;p&gt;Just starred &lt;a href=&#34;https://github.com/Y2Z/monolith&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;monolith&lt;/a&gt; by &lt;a href=&#34;https://github.com/Y2Z&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;Y2Z&lt;/a&gt;. It’s an exciting project with a lot to offer.&lt;/p&gt;&#xA;&lt;p&gt;⬛️ CLI tool and library for saving complete web pages as a single &lt;a href=&#34;/html/&#34; class=&#34;glossary-term&#34; title=&#34;HTML (HyperText Markup Language) is the standard markup language used to create and design documents on the World Wide Web. It structures web content by...&#34;&gt;HTML&lt;/a&gt; file&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>THPS 1 Skate Park Gaps</title>
    <id>https://waylonwalker.com/thps-1-skate-park-gaps/</id>
    <updated>2025-03-08T14:36:23Z</updated>
    <published>2025-03-08T14:36:23Z</published>
    <link href="https://waylonwalker.com/thps-1-skate-park-gaps/" rel="alternate" type="text/html"></link>
    <summary type="text">Previously thps-1-mall-gaps Next thps-1-downtown-gaps</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/75b658de-1c88-4147-b06b-5c0cc0bc8b80.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;image&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/75b658de-1c88-4147-b06b-5c0cc0bc8b80.webp&#34; alt=&#34;image&#34;/ data-glightbox=&#34;description: image&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;p&gt;Previously &lt;a href=&#34;/thps-1-mall-gaps/&#34; class=&#34;wikilink&#34; data-title=&#34;THPS 1 Mall Gaps&#34; data-description=&#34;This is one of the most memorable levels for me in THPS1 from when I had originally played it. Surprisingly there aren&amp;#39;t as many gaps in it as I thought...&#34; data-date=&#34;2025-03-01&#34; data-preview=&#34;This is one of the most memorable levels for me in THPS1 from when I had originally played it. Surprisingly there aren&amp;#39;t as many gaps in it as I thought...&#34;&gt;THPS 1 Mall Gaps&lt;/a&gt;&#xA;Next &lt;a href=&#34;/thps-1-downtown-gaps/&#34; class=&#34;wikilink&#34; data-title=&#34;THPS 1 Downtown Gaps&#34; data-description=&#34;Previously thps-1-skate-park-gaps&#34; data-date=&#34;2025-03-15&#34; data-preview=&#34;Previously thps-1-skate-park-gaps&#34;&gt;THPS 1 Downtown Gaps&lt;/a&gt;&lt;/p&gt;&#xA;&lt;h2 id=&#34;acid-drop&#34;&gt;Acid Drop &lt;a href=&#34;#acid-drop&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/284daa63-abe2-4693-a533-fa4ae0478869.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;THPS1-4-AcidDrop.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/284daa63-abe2-4693-a533-fa4ae0478869.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/284daa63-abe2-4693-a533-fa4ae0478869.mp4&#34; type=&#34;video/mp4&#34;&gt;THPS1-4-AcidDrop.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;across-the-park&#34;&gt;Across The Park &lt;a href=&#34;#across-the-park&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/01b21044-0bf8-4b06-9db1-a002c0519df6.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;THPS1-4-AcrossThePark.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/01b21044-0bf8-4b06-9db1-a002c0519df6.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/01b21044-0bf8-4b06-9db1-a002c0519df6.mp4&#34; type=&#34;video/mp4&#34;&gt;THPS1-4-AcrossThePark.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;around-the-bend&#34;&gt;Around The Bend &lt;a href=&#34;#around-the-bend&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/e9e42b76-de54-4828-9aaa-39f125ad39e5.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;THPS1-4-AroundTheBend.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/e9e42b76-de54-4828-9aaa-39f125ad39e5.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/e9e42b76-de54-4828-9aaa-39f125ad39e5.mp4&#34; type=&#34;video/mp4&#34;&gt;THPS1-4-AroundTheBend.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;hp-transfer&#34;&gt;HP Transfer &lt;a href=&#34;#hp-transfer&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/c39a29f4-3b18-4983-a1b0-d27a284a7f63.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;THPS1-4-HPTransfer.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/c39a29f4-3b18-4983-a1b0-d27a284a7f63.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/c39a29f4-3b18-4983-a1b0-d27a284a7f63.mp4&#34; type=&#34;video/mp4&#34;&gt;THPS1-4-HPTransfer.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;light-grind&#34;&gt;Light Grind &lt;a href=&#34;#light-grind&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/b3e5b0bd-8f71-41b2-9fe3-5b45cde01ba4.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;THPS1-4-LightGrind.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/b3e5b0bd-8f71-41b2-9fe3-5b45cde01ba4.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/b3e5b0bd-8f71-41b2-9fe3-5b45cde01ba4.mp4&#34; type=&#34;video/mp4&#34;&gt;THPS1-4-LightGrind.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;over-the-box&#34;&gt;Over The Box &lt;a href=&#34;#over-the-box&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/96afe8f1-bffb-4a69-af64-17cafeb9ad3c.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;THPS1-4-OverTheBox.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/96afe8f1-bffb-4a69-af64-17cafeb9ad3c.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/96afe8f1-bffb-4a69-af64-17cafeb9ad3c.mp4&#34; type=&#34;video/mp4&#34;&gt;THPS1-4-OverTheBox.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;over-the-pipe&#34;&gt;Over The Pipe &lt;a href=&#34;#over-the-pipe&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/90c96ad4-be68-4ab0-a907-0cc45d0aa853.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;THPS1-4-OverThePipe.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/90c96ad4-be68-4ab0-a907-0cc45d0aa853.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/90c96ad4-be68-4ab0-a907-0cc45d0aa853.mp4&#34; type=&#34;video/mp4&#34;&gt;THPS1-4-OverThePipe.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;over-the-rafters&#34;&gt;Over the Rafters &lt;a href=&#34;#over-the-rafters&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/278ca420-8fe2-4f37-bdf9-14eae25fa07d.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;THPS1-4-OverTheRafters.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/278ca420-8fe2-4f37-bdf9-14eae25fa07d.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/278ca420-8fe2-4f37-bdf9-14eae25fa07d.mp4&#34; type=&#34;video/mp4&#34;&gt;THPS1-4-OverTheRafters.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;pool-2-walkway&#34;&gt;Pool 2 Walkway &lt;a href=&#34;#pool-2-walkway&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/78b6ecbc-c9d0-440b-809c-ae72a54af3ee.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;THPS1-4-Pool2Walkway.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/78b6ecbc-c9d0-440b-809c-ae72a54af3ee.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/78b6ecbc-c9d0-440b-809c-ae72a54af3ee.mp4&#34; type=&#34;video/mp4&#34;&gt;THPS1-4-Pool2Walkway.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;pool-hip&#34;&gt;Pool Hip &lt;a href=&#34;#pool-hip&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/4c6cfaa7-c63a-41b8-8ed8-2e8cefe4c96a.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;THPS1-4-PoolHip.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/4c6cfaa7-c63a-41b8-8ed8-2e8cefe4c96a.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/4c6cfaa7-c63a-41b8-8ed8-2e8cefe4c96a.mp4&#34; type=&#34;video/mp4&#34;&gt;THPS1-4-PoolHip.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;pool-rail-trans&#34;&gt;Pool Rail Trans &lt;a href=&#34;#pool-rail-trans&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/6a72262c-6a31-4408-91c5-15e95d7fe4a7.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;THPS1-4-PoolRailTrans.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/6a72262c-6a31-4408-91c5-15e95d7fe4a7.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/6a72262c-6a31-4408-91c5-15e95d7fe4a7.mp4&#34; type=&#34;video/mp4&#34;&gt;THPS1-4-PoolRailTrans.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;rafter-rail&#34;&gt;Rafter Rail &lt;a href=&#34;#rafter-rail&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/400830fc-5f7d-4f98-8784-1cb88dfa9c1b.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;THPS1-4-RafterRail.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/400830fc-5f7d-4f98-8784-1cb88dfa9c1b.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/400830fc-5f7d-4f98-8784-1cb88dfa9c1b.mp4&#34; type=&#34;video/mp4&#34;&gt;THPS1-4-RafterRail.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;transfer&#34;&gt;Transfer &lt;a href=&#34;#transfer&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/86bc0bf7-f6ae-4b0c-aed7-fc53845fcafb.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;THPS1-4-Transfer.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/86bc0bf7-f6ae-4b0c-aed7-fc53845fcafb.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/86bc0bf7-f6ae-4b0c-aed7-fc53845fcafb.mp4&#34; type=&#34;video/mp4&#34;&gt;THPS1-4-Transfer.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;walkway-rail-trans&#34;&gt;Walkway Rail Trans &lt;a href=&#34;#walkway-rail-trans&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/e5af0838-371d-45c7-b0f2-2589e6c5e0d9.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;THPS1-4-WalkwayRailTrans.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/e5af0838-371d-45c7-b0f2-2589e6c5e0d9.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/e5af0838-371d-45c7-b0f2-2589e6c5e0d9.mp4&#34; type=&#34;video/mp4&#34;&gt;THPS1-4-WalkwayRailTrans.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;wall-gap&#34;&gt;Wall Gap &lt;a href=&#34;#wall-gap&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/70add6e4-c5d9-426b-8894-823922a714c5.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;THPS1-4-WallGap.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/70add6e4-c5d9-426b-8894-823922a714c5.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/70add6e4-c5d9-426b-8894-823922a714c5.mp4&#34; type=&#34;video/mp4&#34;&gt;THPS1-4-WallGap.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;wall-gap-jr&#34;&gt;Wall Gap Jr &lt;a href=&#34;#wall-gap-jr&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/58caf655-2b2b-4683-9be7-6fc2c29feb5f.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;THPS1-4-WallGapJr.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/58caf655-2b2b-4683-9be7-6fc2c29feb5f.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/58caf655-2b2b-4683-9be7-6fc2c29feb5f.mp4&#34; type=&#34;video/mp4&#34;&gt;THPS1-4-WallGapJr.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;whoop-gap&#34;&gt;Whoop Gap &lt;a href=&#34;#whoop-gap&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/461c9b3c-891f-4c83-a158-932e5aa9f0ae.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;THPS1-4-WhoopGap.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/461c9b3c-891f-4c83-a158-932e5aa9f0ae.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/461c9b3c-891f-4c83-a158-932e5aa9f0ae.mp4&#34; type=&#34;video/mp4&#34;&gt;THPS1-4-WhoopGap.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Trailmakers Pioneers</title>
    <id>https://waylonwalker.com/trailmakers-pioneers/</id>
    <updated>2025-03-06T20:27:37Z</updated>
    <published>2025-03-06T20:27:37Z</published>
    <link href="https://waylonwalker.com/trailmakers-pioneers/" rel="alternate" type="text/html"></link>
    <summary type="text">Trailmakers 2.0 Pioneers was released today as an update to trailmakers. It&#39;s a brand new campaign mode that requires you to mine resources to get materials...</summary>
    <content type="html">&lt;p&gt;Trailmakers 2.0 Pioneers was released today as an update to trailmakers.  It’s&#xA;a brand new campaign mode that requires you to mine resources to get materials&#xA;to craft your vehicles rather than salvage parts like you so in the Stranded&#xA;Campaign.  There also seems to be a more linear play through of the story with&#xA;the frogitts, unlike stranded where it let you do anything completely open&#xA;world, as long as you had the equipment to go there.&lt;/p&gt;&#xA;&lt;h2 id=&#34;four-frogitts&#34;&gt;Four Frogitts &lt;a href=&#34;#four-frogitts&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;Out of the gate Wyatt came in with four frogitts to rescue, I don’t know how he&#xA;found them all, I’ve only been able to find the first one that the master gives&#xA;you to bring home as a tutorial.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/0e659c05-1c12-4524-aa54-ef52ba680865.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;four-frogitts.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/0e659c05-1c12-4524-aa54-ef52ba680865.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/0e659c05-1c12-4524-aa54-ef52ba680865.mp4&#34; type=&#34;video/mp4&#34;&gt;four-frogitts.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;first-boss&#34;&gt;First Boss &lt;a href=&#34;#first-boss&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;After Wyatt left for bed I played a little more and beat the first of what felt&#xA;like a boss level enemy, he had much different attacks.  I did not think I&#xA;would make it as I got hit hard from his first explosion attack before I&#xA;realized what it did.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/08252dda-b943-4859-be58-0d504fd97f11.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;first-boss.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/08252dda-b943-4859-be58-0d504fd97f11.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/08252dda-b943-4859-be58-0d504fd97f11.mp4&#34; type=&#34;video/mp4&#34;&gt;first-boss.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;p&gt;Here is where he was on the map.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/d0da1d66-63b2-4d29-8047-960cadb4e0c2.jpg&#34; class=&#34;glightbox-link&#34; aria-label=&#34;20250306195831_1.jpg&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/d0da1d66-63b2-4d29-8047-960cadb4e0c2.jpg&#34; alt=&#34;20250306195831_1.jpg&#34;/ data-glightbox=&#34;description: 20250306195831_1.jpg&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;first-mega-drill&#34;&gt;First Mega Drill &lt;a href=&#34;#first-mega-drill&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;So this first mega drill was a mistake we walked right into.  Master Sapo says,&#xA;“Hey go investigate the Drill, but be careful, you are not powerful enough for&#xA;it.”  Little did we know that getting too close will fully start the battle.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/3ccdda41-88a1-4159-9b28-0d3ddf46ccf4.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;mega-drill-1-1.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/3ccdda41-88a1-4159-9b28-0d3ddf46ccf4.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/3ccdda41-88a1-4159-9b28-0d3ddf46ccf4.mp4&#34; type=&#34;video/mp4&#34;&gt;mega-drill-1-1.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/d7fbbe02-dff6-442c-a622-6633dfe6dd36.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;mega-drill-1-2.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/d7fbbe02-dff6-442c-a622-6633dfe6dd36.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/d7fbbe02-dff6-442c-a622-6633dfe6dd36.mp4&#34; type=&#34;video/mp4&#34;&gt;mega-drill-1-2.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/7ae06e7c-2455-47e8-aae3-9593450b527c.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;mega-drill-1-3.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/7ae06e7c-2455-47e8-aae3-9593450b527c.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/7ae06e7c-2455-47e8-aae3-9593450b527c.mp4&#34; type=&#34;video/mp4&#34;&gt;mega-drill-1-3.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;leapsville-froggit-rescue&#34;&gt;Leapsville Froggit rescue &lt;a href=&#34;#leapsville-froggit-rescue&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;Back to leapsville we were presented with two froggit rescues.  We later found&#xA;out that the settlement missions will repeat forever and cycle through a few&#xA;missions.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/3b20ce74-7f22-4f9b-9b09-53074750e7f3.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;leapsville-froggit-rescue-1.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/3b20ce74-7f22-4f9b-9b09-53074750e7f3.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/3b20ce74-7f22-4f9b-9b09-53074750e7f3.mp4&#34; type=&#34;video/mp4&#34;&gt;leapsville-froggit-rescue-1.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/527b2fda-b1a2-49da-bfb4-4c30bcce9049.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;leapsville-froggit-rescue-2.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/527b2fda-b1a2-49da-bfb4-4c30bcce9049.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/527b2fda-b1a2-49da-bfb4-4c30bcce9049.mp4&#34; type=&#34;video/mp4&#34;&gt;leapsville-froggit-rescue-2.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;p&gt;After doing a few missions we completed leapsville.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/544b8197-303e-4b8e-9127-79ddac4dbc45.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;completing-leapsville.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/544b8197-303e-4b8e-9127-79ddac4dbc45.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/544b8197-303e-4b8e-9127-79ddac4dbc45.mp4&#34; type=&#34;video/mp4&#34;&gt;completing-leapsville.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;finding-sulfur&#34;&gt;Finding Sulfur &lt;a href=&#34;#finding-sulfur&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;Finding sulfur in Trailmakers was a little tricky, first trying to find where&#xA;it was, then realizing that it was hidden in this bulbous plant.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/4f2be358-8a14-4033-adc4-ea941e605e0a.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;finding-sulfur.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/4f2be358-8a14-4033-adc4-ea941e605e0a.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/4f2be358-8a14-4033-adc4-ea941e605e0a.mp4&#34; type=&#34;video/mp4&#34;&gt;finding-sulfur.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;derogs-pond-froggit-rescue&#34;&gt;Derogs Pond Froggit Rescue &lt;a href=&#34;#derogs-pond-froggit-rescue&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/69965387-7eba-4d32-83b9-cf0aa42c5495.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;derogs-pond-froggit-rescue-2.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/69965387-7eba-4d32-83b9-cf0aa42c5495.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/69965387-7eba-4d32-83b9-cf0aa42c5495.mp4&#34; type=&#34;video/mp4&#34;&gt;derogs-pond-froggit-rescue-2.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;meadows-intercity-bus-service&#34;&gt;Meadows Intercity Bus Service &lt;a href=&#34;#meadows-intercity-bus-service&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/777afbd6-7f75-4da6-aaeb-f35b1ef002d0.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;meadows-intercity-bus-service-2.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/777afbd6-7f75-4da6-aaeb-f35b1ef002d0.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/777afbd6-7f75-4da6-aaeb-f35b1ef002d0.mp4&#34; type=&#34;video/mp4&#34;&gt;meadows-intercity-bus-service-2.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/933f6ff0-e1f8-421f-9de1-e6e7fffea841.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;meadows-intercity-bus-service-3.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/933f6ff0-e1f8-421f-9de1-e6e7fffea841.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/933f6ff0-e1f8-421f-9de1-e6e7fffea841.mp4&#34; type=&#34;video/mp4&#34;&gt;meadows-intercity-bus-service-3.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;mega-drill-mudflats&#34;&gt;Mega Drill Mudflats &lt;a href=&#34;#mega-drill-mudflats&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;We came into this mega drill thinking we were prepared, but I was wrong.  I&#xA;equipped shotguns thinking it would be kinda like the last one, at the last&#xA;second Master Sapo tells you that you need an EMP, which we got equiped.  Once&#xA;we got in we realized that getting close to anything is really hard and all the&#xA;shotguns were useless, and to top it off all the Botnak attacks make it&#xA;impossible to reconfigure.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/a247d80a-88a5-4712-ba81-6282b704caa6.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;mega-drill-mudflats.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/a247d80a-88a5-4712-ba81-6282b704caa6.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/a247d80a-88a5-4712-ba81-6282b704caa6.mp4&#34; type=&#34;video/mp4&#34;&gt;mega-drill-mudflats.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;I really think the devs should make a small free zone where you don’t get&#xA;attacked where you respawn.&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;huge-trophy-truck&#34;&gt;Huge Trophy Truck &lt;a href=&#34;#huge-trophy-truck&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;I like making Trophy Trucks with big suspension.  They seem like they glitch&#xA;out more than they help, but I think they are fun, here is a huge jump I landed&#xA;hard in mine.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/251eaf40-c87d-466e-ab5c-24417a6b01ac.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;huge-trophy-truck-jump.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/251eaf40-c87d-466e-ab5c-24417a6b01ac.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/251eaf40-c87d-466e-ab5c-24417a6b01ac.mp4&#34; type=&#34;video/mp4&#34;&gt;huge-trophy-truck-jump.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;emperical-extractions&#34;&gt;Emperical Extractions &lt;a href=&#34;#emperical-extractions&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;When pulling the scientists out of the their reserch to bring them back I did&#xA;not have enough boost to lift them, we needed to take a pitstop to get them up&#xA;to the treetops.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/95efd27b-af1e-450c-b27d-3108a404e62b.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;emperical-extractions-adding-boost.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/95efd27b-af1e-450c-b27d-3108a404e62b.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/95efd27b-af1e-450c-b27d-3108a404e62b.mp4&#34; type=&#34;video/mp4&#34;&gt;emperical-extractions-adding-boost.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/790ed882-b272-495c-889e-eb1cf8707e58.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;emperical-extractions-landing.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/790ed882-b272-495c-889e-eb1cf8707e58.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/790ed882-b272-495c-889e-eb1cf8707e58.mp4&#34; type=&#34;video/mp4&#34;&gt;emperical-extractions-landing.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ Doomlab7 homelab-compose</title>
    <id>https://waylonwalker.com/doomlab7-homelab-compose/</id>
    <updated>2025-03-06T14:56:33Z</updated>
    <published>2025-03-06T14:56:33Z</published>
    <link href="https://waylonwalker.com/doomlab7-homelab-compose/" rel="alternate" type="text/html"></link>
    <summary type="text">If you&#39;re into interesting projects, don&#39;t miss out on homelab-compose, created by Doomlab7.</summary>
    <content type="html">&lt;p&gt;If you’re into interesting projects, don’t miss out on &lt;a href=&#34;https://github.com/Doomlab7/homelab-compose&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;homelab-compose&lt;/a&gt;, created by &lt;a href=&#34;https://github.com/Doomlab7&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;Doomlab7&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;A repository for the applications I run via docker-compose in my &lt;a href=&#34;/homelab/&#34; class=&#34;glossary-term&#34; title=&#34;A place to self host applications. For me this is primarily self built web applications, and applications for sharing files with my family. Techno Tim has a...&#34;&gt;homelab&lt;/a&gt;&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ deepseek-ai smallpond</title>
    <id>https://waylonwalker.com/deepseek-ai-smallpond/</id>
    <updated>2025-03-04T20:17:58Z</updated>
    <published>2025-03-04T20:17:58Z</published>
    <link href="https://waylonwalker.com/deepseek-ai-smallpond/" rel="alternate" type="text/html"></link>
    <summary type="text">I recently discovered smallpond by deepseek-ai, and it&#39;s truly impressive.</summary>
    <content type="html">&lt;p&gt;I recently discovered &lt;a href=&#34;https://github.com/deepseek-ai/smallpond&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;smallpond&lt;/a&gt; by &lt;a href=&#34;https://github.com/deepseek-ai&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;deepseek-ai&lt;/a&gt;, and it’s truly impressive.&lt;/p&gt;&#xA;&lt;p&gt;A lightweight data processing framework built on DuckDB and 3FS.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 PyApp</title>
    <id>https://waylonwalker.com/thought-578/</id>
    <updated>2025-03-03T01:52:54Z</updated>
    <published>2025-03-03T01:52:54Z</published>
    <link href="https://waylonwalker.com/thought-578/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://ofek.dev/pyapp/latest/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://ofek.dev/pyapp/latest/&#34; class=&#34;embed-card-link  has-avatar has-avatar-before&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/ofek.dev.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/ofek.dev.ico&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;PyApp&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;ofek.dev&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;I think I’m getting really close to having a good workflow setup for using pyapp.  Such an amazing project to allow developers to create applications in python without passing on the hassle of python and managing installs to the user.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ nolar kopf</title>
    <id>https://waylonwalker.com/nolar-kopf/</id>
    <updated>2025-03-02T20:32:30Z</updated>
    <published>2025-03-02T20:32:30Z</published>
    <link href="https://waylonwalker.com/nolar-kopf/" rel="alternate" type="text/html"></link>
    <summary type="text">The work on kopf by nolar.</summary>
    <content type="html">&lt;p&gt;The work on &lt;a href=&#34;https://github.com/nolar/kopf&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;kopf&lt;/a&gt; by &lt;a href=&#34;https://github.com/nolar&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;nolar&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;A Python framework to write Kubernetes operators in just a few lines of code&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 CSS Battle - Re-create an Image with CSS in the Fewest Charact...</title>
    <id>https://waylonwalker.com/thought-577/</id>
    <updated>2025-03-01T16:22:07Z</updated>
    <published>2025-03-01T16:22:07Z</published>
    <link href="https://waylonwalker.com/thought-577/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/watch?v=B32NKRKJ_Cc</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;B32NKRKJ_Cc&#34; title=&#34;CSS Battle - Re-create an Image with CSS in the Fewest Characters | Experts Compete in CSS Code Golf&#34; playlabel=&#34;Play: CSS Battle - Re-create an Image with CSS in the Fewest Characters | Experts Compete in CSS Code Golf&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Watching Wes fiddle through this with what a sane person would write in a normal day application and not applying the tricks for this kind of battle is how I feel when trying to do leetcode.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>THPS 1 School Gaps</title>
    <id>https://waylonwalker.com/thps-1-school-gaps/</id>
    <updated>2025-03-01T10:39:28Z</updated>
    <published>2025-03-01T10:39:28Z</published>
    <link href="https://waylonwalker.com/thps-1-school-gaps/" rel="alternate" type="text/html"></link>
    <summary type="text">On the road to ** achievement I got all School Gaps in THPS1. This is a super fun level, I&#39;ll have to admit that I had to look up at least a quarter of them,...</summary>
    <content type="html">&lt;p&gt;On the road to &lt;strong&gt;Gap Master&lt;/strong&gt; achievement I got all School Gaps in THPS1.&#xA;This is a super fun level, I’ll have to admit that I had to look up at least a&#xA;quarter of them, and could not find them myself, mostly due to the naming, all&#xA;of the rail tricks were actually ledges and I was looking for big rails.  None&#xA;of the warehouse gaps were manuals so I had no idea that the downhill and&#xA;accross the gym would be manual tricks.&lt;/p&gt;&#xA;&lt;p&gt;Previously &lt;a href=&#34;/thps-1-warehouse-gaps/&#34; class=&#34;wikilink&#34; data-title=&#34;THPS 1 Warehouse Gaps&#34; data-description=&#34;On the road to ** achievement I got all Warehouse Gaps in THPS1. This is this classic warehouse level that everyone thinks of when THPS is mentioned. Such a...&#34; data-date=&#34;2025-02-22&#34; data-preview=&#34;On the road to ** achievement I got all Warehouse Gaps in THPS1. This is this classic warehouse level that everyone thinks of when THPS is mentioned. Such a...&#34;&gt;THPS 1 Warehouse Gaps&lt;/a&gt;&#xA;next &lt;a href=&#34;/thps-1-mall-gaps/&#34; class=&#34;wikilink&#34; data-title=&#34;THPS 1 Mall Gaps&#34; data-description=&#34;This is one of the most memorable levels for me in THPS1 from when I had originally played it. Surprisingly there aren&amp;#39;t as many gaps in it as I thought...&#34; data-date=&#34;2025-03-01&#34; data-preview=&#34;This is one of the most memorable levels for me in THPS1 from when I had originally played it. Surprisingly there aren&amp;#39;t as many gaps in it as I thought...&#34;&gt;THPS 1 Mall Gaps&lt;/a&gt;&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/0e56dc1e-27b6-4695-b4de-b8bc298285d7.png&#34; class=&#34;glightbox-link&#34; aria-label=&#34;screenshot-2025-02-20T16-38-32-148Z.png&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/0e56dc1e-27b6-4695-b4de-b8bc298285d7.png&#34; alt=&#34;screenshot-2025-02-20T16-38-32-148Z.png&#34;/ data-glightbox=&#34;description: screenshot-2025-02-20T16-38-32-148Z.png&#34;&gt;&lt;/a&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/71768034-e93c-4c48-bc0c-3d0b930dc327.png&#34; class=&#34;glightbox-link&#34; aria-label=&#34;screenshot-2025-02-20T16-39-53-452Z.png&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/71768034-e93c-4c48-bc0c-3d0b930dc327.png&#34; alt=&#34;screenshot-2025-02-20T16-39-53-452Z.png&#34;/ data-glightbox=&#34;description: screenshot-2025-02-20T16-39-53-452Z.png&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;ditchin-class&#34;&gt;Ditchin Class &lt;a href=&#34;#ditchin-class&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/cea84efd-5860-4ff4-ac17-6c2a9de4321e.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;THPS1-2-DitchinClass.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/cea84efd-5860-4ff4-ac17-6c2a9de4321e.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/cea84efd-5860-4ff4-ac17-6c2a9de4321e.mp4&#34; type=&#34;video/mp4&#34;&gt;THPS1-2-DitchinClass.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;dumpster-rail-gap&#34;&gt;Dumpster Rail Gap &lt;a href=&#34;#dumpster-rail-gap&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/40139234-0b55-498a-8c01-c9e5ddcdc9a7.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;THPS1-2-DumpsterRailGap.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/40139234-0b55-498a-8c01-c9e5ddcdc9a7.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/40139234-0b55-498a-8c01-c9e5ddcdc9a7.mp4&#34; type=&#34;video/mp4&#34;&gt;THPS1-2-DumpsterRailGap.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;funbox-table-transfer&#34;&gt;Funbox Table Transfer &lt;a href=&#34;#funbox-table-transfer&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/fedfcae4-82f1-4332-b768-3008427b4601.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;THPS1-2-FunBoxToTableTransfer.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/fedfcae4-82f1-4332-b768-3008427b4601.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/fedfcae4-82f1-4332-b768-3008427b4601.mp4&#34; type=&#34;video/mp4&#34;&gt;THPS1-2-FunBoxToTableTransfer.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;garbage-ollie&#34;&gt;Garbage Ollie &lt;a href=&#34;#garbage-ollie&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/e42a47d8-fa31-46ab-92b7-7e634dcb1b21.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;THPS1-2-GarbageOllie.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/e42a47d8-fa31-46ab-92b7-7e634dcb1b21.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/e42a47d8-fa31-46ab-92b7-7e634dcb1b21.mp4&#34; type=&#34;video/mp4&#34;&gt;THPS1-2-GarbageOllie.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;gimme-gap&#34;&gt;Gimme Gap &lt;a href=&#34;#gimme-gap&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/afa7cce3-33af-4c8f-bb40-99f3ff68f406.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;THPS1-2-GimmeGap.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/afa7cce3-33af-4c8f-bb40-99f3ff68f406.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/afa7cce3-33af-4c8f-bb40-99f3ff68f406.mp4&#34; type=&#34;video/mp4&#34;&gt;THPS1-2-GimmeGap.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;hall-pass-gap&#34;&gt;Hall Pass gap &lt;a href=&#34;#hall-pass-gap&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/e68285be-a9fd-4afb-977f-53cc0fff09e8.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;THPS1-2-HallPassGap.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/e68285be-a9fd-4afb-977f-53cc0fff09e8.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/e68285be-a9fd-4afb-977f-53cc0fff09e8.mp4&#34; type=&#34;video/mp4&#34;&gt;THPS1-2-HallPassGap.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;all-access-gap&#34;&gt;All-Access Gap &lt;a href=&#34;#all-access-gap&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/7ff62672-9ff2-4f2f-a47f-e5fe15174e6e.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;THPS1-2-AllAccessGap.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/7ff62672-9ff2-4f2f-a47f-e5fe15174e6e.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/7ff62672-9ff2-4f2f-a47f-e5fe15174e6e.mp4&#34; type=&#34;video/mp4&#34;&gt;THPS1-2-AllAccessGap.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;huge-rail&#34;&gt;Huge Rail &lt;a href=&#34;#huge-rail&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/0ba66287-8166-4573-875a-7ef7cac534d9.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;THPS1-2-HugeRail.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/0ba66287-8166-4573-875a-7ef7cac534d9.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/0ba66287-8166-4573-875a-7ef7cac534d9.mp4&#34; type=&#34;video/mp4&#34;&gt;THPS1-2-HugeRail.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;kicker-gap&#34;&gt;Kicker Gap &lt;a href=&#34;#kicker-gap&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/974c4be7-0f80-49d6-85cd-ee3fd00f042e.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;THPS1-2-KickerGap.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/974c4be7-0f80-49d6-85cd-ee3fd00f042e.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/974c4be7-0f80-49d6-85cd-ee3fd00f042e.mp4&#34; type=&#34;video/mp4&#34;&gt;THPS1-2-KickerGap.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;long-ass-rail&#34;&gt;Long Ass Rail &lt;a href=&#34;#long-ass-rail&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/11e70881-e495-4988-b3fb-c7e6517394c6.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;THPS1-2-LongAssRail.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/11e70881-e495-4988-b3fb-c7e6517394c6.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/11e70881-e495-4988-b3fb-c7e6517394c6.mp4&#34; type=&#34;video/mp4&#34;&gt;THPS1-2-LongAssRail.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;mini-gap&#34;&gt;Mini Gap &lt;a href=&#34;#mini-gap&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/374f1155-96de-442d-9972-5fd728b50cc2.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;THPS1-2-MiniGap.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/374f1155-96de-442d-9972-5fd728b50cc2.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/374f1155-96de-442d-9972-5fd728b50cc2.mp4&#34; type=&#34;video/mp4&#34;&gt;THPS1-2-MiniGap.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;over-a-footbridge&#34;&gt;Over a Footbridge &lt;a href=&#34;#over-a-footbridge&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/1445e693-9586-45b8-855e-d90b98066454.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;THPS1-2-OverAFootBridge.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/1445e693-9586-45b8-855e-d90b98066454.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/1445e693-9586-45b8-855e-d90b98066454.mp4&#34; type=&#34;video/mp4&#34;&gt;THPS1-2-OverAFootBridge.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;over-the-air-condidtioner&#34;&gt;Over the Air Condidtioner &lt;a href=&#34;#over-the-air-condidtioner&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/cdae2e2c-4ea9-49c1-b7b6-40a4f4fc4bce.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;THPS1-2-OverTheAirConditioner.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/cdae2e2c-4ea9-49c1-b7b6-40a4f4fc4bce.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/cdae2e2c-4ea9-49c1-b7b6-40a4f4fc4bce.mp4&#34; type=&#34;video/mp4&#34;&gt;THPS1-2-OverTheAirConditioner.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;park-gap&#34;&gt;Park Gap &lt;a href=&#34;#park-gap&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/e525a6e7-373f-431d-839e-6a38047f2aa1.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;THPS1-2-ParkGap.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/e525a6e7-373f-431d-839e-6a38047f2aa1.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/e525a6e7-373f-431d-839e-6a38047f2aa1.mp4&#34; type=&#34;video/mp4&#34;&gt;THPS1-2-ParkGap.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;planter-gap&#34;&gt;Planter Gap &lt;a href=&#34;#planter-gap&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/f10f0ca2-141b-4463-a358-1ad65c077424.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;THPS1-2-PlanterGap.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/f10f0ca2-141b-4463-a358-1ad65c077424.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/f10f0ca2-141b-4463-a358-1ad65c077424.mp4&#34; type=&#34;video/mp4&#34;&gt;THPS1-2-PlanterGap.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;playground-rail&#34;&gt;Playground Rail &lt;a href=&#34;#playground-rail&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/561dcdc2-6a59-40b4-9a0b-b973c16ee946.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;THPS1-2-PlaygroundRail.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/561dcdc2-6a59-40b4-9a0b-b973c16ee946.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/561dcdc2-6a59-40b4-9a0b-b973c16ee946.mp4&#34; type=&#34;video/mp4&#34;&gt;THPS1-2-PlaygroundRail.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;rail-to-rail-transfer&#34;&gt;Rail to Rail Transfer &lt;a href=&#34;#rail-to-rail-transfer&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/71867722-fb1f-4fc6-97f5-186508e96611.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;THPS1-2-RailToRailTransfer.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/71867722-fb1f-4fc6-97f5-186508e96611.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/71867722-fb1f-4fc6-97f5-186508e96611.mp4&#34; type=&#34;video/mp4&#34;&gt;THPS1-2-RailToRailTransfer.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;roof-to-awning-gap&#34;&gt;Roof To Awning Gap &lt;a href=&#34;#roof-to-awning-gap&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/32669ecc-784a-4aa9-8c29-1ab6a55a1311.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;THPS1-2-RoofToAwningGap.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/32669ecc-784a-4aa9-8c29-1ab6a55a1311.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/32669ecc-784a-4aa9-8c29-1ab6a55a1311.mp4&#34; type=&#34;video/mp4&#34;&gt;THPS1-2-RoofToAwningGap.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;roof-to-roof-gap&#34;&gt;Roof To Roof Gap &lt;a href=&#34;#roof-to-roof-gap&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/bc543ef6-1aa3-46af-85e3-f469a63512fa.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;THPS1-2-RoofToRoofGap.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/bc543ef6-1aa3-46af-85e3-f469a63512fa.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/bc543ef6-1aa3-46af-85e3-f469a63512fa.mp4&#34; type=&#34;video/mp4&#34;&gt;THPS1-2-RoofToRoofGap.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;funbox-to-rail-transfer&#34;&gt;Funbox To Rail Transfer &lt;a href=&#34;#funbox-to-rail-transfer&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/61f44f4f-1b44-4168-996d-1f80a2318a22.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;THPS1-2-FunboxToRailTransfer.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/61f44f4f-1b44-4168-996d-1f80a2318a22.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/61f44f4f-1b44-4168-996d-1f80a2318a22.mp4&#34; type=&#34;video/mp4&#34;&gt;THPS1-2-FunboxToRailTransfer.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;downhill-manual&#34;&gt;Downhill Manual &lt;a href=&#34;#downhill-manual&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/04e51c14-c73f-479b-8e7c-d81b63010a27.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;THPS1-2-DownhillManual.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/04e51c14-c73f-479b-8e7c-d81b63010a27.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/04e51c14-c73f-479b-8e7c-d81b63010a27.mp4&#34; type=&#34;video/mp4&#34;&gt;THPS1-2-DownhillManual.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;accross-the-gym&#34;&gt;Accross the Gym &lt;a href=&#34;#accross-the-gym&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/096328b8-a6b0-46be-b77e-ac89b5cac85e.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;THPS1-2-AccrossTheGym.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/096328b8-a6b0-46be-b77e-ac89b5cac85e.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/096328b8-a6b0-46be-b77e-ac89b5cac85e.mp4&#34; type=&#34;video/mp4&#34;&gt;THPS1-2-AccrossTheGym.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;roof-hop&#34;&gt;Roof Hop &lt;a href=&#34;#roof-hop&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/394c6a37-892a-47e3-8269-63bec30da2d8.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;THPS1-2-RoofHop.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/394c6a37-892a-47e3-8269-63bec30da2d8.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/394c6a37-892a-47e3-8269-63bec30da2d8.mp4&#34; type=&#34;video/mp4&#34;&gt;THPS1-2-RoofHop.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;down-the-awning&#34;&gt;Down the Awning &lt;a href=&#34;#down-the-awning&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/6a11fdcb-fc52-49ba-b858-1936deda6c9c.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;THPS1-2-DownTheAwning.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/6a11fdcb-fc52-49ba-b858-1936deda6c9c.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/6a11fdcb-fc52-49ba-b858-1936deda6c9c.mp4&#34; type=&#34;video/mp4&#34;&gt;THPS1-2-DownTheAwning.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;perfectly-balanced&#34;&gt;Perfectly Balanced &lt;a href=&#34;#perfectly-balanced&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/b561af30-30d2-4fc3-9e42-8ee1b630fa32.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;THPS1-2-PerfectlyBalanced.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/b561af30-30d2-4fc3-9e42-8ee1b630fa32.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/b561af30-30d2-4fc3-9e42-8ee1b630fa32.mp4&#34; type=&#34;video/mp4&#34;&gt;THPS1-2-PerfectlyBalanced.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;gigantic-rail&#34;&gt;Gigantic Rail &lt;a href=&#34;#gigantic-rail&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/7beb12ae-3b44-466f-a7d5-59bde6584929.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;THPS1-2-GiganticRail.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/7beb12ae-3b44-466f-a7d5-59bde6584929.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/7beb12ae-3b44-466f-a7d5-59bde6584929.mp4&#34; type=&#34;video/mp4&#34;&gt;THPS1-2-GiganticRail.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;ridiculous-rail&#34;&gt;Ridiculous Rail &lt;a href=&#34;#ridiculous-rail&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/d3583f74-ce98-49bf-91d8-c5e5e6afe0c8.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;THPS1-2-RidiculousRail.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/d3583f74-ce98-49bf-91d8-c5e5e6afe0c8.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/d3583f74-ce98-49bf-91d8-c5e5e6afe0c8.mp4&#34; type=&#34;video/mp4&#34;&gt;THPS1-2-RidiculousRail.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;got-the-badge&#34;&gt;Got the badge &lt;a href=&#34;#got-the-badge&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/d6cfd19a-0f9d-4faa-a22f-887620ed9b6e.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;image&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/d6cfd19a-0f9d-4faa-a22f-887620ed9b6e.webp&#34; alt=&#34;image&#34;/ data-glightbox=&#34;description: image&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>THPS 1 Mall Gaps</title>
    <id>https://waylonwalker.com/thps-1-mall-gaps/</id>
    <updated>2025-03-01T10:39:28Z</updated>
    <published>2025-03-01T10:39:28Z</published>
    <link href="https://waylonwalker.com/thps-1-mall-gaps/" rel="alternate" type="text/html"></link>
    <summary type="text">This is one of the most memorable levels for me in THPS1 from when I had originally played it. Surprisingly there aren&#39;t as many gaps in it as I thought...</summary>
    <content type="html">&lt;p&gt;This is one of the most memorable levels for me in THPS1 from when I had&#xA;originally played it.  Surprisingly there aren’t as many gaps in it as I&#xA;thought there would be, there are definitely a lot that you can make up on your&#xA;own.  Anyways here’s my playthrough of all the mall gaps in THPS1 on my way to gap master.&lt;/p&gt;&#xA;&lt;p&gt;Previously &lt;a href=&#34;/thps-1-school-gaps/&#34; class=&#34;wikilink&#34; data-title=&#34;THPS 1 School Gaps&#34; data-description=&#34;On the road to ** achievement I got all School Gaps in THPS1. This is a super fun level, I&amp;#39;ll have to admit that I had to look up at least a quarter of them,...&#34; data-date=&#34;2025-03-01&#34; data-preview=&#34;On the road to ** achievement I got all School Gaps in THPS1. This is a super fun level, I&amp;#39;ll have to admit that I had to look up at least a quarter of them,...&#34;&gt;THPS 1 School Gaps&lt;/a&gt;&#xA;Next &lt;a href=&#34;/thps-1-skate-park-gaps/&#34; class=&#34;wikilink&#34; data-title=&#34;THPS 1 Skate Park Gaps&#34; data-description=&#34;Previously thps-1-mall-gaps Next thps-1-downtown-gaps&#34; data-date=&#34;2025-03-08&#34; data-preview=&#34;Previously thps-1-mall-gaps Next thps-1-downtown-gaps&#34;&gt;THPS 1 Skate Park Gaps&lt;/a&gt;&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/e4c2feb1-4d5c-480d-b9bd-7e98b9a7c58c.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;image&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/e4c2feb1-4d5c-480d-b9bd-7e98b9a7c58c.webp&#34; alt=&#34;image&#34;/ data-glightbox=&#34;description: image&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;huge-stair-set-off-a-mezzanine&#34;&gt;Huge Stair Set Off A Mezzanine &lt;a href=&#34;#huge-stair-set-off-a-mezzanine&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/dacd5c3a-1ded-470b-86fa-cb13c4f9fad0.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;THPS1-3-HugeStairSetOffAMezzanine.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/dacd5c3a-1ded-470b-86fa-cb13c4f9fad0.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/dacd5c3a-1ded-470b-86fa-cb13c4f9fad0.mp4&#34; type=&#34;video/mp4&#34;&gt;THPS1-3-HugeStairSetOffAMezzanine.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;coffee-grind&#34;&gt;Coffee Grind &lt;a href=&#34;#coffee-grind&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/4803cb45-6773-44c3-8650-536423d40741.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;THPS1-3-CoffeeGrind.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/4803cb45-6773-44c3-8650-536423d40741.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/4803cb45-6773-44c3-8650-536423d40741.mp4&#34; type=&#34;video/mp4&#34;&gt;THPS1-3-CoffeeGrind.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;the-flying-leap&#34;&gt;The Flying Leap &lt;a href=&#34;#the-flying-leap&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/c9e6fe6a-a06b-4304-828f-004f7758694e.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;THPS1-3-TheFlyingLeap.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/c9e6fe6a-a06b-4304-828f-004f7758694e.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/c9e6fe6a-a06b-4304-828f-004f7758694e.mp4&#34; type=&#34;video/mp4&#34;&gt;THPS1-3-TheFlyingLeap.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;for-the-whole-atrium&#34;&gt;For the Whole Atrium &lt;a href=&#34;#for-the-whole-atrium&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/3319839a-b57a-4ea9-99ed-744471bfd377.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;THPS1-3-ForTheWholeAtrium.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/3319839a-b57a-4ea9-99ed-744471bfd377.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/3319839a-b57a-4ea9-99ed-744471bfd377.mp4&#34; type=&#34;video/mp4&#34;&gt;THPS1-3-ForTheWholeAtrium.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;fountain-gap&#34;&gt;Fountain Gap &lt;a href=&#34;#fountain-gap&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/030956f6-d827-41da-8577-85e0e76f9041.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;THPS1-3-FountainGap.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/030956f6-d827-41da-8577-85e0e76f9041.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/030956f6-d827-41da-8577-85e0e76f9041.mp4&#34; type=&#34;video/mp4&#34;&gt;THPS1-3-FountainGap.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;exit-stage-right&#34;&gt;Exit Stage Right &lt;a href=&#34;#exit-stage-right&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/212eef81-eeb2-48c4-b8a4-392c1e6479e1.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;THPS1-3-ExitStageRight.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/212eef81-eeb2-48c4-b8a4-392c1e6479e1.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/212eef81-eeb2-48c4-b8a4-392c1e6479e1.mp4&#34; type=&#34;video/mp4&#34;&gt;THPS1-3-ExitStageRight.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;exit-stage-left&#34;&gt;Exit Stage Left &lt;a href=&#34;#exit-stage-left&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/8d9957e7-7cbd-4822-8b26-df9b9dc3f783.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;THPS1-3-ExitStageLeft.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/8d9957e7-7cbd-4822-8b26-df9b9dc3f783.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/8d9957e7-7cbd-4822-8b26-df9b9dc3f783.mp4&#34; type=&#34;video/mp4&#34;&gt;THPS1-3-ExitStageLeft.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;over-a-stair-set&#34;&gt;Over A Stair Set &lt;a href=&#34;#over-a-stair-set&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/8c417457-0ea9-481d-af29-397fa2cbf1fa.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;THPS1-3-OverAStairSet.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/8c417457-0ea9-481d-af29-397fa2cbf1fa.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/8c417457-0ea9-481d-af29-397fa2cbf1fa.mp4&#34; type=&#34;video/mp4&#34;&gt;THPS1-3-OverAStairSet.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;over-a-huge-stair-set&#34;&gt;Over A Huge Stair Set &lt;a href=&#34;#over-a-huge-stair-set&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/4aa2815f-f1c8-473e-8ede-2235a1f3b9ad.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;THPS1-3-OverAHugeStairSet.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/4aa2815f-f1c8-473e-8ede-2235a1f3b9ad.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/4aa2815f-f1c8-473e-8ede-2235a1f3b9ad.mp4&#34; type=&#34;video/mp4&#34;&gt;THPS1-3-OverAHugeStairSet.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;planter-gap&#34;&gt;Planter Gap &lt;a href=&#34;#planter-gap&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/de81b233-d43d-4696-9e48-f84e8ecdb971.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;THPS1-3-PlanterGap.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/de81b233-d43d-4696-9e48-f84e8ecdb971.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/de81b233-d43d-4696-9e48-f84e8ecdb971.mp4&#34; type=&#34;video/mp4&#34;&gt;THPS1-3-PlanterGap.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;rail-combo&#34;&gt;Rail Combo &lt;a href=&#34;#rail-combo&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/7edde848-0f0e-4160-b68b-17f9f567ab4b.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;THPS1-3-RailCombo.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/7edde848-0f0e-4160-b68b-17f9f567ab4b.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/7edde848-0f0e-4160-b68b-17f9f567ab4b.mp4&#34; type=&#34;video/mp4&#34;&gt;THPS1-3-RailCombo.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;skater-excalator-gap&#34;&gt;Skater Excalator Gap &lt;a href=&#34;#skater-excalator-gap&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/d11a86da-56b0-4578-a5ff-eb752cbc4478.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;THPS1-3-SkaterEscalatorGap.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/d11a86da-56b0-4578-a5ff-eb752cbc4478.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/d11a86da-56b0-4578-a5ff-eb752cbc4478.mp4&#34; type=&#34;video/mp4&#34;&gt;THPS1-3-SkaterEscalatorGap.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;accross-the-light-beam&#34;&gt;Accross The Light Beam &lt;a href=&#34;#accross-the-light-beam&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/0888bd4b-4f57-41e8-8b43-78c665d13ec9.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;THPS1-3-AcrossTheLightBeam.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/0888bd4b-4f57-41e8-8b43-78c665d13ec9.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/0888bd4b-4f57-41e8-8b43-78c665d13ec9.mp4&#34; type=&#34;video/mp4&#34;&gt;THPS1-3-AcrossTheLightBeam.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;the-long-rail&#34;&gt;The Long Rail &lt;a href=&#34;#the-long-rail&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/79d246e4-5fef-4061-a60f-7fdac6b8e5d8.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;THPS1-3-TheLongRail.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/79d246e4-5fef-4061-a60f-7fdac6b8e5d8.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/79d246e4-5fef-4061-a60f-7fdac6b8e5d8.mp4&#34; type=&#34;video/mp4&#34;&gt;THPS1-3-TheLongRail.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;the-short-rail&#34;&gt;The Short Rail &lt;a href=&#34;#the-short-rail&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/eaa5a04e-1f9b-48b6-ba9b-24f0923efeb2.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;THPS1-3-TheShortRail.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/eaa5a04e-1f9b-48b6-ba9b-24f0923efeb2.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/eaa5a04e-1f9b-48b6-ba9b-24f0923efeb2.mp4&#34; type=&#34;video/mp4&#34;&gt;THPS1-3-TheShortRail.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ PrefectHQ marvin</title>
    <id>https://waylonwalker.com/prefecthq-marvin/</id>
    <updated>2025-02-28T14:37:43Z</updated>
    <published>2025-02-28T14:37:43Z</published>
    <link href="https://waylonwalker.com/prefecthq-marvin/" rel="alternate" type="text/html"></link>
    <summary type="text">Check out PrefectHQ and their project marvin.</summary>
    <content type="html">&lt;p&gt;Check out &lt;a href=&#34;https://github.com/PrefectHQ&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;PrefectHQ&lt;/a&gt; and their project &lt;a href=&#34;https://github.com/PrefectHQ/marvin&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;marvin&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;✨ AI agents that spark joy&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Ergonomic Laptop — Evan and Katelyn</title>
    <id>https://waylonwalker.com/thought-576/</id>
    <updated>2025-02-28T14:01:14Z</updated>
    <published>2025-02-28T14:01:14Z</published>
    <link href="https://waylonwalker.com/thought-576/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.evanandkatelyn.com/blog/ergotop</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://www.evanandkatelyn.com/blog/ergotop&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://static1.squarespace.com/static/65b8ea1c81afac1a1ecbd00d/67b798a55231271162503eac/67b798a55231271162503eae/1750099379498/vlcsnap-2025-02-10-11h23m28s424.png?format=1500w&#34; alt=&#34;Ergonomic Laptop — Evan and Katelyn — Back pain ends here.&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: Ergonomic Laptop — Evan and Katelyn — Back pain ends here.&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Ergonomic Laptop — Evan and Katelyn&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Back pain ends here.&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;Evan and Katelyn · evanandkatelyn.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;This is such a cool idea, I tend to not use laptops at all because they are so uncomfortable I just wait till I’m back at my desk.  This solves two main issues I have with laptops, the posture to use them is shit, the keyboards that come on them is not what I want to use.  I’ve solved the latter with my own custom keyboard.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ rancher system-upgrade-controller</title>
    <id>https://waylonwalker.com/rancher-system-upgrade-controller/</id>
    <updated>2025-02-26T13:10:31Z</updated>
    <published>2025-02-26T13:10:31Z</published>
    <link href="https://waylonwalker.com/rancher-system-upgrade-controller/" rel="alternate" type="text/html"></link>
    <summary type="text">Just starred system-upgrade-controller by rancher. It&#39;s an exciting project with a lot to offer.</summary>
    <content type="html">&lt;p&gt;Just starred &lt;a href=&#34;https://github.com/rancher/system-upgrade-controller&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;system-upgrade-controller&lt;/a&gt; by &lt;a href=&#34;https://github.com/rancher&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;rancher&lt;/a&gt;. It’s an exciting project with a lot to offer.&lt;/p&gt;&#xA;&lt;p&gt;In your Kubernetes, upgrading your nodes&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ pythonarcade arcade</title>
    <id>https://waylonwalker.com/pythonarcade-arcade/</id>
    <updated>2025-02-25T14:03:02Z</updated>
    <published>2025-02-25T14:03:02Z</published>
    <link href="https://waylonwalker.com/pythonarcade-arcade/" rel="alternate" type="text/html"></link>
    <summary type="text">Just starred arcade by pythonarcade. It&#39;s an exciting project with a lot to offer.</summary>
    <content type="html">&lt;p&gt;Just starred &lt;a href=&#34;https://github.com/pythonarcade/arcade&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;arcade&lt;/a&gt; by &lt;a href=&#34;https://github.com/pythonarcade&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;pythonarcade&lt;/a&gt;. It’s an exciting project with a lot to offer.&lt;/p&gt;&#xA;&lt;p&gt;Easy to use Python library for creating 2D arcade games.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 OpenTools | The open MCP server registry</title>
    <id>https://waylonwalker.com/thought-575/</id>
    <updated>2025-02-23T22:31:33Z</updated>
    <published>2025-02-23T22:31:33Z</published>
    <link href="https://waylonwalker.com/thought-575/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://opentools.com/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://opentools.com/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://opentools.com/preview-card.png&#34; alt=&#34;OpenTools | The API for LLM tool use — One API to use any LLM with every MCP tool&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: OpenTools | The API for LLM tool use — One API to use any LLM with every MCP tool&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;OpenTools | The API for LLM tool use&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;One API to use any LLM with every MCP tool&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;OpenTools · opentools.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;OpenTools is an index for mcp servers to work with new agentic workflows like roo code and windsurf.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 I Made My Own JBOD Enclosure For CHEAP - YouTube</title>
    <id>https://waylonwalker.com/thought-574/</id>
    <updated>2025-02-23T22:30:42Z</updated>
    <published>2025-02-23T22:30:42Z</published>
    <link href="https://waylonwalker.com/thought-574/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/watch?v=QGkqwdM0L6g&amp;t=781s</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;QGkqwdM0L6g&#34; title=&#34;I Made My Own JBOD Enclosure For CHEAP&#34; playlabel=&#34;Play: I Made My Own JBOD Enclosure For CHEAP&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;I really like this idea for a &lt;a href=&#34;/homelab/&#34; class=&#34;glossary-term&#34; title=&#34;A place to self host applications. For me this is primarily self built web applications, and applications for sharing files with my family. Techno Tim has a...&#34;&gt;homelab&lt;/a&gt; jbod. Hardware Haven builds out &lt;strong&gt;J&lt;/strong&gt;ust a &lt;strong&gt;B&lt;/strong&gt;unch &lt;strong&gt;O&lt;/strong&gt;f &lt;strong&gt;D&lt;/strong&gt;isks using some pretty affordable hardware and has up to 16 disks added to his homelab with the os having full access to use with zfs.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>THPS 1 Warehouse Gaps</title>
    <id>https://waylonwalker.com/thps-1-warehouse-gaps/</id>
    <updated>2025-02-22T20:46:03Z</updated>
    <published>2025-02-22T20:46:03Z</published>
    <link href="https://waylonwalker.com/thps-1-warehouse-gaps/" rel="alternate" type="text/html"></link>
    <summary type="text">On the road to ** achievement I got all Warehouse Gaps in THPS1. This is this classic warehouse level that everyone thinks of when THPS is mentioned. Such a...</summary>
    <content type="html">&lt;p&gt;On the road to &lt;strong&gt;Gap Master&lt;/strong&gt; achievement I got all Warehouse Gaps in THPS1.&#xA;This is this classic warehouse level that everyone thinks of when THPS is&#xA;mentioned.  Such a good level, compact, easy to play, with some fun gaps that&#xA;might take a few tries to hit.&lt;/p&gt;&#xA;&lt;p&gt;Next up &lt;a href=&#34;/thps-1-school-gaps/&#34; class=&#34;wikilink&#34; data-title=&#34;THPS 1 School Gaps&#34; data-description=&#34;On the road to ** achievement I got all School Gaps in THPS1. This is a super fun level, I&amp;#39;ll have to admit that I had to look up at least a quarter of them,...&#34; data-date=&#34;2025-03-01&#34; data-preview=&#34;On the road to ** achievement I got all School Gaps in THPS1. This is a super fun level, I&amp;#39;ll have to admit that I had to look up at least a quarter of them,...&#34;&gt;THPS 1 School Gaps&lt;/a&gt;&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/8b21df1c-9a79-4a07-a7c6-b660979aa3a1.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;image&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/8b21df1c-9a79-4a07-a7c6-b660979aa3a1.webp&#34; alt=&#34;image&#34;/ data-glightbox=&#34;description: image&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;big-rail&#34;&gt;Big Rail &lt;a href=&#34;#big-rail&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/973527d4-3cac-4034-8e4c-24eff10a11fa.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;THPS1-1-BigRail.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/973527d4-3cac-4034-8e4c-24eff10a11fa.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/973527d4-3cac-4034-8e4c-24eff10a11fa.mp4&#34; type=&#34;video/mp4&#34;&gt;THPS1-1-BigRail.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;channel-gap&#34;&gt;Channel Gap &lt;a href=&#34;#channel-gap&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/c05d4ced-c0e8-448b-89f8-c5837e55e073.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;THPS1-1-ChannelGap.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/c05d4ced-c0e8-448b-89f8-c5837e55e073.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/c05d4ced-c0e8-448b-89f8-c5837e55e073.mp4&#34; type=&#34;video/mp4&#34;&gt;THPS1-1-ChannelGap.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;deck-2-rail&#34;&gt;Deck 2 Rail &lt;a href=&#34;#deck-2-rail&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/5525ce76-d7c6-4047-b4f3-d0b811df2b82.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;THPS1-1-Deck2Rail.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/5525ce76-d7c6-4047-b4f3-d0b811df2b82.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/5525ce76-d7c6-4047-b4f3-d0b811df2b82.mp4&#34; type=&#34;video/mp4&#34;&gt;THPS1-1-Deck2Rail.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;face-plant&#34;&gt;Face Plant &lt;a href=&#34;#face-plant&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/83b23279-12fb-44e4-8a6f-6fbd6303879c.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;THPS1-1-FacePlant.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/83b23279-12fb-44e4-8a6f-6fbd6303879c.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/83b23279-12fb-44e4-8a6f-6fbd6303879c.mp4&#34; type=&#34;video/mp4&#34;&gt;THPS1-1-FacePlant.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;high-rail&#34;&gt;High Rail &lt;a href=&#34;#high-rail&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/6aa41edf-90a5-4390-88be-0ffd198fcf1d.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;THPS1-1-HighRail.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/6aa41edf-90a5-4390-88be-0ffd198fcf1d.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/6aa41edf-90a5-4390-88be-0ffd198fcf1d.mp4&#34; type=&#34;video/mp4&#34;&gt;THPS1-1-HighRail.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;holy-shi&#34;&gt;Holy Shi &lt;a href=&#34;#holy-shi&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/d8b2f149-a388-4b17-b2a2-d64bfce4af49.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;THPS1-1-HolyShi.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/d8b2f149-a388-4b17-b2a2-d64bfce4af49.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/d8b2f149-a388-4b17-b2a2-d64bfce4af49.mp4&#34; type=&#34;video/mp4&#34;&gt;THPS1-1-HolyShi.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;kicker-2-ledge&#34;&gt;Kicker 2 Ledge &lt;a href=&#34;#kicker-2-ledge&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/e727f014-1388-4d12-bc60-8bd8741e73f7.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;THPS1-1-Kicker2Ledge.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/e727f014-1388-4d12-bc60-8bd8741e73f7.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/e727f014-1388-4d12-bc60-8bd8741e73f7.mp4&#34; type=&#34;video/mp4&#34;&gt;THPS1-1-Kicker2Ledge.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;kicker-gap&#34;&gt;Kicker Gap &lt;a href=&#34;#kicker-gap&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/0a4aa8fd-d565-4587-b6d7-39f2d90c63ec.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;THPS1-1-KickerGap.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/0a4aa8fd-d565-4587-b6d7-39f2d90c63ec.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/0a4aa8fd-d565-4587-b6d7-39f2d90c63ec.mp4&#34; type=&#34;video/mp4&#34;&gt;THPS1-1-KickerGap.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;monster-grind&#34;&gt;Monster Grind &lt;a href=&#34;#monster-grind&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/d51f61a5-8732-4398-adb2-53af9091564f.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;THPS1-1-MonsterGrind.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/d51f61a5-8732-4398-adb2-53af9091564f.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/d51f61a5-8732-4398-adb2-53af9091564f.mp4&#34; type=&#34;video/mp4&#34;&gt;THPS1-1-MonsterGrind.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;over-the-pipe&#34;&gt;Over The Pipe &lt;a href=&#34;#over-the-pipe&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/48af7cf1-c708-4560-ad21-c523de5029a7.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;THPS1-1-OverThePipe.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/48af7cf1-c708-4560-ad21-c523de5029a7.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/48af7cf1-c708-4560-ad21-c523de5029a7.mp4&#34; type=&#34;video/mp4&#34;&gt;THPS1-1-OverThePipe.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;secret-room&#34;&gt;Secret Room &lt;a href=&#34;#secret-room&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/ee5c0bf7-6a37-49ef-93c0-68ae9178c4ec.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;THPS1-1-SecretRoom.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/ee5c0bf7-6a37-49ef-93c0-68ae9178c4ec.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/ee5c0bf7-6a37-49ef-93c0-68ae9178c4ec.mp4&#34; type=&#34;video/mp4&#34;&gt;THPS1-1-SecretRoom.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;taxi-2-ledge&#34;&gt;Taxi 2 Ledge &lt;a href=&#34;#taxi-2-ledge&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/fd3a20ae-dca6-4426-ab70-69525acbc34d.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;THPS1-1-Taxi2Ledge.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/fd3a20ae-dca6-4426-ab70-69525acbc34d.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/fd3a20ae-dca6-4426-ab70-69525acbc34d.mp4&#34; type=&#34;video/mp4&#34;&gt;THPS1-1-Taxi2Ledge.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;taxi-gap&#34;&gt;Taxi Gap &lt;a href=&#34;#taxi-gap&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/c16310d0-48a3-46f5-ab68-83a58e1a249b.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;THPS1-1-TaxiGap.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/c16310d0-48a3-46f5-ab68-83a58e1a249b.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/c16310d0-48a3-46f5-ab68-83a58e1a249b.mp4&#34; type=&#34;video/mp4&#34;&gt;THPS1-1-TaxiGap.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;transfer&#34;&gt;Transfer &lt;a href=&#34;#transfer&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/980adcb5-87c9-4e23-bb1c-62d6833853f1.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;THPS1-1-Transfer.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/980adcb5-87c9-4e23-bb1c-62d6833853f1.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/980adcb5-87c9-4e23-bb1c-62d6833853f1.mp4&#34; type=&#34;video/mp4&#34;&gt;THPS1-1-Transfer.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;transition-grind&#34;&gt;Transition Grind &lt;a href=&#34;#transition-grind&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/63f6f560-36e5-4d14-a200-9357f60ef468.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;THPS1-1-TransitionGrind.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/63f6f560-36e5-4d14-a200-9357f60ef468.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/63f6f560-36e5-4d14-a200-9357f60ef468.mp4&#34; type=&#34;video/mp4&#34;&gt;THPS1-1-TransitionGrind.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 XCMKB: ZMK/Bluetooth Boards</title>
    <id>https://waylonwalker.com/thought-573/</id>
    <updated>2025-02-21T14:23:18Z</updated>
    <published>2025-02-21T14:23:18Z</published>
    <link href="https://waylonwalker.com/thought-573/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://xcmkb.com/pages/zmk-bluetooth-boards</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://xcmkb.com/pages/zmk-bluetooth-boards&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://xcmkb.com/cdn/shop/files/FONT_LOGO_9ae2f2fd-2df9-4523-a73a-b3e1cc37a52d.jpg?v=1720420689&#34; alt=&#34;XCMKB: ZMK/Bluetooth Boards — XCMKB: Key Remap Dear beginner, there is no real time key remap like Vial, but thanks to nickcoutsos for his work on Keymap Editor, a browser app allows you to load ZMK keymap code and manage it with a graphical presentation. Click Demo Keyboard if you dont have a split board with you, but wish to see how it works.&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: XCMKB: ZMK/Bluetooth Boards — XCMKB: Key Remap Dear beginner, there is no real time key remap like Vial, but thanks to nickcoutsos for his work on Keymap Editor, a browser app allows you to load ZMK keymap code and manage it with a graphical presentation. Click Demo Keyboard if you dont have a split board with you, but wish to see how it works.&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;XCMKB: ZMK/Bluetooth Boards&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;XCMKB: Key Remap Dear beginner, there is no real time key remap like Vial, but thanks to nickcoutsos for his work on Keymap Editor, a browser app allows you to load ZMK keymap code and manage it wi...&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;XCMKB · xcmkb.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Nice overview to getting started in zmk&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ tailscale github-action</title>
    <id>https://waylonwalker.com/tailscale-github-action/</id>
    <updated>2025-02-21T14:14:22Z</updated>
    <published>2025-02-21T14:14:22Z</published>
    <link href="https://waylonwalker.com/tailscale-github-action/" rel="alternate" type="text/html"></link>
    <summary type="text">Check out tailscale and their project github-action.</summary>
    <content type="html">&lt;p&gt;Check out &lt;a href=&#34;https://github.com/tailscale&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;tailscale&lt;/a&gt; and their project &lt;a href=&#34;https://github.com/tailscale/github-action&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;github-action&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;A GitHub Action to connect your workflow to your Tailscale network.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ kubenetworks kubevpn</title>
    <id>https://waylonwalker.com/kubenetworks-kubevpn/</id>
    <updated>2025-02-21T14:14:01Z</updated>
    <published>2025-02-21T14:14:01Z</published>
    <link href="https://waylonwalker.com/kubenetworks-kubevpn/" rel="alternate" type="text/html"></link>
    <summary type="text">I recently discovered kubevpn by kubenetworks, and it&#39;s truly impressive.</summary>
    <content type="html">&lt;p&gt;I recently discovered &lt;a href=&#34;https://github.com/kubenetworks/kubevpn&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;kubevpn&lt;/a&gt; by &lt;a href=&#34;https://github.com/kubenetworks&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;kubenetworks&lt;/a&gt;, and it’s truly impressive.&lt;/p&gt;&#xA;&lt;p&gt;KubeVPN offers a Cloud Native Dev Environment that connects to kubernetes cluster network.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>pre-commit exclude</title>
    <id>https://waylonwalker.com/pre-commit-exclude/</id>
    <updated>2025-02-20T08:11:35Z</updated>
    <published>2025-02-20T08:11:35Z</published>
    <link href="https://waylonwalker.com/pre-commit-exclude/" rel="alternate" type="text/html"></link>
    <summary type="text">I run tailwind for my personal blog, whenever I update it, pre-commit goes in and fixes end of file. I&#39;m sick of these things fighting each other, since it...</summary>
    <content type="html">&lt;p&gt;I run tailwind for my personal blog, whenever I update it, pre-commit goes in&#xA;and fixes end of file.  I’m sick of these things fighting each other, since it&#xA;is a generated app it is going to et ignored from pre-commit from now on.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nt&#34;&gt;exclude&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;l&#34;&gt;^static/app.*\.css$&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nt&#34;&gt;repos&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;- &lt;span class=&#34;nt&#34;&gt;repo&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;l&#34;&gt;https://github.com/pre-commit/pre-commit-hooks&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;    &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;rev&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;l&#34;&gt;v2.4.0&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;    &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;hooks&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;      &lt;/span&gt;- &lt;span class=&#34;nt&#34;&gt;id&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;l&#34;&gt;trailing-whitespace&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;      &lt;/span&gt;- &lt;span class=&#34;nt&#34;&gt;id&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;l&#34;&gt;end-of-file-fixer&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;      &lt;/span&gt;- &lt;span class=&#34;nt&#34;&gt;id&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;l&#34;&gt;check-yaml&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;      &lt;/span&gt;- &lt;span class=&#34;nt&#34;&gt;id&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;l&#34;&gt;check-added-large-files&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Mantis Clamp by zuberio | Download free STL model | Printables...</title>
    <id>https://waylonwalker.com/thought-572/</id>
    <updated>2025-02-18T22:24:06Z</updated>
    <published>2025-02-18T22:24:06Z</published>
    <link href="https://waylonwalker.com/thought-572/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.printables.com/model/48505-mantis-clamp/files</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://www.printables.com/model/48505-mantis-clamp/files&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://media.printables.com/media/prints/48505/images/8664062_127e488d-62e1-4339-ae21-3cb85906810b_de093769-7ae6-4856-b254-5dd8358289bc/thumbs/cover/1200x630/jpg/pxl_20250113_223252448.jpg&#34; alt=&#34;Mantis Clamp by zuberio | Download free STL model | Printables.com&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: Mantis Clamp by zuberio | Download free STL model | Printables.com&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Mantis Clamp by zuberio | Download free STL model | Printables.com&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;Printables.com · printables.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Zuberios Mantic clamp, would ya look at it.  This thing looks like a handy tool for soldering. Excited to give it a try.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/101b97c0-99c6-40f5-bc2c-9d0bef3babb0.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;image&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/101b97c0-99c6-40f5-bc2c-9d0bef3babb0.webp&#34; alt=&#34;image&#34;/ data-glightbox=&#34;description: image&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 The 3D Printed Mantis Clamp! #3dprinting #shorts #diy - YouTube</title>
    <id>https://waylonwalker.com/thought-571/</id>
    <updated>2025-02-18T22:22:54Z</updated>
    <published>2025-02-18T22:22:54Z</published>
    <link href="https://waylonwalker.com/thought-571/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/shorts/a8uzENYZ72k</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;a8uzENYZ72k&#34; title=&#34;The 3D Printed Mantis Clamp! #3dprinting #shorts #diy&#34; playlabel=&#34;Play: The 3D Printed Mantis Clamp! #3dprinting #shorts #diy&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Damn this looks good, I’ve been casually keeping my eye out for something like this for quite awhile, I think this will come in handy for keeb builds.  Printing one out as I post this, damn I love 3d-printing.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/ddbde7a1-8b8a-4096-92e2-1e602b1603a2.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;image&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/ddbde7a1-8b8a-4096-92e2-1e602b1603a2.webp&#34; alt=&#34;image&#34;/ data-glightbox=&#34;description: image&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 There are many Style Guides but this is Mine—zachleat.com</title>
    <id>https://waylonwalker.com/thought-570/</id>
    <updated>2025-02-18T01:56:24Z</updated>
    <published>2025-02-18T01:56:24Z</published>
    <link href="https://waylonwalker.com/thought-570/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.zachleat.com/web/style-guide/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://www.zachleat.com/web/style-guide/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://screenshot.11ty.app/https%3A%2F%2Fwww.zachleat.com%2Fweb%2Fstyle-guide%2F%3Fcache%3D_20251031/opengraph/&#34; alt=&#34;There are many Style Guides but this is Mine—zachleat.com — A post by Zach Leatherman (zachleat)&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: There are many Style Guides but this is Mine—zachleat.com — A post by Zach Leatherman (zachleat)&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;There are many Style Guides but this is Mine—zachleat.com&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;A post by Zach Leatherman (zachleat)&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;Zach Leatherman · zachleat.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Zach’s site looks sick colors are all on point, the fonts are so good.  I really like the idea of a style-guide.  I think I might be renaming my &lt;a href=&#34;/sample/&#34; class=&#34;wikilink&#34; data-title=&#34;Sample&#34; data-description=&#34;There is a glossary item in vibe coding here and clippy no simpy.&#34; data-date=&#34;2021-01-25&#34; data-preview=&#34;There is a glossary item in vibe coding here and clippy no simpy.&#34;&gt;Sample&lt;/a&gt; post to style-guide now.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 python-build-standalone/.github/workflows/release.yml at main ...</title>
    <id>https://waylonwalker.com/thought-569/</id>
    <updated>2025-02-17T23:21:05Z</updated>
    <published>2025-02-17T23:21:05Z</published>
    <link href="https://waylonwalker.com/thought-569/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://github.com/astral-sh/python-build-standalone/blob/main/.github/workflows/release.yml</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;/static/https://github.com/astral-sh/python-build-standalone/blob/main/.github/workflows/release.yml&#34; class=&#34;glightbox-link&#34; aria-label=&#34;https://github.com/astral-sh/python-build-standalone/blob/main/.github/workflows/release.yml&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;/static/https://github.com/astral-sh/python-build-standalone/blob/main/.github/workflows/release.yml&#34; alt=&#34;https://github.com/astral-sh/python-build-standalone/blob/main/.github/workflows/release.yml&#34;/ data-glightbox=&#34;description: https://github.com/astral-sh/python-build-standalone/blob/main/.github/workflows/release.yml&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;p&gt;Astral uses just in CI, kinda cool to stumble into this setup in the wild.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;run: just release-run &lt;span class=&#34;si&#34;&gt;${&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;{ secrets.GITHUB_TOKEN &lt;/span&gt;&lt;span class=&#34;si&#34;&gt;}&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt; &lt;span class=&#34;si&#34;&gt;${&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;{ github.event.inputs.sha &lt;/span&gt;&lt;span class=&#34;si&#34;&gt;}&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt; &lt;span class=&#34;si&#34;&gt;${&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;{ github.event.inputs.tag &lt;/span&gt;&lt;span class=&#34;si&#34;&gt;}&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;And her is the accompanying justfile.  you can see how it accepts arguments, and starts calling out to other just recipes.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nf&#34;&gt;release-run token commit tag&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;:&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  &lt;span class=&#34;c1&#34;&gt;#!/bin/bash&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  &lt;span class=&#34;nb&#34;&gt;set&lt;/span&gt; -eo pipefail&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  rm -rf dist&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  just release-download-distributions &lt;span class=&#34;o&#34;&gt;{{&lt;/span&gt;token&lt;span class=&#34;o&#34;&gt;}}&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;{{&lt;/span&gt;commit&lt;span class=&#34;o&#34;&gt;}}&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  &lt;span class=&#34;nv&#34;&gt;datetime&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;$(&lt;/span&gt;ls dist/cpython-3.10.*-x86_64-unknown-linux-gnu-install_only-*.tar.gz  &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt; awk -F- &lt;span class=&#34;s1&#34;&gt;&amp;#39;{print $8}&amp;#39;&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt; awk -F. &lt;span class=&#34;s1&#34;&gt;&amp;#39;{print $1}&amp;#39;&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  just release-upload-distributions &lt;span class=&#34;o&#34;&gt;{{&lt;/span&gt;token&lt;span class=&#34;o&#34;&gt;}}&lt;/span&gt; &lt;span class=&#34;si&#34;&gt;${&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;datetime&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;}&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;{{&lt;/span&gt;tag&lt;span class=&#34;o&#34;&gt;}}&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  just release-set-latest-release &lt;span class=&#34;o&#34;&gt;{{&lt;/span&gt;tag&lt;span class=&#34;o&#34;&gt;}}&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 fix double slash in url · WaylonWalker/waylonwalker.com@93ca7da</title>
    <id>https://waylonwalker.com/thought-568/</id>
    <updated>2025-02-17T22:32:04Z</updated>
    <published>2025-02-17T22:32:04Z</published>
    <link href="https://waylonwalker.com/thought-568/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://github.com/WaylonWalker/waylonwalker.com/commit/93ca7da6dd37100d2fb2cd989c2ddb31692c3bf9</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://github.com/WaylonWalker/waylonwalker.com/commit/93ca7da6dd37100d2fb2cd989c2ddb31692c3bf9&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://opengraph.githubassets.com/ae9b2c9a3a50de71e6058359f2fac9dc8ba91b6039ac557cc1c385d720c137be/WaylonWalker/waylonwalker.com/commit/93ca7da6dd37100d2fb2cd989c2ddb31692c3bf9&#34; alt=&#34;fix double slash in url · WaylonWalker/waylonwalker.com@93ca7da — Latest version of waylonwalker.com - dev.waylonwalker.com - fix double slash in url · WaylonWalker/waylonwalker.com@93ca7da&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: fix double slash in url · WaylonWalker/waylonwalker.com@93ca7da — Latest version of waylonwalker.com - dev.waylonwalker.com - fix double slash in url · WaylonWalker/waylonwalker.com@93ca7da&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;fix double slash in url · WaylonWalker/waylonwalker.com@93ca7da&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Latest version of waylonwalker.com - dev.waylonwalker.com - fix double slash in url · WaylonWalker/waylonwalker.com@93ca7da&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;GitHub · github.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;fixing more ahrefs issues on the road to fixing all major issues within my control I found a ton of urls pointed to an url with a double slash, turns out I wasn’t properly referencing slug with post.slug.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/d821eb80-aeaa-4f96-becd-7609b798663c.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;image&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/d821eb80-aeaa-4f96-becd-7609b798663c.webp&#34; alt=&#34;image&#34;/ data-glightbox=&#34;description: image&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 fix json schema · WaylonWalker/waylonwalker.com@deebd40</title>
    <id>https://waylonwalker.com/thought-567/</id>
    <updated>2025-02-17T22:26:01Z</updated>
    <published>2025-02-17T22:26:01Z</published>
    <link href="https://waylonwalker.com/thought-567/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://github.com/WaylonWalker/waylonwalker.com/commit/deebd400e638bfaa41db953530597983ae0df82a</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://github.com/WaylonWalker/waylonwalker.com/commit/deebd400e638bfaa41db953530597983ae0df82a&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://opengraph.githubassets.com/adc37dbf80305b6974e7593a6646169095b20c0c0f7ff71d70c46b1d03c66635/WaylonWalker/waylonwalker.com/commit/deebd400e638bfaa41db953530597983ae0df82a&#34; alt=&#34;fix json schema · WaylonWalker/waylonwalker.com@deebd40 — Latest version of waylonwalker.com - dev.waylonwalker.com - fix json schema · WaylonWalker/waylonwalker.com@deebd40&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: fix json schema · WaylonWalker/waylonwalker.com@deebd40 — Latest version of waylonwalker.com - dev.waylonwalker.com - fix json schema · WaylonWalker/waylonwalker.com@deebd40&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;fix json schema · WaylonWalker/waylonwalker.com@deebd40&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Latest version of waylonwalker.com - dev.waylonwalker.com - fix json schema · WaylonWalker/waylonwalker.com@deebd40&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;GitHub · github.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;I found that I had &lt;em&gt;Structured data has schema.org validation error&lt;/em&gt; on essentially every single page on my blog, turns out I had made some changes and have never tried to validate it.  Damn json and its hatred towards trailing commas.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/889378f5-6444-4a38-a7e4-c305fe93e1d7.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;889378f5-6444-4a38-a7e4-c305fe93e1d7.webp&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/889378f5-6444-4a38-a7e4-c305fe93e1d7.webp&#34; alt=&#34;889378f5-6444-4a38-a7e4-c305fe93e1d7.webp&#34;/ data-glightbox=&#34;description: 889378f5-6444-4a38-a7e4-c305fe93e1d7.webp&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/ca373ce6-9a4a-4e5b-8a0e-0b2959915ab5.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;image&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/ca373ce6-9a4a-4e5b-8a0e-0b2959915ab5.webp&#34; alt=&#34;image&#34;/ data-glightbox=&#34;description: image&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Weblogging: Part 1 – David Bushell – Web Dev (UK)</title>
    <id>https://waylonwalker.com/thought-566/</id>
    <updated>2025-02-17T21:01:00Z</updated>
    <published>2025-02-17T21:01:00Z</published>
    <link href="https://waylonwalker.com/thought-566/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://dbushell.com/2024/12/09/weblogging-1/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://dbushell.com/2024/12/09/weblogging-1/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://dbushell.com/images/articles/2024-12-09-weblogging-1.png&#34; alt=&#34;Weblogging: Part 1 — The one where I blog about blogging (part 1)&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: Weblogging: Part 1 — The one where I blog about blogging (part 1)&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Weblogging: Part 1&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;The one where I blog about blogging (part 1)&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;dbushell.com · dbushell.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Long live RSS!  Rss is not dead David, you are right there.  I really agree with David that learning a topic well enough to form thoughts and write about it really help learning.  You don’t need to be an expert, but forming your own thoughts, putting ideas in words takes a lot more than surface level knowledge.  When you try to write or speak about something you quickly realize where your holes in understanding are.&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;Blogging helps me learn. When I commit knowledge to writing it reinforces what I know and shines a spotlight on what I don’t. Most topics require additional research. Even then, I occasionally get things wrong, or miss different ways of thinking, and I welcome corrections. I’ll often update and enrich my posts based on feedback. Without my blog I’d miss other points of view.&lt;/p&gt;&#xA;&lt;p&gt;As they say, the best way to get an answer on the internet is not to pose a question, but to assert the wrong solution! Most feedback I get is constructive. Sometimes it’s blunt but I try not to read into unspoken sentiment. Some people are more direct. If the end result is positive learning, I can take a hit or two.&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 fix: Open Graph URL not matching canonical · WaylonWalker/wayl...</title>
    <id>https://waylonwalker.com/thought-565/</id>
    <updated>2025-02-17T20:53:22Z</updated>
    <published>2025-02-17T20:53:22Z</published>
    <link href="https://waylonwalker.com/thought-565/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://github.com/WaylonWalker/waylonwalker.com/commit/0fd994b0101f7260051ec914ea6987e1c70603bd</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://github.com/WaylonWalker/waylonwalker.com/commit/0fd994b0101f7260051ec914ea6987e1c70603bd&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://opengraph.githubassets.com/eadd9b7a04f6414f59da1c650ec20ab1bf5f5bc2d75b7ec71f784e28d963bc99/WaylonWalker/waylonwalker.com/commit/0fd994b0101f7260051ec914ea6987e1c70603bd&#34; alt=&#34;fix: Open Graph URL not matching canonical · WaylonWalker/waylonwalker.com@0fd994b — Latest version of waylonwalker.com - dev.waylonwalker.com - fix: Open Graph URL not matching canonical · WaylonWalker/waylonwalker.com@0fd994b&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: fix: Open Graph URL not matching canonical · WaylonWalker/waylonwalker.com@0fd994b — Latest version of waylonwalker.com - dev.waylonwalker.com - fix: Open Graph URL not matching canonical · WaylonWalker/waylonwalker.com@0fd994b&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;fix: Open Graph URL not matching canonical · WaylonWalker/waylonwalker.com@0fd994b&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Latest version of waylonwalker.com - dev.waylonwalker.com - fix: Open Graph URL not matching canonical · WaylonWalker/waylonwalker.com@0fd994b&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;GitHub · github.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;In fixing a bunch of meta tags, I introduced &lt;em&gt;Open Graph URL not matching canonical&lt;/em&gt; on every page by having trailing / on canonical and not on the &lt;code&gt;og:url&lt;/code&gt;.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/1adedfb8-5fbd-4622-adda-2f3984baeb03.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;image&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/1adedfb8-5fbd-4622-adda-2f3984baeb03.webp&#34; alt=&#34;image&#34;/ data-glightbox=&#34;description: image&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;p&gt;This commit will fix the error.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Dont Starve Together Session One - Nooo Luuucy</title>
    <id>https://waylonwalker.com/shots/dont-starve-together-session-one---nooo-luuucy/</id>
    <updated>2025-02-17T09:40:05Z</updated>
    <published>2025-02-17T09:40:05Z</published>
    <link href="https://waylonwalker.com/shots/dont-starve-together-session-one---nooo-luuucy/" rel="alternate" type="text/html"></link>
    <summary type="text">After that embarrasing death I made my way over to a touchstone I found and Woodie is back from the dead, but without his beloved Lucy, to get her we will need to go</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/33c62075-535f-47c9-847e-3f0b0a05ec10.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Dont Starve Together session one - NOOO LUUUCY&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/33c62075-535f-47c9-847e-3f0b0a05ec10.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/33c62075-535f-47c9-847e-3f0b0a05ec10.mp4&#34; type=&#34;video/mp4&#34;&gt;Dont Starve Together session one - NOOO LUUUCY&lt;/video&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;After that embarrasing death I made my way over to a touchstone I found and Woodie is back from the dead, but without his beloved Lucy, to get her we will need to go&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Cotton Coder – David Bushell – Web Dev (UK)</title>
    <id>https://waylonwalker.com/thought-564/</id>
    <updated>2025-02-17T03:05:12Z</updated>
    <published>2025-02-17T03:05:12Z</published>
    <link href="https://waylonwalker.com/thought-564/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://dbushell.com/2024/01/24/cotton-coder/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://dbushell.com/2024/01/24/cotton-coder/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://dbushell.com/images/articles/2024-01-24-cotton-coder.png&#34; alt=&#34;Cotton Coder — The one where I launch a new blog&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: Cotton Coder — The one where I launch a new blog&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Cotton Coder&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;The one where I launch a new blog&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;dbushell.com · dbushell.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;I like Davids idea for cotton coder here, reminds me a lot of &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;Thoughts&lt;/a&gt;, which turns out to be mroe commonly called a linkblog.  I can relate to David heavily on gathering too many side projects and soem collecting more digital dust than you would really like them to.  I use thoughts for quick publishing, very similar to David’s &lt;a href=&#34;https://dbushell.com/notes/&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/dbushell.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/dbushell.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;notes&lt;/a&gt;.  I have tags and titles, but the titles are a reflection of the post I’m taking a note on.  They are short and sweet, I put just enough thought into them without overthinking them.  They live as a separate server hosted website, but the data gets pulled into my blog at build time, so they end up in the same place eventually.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 valkey-io/valkey: A flexible distributed key-value datastore t...</title>
    <id>https://waylonwalker.com/thought-563/</id>
    <updated>2025-02-17T02:27:34Z</updated>
    <published>2025-02-17T02:27:34Z</published>
    <link href="https://waylonwalker.com/thought-563/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://github.com/valkey-io/valkey</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://github.com/valkey-io/valkey&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://opengraph.githubassets.com/ae4c631b8cb805f46c9ed661a72ab4f1ae27acf50c3ffd9b430ad1d219c3b4d2/valkey-io/valkey&#34; alt=&#34;GitHub - valkey-io/valkey: A flexible distributed key-value database that is optimized for caching and other realtime workloads. — A flexible distributed key-value database that is optimized for caching and other realtime workloads. - valkey-io/valkey&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: GitHub - valkey-io/valkey: A flexible distributed key-value database that is optimized for caching and other realtime workloads. — A flexible distributed key-value database that is optimized for caching and other realtime workloads. - valkey-io/valkey&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;GitHub - valkey-io/valkey: A flexible distributed key-value database that is optimized for caching and other realtime workloads.&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;A flexible distributed key-value database that is optimized for caching and other realtime workloads. - valkey-io/valkey&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;GitHub · github.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;valkey appears to be the largest open source fork of redis that was forked just before their transition to the new source available licenses.&lt;/p&gt;&#xA;&lt;p&gt;One notable thing missing from the readme is how to run with docker, which I saw in the valkey-py docs.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;docker run -p 6379:6379 -it valkey/valkey:latest&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;You can install the python library with&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;python -m venv .venv&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;. ./.venv/bin/activate&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;pip install &lt;span class=&#34;s2&#34;&gt;&amp;#34;valkey[libvalkey]&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ valkey-io valkey-py</title>
    <id>https://waylonwalker.com/valkey-io-valkey-py/</id>
    <updated>2025-02-17T02:24:49Z</updated>
    <published>2025-02-17T02:24:49Z</published>
    <link href="https://waylonwalker.com/valkey-io-valkey-py/" rel="alternate" type="text/html"></link>
    <summary type="text">If you&#39;re into interesting projects, don&#39;t miss out on valkey-py, created by valkey-io.</summary>
    <content type="html">&lt;p&gt;If you’re into interesting projects, don’t miss out on &lt;a href=&#34;https://github.com/valkey-io/valkey-py&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;valkey-py&lt;/a&gt;, created by &lt;a href=&#34;https://github.com/valkey-io&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;valkey-io&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Valkey Python client based on a fork of redis-py&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ valkey-io valkey</title>
    <id>https://waylonwalker.com/valkey-io-valkey/</id>
    <updated>2025-02-17T02:22:53Z</updated>
    <published>2025-02-17T02:22:53Z</published>
    <link href="https://waylonwalker.com/valkey-io-valkey/" rel="alternate" type="text/html"></link>
    <summary type="text">I&#39;m really excited about valkey, an amazing project by valkey-io. It&#39;s worth exploring!</summary>
    <content type="html">&lt;p&gt;I’m really excited about &lt;a href=&#34;https://github.com/valkey-io/valkey&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;valkey&lt;/a&gt;, an amazing project by &lt;a href=&#34;https://github.com/valkey-io&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;valkey-io&lt;/a&gt;. It’s worth exploring!&lt;/p&gt;&#xA;&lt;p&gt;A flexible distributed key-value datastore that is optimized for caching and other realtime workloads.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 valkey · PyPI</title>
    <id>https://waylonwalker.com/thought-562/</id>
    <updated>2025-02-17T02:22:12Z</updated>
    <published>2025-02-17T02:22:12Z</published>
    <link href="https://waylonwalker.com/thought-562/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://pypi.org/project/valkey/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://pypi.org/project/valkey/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://pypi.org/static/images/twitter.abaf4b19.webp&#34; alt=&#34;valkey — Python client for Valkey forked from redis-py&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: valkey — Python client for Valkey forked from redis-py&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;valkey&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Python client for Valkey forked from redis-py&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;PyPI · pypi.org&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;python bindings for valkey, forked from redis.&lt;/p&gt;&#xA;&lt;p&gt;one notable difference I see from redis is that you can install with libvalkey to autmatically get faster parsing support.&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;For faster performance, install valkey with libvalkey support, this provides a compiled response parser, and for most cases requires zero code changes. By default, if libvalkey &amp;gt;= 2.3.2 is available, valkey-py will attempt to use it for response parsing.&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;pip install &lt;span class=&#34;s2&#34;&gt;&amp;#34;valkey[libvalkey]&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Dont Starve Together Session One - Burt Food</title>
    <id>https://waylonwalker.com/shots/dont-starve-together-session-one---burt-food/</id>
    <updated>2025-02-16T09:40:05Z</updated>
    <published>2025-02-16T09:40:05Z</published>
    <link href="https://waylonwalker.com/shots/dont-starve-together-session-one---burt-food/" rel="alternate" type="text/html"></link>
    <summary type="text">To kick off the second session, I noticed that when you have a torch you can light your cooking pot, what I did not realize was that this burns your cooking pot to smitherines. Nothing left but a frame of ** ashes.</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/24fa3268-04a5-4c23-b62c-c60bfdad0084.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Dont Starve Together session one - burt food&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/24fa3268-04a5-4c23-b62c-c60bfdad0084.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/24fa3268-04a5-4c23-b62c-c60bfdad0084.mp4&#34; type=&#34;video/mp4&#34;&gt;Dont Starve Together session one - burt food&lt;/video&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;To kick off the second session, I noticed that when you have a torch you can light your cooking pot, what I did not realize was that this burns your cooking pot to smitherines.  Nothing left but a frame of &lt;strong&gt;useless&lt;/strong&gt; ashes.&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Fragmentions - linking to any text</title>
    <id>https://waylonwalker.com/thought-561/</id>
    <updated>2025-02-15T15:39:33Z</updated>
    <published>2025-02-15T15:39:33Z</published>
    <link href="https://waylonwalker.com/thought-561/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.kevinmarks.com/fragmentions.html#%22eventually%20every%20URL%20ends%20up%20as%20a%20porn%20site%22</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://www.kevinmarks.com/fragmentions.html#%22eventually%20every%20URL%20ends%20up%20as%20a%20porn%20site%22&#34; class=&#34;embed-card-link  has-avatar has-avatar-before&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/www.kevinmarks.com.jpg&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/www.kevinmarks.com.jpg&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Fragmentions - linking to any text&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;kevinmarks.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;I can’t believe I’ve never see this Tim Berners-Lee quote, but I can’t unsee it and will be required to reference it from now on.&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;eventually every URL ends up as a porn site&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;p&gt;I had a friend let his blog domain expire, within a short period it was scooped up and was hosting porn.  I don’t know why, but my best guess is that they were holding it ransom with the most embarrassing content to have your personal site replaced with.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 hype cp | Hypermedia Copy &amp; Paste</title>
    <id>https://waylonwalker.com/thought-560/</id>
    <updated>2025-02-15T15:31:52Z</updated>
    <published>2025-02-15T15:31:52Z</published>
    <link href="https://waylonwalker.com/thought-560/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://hypecp.com/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://hypecp.com/&#34; class=&#34;embed-card-link  has-avatar has-avatar-before&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/hypecp.com.png&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/hypecp.com.png&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;hype cp | Hypermedia Copy &amp;amp; Paste&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;hypecp.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;This is a super cool reference for &lt;a href=&#34;/htmx/&#34; class=&#34;glossary-term&#34; title=&#34;htmx is a frontend javascript library for creating dynamic web applications.&#34;&gt;htmx&lt;/a&gt; snippets.  I really like how he has a couple of errors on the page as examples with examples that fix these common errors.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Dont Starve Together Session One - Getting Into It With A Clockwork Bishop</title>
    <id>https://waylonwalker.com/shots/dont-starve-together-session-one---getting-into-it-with-a-clockwork-bishop/</id>
    <updated>2025-02-15T09:40:05Z</updated>
    <published>2025-02-15T09:40:05Z</published>
    <link href="https://waylonwalker.com/shots/dont-starve-together-session-one---getting-into-it-with-a-clockwork-bishop/" rel="alternate" type="text/html"></link>
    <summary type="text">As I was gathering resources with Lucy, minding my own business ** I got hit with an attack from a Clockwork Bishop, man these things hit hard and have really good aim. I took three hits before getting away, leaving me with very low heath at the end of this play session.</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/36f4e4b8-16ee-4183-8de3-c2f96edd36e2.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Dont Starve Together session one - Getting into it with a Clockwork Bishop&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/36f4e4b8-16ee-4183-8de3-c2f96edd36e2.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/36f4e4b8-16ee-4183-8de3-c2f96edd36e2.mp4&#34; type=&#34;video/mp4&#34;&gt;Dont Starve Together session one - Getting into it with a Clockwork Bishop&lt;/video&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;As I was gathering resources with Lucy, minding my own business &lt;strong&gt;BAM&lt;/strong&gt; I got hit with an attack from a Clockwork Bishop, man these things hit hard and have really good aim.  I took three hits before getting away, leaving me with very low heath at the end of this play session.&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>fragmention</title>
    <id>https://waylonwalker.com/fragmention/</id>
    <updated>2025-02-15T09:32:43Z</updated>
    <published>2025-02-15T09:32:43Z</published>
    <link href="https://waylonwalker.com/fragmention/" rel="alternate" type="text/html"></link>
    <summary type="text">This post is still WIP. .....</summary>
    <content type="html">&lt;p&gt;This post is still WIP. …..&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://indieweb.org/fragmention##Challenges&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/indieweb.org.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/indieweb.org.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;https://indieweb.org/fragmention##Challenges&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;I’ve been digging through David Bushell’s blog over the past day, he has some&#xA;really good ideas about blogging and webdev.  One really interesting post I&#xA;came accross is&#xA;&lt;a href=&#34;https://dbushell.com/2024/12/05/url-fragment-text-directives/&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/dbushell.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/dbushell.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;url-fragment-text-directives&lt;/a&gt;.&#xA;I’ve long had id’s linked on my headings, though sometimes broken, or now&#xA;showing the link, I’ve done my best to include them.  Fragmentions extend this&#xA;to allow any text to be linkable like this.&lt;/p&gt;&#xA;&lt;p&gt;fragmentioner ui: &lt;a href=&#34;https://github.com/kartikprabhu/fragmentioner/tree/master?tab=readme-ov-file&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;https://github.com/kartikprabhu/fragmentioner/tree/master?tab=readme-ov-file&lt;/a&gt;&#xA;fragmentioner js: &lt;a href=&#34;https://github.com/chapmanu/fragmentions&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;https://github.com/chapmanu/fragmentions&lt;/a&gt;&lt;/p&gt;&#xA;&lt;h2 id=&#34;examples&#34;&gt;Examples &lt;a href=&#34;#examples&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://resilientwebdesign.com/#This%20is%20a%20web%20book&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/resilientwebdesign.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/resilientwebdesign.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;https://resilientwebdesign.com/#This%20is%20a%20web%20book&lt;/a&gt;&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>newlines in css before</title>
    <id>https://waylonwalker.com/newlines-in-css-before/</id>
    <updated>2025-02-15T09:28:48Z</updated>
    <published>2025-02-15T09:28:48Z</published>
    <link href="https://waylonwalker.com/newlines-in-css-before/" rel="alternate" type="text/html"></link>
    <summary type="text">I&#39;m building in a fragmentions implementation into my blog, I wanted to add some text before the fragment to indidate that it was the highlighted fragment...</summary>
    <content type="html">&lt;p&gt;I’m building in a [[ fragmentions ]] implementation into my blog, I wanted to&#xA;add some text before the fragment to indidate that it was the highlighted&#xA;fragment that someone may have intended to share with you.&lt;/p&gt;&#xA;&lt;p&gt;To get a newline in a &lt;code&gt;:before&lt;/code&gt; I need to use &lt;code&gt;\A&lt;/code&gt; and &lt;code&gt;white-space: pre-line&lt;/code&gt;.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nt&#34;&gt;body&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;nd&#34;&gt;target&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;::&lt;/span&gt;&lt;span class=&#34;nd&#34;&gt;before&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nt&#34;&gt;body&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;fragmention&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;::&lt;/span&gt;&lt;span class=&#34;nd&#34;&gt;before&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;k&#34;&gt;content&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;Highlighted Fragment:\A&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;k&#34;&gt;white-space&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;kc&#34;&gt;pre-line&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;err&#34;&gt;@apply&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;font-bold&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;text-yellow-600&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;}&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Here is what it looks like on my not yet live implementation of fragmentions.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/fb693b92-3744-45a5-9220-bd914162f435.png&#34; class=&#34;glightbox-link&#34; aria-label=&#34;screenshot-2025-02-15T15-43-06-372Z.png&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/fb693b92-3744-45a5-9220-bd914162f435.png&#34; alt=&#34;screenshot-2025-02-15T15-43-06-372Z.png&#34;/ data-glightbox=&#34;description: screenshot-2025-02-15T15-43-06-372Z.png&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ bigskysoftware fixi</title>
    <id>https://waylonwalker.com/bigskysoftware-fixi/</id>
    <updated>2025-02-15T00:21:48Z</updated>
    <published>2025-02-15T00:21:48Z</published>
    <link href="https://waylonwalker.com/bigskysoftware-fixi/" rel="alternate" type="text/html"></link>
    <summary type="text">I recently discovered fixi by bigskysoftware, and it&#39;s truly impressive.</summary>
    <content type="html">&lt;p&gt;I recently discovered &lt;a href=&#34;https://github.com/bigskysoftware/fixi&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;fixi&lt;/a&gt; by &lt;a href=&#34;https://github.com/bigskysoftware&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;bigskysoftware&lt;/a&gt;, and it’s truly impressive.&lt;/p&gt;&#xA;&lt;p&gt;No description available.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Chris Coyier</title>
    <id>https://waylonwalker.com/thought-559/</id>
    <updated>2025-02-14T19:40:19Z</updated>
    <published>2025-02-14T19:40:19Z</published>
    <link href="https://waylonwalker.com/thought-559/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://chriscoyier.net/2024/03/03/11148/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://chriscoyier.net/2024/03/03/11148/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://jetpack.com/redirect/?source=sigenerate&amp;amp;query=t%3DeyJpbWciOiJodHRwczpcL1wvY2hyaXNjb3lpZXIubmV0XC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI0XC8wM1wvcGV4ZWxzLXBob3RvLTUzMTg0NC0xMDI0eDY4Mi5qcGVnIiwidHh0IjoiaSBkaWRuJ3Qgc2F5IHRoZSBzb2NpYWwgbWVkaWEgaW1hZ2Ugd291bGRuJ3QgaGF2ZSBhIHRpdGxlIiwidGVtcGxhdGUiOiJmdWxsc2NyZWVuIiwiYmxvZ19pZCI6NzQwNzQyNDh9.K_WGOGYYuB2MeV23x0ID9j-vWYGGnqJ5WyhhpwdZuBQMQ&#34; alt=&#34;— I’m going to leave the title off this post and see what happens. Titles are a lot of pressure! I think there is a reason that the big text-based social networking sites (Mastodon, X, Facebook…&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: — I’m going to leave the title off this post and see what happens. Titles are a lot of pressure! I think there is a reason that the big text-based social networking sites (Mastodon, X, Facebook…&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt; &lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;I’m going to leave the title off this post and see what happens. Titles are a lot of pressure! I think there is a reason that the big text-based social networking sites (Mastodon, X, Facebook…&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;Chris Coyier · chriscoyier.net&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Interesting thoughts here on blog post titles, do we need them?  They are so ingrained into everything.&lt;/p&gt;&#xA;&lt;p&gt;It makes me think about markata.dev.  I don’t require you to add any meta data to your post, you don’t need a title at all, but you do have to name a markdown file, and this does end up being your title if you don’t set one.&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;Titles are a lot of pressure! I think there is a reason that the big text-based social networking sites (Mastodon, X, Facebook, Threads, LinkedIn, Bluesky, etc.) don’t have titles. Especially for short posts, the title just isn’t necessary. Just say the thing.&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;p&gt;Interesting observation what rss readers do without one.&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;My own favorite[rss reader], Feedbin, shows the author of the post as the title if it’s missing. Eh, not great not horrible.&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;p&gt;Hilariously he puts a title on the &lt;a href=&#34;/og/&#34; class=&#34;glossary-term&#34; title=&#34;OG is short for open graph, a set of standard meta tags that are used for social media sharing. This is what tells other websites how to describe and display...&#34;&gt;OG&lt;/a&gt; image for the post.  I was interested in seeing what would happen in signal, it appears to be showing the author name as well.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/ea78bda4-d2ea-41bd-9a60-27d9b09d4825.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;image&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/ea78bda4-d2ea-41bd-9a60-27d9b09d4825.webp&#34; alt=&#34;image&#34;/ data-glightbox=&#34;description: image&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;p&gt;Confirmed the page has no title&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/4a68af50-9880-4e1c-8fca-91313a154630.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;image&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/4a68af50-9880-4e1c-8fca-91313a154630.webp&#34; alt=&#34;image&#34;/ data-glightbox=&#34;description: image&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;p&gt;or does it?&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/66a63ca2-c705-4460-8b8a-d1633fc42f21.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;image&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/66a63ca2-c705-4460-8b8a-d1633fc42f21.webp&#34; alt=&#34;image&#34;/ data-glightbox=&#34;description: image&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;p&gt;It makes me wonder where Signal gets this title is it from the title block or the site_name meta data&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 AI workloads on Talos Linux - Sidero Labs</title>
    <id>https://waylonwalker.com/thought-558/</id>
    <updated>2025-02-14T19:27:54Z</updated>
    <published>2025-02-14T19:27:54Z</published>
    <link href="https://waylonwalker.com/thought-558/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.siderolabs.com/blog/ai-workloads-on-talos-linux/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://www.siderolabs.com/blog/ai-workloads-on-talos-linux/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://www.siderolabs.com/site-assets/uploads/2025/02/ai-workloads-banner.webp&#34; alt=&#34;AI workloads on Talos Linux - Sidero Labs — Companies are exploring how to run GPU accelerated workloads on Kubernetes. It doesn’t matter if you have a business use case for AI or not, knowing how it works is important.&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: AI workloads on Talos Linux - Sidero Labs — Companies are exploring how to run GPU accelerated workloads on Kubernetes. It doesn’t matter if you have a business use case for AI or not, knowing how it works is important.&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;AI workloads on Talos Linux - Sidero Labs&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Companies are exploring how to run GPU accelerated workloads on Kubernetes. It doesn’t matter if you have a business use case for AI or not, knowing how it works is important.&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;siderolabs.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;cool article for setting up talos linux with an nvidia gpu.  What a wild world it we are living in where these devices that started out being only for hardcore gamers are becoming commonplace in servers and slowly entering the &lt;a href=&#34;/homelab/&#34; class=&#34;glossary-term&#34; title=&#34;A place to self host applications. For me this is primarily self built web applications, and applications for sharing files with my family. Techno Tim has a...&#34;&gt;homelab&lt;/a&gt; space.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Proompted Kiddies Learning The Hard Way - YouTube</title>
    <id>https://waylonwalker.com/thought-557/</id>
    <updated>2025-02-14T19:15:41Z</updated>
    <published>2025-02-14T19:15:41Z</published>
    <link href="https://waylonwalker.com/thought-557/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/watch?v=eNIBie_uYMI</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;eNIBie_uYMI&#34; title=&#34;Proompted Kiddies Learning The Hard Way&#34; playlabel=&#34;Play: Proompted Kiddies Learning The Hard Way&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Damn prime makes an interesting point near then end of this video.  He’s seen a bunch of people able to just throw down charts and shit at their company and end up being “the coding guy” cause they proompted something once.  In a way I can relate, I got into software in a similar way, but at a time that it took a lot more hard work, understanding , and copy past from the right stack overflow.   Based on some of the people around me at the time I can only imagine how some people must feel like they got pushed into it without wanting it, and now are building something they don’t know anything about with no care about it or care to build any expertise.  Is the future proompted charts from enterprise chatgpt or do we only continue growing more need for software from here.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/d43265cd-7fe1-4cb4-a22e-d82a37a2e368.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;image&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/d43265cd-7fe1-4cb4-a22e-d82a37a2e368.webp&#34; alt=&#34;image&#34;/ data-glightbox=&#34;description: image&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ duckdb pg_duckdb</title>
    <id>https://waylonwalker.com/duckdb-pg_duckdb/</id>
    <updated>2025-02-14T13:56:38Z</updated>
    <published>2025-02-14T13:56:38Z</published>
    <link href="https://waylonwalker.com/duckdb-pg_duckdb/" rel="alternate" type="text/html"></link>
    <summary type="text">I like duckdb&#39;s project pg_duckdb.</summary>
    <content type="html">&lt;p&gt;I like &lt;a href=&#34;https://github.com/duckdb&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;duckdb’s&lt;/a&gt; project &lt;a href=&#34;https://github.com/duckdb/pg_duckdb&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;pg_duckdb&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;DuckDB-powered Postgres for high performance apps &amp;amp; analytics.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ medialab xan</title>
    <id>https://waylonwalker.com/medialab-xan/</id>
    <updated>2025-02-14T13:56:21Z</updated>
    <published>2025-02-14T13:56:21Z</published>
    <link href="https://waylonwalker.com/medialab-xan/" rel="alternate" type="text/html"></link>
    <summary type="text">Just starred xan by medialab. It&#39;s an exciting project with a lot to offer.</summary>
    <content type="html">&lt;p&gt;Just starred &lt;a href=&#34;https://github.com/medialab/xan&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;xan&lt;/a&gt; by &lt;a href=&#34;https://github.com/medialab&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;medialab&lt;/a&gt;. It’s an exciting project with a lot to offer.&lt;/p&gt;&#xA;&lt;p&gt;The CSV magician&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ johnwarne upvote-rss</title>
    <id>https://waylonwalker.com/johnwarne-upvote-rss/</id>
    <updated>2025-02-14T13:54:30Z</updated>
    <published>2025-02-14T13:54:30Z</published>
    <link href="https://waylonwalker.com/johnwarne-upvote-rss/" rel="alternate" type="text/html"></link>
    <summary type="text">I&#39;m impressed by upvote-rss from johnwarne.</summary>
    <content type="html">&lt;p&gt;I’m impressed by &lt;a href=&#34;https://github.com/johnwarne/upvote-rss&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;upvote-rss&lt;/a&gt; from &lt;a href=&#34;https://github.com/johnwarne&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;johnwarne&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Generate rich RSS feeds from Reddit, Hacker News, and Lemmy&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Dont Starve Together Session One - Getting A Hat</title>
    <id>https://waylonwalker.com/shots/dont-starve-together-session-one---getting-a-hat/</id>
    <updated>2025-02-14T09:40:05Z</updated>
    <published>2025-02-14T09:40:05Z</published>
    <link href="https://waylonwalker.com/shots/dont-starve-together-session-one---getting-a-hat/" rel="alternate" type="text/html"></link>
    <summary type="text">I had the grass for a hat, so I figured why not. I&#39;m not sure if it really helps this time of year, but I thought it looked good on Woodie.</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/813977e6-f954-43e8-882d-82afb66814d6.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Dont Starve Together session one - Getting a Hat&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/813977e6-f954-43e8-882d-82afb66814d6.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/813977e6-f954-43e8-882d-82afb66814d6.mp4&#34; type=&#34;video/mp4&#34;&gt;Dont Starve Together session one - Getting a Hat&lt;/video&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;I had the grass for a hat, so I figured why not.  I’m not sure if  it really helps this time of year, but I thought it looked good on Woodie.&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ caniszczyk rugpulls.dev</title>
    <id>https://waylonwalker.com/caniszczyk-rugpulls-dev/</id>
    <updated>2025-02-13T17:15:44Z</updated>
    <published>2025-02-13T17:15:44Z</published>
    <link href="https://waylonwalker.com/caniszczyk-rugpulls-dev/" rel="alternate" type="text/html"></link>
    <summary type="text">Looking for inspiration? rugpulls.dev by caniszczyk.</summary>
    <content type="html">&lt;p&gt;Looking for inspiration? &lt;a href=&#34;https://github.com/caniszczyk/rugpulls.dev&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;rugpulls.dev&lt;/a&gt; by &lt;a href=&#34;https://github.com/caniszczyk&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;caniszczyk&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;No description available.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ fosrl pangolin</title>
    <id>https://waylonwalker.com/fosrl-pangolin/</id>
    <updated>2025-02-13T17:14:43Z</updated>
    <published>2025-02-13T17:14:43Z</published>
    <link href="https://waylonwalker.com/fosrl-pangolin/" rel="alternate" type="text/html"></link>
    <summary type="text">I&#39;m really excited about pangolin, an amazing project by fosrl. It&#39;s worth exploring!</summary>
    <content type="html">&lt;p&gt;I’m really excited about &lt;a href=&#34;https://github.com/fosrl/pangolin&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;pangolin&lt;/a&gt;, an amazing project by &lt;a href=&#34;https://github.com/fosrl&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;fosrl&lt;/a&gt;. It’s worth exploring!&lt;/p&gt;&#xA;&lt;p&gt;Tunneled Mesh Reverse Proxy Server with Identity and Access Control and Dashboard UI&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ prazzon Flexbox-Labs</title>
    <id>https://waylonwalker.com/prazzon-flexbox-labs/</id>
    <updated>2025-02-13T17:12:58Z</updated>
    <published>2025-02-13T17:12:58Z</published>
    <link href="https://waylonwalker.com/prazzon-flexbox-labs/" rel="alternate" type="text/html"></link>
    <summary type="text">Looking for inspiration? Flexbox-Labs by prazzon.</summary>
    <content type="html">&lt;p&gt;Looking for inspiration? &lt;a href=&#34;https://github.com/prazzon/Flexbox-Labs&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;Flexbox-Labs&lt;/a&gt; by &lt;a href=&#34;https://github.com/prazzon&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;prazzon&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;A web app for creating flexible layouts with the power of CSS Flexbox.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ vagos llm-sort</title>
    <id>https://waylonwalker.com/vagos-llm-sort/</id>
    <updated>2025-02-13T17:10:55Z</updated>
    <published>2025-02-13T17:10:55Z</published>
    <link href="https://waylonwalker.com/vagos-llm-sort/" rel="alternate" type="text/html"></link>
    <summary type="text">Check out llm-sort by vagos. It&#39;s a well-crafted project with great potential.</summary>
    <content type="html">&lt;p&gt;Check out &lt;a href=&#34;https://github.com/vagos/llm-sort&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;llm-sort&lt;/a&gt; by &lt;a href=&#34;https://github.com/vagos&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;vagos&lt;/a&gt;. It’s a well-crafted project with great potential.&lt;/p&gt;&#xA;&lt;p&gt;Sort input lines semantically with llm&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Dont Starve Together Session One - Opening Up The Garden</title>
    <id>https://waylonwalker.com/shots/dont-starve-together-session-one---opening-up-the-garden/</id>
    <updated>2025-02-13T09:40:05Z</updated>
    <published>2025-02-13T09:40:05Z</published>
    <link href="https://waylonwalker.com/shots/dont-starve-together-session-one---opening-up-the-garden/" rel="alternate" type="text/html"></link>
    <summary type="text">On day two I had enough materials gathered to make the garden digamajig to prep the soil for gardening. I planted the few seeds that I stole from the birds right away.</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/43e6e5db-4750-4a32-8f53-652fbd7ffaf7.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Dont Starve Together session one - Opening up the Garden&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/43e6e5db-4750-4a32-8f53-652fbd7ffaf7.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/43e6e5db-4750-4a32-8f53-652fbd7ffaf7.mp4&#34; type=&#34;video/mp4&#34;&gt;Dont Starve Together session one - Opening up the Garden&lt;/video&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;On day two I had enough materials gathered to make the garden digamajig to prep the soil for gardening.  I planted the few seeds that I stole from the birds right away.&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>fixed long standing nvim startup error</title>
    <id>https://waylonwalker.com/fixed-long-standing-nvim-startup-error/</id>
    <updated>2025-02-13T08:41:39Z</updated>
    <published>2025-02-13T08:41:39Z</published>
    <link href="https://waylonwalker.com/fixed-long-standing-nvim-startup-error/" rel="alternate" type="text/html"></link>
    <summary type="text">Here&#39;s the diff, this is it.</summary>
    <content type="html">&lt;p&gt;Here’s the diff, this is it.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  local M = {}&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  M.setup = require(&amp;#34;waylonwalker.setup&amp;#34;)&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  M.settings = require(&amp;#34;waylonwalker.settings&amp;#34;)&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;gi&#34;&gt;+ M.lazy = require(&amp;#34;waylonwalker.lazy&amp;#34;)&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  M.options = require(&amp;#34;waylonwalker.options&amp;#34;)&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  M.globals = require(&amp;#34;waylonwalker.globals&amp;#34;)&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  M.keymap = require(&amp;#34;waylonwalker.keymap&amp;#34;)&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;gd&#34;&gt;- M.lazy = require(&amp;#34;waylonwalker.lazy&amp;#34;)&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  M.autocmds = require(&amp;#34;waylonwalker.autocmds&amp;#34;)&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  M.util = require(&amp;#34;waylonwalker.util&amp;#34;)&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  M.plugins = require(&amp;#34;waylonwalker.plugins&amp;#34;)&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  M.snippets = require(&amp;#34;waylonwalker.snippets&amp;#34;)&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  return M&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;h2 id=&#34;the-error&#34;&gt;The error &lt;a href=&#34;#the-error&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;On first install of my dotfiles I’m presenting with this flashbang of an error&#xA;filling the screen with red background.  Its kinda hard to read, I’m not deep&#xA;into lua and reading their tracebacks.  It pops up in this pager that if I&#xA;scroll too far it quits and the error is gone before I know what it is or how&#xA;it got there.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/20eafd2f-fbcd-4f93-8bd9-541edf42fba4.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;image&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/20eafd2f-fbcd-4f93-8bd9-541edf42fba4.webp&#34; alt=&#34;image&#34;/ data-glightbox=&#34;description: image&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;p&gt;For the longest time it just felt like it randomly showed up without much warning.&lt;/p&gt;&#xA;&lt;h2 id=&#34;i-sent-ai-at-the-issue&#34;&gt;I sent ai at the issue &lt;a href=&#34;#i-sent-ai-at-the-issue&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;I tried some chatgpt and windsurf, both gave me overconfident answers that all&#xA;did nothing.  They just sent me in loops for way too long.&lt;/p&gt;&#xA;&lt;h2 id=&#34;i-fixed-it&#34;&gt;I fixed it &lt;a href=&#34;#i-fixed-it&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;What did it take??&lt;/p&gt;&#xA;&lt;p&gt;Just sitting down and thinking about what the problem was and setting up a good&#xA;test workflow.  Yesterday I worked out &lt;a href=&#34;/testing-nvim-installs/&#34; class=&#34;wikilink&#34; data-title=&#34;testing nvim installs&#34; data-description=&#34;Testing fresh nvim installs can be a pain, and hard to di without borking your known good install. I&amp;#39;ve been using to run a test nvim in a sandbox that wont...&#34; data-date=&#34;2025-02-12&#34; data-preview=&#34;Testing fresh nvim installs can be a pain, and hard to di without borking your known good install. I&amp;#39;ve been using to run a test nvim in a sandbox that wont...&#34;&gt;testing nvim installs&lt;/a&gt; and I was&#xA;immediately able to replicate the error over and over.  Unlike before where it&#xA;felt random, I now have a good problem statement that I can replicate.&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;clean install&lt;/li&gt;&#xA;&lt;li&gt;start nvim&lt;/li&gt;&#xA;&lt;li&gt;Lazy pops up&lt;/li&gt;&#xA;&lt;li&gt;FLASHBANG!! Error that treesitter is not installed&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;What was confusing for so long was that treesitter was the first thing in lazy,&#xA;and it appeared that lazy was running before the error.&lt;/p&gt;&#xA;&lt;h2 id=&#34;the-fix&#34;&gt;The fix &lt;a href=&#34;#the-fix&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;Once I really thought about &lt;package&gt; not installed, it clicked.  It must be&#xA;the order of operations. I popped open my &lt;code&gt;init.lua&lt;/code&gt; and there it was, lazy&#xA;running after things that use treesitter.  A little &lt;span class=&#34;keys&#34;&gt;&lt;kbd class=&#34;kbd&#34;&gt;d&lt;/kbd&gt;&lt;span class=&#34;key-separator&#34;&gt;+&lt;/span&gt;&lt;kbd class=&#34;kbd&#34;&gt;d&lt;/kbd&gt;&lt;span class=&#34;key-separator&#34;&gt;+&lt;/span&gt;&lt;kbd class=&#34;kbd&#34;&gt;k&lt;/kbd&gt;&lt;span class=&#34;key-separator&#34;&gt;+&lt;/span&gt;&lt;kbd class=&#34;kbd&#34;&gt;k&lt;/kbd&gt;&lt;span class=&#34;key-separator&#34;&gt;+&lt;/span&gt;&lt;kbd class=&#34;kbd&#34;&gt;k&lt;/kbd&gt;&lt;span class=&#34;key-separator&#34;&gt;+&lt;/span&gt;&lt;kbd class=&#34;kbd&#34;&gt;k&lt;/kbd&gt;&lt;span class=&#34;key-separator&#34;&gt;+&lt;/span&gt;&lt;kbd class=&#34;kbd&#34;&gt;k&lt;/kbd&gt;&lt;span class=&#34;key-separator&#34;&gt;+&lt;/span&gt;&lt;kbd class=&#34;kbd&#34;&gt;p&lt;/kbd&gt;&lt;/span&gt; and it&#xA;was fixed. running &lt;code&gt;just testnvim&lt;/code&gt; the next time there was no flashbang!&lt;/package&gt;&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  local M = {}&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  M.setup = require(&amp;#34;waylonwalker.setup&amp;#34;)&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  M.settings = require(&amp;#34;waylonwalker.settings&amp;#34;)&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;gi&#34;&gt;+ M.lazy = require(&amp;#34;waylonwalker.lazy&amp;#34;)&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  M.options = require(&amp;#34;waylonwalker.options&amp;#34;)&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  M.globals = require(&amp;#34;waylonwalker.globals&amp;#34;)&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  M.keymap = require(&amp;#34;waylonwalker.keymap&amp;#34;)&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;gd&#34;&gt;- M.lazy = require(&amp;#34;waylonwalker.lazy&amp;#34;)&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  M.autocmds = require(&amp;#34;waylonwalker.autocmds&amp;#34;)&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  M.util = require(&amp;#34;waylonwalker.util&amp;#34;)&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  M.plugins = require(&amp;#34;waylonwalker.plugins&amp;#34;)&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  M.snippets = require(&amp;#34;waylonwalker.snippets&amp;#34;)&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  return M&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>testing nvim installs</title>
    <id>https://waylonwalker.com/testing-nvim-installs/</id>
    <updated>2025-02-12T21:02:03Z</updated>
    <published>2025-02-12T21:02:03Z</published>
    <link href="https://waylonwalker.com/testing-nvim-installs/" rel="alternate" type="text/html"></link>
    <summary type="text">Testing fresh nvim installs can be a pain, and hard to di without borking your known good install. I&#39;ve been using to run a test nvim in a sandbox that wont...</summary>
    <content type="html">&lt;p&gt;Testing fresh nvim installs can be a pain, and hard to di without borking your&#xA;known good install.  I’ve been using &lt;code&gt;NVIM_APPNAME&lt;/code&gt; to run a test nvim in a&#xA;sandbox that wont bork my main install.  This usually runs for me in under a&#xA;minute, can be down under 15s if I remove some of the TreeSitter installs at&#xA;the end.  This beats a full docker build of my full devtainer to test out nvim&#xA;packaging woes.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;rm ~/.cache/wwtest -rf&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;rm ~/.local/share/wwtest -rf&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;rm ~/.config/wwtest -rf&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;cp -r nvim/.config/nvim/ ~/.config/wwtest&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nv&#34;&gt;NVIM_APPNAME&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;wwtest nvim --headless &lt;span class=&#34;s2&#34;&gt;&amp;#34;+Lazy sync&amp;#34;&lt;/span&gt; +qa&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nv&#34;&gt;NVIM_APPNAME&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;wwtest nvim --headless &lt;span class=&#34;s2&#34;&gt;&amp;#34;+TSUpdateSync&amp;#34;&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;+sleep 5000m&amp;#34;&lt;/span&gt; +qa&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nv&#34;&gt;NVIM_APPNAME&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;wwtest nvim --headless &lt;span class=&#34;s2&#34;&gt;&amp;#34;+MasonUpdate&amp;#34;&lt;/span&gt; +qa&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nv&#34;&gt;NVIM_APPNAME&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;wwtest nvim --headless &lt;span class=&#34;s2&#34;&gt;&amp;#34;+TSInstallSync! c cpp go lua python rust tsx javascript typescript vimdoc vim bash yaml toml vue just&amp;#34;&lt;/span&gt; +qa&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nv&#34;&gt;NVIM_APPNAME&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;wwtest nvim --headless &lt;span class=&#34;s2&#34;&gt;&amp;#34;+MasonInstall lua-language-server rustywind ruff ruff-lsp html-lsp typescript-language-server beautysh fixjson isort markdownlint stylua yamlfmt python-lsp-server&amp;#34;&lt;/span&gt; +qa&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nv&#34;&gt;NVIM_APPNAME&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;wwtest nvim&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;I’ve started to use this as a &lt;code&gt;just&lt;/code&gt; recipe to run before deploying a new&#xA;version of my dotfiles. So far its pairing nicely with &lt;a href=&#34;/nvim-manager/&#34; class=&#34;wikilink&#34; data-title=&#34;nvim-manager&#34; data-description=&#34;I recently built a cli application as a nearly-one-shot-app called nvim-manager. It manages your nvim dotfiles install.&#34; data-date=&#34;2025-01-12&#34; data-preview=&#34;I recently built a cli application as a nearly-one-shot-app called nvim-manager. It manages your nvim dotfiles install.&#34;&gt;nvim-manager&lt;/a&gt;&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Setting up 4G Backup with Google Fi and Netgear LM1200</title>
    <id>https://waylonwalker.com/setting-up-4g-backup-with-google-fi-and-netgear-lm1200/</id>
    <updated>2025-02-12T13:23:35Z</updated>
    <published>2025-02-12T13:23:35Z</published>
    <link href="https://waylonwalker.com/setting-up-4g-backup-with-google-fi-and-netgear-lm1200/" rel="alternate" type="text/html"></link>
    <summary type="text">I connected my home network to have 4G bakcup with Google Fi and Netgear LM1200. Goodle Fi offers free data-only sim cards that you can order from their...</summary>
    <content type="html">&lt;p&gt;I connected my home network to have 4G bakcup with Google Fi and Netgear&#xA;LM1200.  Goodle Fi offers free data-only sim cards that you can order from&#xA;their service.  It takes a couple of days, and a new sim arrives in the mail&#xA;free of charge.  It does pull data from your account, so if you are not on an&#xA;unlimited plan be careful of how much you let go through the sim.&lt;/p&gt;&#xA;&lt;p&gt;I’ve owned this for a few years now, but it’s been disconnected for a good six&#xA;months or so.  I’m not s[e what happened, but it stopped recognizing the old&#xA;sim card. &lt;em&gt;no need to point out the coffee stains at the end, its&#xA;&lt;strong&gt;definitely&lt;/strong&gt; not related&lt;/em&gt;&lt;/p&gt;&#xA;&lt;h2 id=&#34;follow-the-provided-instuctions&#34;&gt;Follow the provided instuctions &lt;a href=&#34;#follow-the-provided-instuctions&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;Activating the sim asked for a confirmation code shipped with the sim card,&#xA;then brought me to this page.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/ec4d4272-7f61-4cf7-b3f5-ed2a57d0c11b.png&#34; class=&#34;glightbox-link&#34; aria-label=&#34;screenshot-2025-02-11T19-24-38-431Z.png&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/ec4d4272-7f61-4cf7-b3f5-ed2a57d0c11b.png&#34; alt=&#34;screenshot-2025-02-11T19-24-38-431Z.png&#34;/ data-glightbox=&#34;description: screenshot-2025-02-11T19-24-38-431Z.png&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;p&gt;Clicking &lt;code&gt;Have a Different Device?&lt;/code&gt; brought up instructions to set up the APN in the LM1200.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/b54d9a7f-c768-45b8-bf90-e692a6525788.png&#34; class=&#34;glightbox-link&#34; aria-label=&#34;screenshot-2025-02-11T19-14-39-662Z.png&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/b54d9a7f-c768-45b8-bf90-e692a6525788.png&#34; alt=&#34;screenshot-2025-02-11T19-14-39-662Z.png&#34;/ data-glightbox=&#34;description: screenshot-2025-02-11T19-14-39-662Z.png&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;restart&#34;&gt;Restart &lt;a href=&#34;#restart&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;First thing for me was that the sim was not recognized, restarting the LM1200&#xA;did the trick to recognize it as a Google Fi sim, and I started setting up by&#xA;adding the APN as instructed from Google.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/9f10f86d-734a-4b6f-a1f6-1bed27c5db13.png&#34; class=&#34;glightbox-link&#34; aria-label=&#34;screenshot-2025-02-11T19-22-55-062Z.png&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/9f10f86d-734a-4b6f-a1f6-1bed27c5db13.png&#34; alt=&#34;screenshot-2025-02-11T19-22-55-062Z.png&#34;/ data-glightbox=&#34;description: screenshot-2025-02-11T19-22-55-062Z.png&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;setup-lm1200&#34;&gt;Setup LM1200 &lt;a href=&#34;#setup-lm1200&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;Once restarted the LM1200 was recognize the sim right away and I was able to&#xA;add the APN details.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/4c9b0dde-69ce-4d73-af89-06d32c70c9d3.png&#34; class=&#34;glightbox-link&#34; aria-label=&#34;screenshot-2025-02-11T19-21-24-608Z.png&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/4c9b0dde-69ce-4d73-af89-06d32c70c9d3.png&#34; alt=&#34;screenshot-2025-02-11T19-21-24-608Z.png&#34;/ data-glightbox=&#34;description: screenshot-2025-02-11T19-21-24-608Z.png&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;connected&#34;&gt;Connected &lt;a href=&#34;#connected&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;After Saving these I was immediately connected as a backup.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/eb224d5a-6332-49e7-bde5-9f67c19d090f.png&#34; class=&#34;glightbox-link&#34; aria-label=&#34;screenshot-2025-02-11T19-22-13-849Z.png&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/eb224d5a-6332-49e7-bde5-9f67c19d090f.png&#34; alt=&#34;screenshot-2025-02-11T19-22-13-849Z.png&#34;/ data-glightbox=&#34;description: screenshot-2025-02-11T19-22-13-849Z.png&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;testing-failover&#34;&gt;Testing Failover &lt;a href=&#34;#testing-failover&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;Backups do not exist without testing.  I pulled the WAN cable from the LM1200&#xA;and after a few seconds it swapped over to the backup.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/3fe17ab6-0fa6-4aa9-96d9-0d7ef6d191c0.png&#34; class=&#34;glightbox-link&#34; aria-label=&#34;screenshot-2025-02-11T19-45-00-555Z.png&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/3fe17ab6-0fa6-4aa9-96d9-0d7ef6d191c0.png&#34; alt=&#34;screenshot-2025-02-11T19-45-00-555Z.png&#34;/ data-glightbox=&#34;description: screenshot-2025-02-11T19-45-00-555Z.png&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;p&gt;The dashboard shows fully connected, and it popped up that it sent an alert to&#xA;my phone, but that did not work for me.  I might hae something misconfigured.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/0229f36a-0b6b-4699-97c4-d526096c77fb.png&#34; class=&#34;glightbox-link&#34; aria-label=&#34;screenshot-2025-02-11T19-36-08-431Z.png&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/0229f36a-0b6b-4699-97c4-d526096c77fb.png&#34; alt=&#34;screenshot-2025-02-11T19-36-08-431Z.png&#34;/ data-glightbox=&#34;description: screenshot-2025-02-11T19-36-08-431Z.png&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;p&gt;I ran a speed test and got a pretty respectable 38 Mbit/s up and 12 Mbit/s down.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/83647660-cf04-422b-a0f3-8b860c6585e1.png&#34; class=&#34;glightbox-link&#34; aria-label=&#34;screenshot-2025-02-11T19-54-49-024Z.png&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/83647660-cf04-422b-a0f3-8b860c6585e1.png&#34; alt=&#34;screenshot-2025-02-11T19-54-49-024Z.png&#34;/ data-glightbox=&#34;description: screenshot-2025-02-11T19-54-49-024Z.png&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;p&gt;I reconnected the WAN cable and it went back to the primary, and it sat at&#xA;orange for about 10 seconds before switching back to wired connection.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/e6c0f5fe-ec2c-4546-aaa1-d5e2fba0ae0c.png&#34; class=&#34;glightbox-link&#34; aria-label=&#34;screenshot-2025-02-11T19-45-31-516Z.png&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/e6c0f5fe-ec2c-4546-aaa1-d5e2fba0ae0c.png&#34; alt=&#34;screenshot-2025-02-11T19-45-31-516Z.png&#34;/ data-glightbox=&#34;description: screenshot-2025-02-11T19-45-31-516Z.png&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;p&gt;Fully back on wired.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/70f9fd2b-9611-466a-a07b-11525e2a7aaa.png&#34; class=&#34;glightbox-link&#34; aria-label=&#34;screenshot-2025-02-11T19-47-13-699Z.png&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/70f9fd2b-9611-466a-a07b-11525e2a7aaa.png&#34; alt=&#34;screenshot-2025-02-11T19-47-13-699Z.png&#34;/ data-glightbox=&#34;description: screenshot-2025-02-11T19-47-13-699Z.png&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;p&gt;Now its all back up and running giving me a super cheap 4G backup with pretty&#xA;low effort.  Hopefully its reliable, I’ve upgraded about everything else on my&#xA;network since last running this, I think it will behave much better.  I think&#xA;some other issues were actually causing me to think I was not getting&#xA;connection and this fully got pulled from the network to try to fix it.&lt;/p&gt;&#xA;&lt;h2 id=&#34;why-not-5g&#34;&gt;Why not 5G? &lt;a href=&#34;#why-not-5g&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;The devices are way more expensive and this gives me all I need for a backup.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>ahrefs-cleanup-2024</title>
    <id>https://waylonwalker.com/ahrefs-cleanup-2024/</id>
    <updated>2025-02-12T12:56:40Z</updated>
    <published>2025-02-12T12:56:40Z</published>
    <link href="https://waylonwalker.com/ahrefs-cleanup-2024/" rel="alternate" type="text/html"></link>
    <summary type="text">This post is a big work in progress, expect it to keep getting better.</summary>
    <content type="html">&lt;p&gt;This post is a big work in progress, expect it to keep getting better.&lt;/p&gt;&#xA;&lt;h2 id=&#34;initial-score&#34;&gt;Initial Score &lt;a href=&#34;#initial-score&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/b26d4352-1bce-43a1-942e-bd6d7bd7c11d.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;image&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/b26d4352-1bce-43a1-942e-bd6d7bd7c11d.webp&#34; alt=&#34;image&#34;/ data-glightbox=&#34;description: image&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;404-not-found-generate-a-page-for-each-tag&#34;&gt;404 Not Found, generate a page for each tag &lt;a href=&#34;#404-not-found-generate-a-page-for-each-tag&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/c501e0f7-b3c1-4124-b6b4-727d7e3e95a8.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;image&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/c501e0f7-b3c1-4124-b6b4-727d7e3e95a8.webp&#34; alt=&#34;image&#34;/ data-glightbox=&#34;description: image&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;title-too-long&#34;&gt;Title too long &lt;a href=&#34;#title-too-long&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/4184948f-3527-4a17-8c65-b61e75d9ec75.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;image&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/4184948f-3527-4a17-8c65-b61e75d9ec75.webp&#34; alt=&#34;image&#34;/ data-glightbox=&#34;description: image&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;404-not-found-comma-separated-tags&#34;&gt;404 Not Found, comma separated tags &lt;a href=&#34;#404-not-found-comma-separated-tags&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;Another hit on 404’s caused by tags, was tag parsing from thoughts into posts,&#xA;this cause links to the full comma separated list of tags rather than one per&#xA;tag.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/c01ebd69-5ac4-4d9b-b720-43a16f64f421.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;image&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/c01ebd69-5ac4-4d9b-b720-43a16f64f421.webp&#34; alt=&#34;image&#34;/ data-glightbox=&#34;description: image&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;p&gt;You can see on the website the whole dang set of tags was being treated as a single tag.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/398b3bc7-8cfe-4190-968d-73eb15e18ea2.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;image&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/398b3bc7-8cfe-4190-968d-73eb15e18ea2.webp&#34; alt=&#34;image&#34;/ data-glightbox=&#34;description: image&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;broken-images&#34;&gt;Broken images &lt;a href=&#34;#broken-images&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;I’m not fully sure what happened to all of these gifs in my old host and why&#xA;they didn’t show up, but I moved them all and they are solid now.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/b3a1e8de-9344-40b4-8020-9e75a59b5dd9.png&#34; class=&#34;glightbox-link&#34; aria-label=&#34;screenshot-2025-01-15T17-31-20-430Z.png&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/b3a1e8de-9344-40b4-8020-9e75a59b5dd9.png&#34; alt=&#34;screenshot-2025-01-15T17-31-20-430Z.png&#34;/ data-glightbox=&#34;description: screenshot-2025-01-15T17-31-20-430Z.png&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;i-burned-all-of-my-january-credits&#34;&gt;I burned all of my January Credits &lt;a href=&#34;#i-burned-all-of-my-january-credits&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;So I had an issue with my &lt;a href=&#34;/self-host/&#34; class=&#34;glossary-term&#34; title=&#34;Self hosting is the act of hosting your own applications and services without using a SAS provider. This is typically done with your own hardware, but there...&#34;&gt;self hosted&lt;/a&gt; shots not making them fast enough for&#xA;ahrefs, and essentially ddosing myself on one of their runs.  The long wait&#xA;times for images burnt all of my credits.&lt;/p&gt;&#xA;&lt;p&gt;Here was the next successful run with a HUGE improvement in overall score.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/cfed3e97-8dd4-4381-b38f-5dc6f40e7fad.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;image&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/cfed3e97-8dd4-4381-b38f-5dc6f40e7fad.webp&#34; alt=&#34;image&#34;/ data-glightbox=&#34;description: image&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;p&gt;The trend for errors is looking quite good.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/1ffbd8f7-1f81-40b9-b110-1b0f03bdd56f.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;image&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/1ffbd8f7-1f81-40b9-b110-1b0f03bdd56f.webp&#34; alt=&#34;image&#34;/ data-glightbox=&#34;description: image&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;md-files-were-missing&#34;&gt;md files were Missing &lt;a href=&#34;#md-files-were-missing&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;I had several links out to the raw source of some pages generally hosted at&#xA;&lt;code&gt;{slug}.md&lt;/code&gt;, but I had turned it off due to it causing builds to fail.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/db074f86-725a-4b34-a5e2-8424628f521e.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;image&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/db074f86-725a-4b34-a5e2-8424628f521e.webp&#34; alt=&#34;image&#34;/ data-glightbox=&#34;description: image&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;p&gt;Taking another look at the error it was obvious what was going on, thoughts&#xA;never had a file extension and Pathlib was throwing isADirecotryError because&#xA;the path was already a directory for the index.&lt;a href=&#34;/html/&#34; class=&#34;glossary-term&#34; title=&#34;HTML (HyperText Markup Language) is the standard markup language used to create and design documents on the World Wide Web. It structures web content by...&#34;&gt;html&lt;/a&gt;, adding a .md to the path&#xA;for the thoughts plugin fixed it.&lt;/p&gt;&#xA;&lt;p&gt;I made this fix in commit&#xA;&lt;a href=&#34;https://github.com/WaylonWalker/waylonwalker.com/commit/e0bbc777efd5d0309a107b0d3e7355b2426e8c47&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;e0bbc&lt;/a&gt;&#xA;on my site repo.&lt;/p&gt;&#xA;&lt;h2 id=&#34;broken-links-to-tags&#34;&gt;Broken links to tags &lt;a href=&#34;#broken-links-to-tags&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;I wrote a cli plugin to automatically generate feeds for my tags, but I have&#xA;not ran it in awhile so I had a number of posts trying to link tags to feeds&#xA;that did not exist.  I fixed this in commit&#xA;[5d2e22](&lt;a href=&#34;https://github.com/WaylonWalker/waylonwalker.com/commit/5d2e227a03acb1104e4214507872c61ae2a47d64&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;https://github.com/WaylonWalker/waylonwalker.com/commit/5d2e227a03acb1104e4214507872c61ae2a47d64&lt;/a&gt;].&lt;/p&gt;&#xA;&lt;h2 id=&#34;fix-open-graph-url-not-matching-canonical&#34;&gt;fix: Open Graph URL not matching canonical &lt;a href=&#34;#fix-open-graph-url-not-matching-canonical&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;[[ thoughts-565 ]] fixes an error introduced while fixing &lt;a href=&#34;/og/&#34; class=&#34;glossary-term&#34; title=&#34;OG is short for open graph, a set of standard meta tags that are used for social media sharing. This is what tells other websites how to describe and display...&#34;&gt;og&lt;/a&gt; tags.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>vim date</title>
    <id>https://waylonwalker.com/vim-date/</id>
    <updated>2025-02-12T12:51:00Z</updated>
    <published>2025-02-12T12:51:00Z</published>
    <link href="https://waylonwalker.com/vim-date/" rel="alternate" type="text/html"></link>
    <summary type="text">When I want to put a date in a document like a blog post from vim I use !!date from insert mode. Note that entering from normal mode puts you in command mode...</summary>
    <content type="html">&lt;p&gt;When I want to put a date in a document like a blog post from vim I use !!date&#xA;from insert mode.  Note that entering &lt;code&gt;!!&lt;/code&gt; from normal mode puts you in command&#xA;mode with &lt;code&gt;:.!&lt;/code&gt; filled out.  This runs a shell command, i.e. &lt;code&gt;date&lt;/code&gt; for this&#xA;example.&lt;/p&gt;&#xA;&lt;p&gt;It outputs the following&lt;/p&gt;&#xA;&lt;p&gt;Fri Jan 31 08:46:11 PM CST 2025&lt;/p&gt;&#xA;&lt;p&gt;You can also pass in a date such as tommorrow by pasdding in the -d &lt;code&gt;date -d tomorrow&lt;/code&gt;.&lt;/p&gt;&#xA;&lt;p&gt;It outputs the following&lt;/p&gt;&#xA;&lt;p&gt;Sat Feb  1 08:53:20 PM CST 2025&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;codeium just taught me this one with autocomplete&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;nx&#34;&gt;put&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;nx&#34;&gt;strftime&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;%Y-%m-%d&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;This outputs the following&lt;/p&gt;&#xA;&lt;p&gt;2025-01-31&lt;/p&gt;&#xA;&lt;p&gt;What I like about the &lt;code&gt;:put =strftime(&lt;/code&gt; method is that you can add a format,&#xA;but that is a lot more for me to remember than &lt;code&gt;!!date&lt;/code&gt;&lt;/p&gt;&#xA;&lt;h2 id=&#34;a-few-weeks-later&#34;&gt;A few weeks later &lt;a href=&#34;#a-few-weeks-later&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;I’m going through a bunch of blog posts and dont want my date formats to change&#xA;to the Wed Feb format so I broke down and made these keybindings.  I think I’m&#xA;still going to be using &lt;code&gt;.!date&lt;/code&gt; a lot, but these keybindings will be nice for&#xA;editing blog post frontmatter.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;set&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;n&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;&amp;lt;leader&amp;gt;dd&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;&amp;lt;cmd&amp;gt;put =strftime(&amp;#39;%Y-%m-%d&amp;#39;)&amp;lt;cr&amp;gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;noremap&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;kc&#34;&gt;true&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;silent&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;kc&#34;&gt;true&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;})&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;set&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;n&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;&amp;lt;leader&amp;gt;dt&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;&amp;lt;cmd&amp;gt;put =strftime(&amp;#39;%Y-%m-%d %H:%M:%S&amp;#39;)&amp;lt;cr&amp;gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;noremap&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;kc&#34;&gt;true&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;silent&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;kc&#34;&gt;true&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;})&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;ul&gt;&#xA;&lt;li&gt;&lt;leader&gt;dd 2025-02-12&lt;/leader&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;leader&gt;dt 2025-02-12 12:53:47&lt;/leader&gt;&lt;/li&gt;&#xA;&lt;li&gt;:.!date    Wed Feb 12 12:53:47 PM CST 2025&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Dont Starve Together Session One - Setting Up Base</title>
    <id>https://waylonwalker.com/shots/dont-starve-together-session-one---setting-up-base/</id>
    <updated>2025-02-12T09:40:05Z</updated>
    <published>2025-02-12T09:40:05Z</published>
    <link href="https://waylonwalker.com/shots/dont-starve-together-session-one---setting-up-base/" rel="alternate" type="text/html"></link>
    <summary type="text">Just after the first night started I found my way back to the center of the map and made a stone campfire. I really like to use the stone campfires as they last forever, you just have to add wood. I was lucky enough to find stone by the Tall Bird to make this one on first day.</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/f6d07c07-1d0a-40c9-9930-36c1e48aa69e.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Dont Starve Together session one - setting up base&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/f6d07c07-1d0a-40c9-9930-36c1e48aa69e.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/f6d07c07-1d0a-40c9-9930-36c1e48aa69e.mp4&#34; type=&#34;video/mp4&#34;&gt;Dont Starve Together session one - setting up base&lt;/video&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;Just after the first night started I found my way back to the center of the map and made a stone campfire.  I really like to use the stone campfires as they last forever, you just have to add wood.  I was lucky enough to find stone by the Tall Bird to make this one on first day.&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ DigitalHarbor7 engineering-status-pages</title>
    <id>https://waylonwalker.com/digitalharbor7-engineering-status-pages/</id>
    <updated>2025-02-12T03:19:59Z</updated>
    <published>2025-02-12T03:19:59Z</published>
    <link href="https://waylonwalker.com/digitalharbor7-engineering-status-pages/" rel="alternate" type="text/html"></link>
    <summary type="text">I like DigitalHarbor7&#39;s project engineering-status-pages.</summary>
    <content type="html">&lt;p&gt;I like &lt;a href=&#34;https://github.com/DigitalHarbor7&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;DigitalHarbor7’s&lt;/a&gt; project &lt;a href=&#34;https://github.com/DigitalHarbor7/engineering-status-pages&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;engineering-status-pages&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Static sites for engineering project status updates&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>aptitude why</title>
    <id>https://waylonwalker.com/aptitude-why/</id>
    <updated>2025-02-11T13:55:04Z</updated>
    <published>2025-02-11T13:55:04Z</published>
    <link href="https://waylonwalker.com/aptitude-why/" rel="alternate" type="text/html"></link>
    <summary type="text">Today I ran into an interesting question, why am I being asked to configure tzdata while installing npm. Turns out that the cli has a why command that very...</summary>
    <content type="html">&lt;p&gt;Today I ran into an interesting question, why am I being asked to configure&#xA;tzdata while installing npm.  Turns out that the &lt;code&gt;aptitude&lt;/code&gt; cli has a why&#xA;command that very handily nails down why you have something installed on a&#xA;debian based system.&lt;/p&gt;&#xA;&lt;h2 id=&#34;install-aptitude&#34;&gt;Install aptitude &lt;a href=&#34;#install-aptitude&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;apt install aptitude&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;h2 id=&#34;why-tzdata&#34;&gt;Why tzdata &lt;a href=&#34;#why-tzdata&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;Now we can query why we need tzdata and see the full chain with the root&#xA;package being &lt;code&gt;npm&lt;/code&gt;.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;root@47685221fb82:/# aptitude why tzdata&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;i   npm        Depends  node-gyp&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;i A node-gyp   Depends  gyp &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;&amp;gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; 0.1+20200513gitcaa6002&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;i A gyp        Depends  python3:any&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;i A python3    Provides python3:any&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;i A python3    Depends  python3.12 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;&amp;gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; 3.12.3-0~&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;i A python3.12 Depends  tzdata&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Dont Starve Together Session One - First Encounter With A Tall Bird</title>
    <id>https://waylonwalker.com/shots/first-encounter-with-a-tall-bird/</id>
    <updated>2025-02-11T09:40:05Z</updated>
    <published>2025-02-11T09:40:05Z</published>
    <link href="https://waylonwalker.com/shots/first-encounter-with-a-tall-bird/" rel="alternate" type="text/html"></link>
    <summary type="text">On the first day I made a look around my home biome, and ran into a Tall Bird</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/8bb62b1c-4a0f-4660-9f54-1c4ad04b28cf.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;First encounter with a Tall Bird&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/8bb62b1c-4a0f-4660-9f54-1c4ad04b28cf.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/8bb62b1c-4a0f-4660-9f54-1c4ad04b28cf.mp4&#34; type=&#34;video/mp4&#34;&gt;First encounter with a Tall Bird&lt;/video&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;On the first day I made a look around my home biome, and ran into a Tall Bird&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>configure timezone</title>
    <id>https://waylonwalker.com/configure-tz/</id>
    <updated>2025-02-10T13:35:24Z</updated>
    <published>2025-02-10T13:35:24Z</published>
    <link href="https://waylonwalker.com/configure-tz/" rel="alternate" type="text/html"></link>
    <summary type="text">Today I ran into this interactive prompt on ubuntu while installing node and npm, and I do not want to manually configure this interactively every time I run...</summary>
    <content type="html">&lt;p&gt;Today I ran into this interactive prompt on ubuntu while installing node and&#xA;npm, and I do not want to manually configure this interactively every time I&#xA;run an install, moreso in docker I do not have the interactive terminal to do&#xA;so.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Configuring tzdata&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;------------------&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Please &lt;span class=&#34;k&#34;&gt;select&lt;/span&gt; the geographic area in which you live. Subsequent configuration questions will narrow this down by presenting a list of cities, representing the &lt;span class=&#34;nb&#34;&gt;time&lt;/span&gt; zones in which they are located.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  1. Africa  2. America  3. Antarctica  4. Arctic  5. Asia  6. Atlantic  7. Australia  8. Europe  9. Indian  10. Pacific  11. Etc  12. Legacy&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Geographic area:&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;h2 id=&#34;why-tzdata&#34;&gt;Why tzdata &lt;a href=&#34;#why-tzdata&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;Checking aptitude why tzdata it shows that the chain goes back through npm.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;root@47685221fb82:/# aptitude why tzdata&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;i   npm        Depends  node-gyp&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;i A node-gyp   Depends  gyp &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;&amp;gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; 0.1+20200513gitcaa6002&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;i A gyp        Depends  python3:any&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;i A python3    Provides python3:any&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;i A python3    Depends  python3.12 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;&amp;gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; 3.12.3-0~&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;i A python3.12 Depends  tzdata&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;h2 id=&#34;the-solution-configure-tzdata&#34;&gt;The solution, configure tzdata &lt;a href=&#34;#the-solution-configure-tzdata&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;export&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;TZ&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;America/Chicago&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;export&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;DEBIAN_FRONTEND&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;noninteractive&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;apt update&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;apt install tzdata -y&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;ln -fs /usr/share/zoneinfo/&lt;span class=&#34;nv&#34;&gt;$TZ&lt;/span&gt; /etc/localtime&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;dpkg-reconfigure -f noninteractive tzdata&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;div class=&#34;admonition tip&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;DEBIAN_FRONTEND=noninteractive&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;This is required, because apt installing tzdata will trigger the&#xA;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt;interactive prompt.  You will manually configure it in the next two steps.&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Dont Starve Together Session One Start</title>
    <id>https://waylonwalker.com/shots/dont-starve-together-session-one-start/</id>
    <updated>2025-02-10T09:40:05Z</updated>
    <published>2025-02-10T09:40:05Z</published>
    <link href="https://waylonwalker.com/shots/dont-starve-together-session-one-start/" rel="alternate" type="text/html"></link>
    <summary type="text">I always select the character _. He comes with an axe called _ she has some dark humor (but not too dark), I like her. She also does not wear out so you always have a weapon and way to chop wood with you.</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/4408f5bd-4f20-4e88-8d0f-599155c5637c.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Dont Starve Together Session One Start&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/4408f5bd-4f20-4e88-8d0f-599155c5637c.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/4408f5bd-4f20-4e88-8d0f-599155c5637c.mp4&#34; type=&#34;video/mp4&#34;&gt;Dont Starve Together Session One Start&lt;/video&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;I always select the character &lt;em&gt;Woodie&lt;/em&gt;.  He comes with an axe called &lt;em&gt;Lucy&lt;/em&gt; she has some dark humor (but not too dark), I like her.  She also does not wear out so you always have a weapon and way to chop wood with you.&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Colors - Core concepts - Tailwind CSS</title>
    <id>https://waylonwalker.com/thought-556/</id>
    <updated>2025-02-09T21:32:57Z</updated>
    <published>2025-02-09T21:32:57Z</published>
    <link href="https://waylonwalker.com/thought-556/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://tailwindcss.com/docs/colors</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://tailwindcss.com/docs/colors&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://tailwindcss.com/api/og?path=/docs/colors&#34; alt=&#34;Colors - Core concepts — Using and customizing the color palette in Tailwind CSS projects.&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: Colors - Core concepts — Using and customizing the color palette in Tailwind CSS projects.&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Colors - Core concepts&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Using and customizing the color palette in Tailwind CSS projects.&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;tailwindcss.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Tailwind has the best color system, very well done.  Even if you don’t use it, it serves as a great color picker.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Don&#39;t Starve Together Forever world</title>
    <id>https://waylonwalker.com/thought-555/</id>
    <updated>2025-02-09T21:31:38Z</updated>
    <published>2025-02-09T21:31:38Z</published>
    <link href="https://waylonwalker.com/thought-555/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://wyattbubbylee.com/dst-forever-world/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://wyattbubbylee.com/dst-forever-world/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;External Link&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;wyattbubbylee.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;So proud of Wyatt for writing in his own blog!&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>dst session one</title>
    <id>https://waylonwalker.com/dst-session-one/</id>
    <updated>2025-02-09T09:40:05Z</updated>
    <published>2025-02-09T09:40:05Z</published>
    <link href="https://waylonwalker.com/dst-session-one/" rel="alternate" type="text/html"></link>
    <summary type="text">Wyatt is also documenting his run, while we aren&#39;t playing in the same world we are playing together.</summary>
    <content type="html">&lt;p&gt;Wyatt is also documenting his run, while we aren’t playing in the same world we&#xA;are playing together.&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://wyattbubbylee.com/dst-forever-world/&#34;&gt;https://wyattbubbylee.com/dst-forever-world/&lt;/a&gt;&lt;/p&gt;&#xA;&lt;h2 id=&#34;loading-into-the-world&#34;&gt;Loading into the world &lt;a href=&#34;#loading-into-the-world&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;I always select the character &lt;em&gt;Woodie&lt;/em&gt;.  He comes with an axe called &lt;em&gt;Lucy&lt;/em&gt; she&#xA;has some dark humor (but not too dark), I like her.  She also does not wear out&#xA;so you always have a weapon and way to chop wood with you.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/4408f5bd-4f20-4e88-8d0f-599155c5637c.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;dst-1-1.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/4408f5bd-4f20-4e88-8d0f-599155c5637c.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/4408f5bd-4f20-4e88-8d0f-599155c5637c.mp4&#34; type=&#34;video/mp4&#34;&gt;dst-1-1.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;first-encounter-with-a-tall-bird&#34;&gt;First encounter with a Tall Bird &lt;a href=&#34;#first-encounter-with-a-tall-bird&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;On the first day I made a look around my home biome, and ran into a Tall Bird&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/8bb62b1c-4a0f-4660-9f54-1c4ad04b28cf.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;dst-1-2.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/8bb62b1c-4a0f-4660-9f54-1c4ad04b28cf.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/8bb62b1c-4a0f-4660-9f54-1c4ad04b28cf.mp4&#34; type=&#34;video/mp4&#34;&gt;dst-1-2.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;tall-bird-stats&#34;&gt;Tall Bird Stats &lt;a href=&#34;#tall-bird-stats&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/9d18495d-300b-4719-8bf6-13408ad507f1.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;image&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/9d18495d-300b-4719-8bf6-13408ad507f1.webp&#34; alt=&#34;image&#34;/ data-glightbox=&#34;description: image&#34;&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;Here are the tall bird stats from the &lt;a href=&#34;https://dontstarve.fandom.com/wiki/Tallbird&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/dontstarve.fandom.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/dontstarve.fandom.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;wiki&lt;/a&gt;&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;setting-up-base&#34;&gt;Setting up base &lt;a href=&#34;#setting-up-base&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;Just after the first night started I found my way back to the center of the map&#xA;and made a stone campfire.  I really like to use the stone campfires as they&#xA;last forever, you just have to add wood.  I was lucky enough to find stone by&#xA;the Tall Bird to make this one on first day.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/f6d07c07-1d0a-40c9-9930-36c1e48aa69e.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;dst-1-3.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/f6d07c07-1d0a-40c9-9930-36c1e48aa69e.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/f6d07c07-1d0a-40c9-9930-36c1e48aa69e.mp4&#34; type=&#34;video/mp4&#34;&gt;dst-1-3.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;opening-up-the-garden&#34;&gt;Opening up the garden &lt;a href=&#34;#opening-up-the-garden&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;On day two I had enough materials gathered to make the garden digamajig to prep&#xA;the soil for gardening.  I planted the few seeds that I stole from the birds&#xA;right away.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/43e6e5db-4750-4a32-8f53-652fbd7ffaf7.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;dst-1-4.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/43e6e5db-4750-4a32-8f53-652fbd7ffaf7.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/43e6e5db-4750-4a32-8f53-652fbd7ffaf7.mp4&#34; type=&#34;video/mp4&#34;&gt;dst-1-4.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;getting-a-hat&#34;&gt;Getting a hat &lt;a href=&#34;#getting-a-hat&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;I had the grass for a hat, so I figured why not.  I’m not sure if  it really&#xA;helps this time of year, but I thought it looked good on Woodie.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/813977e6-f954-43e8-882d-82afb66814d6.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;dst-1-5.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/813977e6-f954-43e8-882d-82afb66814d6.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/813977e6-f954-43e8-882d-82afb66814d6.mp4&#34; type=&#34;video/mp4&#34;&gt;dst-1-5.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;getting-into-it-with-a-clockwork-bishop&#34;&gt;Getting into it with a Clockwork Bishop &lt;a href=&#34;#getting-into-it-with-a-clockwork-bishop&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;As I was gathering resources with Lucy, minding my own business &lt;strong&gt;BAM&lt;/strong&gt; I got&#xA;hit with an attack from a Clockwork Bishop, man these things hit hard and have&#xA;really good aim.  I took three hits before getting away, leaving me with very&#xA;low heath at the end of this play session.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/36f4e4b8-16ee-4183-8de3-c2f96edd36e2.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;dst-1-6.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/36f4e4b8-16ee-4183-8de3-c2f96edd36e2.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/36f4e4b8-16ee-4183-8de3-c2f96edd36e2.mp4&#34; type=&#34;video/mp4&#34;&gt;dst-1-6.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/805aadc7-9dff-44ee-8640-8f8ec1d21de8.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;image&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/805aadc7-9dff-44ee-8640-8f8ec1d21de8.webp&#34; alt=&#34;image&#34;/ data-glightbox=&#34;description: image&#34;&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;Here is the clockwork bishop stats from the &lt;a href=&#34;https://dontstarve.fandom.com/wiki/Clockwork_Bishop&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/dontstarve.fandom.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/dontstarve.fandom.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;wiki&lt;/a&gt;&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;session-two&#34;&gt;Session Two &lt;a href=&#34;#session-two&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;To kick off the second session, I noticed that when you have a torch you can&#xA;light your cooking pot, what I did not realize was that this burns your cooking&#xA;pot to smitherines.  Nothing left but a frame of &lt;strong&gt;useless&lt;/strong&gt; ashes.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/24fa3268-04a5-4c23-b62c-c60bfdad0084.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;dst-2-1.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/24fa3268-04a5-4c23-b62c-c60bfdad0084.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/24fa3268-04a5-4c23-b62c-c60bfdad0084.mp4&#34; type=&#34;video/mp4&#34;&gt;dst-2-1.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;the-treeguard&#34;&gt;The TreeGuard &lt;a href=&#34;#the-treeguard&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;After that terrible mistake I was off with Lucy collecting wood when I awoken&#xA;the &lt;a href=&#34;https://dontstarve.fandom.com/wiki/Treeguard&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/dontstarve.fandom.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/dontstarve.fandom.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;TreeGuard&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/f12b162b-c1be-431d-91ae-a8559490befe.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;dst-2-2.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/f12b162b-c1be-431d-91ae-a8559490befe.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/f12b162b-c1be-431d-91ae-a8559490befe.mp4&#34; type=&#34;video/mp4&#34;&gt;dst-2-2.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/61712606-6aeb-43b1-bea0-5f879d52345b.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;image&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/61712606-6aeb-43b1-bea0-5f879d52345b.webp&#34; alt=&#34;image&#34;/ data-glightbox=&#34;description: image&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;p&gt;The dude is slow, has terrible aim, but he is so persistent.  No matter how far&#xA;you get away he just shows up trying to kill you.&lt;/p&gt;&#xA;&lt;p&gt;I needed to get my cooking pot back, so the next step was to get charcoal.  So&#xA;while I was collecting charcoal I did my best to try to take down the TreeGuard&#xA;by burning him.  But to no avail, he lives on.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/9c8b4b37-beb4-41e3-b264-388811eb8f62.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;dst-2-3.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/9c8b4b37-beb4-41e3-b264-388811eb8f62.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/9c8b4b37-beb4-41e3-b264-388811eb8f62.mp4&#34; type=&#34;video/mp4&#34;&gt;dst-2-3.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;p&gt;Once back at camp with my new cooking pot, he snuck up on me with his gigantic&#xA;sluggish form, one wrong keystroke on mybehalf and I walked straight into his&#xA;attack and I was done for.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/510c8290-01b1-4350-b668-ac8ca53cf6c1.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;dst-2-4.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/510c8290-01b1-4350-b668-ac8ca53cf6c1.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/510c8290-01b1-4350-b668-ac8ca53cf6c1.mp4&#34; type=&#34;video/mp4&#34;&gt;dst-2-4.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;p&gt;After that embarrasing death I made my way over to a touchstone I found and&#xA;Woodie is back from the dead, but without his beloved Lucy, to get her we will&#xA;need to go&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/33c62075-535f-47c9-847e-3f0b0a05ec10.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;dst-2-5.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/33c62075-535f-47c9-847e-3f0b0a05ec10.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/33c62075-535f-47c9-847e-3f0b0a05ec10.mp4&#34; type=&#34;video/mp4&#34;&gt;dst-2-5.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Developer Productivity, v2 with ThePrimeagen | Preview - YouTube</title>
    <id>https://waylonwalker.com/thought-554/</id>
    <updated>2025-02-08T15:29:52Z</updated>
    <published>2025-02-08T15:29:52Z</published>
    <link href="https://waylonwalker.com/thought-554/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/watch?v=03KsS09YS4E</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;03KsS09YS4E&#34; title=&#34;Developer Productivity, v2 with ThePrimeagen | Preview&#34; playlabel=&#34;Play: Developer Productivity, v2 with ThePrimeagen | Preview&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Big fan of Primes setup.  I was not far off of his setup before he really came on the scene, but I’ve picked up a ton of nuggets from him and how he operates.  I took his first developer productivity course on Front End Masters as it came out.&lt;/p&gt;&#xA;&lt;p&gt;It is interesting to see him roll back his ansible scripts for bash scripts here.  I converted my setup to ansible after watching his first, but have also since rolled back to bash scripts for quite similar reasons.  Ansible is great for remote tasks that need to be done on a fleet of machines, but like he says here overkill for this purpose and ends up something that you need to read the docs for every change to your dotfiles.&lt;/p&gt;&#xA;&lt;p&gt;Unlike prime I’ve really leaned harder on installing everything in a docker image and developing out of a docker image.  I’ve long built docker images of my dotfiles with the idea that its nice to be able to just use them on other machines, but it rarely happened.&lt;/p&gt;&#xA;&lt;p&gt;In the past year I’ve moved bazzite, an immutable distro.  It comes with podman and distrobox, so I install very little on it, a few flatpaks from the store for brave and signal, but most of what I really use day to day comes from my devtainer.  It’s nice that I really have one install target for all of my scripts so they become quite stable.  I don’t need to worry about arch vs ubuntu vs fedora, no matter where I am its the same base image.&lt;/p&gt;&#xA;&lt;p&gt;I’ve also really started to lean on kubernetes, it is so useful to just be able to start a pod in k8s using the same exact develop setup as I would have locally.  Nothing needs installed, I can just bring my dev setup to the cluster where the network and data I might need to debug is.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>bc</title>
    <id>https://waylonwalker.com/bc/</id>
    <updated>2025-02-08T09:30:08Z</updated>
    <published>2025-02-08T09:30:08Z</published>
    <link href="https://waylonwalker.com/bc/" rel="alternate" type="text/html"></link>
    <content type="html">&lt;p&gt;&lt;a href=&#34;https://www.youtube.com/watch?v=03KsS09YS4E&amp;amp;t=610s&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/www.youtube.com.png&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/www.youtube.com.png&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;https://www.youtube.com/watch?v=03KsS09YS4E&amp;amp;t=610s&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Today I learned about the basic calculator, bc.  At the very end of this video&#xA;prime uses it to add numbers in vim.&lt;/p&gt;&#xA;&lt;h2 id=&#34;repl&#34;&gt;REPL &lt;a href=&#34;#repl&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;You can start a calculator repl at the command line, by running bc.&lt;/p&gt;&#xA;&lt;h2 id=&#34;vim&#34;&gt;Vim &lt;a href=&#34;#vim&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;Since bc supports standard unix pipes you can easily pipe data from vim into bc&#xA;and back out using &lt;code&gt;!!bc&lt;/code&gt;.  All you need is a string of math on the line you&#xA;want to calculate, go to normal mode and run &lt;code&gt;!!bc&lt;/code&gt; to get the answer.&lt;/p&gt;&#xA;&lt;p&gt;Traditionally I will open my system calculator or ipython to do something like&#xA;this.&lt;/p&gt;&#xA;&lt;p&gt;To keep the equation and the result in the same line you can send the equation&#xA;to stderr and the result to stdout using tee.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:.!tee &amp;gt;&lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;cat &amp;gt;&lt;span class=&#34;p&#34;&gt;&amp;amp;&lt;/span&gt;2&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt; bc&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ carpedm20 emoji</title>
    <id>https://waylonwalker.com/carpedm20-emoji/</id>
    <updated>2025-02-07T22:08:01Z</updated>
    <published>2025-02-07T22:08:01Z</published>
    <link href="https://waylonwalker.com/carpedm20-emoji/" rel="alternate" type="text/html"></link>
    <summary type="text">emoji by carpedm20 is a game-changer in its space. Excited to see how it evolves.</summary>
    <content type="html">&lt;p&gt;&lt;a href=&#34;https://github.com/carpedm20/emoji&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;emoji&lt;/a&gt; by &lt;a href=&#34;https://github.com/carpedm20&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;carpedm20&lt;/a&gt; is a game-changer in its space. Excited to see how it evolves.&lt;/p&gt;&#xA;&lt;p&gt;emoji terminal output for Python&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ uktrade sqlite-s3vfs</title>
    <id>https://waylonwalker.com/uktrade-sqlite-s3vfs/</id>
    <updated>2025-02-07T17:09:49Z</updated>
    <published>2025-02-07T17:09:49Z</published>
    <link href="https://waylonwalker.com/uktrade-sqlite-s3vfs/" rel="alternate" type="text/html"></link>
    <summary type="text">The work on sqlite-s3vfs by uktrade.</summary>
    <content type="html">&lt;p&gt;The work on &lt;a href=&#34;https://github.com/uktrade/sqlite-s3vfs&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;sqlite-s3vfs&lt;/a&gt; by &lt;a href=&#34;https://github.com/uktrade&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;uktrade&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Python writable virtual filesystem for SQLite on S3&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Jhey ʕ·ᴥ·　ʔ: &#34;breakin&#39; down classics CSS background-image + ba...</title>
    <id>https://waylonwalker.com/thought-553/</id>
    <updated>2025-02-07T01:59:07Z</updated>
    <published>2025-02-07T01:59:07Z</published>
    <link href="https://waylonwalker.com/thought-553/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://bsky.app/profile/jhey.dev/post/3lgoev36hps2h</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://bsky.app/profile/jhey.dev/post/3lgoev36hps2h&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img src=&#34;https://video.bsky.app/watch/did%3Aplc%3Amqptcphqrjhr5nziy33f3kco/bafkreiahiep3273fxhefbijmfixshdlksetwczgtxx2xlxqzti7gik3uuy/thumbnail.jpg&#34; alt=&#34;Jhey ʕ·ᴥ·　ʔ (@jhey.dev) — breakin&amp;#39; down classics&#xA;&amp;lt;p&amp;gt;CSS background-image + background-blend-mode + custom properties = holo-like effects with parallax ✨&amp;#34; loading=“lazy”&amp;gt;&#xA;&amp;lt;/div&amp;gt;&#xA;&amp;lt;div class=&#34; embed-card-content glightbox&#34;=&#34;&#34;/ data-glightbox=&#34;description: Jhey ʕ·ᴥ·　ʔ (@jhey.dev) — breakin&amp;#39; down classics&#xA;&amp;lt;p&amp;gt;CSS background-image + background-blend-mode + custom properties = holo-like effects with parallax ✨&amp;#34; loading=“lazy”&amp;gt;&#xA;&amp;lt;/div&amp;gt;&#xA;&amp;lt;div class=&#34;&gt;&#xA;&lt;div class=&#34;embed-card-title&#34;&gt;Jhey ʕ·ᴥ·　ʔ (@jhey.dev)&lt;/div&gt;&#xA;&lt;div class=&#34;embed-card-description&#34;&gt;breakin&amp;#39; down classics&lt;p&gt;&lt;/p&gt;&#xA;&lt;p&gt;CSS background-image + background-blend-mode + custom properties = holo-like effects with parallax ✨&lt;/p&gt;&lt;/div&gt;&#xA;&lt;div class=&#34;embed-card-meta&#34;&gt;Bluesky Social · bsky.app&lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;/a&gt;&lt;p&gt;&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Jhey has the coolest webdev demos!&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Fix VERSION_OR_CIPHER_MISMATCH · Cloudflare SSL/TLS docs</title>
    <id>https://waylonwalker.com/thought-552/</id>
    <updated>2025-02-05T20:43:52Z</updated>
    <published>2025-02-05T20:43:52Z</published>
    <link href="https://waylonwalker.com/thought-552/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://developers.cloudflare.com/ssl/troubleshooting/version-cipher-mismatch/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://developers.cloudflare.com/ssl/troubleshooting/version-cipher-mismatch/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://developers.cloudflare.com/core-services-preview.png&#34; alt=&#34;ERR_SSL_VERSION_OR_CIPHER_MISMATCH — Learn how to troubleshoot ERR_SSL_VERSION_OR_CIPHER_MISMATCH when using Cloudflare SSL/TLS.&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: ERR_SSL_VERSION_OR_CIPHER_MISMATCH — Learn how to troubleshoot ERR_SSL_VERSION_OR_CIPHER_MISMATCH when using Cloudflare SSL/TLS.&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;ERR_SSL_VERSION_OR_CIPHER_MISMATCH&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Learn how to troubleshoot ERR_SSL_VERSION_OR_CIPHER_MISMATCH when using Cloudflare SSL/TLS.&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;Cloudflare Docs · developers.cloudflare.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Today I learned that cloudflare free tier  universal certs do not support multilevel subdomains.&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;By default, Cloudflare Universal SSL certificates only cover your apex domain and one level of subdomain.&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/7d1fe806-a3d0-47e3-8eb1-08c1a0965728.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;image&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/7d1fe806-a3d0-47e3-8eb1-08c1a0965728.webp&#34; alt=&#34;image&#34;/ data-glightbox=&#34;description: image&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Migration guide for config loaders — kedro 0.19.11 documentation</title>
    <id>https://waylonwalker.com/thought-551/</id>
    <updated>2025-02-05T18:16:44Z</updated>
    <published>2025-02-05T18:16:44Z</published>
    <link href="https://waylonwalker.com/thought-551/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://docs.kedro.org/en/stable/configuration/config_migration.html</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;/static/https://docs.kedro.org/en/stable/configuration/config_loader_migration.html&#34; class=&#34;glightbox-link&#34; aria-label=&#34;https://docs.kedro.org/en/stable/configuration/config_loader_migration.html&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;/static/https://docs.kedro.org/en/stable/configuration/config_loader_migration.html&#34; alt=&#34;https://docs.kedro.org/en/stable/configuration/config_loader_migration.html&#34;/ data-glightbox=&#34;description: https://docs.kedro.org/en/stable/configuration/config_loader_migration.html&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;p&gt;Migrating from kedro 0.18.4 to the latest version involves handling the deprecated OmegaConf loader.  Switching over does not look as bad as I originally thought.&lt;/p&gt;&#xA;&lt;ol&gt;&#xA;&lt;li&gt;installing kedro 0.18.5+&lt;/li&gt;&#xA;&lt;li&gt;set the CONFIG_LOADER_CLASS in settings.py&lt;/li&gt;&#xA;&lt;li&gt;swap out import statements&lt;/li&gt;&#xA;&lt;li&gt;config must be yaml or json&lt;/li&gt;&#xA;&lt;li&gt;getting values from config must be done with bracket &lt;code&gt;__getattr__&lt;/code&gt; style not with &lt;code&gt;.get&lt;/code&gt;&lt;/li&gt;&#xA;&lt;li&gt;any Exceptions caught from Templated config loader will need to be swapped to OmegaConfig exceptions, similar to #3&lt;/li&gt;&#xA;&lt;li&gt;templated values must lead with an &lt;code&gt;_&lt;/code&gt;&lt;/li&gt;&#xA;&lt;li&gt;Globals are handled different&lt;/li&gt;&#xA;&lt;li&gt;OmegaConfig does not support jinja2 sytax, but rather a &lt;code&gt;${variable}&lt;/code&gt; syntax&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Search: 5 results found for &#34;box white&#34; – Kailh switch</title>
    <id>https://waylonwalker.com/thought-550/</id>
    <updated>2025-02-03T15:24:40Z</updated>
    <published>2025-02-03T15:24:40Z</published>
    <link href="https://waylonwalker.com/thought-550/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.kailh.net/search?q=box+white&amp;_psq=white&amp;_v=1.0</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;/static/https://www.kailh.net/search?q=box+white&amp;amp;_pos=2&amp;amp;_psq=white&amp;amp;_ss=e&amp;amp;_v=1.0&#34; class=&#34;glightbox-link&#34; aria-label=&#34;https://www.kailh.net/search?q=box+white&amp;amp;amp;_pos=2&amp;amp;amp;_psq=white&amp;amp;amp;_ss=e&amp;amp;amp;_v=1.0&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;/static/https://www.kailh.net/search?q=box+white&amp;amp;_pos=2&amp;amp;_psq=white&amp;amp;_ss=e&amp;amp;_v=1.0&#34; alt=&#34;https://www.kailh.net/search?q=box+white&amp;amp;_pos=2&amp;amp;_psq=white&amp;amp;_ss=e&amp;amp;_v=1.0&#34;/ data-glightbox=&#34;description: https://www.kailh.net/search?q=box+white&amp;amp;_pos=2&amp;amp;_psq=white&amp;amp;_ss=e&amp;amp;_v=1.0&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;p&gt;Prime mentioned on stream that Whites were his favorite switch.  I tend to like lighter switches and want to give it a try.  I really like my Durock lupine’s at 55g, the box whites are 45g, that feels like it would take quite a bit more control, floating over the keys.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>markdown split panel</title>
    <id>https://waylonwalker.com/markdown-split-panel/</id>
    <updated>2025-02-03T13:21:23Z</updated>
    <published>2025-02-03T13:21:23Z</published>
    <link href="https://waylonwalker.com/markdown-split-panel/" rel="alternate" type="text/html"></link>
    <summary type="text">Today I was playing with markdown split panels. I want to be able to compare and constrast occasionually, today the inspiration hit to do this using...</summary>
    <content type="html">&lt;p&gt;Today I was playing with markdown split panels.  I want to be able to compare&#xA;and constrast occasionually, today the inspiration hit to do this using&#xA;admonitions.&lt;/p&gt;&#xA;&lt;!-- ![screenshot-2025-02-04T02-28-26-951Z.png](https://dropper.waylonwalker.com/api/file/46ead069-5731-4028-886a-f76d56792691.png){.more-cinematic} --&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/e3d40c22-643d-433c-8eb4-c3ddf91d0527.png&#34; class=&#34;glightbox-link&#34; aria-label=&#34;screenshot-2025-02-04T02-28-46-750Z.png&#34;&gt;&lt;img src=&#34;https://dropper.waylonwalker.com/api/file/e3d40c22-643d-433c-8eb4-c3ddf91d0527.png&#34; alt=&#34;screenshot-2025-02-04T02-28-46-750Z.png&#34; class=&#34;more-cinematic glightbox&#34;/ data-glightbox=&#34;description: screenshot-2025-02-04T02-28-46-750Z.png&#34;&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p class=&#34;rounded-xl&#34;&gt;&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Mobile Users 🔄&lt;/p&gt;&#xA;&lt;p&gt;You will need to rotate your device to see the side by side feature.&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;&lt;h2 id=&#34;the-markdown&#34;&gt;The Markdown &lt;a href=&#34;#the-markdown&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;This is what I am going for, one admonition that is easy to remember, that&#xA;nests inside of itself , and I can put as much markdown on the inside that I&#xA;want.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;!!! vsplit I Have two opinions&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    !!! vsplit Left Opinion&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        supporting arguments&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;k&#34;&gt;*&lt;/span&gt; lorem ipsum&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;k&#34;&gt;*&lt;/span&gt; ipsum dolor&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;k&#34;&gt;- [x]&lt;/span&gt; lorem ipsum&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;k&#34;&gt;- [ ]&lt;/span&gt; ipsum dolor&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    !!! vsplit Right Opinion&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        supporting arguments&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;k&#34;&gt;*&lt;/span&gt; lorem ipsum&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;k&#34;&gt;*&lt;/span&gt; ipsum dolor&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;k&#34;&gt;- [ ]&lt;/span&gt; lorem ipsum&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;k&#34;&gt;- [x]&lt;/span&gt; ipsum dolor&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Here is the result of that markdown.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition vsplit&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;I Have two opinions&lt;/p&gt;&#xA;&lt;div class=&#34;admonition vsplit&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Left Opinion&lt;/p&gt;&#xA;&lt;p&gt;supporting arguments&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;lorem ipsum&lt;/li&gt;&#xA;&lt;li&gt;ipsum dolor&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;input checked=&#34;&#34; disabled=&#34;&#34; type=&#34;checkbox&#34;/&gt; lorem ipsum&lt;/li&gt;&#xA;&lt;li&gt;&lt;input disabled=&#34;&#34; type=&#34;checkbox&#34;/&gt; ipsum dolor&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;/div&gt;&#xA;&lt;div class=&#34;admonition vsplit&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Right Opinion&lt;/p&gt;&#xA;&lt;p&gt;supporting arguments&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;lorem ipsum&lt;/li&gt;&#xA;&lt;li&gt;ipsum dolor&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;input disabled=&#34;&#34; type=&#34;checkbox&#34;/&gt; lorem ipsum&lt;/li&gt;&#xA;&lt;li&gt;&lt;input checked=&#34;&#34; disabled=&#34;&#34; type=&#34;checkbox&#34;/&gt; ipsum dolor&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p class=&#34;clean&#34;&gt;&lt;/p&gt;&#xA;&lt;div class=&#34;admonition vsplit&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Vsplit&lt;/p&gt;&#xA;&lt;div class=&#34;admonition vsplit&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Hello World&lt;/p&gt;&#xA;&lt;p&gt;Here is a hello world application written in the typer cli framework&#xA;for cli.&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;&lt;div class=&#34;admonition vsplit&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Vsplit&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;    ``` python&#xA;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt;#!/usr/bin/env -S uv run –quiet –script&lt;/p&gt;&#xA;&lt;h1 id=&#34;heading&#34;&gt;///&lt;/h1&gt;&#xA;&lt;h1 id=&#34;requires-python--312&#34;&gt;requires-python = “&amp;gt;=3.12”&lt;/h1&gt;&#xA;&lt;h1 id=&#34;dependencies--&#34;&gt;dependencies = [&lt;/h1&gt;&#xA;&lt;h1 id=&#34;typer&#34;&gt;“typer”,&lt;/h1&gt;&#xA;&lt;h1 id=&#34;heading-1&#34;&gt;]&lt;/h1&gt;&#xA;&lt;h1 id=&#34;heading-2&#34;&gt;///&lt;/h1&gt;&#xA;&lt;p&gt;import typer&lt;/p&gt;&#xA;&lt;p&gt;app = typer.Typer()&lt;/p&gt;&#xA;&lt;p&gt;@app.command()&#xA;def hello(name: str = “World”):&#xA;“““Prints a greeting message.”””&#xA;typer.echo(f&amp;#34;Hello, {name}!&amp;#34;)&lt;/p&gt;&#xA;&lt;p&gt;if &lt;strong&gt;name&lt;/strong&gt; == “&lt;strong&gt;main&lt;/strong&gt;”:&#xA;app()&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;/div&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Make MinIO Access Key</title>
    <id>https://waylonwalker.com/make-minio-access-key/</id>
    <updated>2025-02-02T19:18:05Z</updated>
    <published>2025-02-02T19:18:05Z</published>
    <link href="https://waylonwalker.com/make-minio-access-key/" rel="alternate" type="text/html"></link>
    <summary type="text">Today in my homelab I wanted to setup a new service that needed a MinIO access key. So I created a new user and a new access key with the MinIO CLI rather...</summary>
    <content type="html">&lt;p&gt;Today in my &lt;a href=&#34;/homelab/&#34; class=&#34;glossary-term&#34; title=&#34;A place to self host applications. For me this is primarily self built web applications, and applications for sharing files with my family. Techno Tim has a...&#34;&gt;homelab&lt;/a&gt; I wanted to setup a new service that needed a MinIO access&#xA;key. So I created a new user and a new access key with the MinIO CLI rather&#xA;than poking through the ui like I have before.&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/2f706c5d-c591-4465-8d2b-eb18ce26aeca.png&#34; class=&#34;glightbox-link&#34; aria-label=&#34;screenshot-2025-02-03T02-13-38-628Z.png&#34;&gt;&lt;img src=&#34;https://dropper.waylonwalker.com/api/file/2f706c5d-c591-4465-8d2b-eb18ce26aeca.png&#34; alt=&#34;screenshot-2025-02-03T02-13-38-628Z.png&#34; class=&#34;more-cinematic glightbox&#34;/ data-glightbox=&#34;description: screenshot-2025-02-03T02-13-38-628Z.png&#34;&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;h2 id=&#34;global-level-vs-user-level&#34;&gt;Global Level vs User Level &lt;a href=&#34;#global-level-vs-user-level&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;The MinIO CLI has two levels of access, global and user level. Most of the&#xA;commands in this post will have several ways to do similar tasks that would&#xA;potentially work.  We are going to prefer to use the user level commands for&#xA;more control.  For some commands such as listing Keys it is handy to use the&#xA;global level.&lt;/p&gt;&#xA;&lt;h2 id=&#34;the-policy&#34;&gt;The Policy &lt;a href=&#34;#the-policy&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;First we are going to make a new policy file named &lt;code&gt;mypages_rw_policy.json&lt;/code&gt;.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;o&#34;&gt;{&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;Version&amp;#34;&lt;/span&gt;: &lt;span class=&#34;s2&#34;&gt;&amp;#34;2012-10-17&amp;#34;&lt;/span&gt;,&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;Statement&amp;#34;&lt;/span&gt;: &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;o&#34;&gt;{&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;s2&#34;&gt;&amp;#34;Action&amp;#34;&lt;/span&gt;: &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;s2&#34;&gt;&amp;#34;s3:GetBucketLocation&amp;#34;&lt;/span&gt;,&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;s2&#34;&gt;&amp;#34;s3:ListBucket&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;,&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;s2&#34;&gt;&amp;#34;Effect&amp;#34;&lt;/span&gt;: &lt;span class=&#34;s2&#34;&gt;&amp;#34;Allow&amp;#34;&lt;/span&gt;,&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;s2&#34;&gt;&amp;#34;Resource&amp;#34;&lt;/span&gt;: &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;s2&#34;&gt;&amp;#34;arn:aws:s3:::mybucket&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;o&#34;&gt;}&lt;/span&gt;,&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;o&#34;&gt;{&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;s2&#34;&gt;&amp;#34;Action&amp;#34;&lt;/span&gt;: &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;s2&#34;&gt;&amp;#34;s3:GetObject&amp;#34;&lt;/span&gt;,&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;s2&#34;&gt;&amp;#34;s3:PutObject&amp;#34;&lt;/span&gt;,&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;s2&#34;&gt;&amp;#34;s3:DeleteObject&amp;#34;&lt;/span&gt;,&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;s2&#34;&gt;&amp;#34;s3:ListMultipartUploadParts&amp;#34;&lt;/span&gt;,&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;s2&#34;&gt;&amp;#34;s3:AbortMultipartUpload&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;,&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;s2&#34;&gt;&amp;#34;Effect&amp;#34;&lt;/span&gt;: &lt;span class=&#34;s2&#34;&gt;&amp;#34;Allow&amp;#34;&lt;/span&gt;,&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;s2&#34;&gt;&amp;#34;Resource&amp;#34;&lt;/span&gt;: &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;s2&#34;&gt;&amp;#34;arn:aws:s3:::mybucket/*&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;o&#34;&gt;}&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;h2 id=&#34;set-the-minio-alias&#34;&gt;Set the Minio Alias &lt;a href=&#34;#set-the-minio-alias&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;Before we can create new access keys we will need to start by settin up an&#xA;alias in minio that has admin rights to the minio server.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# default values&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;export&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;MINIO_ACCESS_KEY&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;minioadmin&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;export&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;MINIO_SECRET_KEY&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;minioadmin&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;mc &lt;span class=&#34;nb&#34;&gt;alias&lt;/span&gt; &lt;span class=&#34;nb&#34;&gt;set&lt;/span&gt; myminio https://myminio.example.com &lt;span class=&#34;nv&#34;&gt;$MINIO_ACCESS_KEY&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;$MINIO_SECRET_KEY&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Check to see if your alias exists.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;mc &lt;span class=&#34;nb&#34;&gt;alias&lt;/span&gt; list&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;h2 id=&#34;the-script&#34;&gt;The Script &lt;a href=&#34;#the-script&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;Now we are going to pick a SECRETKEY and a NEWUSERNAME, create the policy,&#xA;create the user, attach the policy to the user and add the user to the alias.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;cp&#34;&gt;#!/bin/bash&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nv&#34;&gt;NEWUSERNAME&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;MYPAGESUSER&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nv&#34;&gt;NEWPASSWORD&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;mysupersecretkey&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;echo&lt;/span&gt; USERNAME: &lt;span class=&#34;nv&#34;&gt;$NEWUSERNAME&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;echo&lt;/span&gt; PASSWORD: &lt;span class=&#34;nv&#34;&gt;$NEWPASSWORD&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# create a new policy for read/write to the bucket&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;mc admin policy create myminio mybucket-readwrite mypages_rw_policy.json&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# create a new user&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;mc admin user add myminio &lt;span class=&#34;nv&#34;&gt;$NEWUSERNAME&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;$NEWPASSWORD&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# attach the policy to the user, giving them read/write to the bucket&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;mc admin policy attach myminio mybucket-readwrite --user &lt;span class=&#34;nv&#34;&gt;$NEWUSERNAME&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# add the user to the alias&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;mc config host add myminio https://minio.wayl.one &lt;span class=&#34;nv&#34;&gt;$NEWUSERNAME&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;$NEWPASSWORD&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# create a new access key for the user with thier permissions&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;mc admin user svcacct add                       &lt;span class=&#34;se&#34;&gt;\&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;myminio MYPAGESUSER                     &lt;span class=&#34;se&#34;&gt;\&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;--name mypagesRWKey                       &lt;span class=&#34;se&#34;&gt;\&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;--description &lt;span class=&#34;s2&#34;&gt;&amp;#34;MYPAGESUSER Key for myminio&amp;#34;&lt;/span&gt; &lt;span class=&#34;se&#34;&gt;\&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;--expiry 2025-03-01&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;NEWSECRETKEY&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;3e11************************************************************&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Access Key: IL4*****************&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Secret Key: M3D*************************************&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Expiration: 2025-03-01 06:00:00 +0000 UTC&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;div class=&#34;admonition attention&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Attention&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;* This is the secret key, do not share it with anyone.&#xA;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;This secret key will only be displayed once here, make sure you copy it&#xA;to a secure location now.&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;/div&gt;&#xA;&lt;h2 id=&#34;give-it-a-test&#34;&gt;Give it a test &lt;a href=&#34;#give-it-a-test&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;Now we can test that it works, by creating a file and copying it into the&#xA;bucket.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# set up to work with the aws cli&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;export&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;AWS_DEFAULT_REGION&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;us-east-1&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;export&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;AWS_ACCESS_KEY_ID&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;IL4*****************&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;export&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;AWS_SECRET_ACCESS_KEY&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;M3D*************************************&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;export&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;AWS_ENDPOINT_URL&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;https://myminio.example.com&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# create a test file&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;echo&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;You How&amp;#34;&lt;/span&gt; &amp;gt; hi-hello.txt&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# upload the file&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;aws s3 cp hi-hello.txt s3://mybucket/hi-hello.txt&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# test the file exists&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;aws s3 ls s3://mybucket&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# output&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# 2025-02-02 19:25:02          8 hi-hello.txt&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;I am using the aws cli to test, I installed it with pip.&#xA;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;pipx install awscli&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&#xA;&lt;h2 id=&#34;managing-access-keys&#34;&gt;Managing Access Keys &lt;a href=&#34;#managing-access-keys&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;You can list all of the access keys for a user, or all users.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# for one user&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;mc admin accesskey ls myminio/ MYPAGESUSER&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# for all users&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;mc admin accesskey ls myminio/ --all&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;The output will show you all of the access keys for each user.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;User: MYPAGESUSER&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  Access Keys:&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    IL4*****************, expires: &lt;span class=&#34;m&#34;&gt;3&lt;/span&gt; weeks from now, sts: &lt;span class=&#34;nb&#34;&gt;false&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;You can also get a list of the service accounts for a user with this command.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;mc admin user svcacct ls myminio/ MYPAGESUSER&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;   Access Key        &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt; Expiry&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;IL4***************** &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt; 2025-03-01 06:00:00 +0000 UTC&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;You cannot see all of these keys from the web ui, the cli seems to be the&#xA;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt;only way to display all access keys, including access keys for other users.&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;&lt;h2 id=&#34;creating-an-ro-access-key&#34;&gt;Creating an RO Access Key &lt;a href=&#34;#creating-an-ro-access-key&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;I ran into errors when trying to create a new key with exactly the same&#xA;permissions as the user, I’m not sure if adding a policy that does not match&#xA;the user is allowed or not.&lt;/p&gt;&#xA;&lt;p&gt;I made a new policy that has read only access to the bucket as &lt;code&gt;mypages_ro_policy.json&lt;/code&gt;&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;{&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nt&#34;&gt;&amp;#34;Version&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;2012-10-17&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nt&#34;&gt;&amp;#34;Statement&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;nt&#34;&gt;&amp;#34;Action&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;s2&#34;&gt;&amp;#34;s3:GetBucketLocation&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;s2&#34;&gt;&amp;#34;s3:ListBucket&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;p&#34;&gt;],&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;nt&#34;&gt;&amp;#34;Effect&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;Allow&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;nt&#34;&gt;&amp;#34;Resource&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;s2&#34;&gt;&amp;#34;arn:aws:s3:::mypages&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;p&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;p&#34;&gt;},&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;nt&#34;&gt;&amp;#34;Action&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;s2&#34;&gt;&amp;#34;s3:GetObject&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;s2&#34;&gt;&amp;#34;s3:ListMultipartUploadParts&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;p&#34;&gt;],&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;nt&#34;&gt;&amp;#34;Effect&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;Allow&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;nt&#34;&gt;&amp;#34;Resource&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;s2&#34;&gt;&amp;#34;arn:aws:s3:::mypages/*&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;p&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;p&#34;&gt;}&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;}&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;This command will use the above policy to create a new read only access key.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;mc admin user svcacct add &lt;span class=&#34;se&#34;&gt;\&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  myminio MYPAGESUSER &lt;span class=&#34;se&#34;&gt;\&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  --name mypagesRWKey &lt;span class=&#34;se&#34;&gt;\&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  --description &lt;span class=&#34;s2&#34;&gt;&amp;#34;MYPAGESUSER READ ONLY Key for myminio&amp;#34;&lt;/span&gt; &lt;span class=&#34;se&#34;&gt;\&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  --expiry 2025-03-01 &lt;span class=&#34;se&#34;&gt;\&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  --policy mypages_ro_policy.json&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;The output will show you the access key and secret key.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Access Key: KDM*****************&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Secret Key: 8Ww*************************************&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Expiration: 2025-03-01 06:00:00 +0000 UTC&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;div class=&#34;admonition attention&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Attention&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;* This is the secret key, do not share it with anyone.&#xA;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;This secret key will only be displayed once here, make sure you copy it&#xA;to a secure location now.&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;/div&gt;&#xA;&lt;h2 id=&#34;removing-a-service-account&#34;&gt;Removing a service account &lt;a href=&#34;#removing-a-service-account&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;If you want to remove a service account, you can use the &lt;code&gt;rm&lt;/code&gt; command to remove&#xA;the Access Key, by alias and Access Key.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;mc admin user svcacct rm myminio/ QH6*****************&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;h2 id=&#34;getting-info&#34;&gt;Getting info &lt;a href=&#34;#getting-info&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;You can get the info for a user or service accounts using the &lt;code&gt;info&lt;/code&gt;&#xA;subcommands.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;⬢ &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;devtainer&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt; ❯ mc admin user info minio-wayl-one/ MYPAGESUSER&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;AccessKey: MYPAGESUSER&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Status: enabled&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;PolicyName: mypages-readwrite&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;MemberOf: &lt;span class=&#34;o&#34;&gt;[]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;⬢ &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;devtainer&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt; ❯ mc admin user svcacct ls minio-wayl-one/ MYPAGESUSER&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;   Access Key        &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt; Expiry&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;KDM***************** &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt; 2025-03-01 06:00:00 +0000 UTC&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;IL4***************** &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt; 2025-03-01 06:00:00 +0000 UTC&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;⬢ &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;devtainer&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt; ❯ mc admin user svcacct info myminio/ IL4*****************&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;AccessKey: IL4*****************&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;ParentUser: MYPAGESUSER&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Status: on&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Name: mypagesRWKey&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Description: MYPAGESUSER Key &lt;span class=&#34;k&#34;&gt;for&lt;/span&gt; myminio&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Policy: implied&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Expiration: &lt;span class=&#34;m&#34;&gt;3&lt;/span&gt; weeks from now&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;⬢ &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;devtainer&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt; ❯ mc admin user svcacct info myminio/ KDM*****************&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;AccessKey: KDM*****************&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;ParentUser: MYPAGESUSER&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Status: on&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Name: mypagesRWKey&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Description: MYPAGESUSER READ ONLY Key &lt;span class=&#34;k&#34;&gt;for&lt;/span&gt; myminio&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Policy: embedded&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Expiration: &lt;span class=&#34;m&#34;&gt;3&lt;/span&gt; weeks from now&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ cloudnative-pg cloudnative-pg</title>
    <id>https://waylonwalker.com/cloudnative-pg-cloudnative-pg/</id>
    <updated>2025-02-02T18:40:11Z</updated>
    <published>2025-02-02T18:40:11Z</published>
    <link href="https://waylonwalker.com/cloudnative-pg-cloudnative-pg/" rel="alternate" type="text/html"></link>
    <summary type="text">Check out cloudnative-pg and their project cloudnative-pg.</summary>
    <content type="html">&lt;p&gt;Check out &lt;a href=&#34;https://github.com/cloudnative-pg&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;cloudnative-pg&lt;/a&gt; and their project &lt;a href=&#34;https://github.com/cloudnative-pg/cloudnative-pg&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;cloudnative-pg&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;CloudNativePG is a comprehensive platform designed to seamlessly manage PostgreSQL databases within Kubernetes environments, covering the entire operational lifecycle from initial deployment to ongoing maintenance&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ open-webui open-webui</title>
    <id>https://waylonwalker.com/open-webui-open-webui/</id>
    <updated>2025-02-02T15:38:37Z</updated>
    <published>2025-02-02T15:38:37Z</published>
    <link href="https://waylonwalker.com/open-webui-open-webui/" rel="alternate" type="text/html"></link>
    <summary type="text">Just starred open-webui by open-webui. It&#39;s an exciting project with a lot to offer.</summary>
    <content type="html">&lt;p&gt;Just starred &lt;a href=&#34;https://github.com/open-webui/open-webui&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;open-webui&lt;/a&gt; by &lt;a href=&#34;https://github.com/open-webui&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;open-webui&lt;/a&gt;. It’s an exciting project with a lot to offer.&lt;/p&gt;&#xA;&lt;p&gt;User-friendly AI Interface (Supports Ollama, OpenAI API, …)&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ fcsonline tmux-thumbs</title>
    <id>https://waylonwalker.com/fcsonline-tmux-thumbs/</id>
    <updated>2025-02-02T15:36:30Z</updated>
    <published>2025-02-02T15:36:30Z</published>
    <link href="https://waylonwalker.com/fcsonline-tmux-thumbs/" rel="alternate" type="text/html"></link>
    <summary type="text">I like fcsonline&#39;s project tmux-thumbs.</summary>
    <content type="html">&lt;p&gt;I like &lt;a href=&#34;https://github.com/fcsonline&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;fcsonline’s&lt;/a&gt; project &lt;a href=&#34;https://github.com/fcsonline/tmux-thumbs&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;tmux-thumbs&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;A lightning fast version of tmux-fingers written in Rust, copy/pasting tmux like vimium/vimperator&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>tailwind aspect</title>
    <id>https://waylonwalker.com/tailwind-aspect/</id>
    <updated>2025-02-02T14:35:02Z</updated>
    <published>2025-02-02T14:35:02Z</published>
    <link href="https://waylonwalker.com/tailwind-aspect/" rel="alternate" type="text/html"></link>
    <summary type="text">I&#39;ve been back to putting some images on my blog lately and thinking about making them a bit thinner through the use of aspect ratio for simplicity. I&#39;m...</summary>
    <content type="html">&lt;p&gt;I’ve been back to putting some images on my blog lately and thinking about&#xA;making them a bit thinner through the use of aspect ratio for simplicity.  I’m&#xA;leaning pretty heavy on tailwindcss these days due to some weird quirks of&#xA;markdown-it-attrs I cannot have slashes in classes from markdown so I made a&#xA;&lt;code&gt;.cinematic&lt;/code&gt; class to achieve this.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;cinematic&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  &lt;span class=&#34;err&#34;&gt;@apply&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;aspect-[2.39/1]&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;}&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Example&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/50cfa8dc-9d46-4f02-877b-688fa5510a83.png&#34; class=&#34;glightbox-link&#34; aria-label=&#34;screenshot-2025-01-31T14-50-00-094Z.png&#34;&gt;&lt;img src=&#34;https://dropper.waylonwalker.com/api/file/50cfa8dc-9d46-4f02-877b-688fa5510a83.png&#34; alt=&#34;screenshot-2025-01-31T14-50-00-094Z.png&#34; class=&#34;cinematic glightbox&#34;/ data-glightbox=&#34;description: screenshot-2025-01-31T14-50-00-094Z.png&#34;&gt;&lt;/a&gt;&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 A Cinematic Aspect Ratio Guide for Every Filmmaker | No Film S...</title>
    <id>https://waylonwalker.com/thought-549/</id>
    <updated>2025-02-01T20:33:01Z</updated>
    <published>2025-02-01T20:33:01Z</published>
    <link href="https://waylonwalker.com/thought-549/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://nofilmschool.com/cinematic-aspect-ratio</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://nofilmschool.com/cinematic-aspect-ratio&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://nofilmschool.com/media-library/image.png?id=34069461&amp;amp;width=1200&amp;amp;height=600&amp;amp;coordinates=0%2C78%2C0%2C78&#34; alt=&#34;An Aspect Ratio Guide for Every Filmmaker — How can the aspect ratio of your film or TV show contribute to your story?&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: An Aspect Ratio Guide for Every Filmmaker — How can the aspect ratio of your film or TV show contribute to your story?&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;An Aspect Ratio Guide for Every Filmmaker&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;How can the aspect ratio of your film or TV show contribute to your story?&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;No Film School · nofilmschool.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;A good reference of common screen ratios.  I just realized that 16:9 is also 1.78:1.  I’ve been putting some images on my blog again, and thinking about using some 2.39:1 ratio on them.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 I Think I Love Deepseek R1 - YouTube</title>
    <id>https://waylonwalker.com/thought-548/</id>
    <updated>2025-02-01T16:29:43Z</updated>
    <published>2025-02-01T16:29:43Z</published>
    <link href="https://waylonwalker.com/thought-548/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/watch?v=GNHuJE_GARc</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;GNHuJE_GARc&#34; title=&#34;I Think I Love Deepseek R1&#34; playlabel=&#34;Play: I Think I Love Deepseek R1&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;There is a glimmer of hope out there that normal people can scrap together enough gpu to really run the latest models themselves.  The ui really appears to be having huge leaps forward such that doing things like rag is no longer such a research project that it was just a few years ago.  So excited to see Prime go through this &lt;a href=&#34;/homelab/&#34; class=&#34;glossary-term&#34; title=&#34;A place to self host applications. For me this is primarily self built web applications, and applications for sharing files with my family. Techno Tim has a...&#34;&gt;homelab&lt;/a&gt; exercise.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>markdown it attrs with slashes dont work</title>
    <id>https://waylonwalker.com/markdown-it-attrs-with-slashes-dont-work/</id>
    <updated>2025-02-01T11:21:10Z</updated>
    <published>2025-02-01T11:21:10Z</published>
    <link href="https://waylonwalker.com/markdown-it-attrs-with-slashes-dont-work/" rel="alternate" type="text/html"></link>
    <summary type="text">Attrs does not like &#39;/&#39; characters in its classes, so to use some tailwind classes with custom values we must make new classes in our tailwind input css.</summary>
    <content type="html">&lt;p&gt;Attrs does not like ‘/’ characters in its classes, so to use some tailwind&#xA;classes with custom values we must make new classes in our tailwind input css.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;cinematic&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  &lt;span class=&#34;err&#34;&gt;@apply&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;aspect-[2.39/1]&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;}&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Given the following markdown with attrs added to the image and to the paragraph&#xA;block.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;![&lt;span class=&#34;nt&#34;&gt;screenshot-2025-01-31T14-50-00-094Z.png&lt;/span&gt;](&lt;span class=&#34;na&#34;&gt;https://dropper.waylonwalker.com/api/file/50cfa8dc-9d46-4f02-877b-688fa5510a83.png&lt;/span&gt;){.aspect-[2.39/1]}&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;![&lt;span class=&#34;nt&#34;&gt;screenshot-2025-01-31T14-50-00-094Z.png&lt;/span&gt;](&lt;span class=&#34;na&#34;&gt;https://dropper.waylonwalker.com/api/file/50cfa8dc-9d46-4f02-877b-688fa5510a83.png&lt;/span&gt;){.cinematic}&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;{.cinematic}&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;![&lt;span class=&#34;nt&#34;&gt;screenshot-2025-01-31T14-50-00-094Z.png&lt;/span&gt;](&lt;span class=&#34;na&#34;&gt;https://dropper.waylonwalker.com/api/file/50cfa8dc-9d46-4f02-877b-688fa5510a83.png&lt;/span&gt;)&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;We get the following output with only the middle one working correctly.&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/50cfa8dc-9d46-4f02-877b-688fa5510a83.png&#34; class=&#34;glightbox-link&#34; aria-label=&#34;screenshot-2025-01-31T14-50-00-094Z.png&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/50cfa8dc-9d46-4f02-877b-688fa5510a83.png&#34; alt=&#34;screenshot-2025-01-31T14-50-00-094Z.png&#34;/ data-glightbox=&#34;description: screenshot-2025-01-31T14-50-00-094Z.png&#34;&gt;&lt;/a&gt;{.aspect-[2.39/1]}&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/50cfa8dc-9d46-4f02-877b-688fa5510a83.png&#34; class=&#34;glightbox-link&#34; aria-label=&#34;screenshot-2025-01-31T14-50-00-094Z.png&#34;&gt;&lt;img src=&#34;https://dropper.waylonwalker.com/api/file/50cfa8dc-9d46-4f02-877b-688fa5510a83.png&#34; alt=&#34;screenshot-2025-01-31T14-50-00-094Z.png&#34; class=&#34;cinematic glightbox&#34;/ data-glightbox=&#34;description: screenshot-2025-01-31T14-50-00-094Z.png&#34;&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p class=&#34;cinematic&#34;&gt;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/50cfa8dc-9d46-4f02-877b-688fa5510a83.png&#34; class=&#34;glightbox-link&#34; aria-label=&#34;screenshot-2025-01-31T14-50-00-094Z.png&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/50cfa8dc-9d46-4f02-877b-688fa5510a83.png&#34; alt=&#34;screenshot-2025-01-31T14-50-00-094Z.png&#34;/ data-glightbox=&#34;description: screenshot-2025-01-31T14-50-00-094Z.png&#34;&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;The inline version of `.cinematic` works, but `.aspect-[2.39/1]` does not,&#xA;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt;it turns into text after the image.  The block version with the class&#xA;before the image applies to the paragraph, not the image.&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 RSS is dead - YouTube</title>
    <id>https://waylonwalker.com/thought-547/</id>
    <updated>2025-02-01T02:57:59Z</updated>
    <published>2025-02-01T02:57:59Z</published>
    <link href="https://waylonwalker.com/thought-547/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/shorts/epQr2kF-1bU</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;epQr2kF-1bU&#34; title=&#34;RSS is dead&#34; playlabel=&#34;Play: RSS is dead&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Oh, this kills me to hear it.  RSS is the &lt;a href=&#34;/og/&#34; class=&#34;glossary-term&#34; title=&#34;OG is short for open graph, a set of standard meta tags that are used for social media sharing. This is what tells other websites how to describe and display...&#34;&gt;OG&lt;/a&gt; way to subscribe and share content out to others.  It gives you control of what you subscribe to and reminds you when new content lands on your favorite sites.  It is a huge component of web 1.0 and I feel is the most decentralized social media can ever hope to be.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>markata 0.8.0</title>
    <id>https://waylonwalker.com/markta-0-8-0/</id>
    <updated>2025-01-31T20:17:00Z</updated>
    <published>2025-01-31T20:17:00Z</published>
    <link href="https://waylonwalker.com/markta-0-8-0/" rel="alternate" type="text/html"></link>
    <summary type="text">I realize that I never did a post on markata 0.8.0, so here it is. 0.8.0 was released on Jan 2, 2024, just over a year ago at this point. This was the...</summary>
    <content type="html">&lt;p&gt;I realize that I never did a post on markata  0.8.0, so here it is. 0.8.0 was&#xA;released on Jan 2, 2024, just over a year ago at this point.  This was the&#xA;release that we got pydantic support, and multi feeds.&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;/api/file/76e6f022-360f-4566-9b35-a06cecd48738.png&#34; class=&#34;glightbox-link&#34; aria-label=&#34;screenshot-2025-02-01T02-37-59-690Z.png&#34;&gt;&lt;img src=&#34;/api/file/76e6f022-360f-4566-9b35-a06cecd48738.png&#34; alt=&#34;screenshot-2025-02-01T02-37-59-690Z.png&#34; class=&#34;more-cinematic glightbox&#34;/ data-glightbox=&#34;description: screenshot-2025-02-01T02-37-59-690Z.png&#34;&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;h2 id=&#34;pydantic-support-was-kinda-big&#34;&gt;Pydantic Support Was kinda big &lt;a href=&#34;#pydantic-support-was-kinda-big&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;Markata is leaning on pydanttic for configuration and Post models.  These&#xA;models are filled with validators such that you can give it an empty markdown&#xA;post and it will figure out some pretty sane default values for the&#xA;frontmatter. From there you can progressivly enhance your post with more&#xA;information like title, date, tags, slug, description.&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;&lt;strong&gt;validators are awesome!!&lt;/strong&gt; for instance I don’t set the description on many&#xA;of my posts by hand, I let the auto_description grab the first bit of text&#xA;from the post most of the time.&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;h2 id=&#34;multi-feeds&#34;&gt;Multi Feeds &lt;a href=&#34;#multi-feeds&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;Markata==0.8.1 brought multiple feeds into the mix, and started to take place&#xA;of rss and sitemap.  Feeds are a list of posts that are configured with a slug,&#xA;filter, sort, reverse, description, and a template.  These feeds then become&#xA;objects you can use to access posts, as well as &lt;a href=&#34;/html/&#34; class=&#34;glossary-term&#34; title=&#34;HTML (HyperText Markup Language) is the standard markup language used to create and design documents on the World Wide Web. It structures web content by...&#34;&gt;html&lt;/a&gt; pages, rss feeds and&#xA;sitemaps.&lt;/p&gt;&#xA;&lt;h2 id=&#34;jinja-templates&#34;&gt;Jinja Templates &lt;a href=&#34;#jinja-templates&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;The final major change within this series is the change out from string&#xA;templates to proper jinja templates with partial templates that you can&#xA;include.  This has made maintaing templates much easier, as well as the ability&#xA;to customize.  Markata will load templates from both your local templates&#xA;directory then from its built in templates directory if it does not find a&#xA;template locally.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;[[&lt;/span&gt;&lt;span class=&#34;nx&#34;&gt;markata&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nx&#34;&gt;feeds&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nx&#34;&gt;slug&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;s1&#34;&gt;&amp;#39;python&amp;#39;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nx&#34;&gt;filter&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;date&amp;lt;=today and &amp;#39;python&amp;#39; in str(tags).lower()&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nx&#34;&gt;sort&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;date&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nx&#34;&gt;reverse&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;kc&#34;&gt;true&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nx&#34;&gt;description&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;s1&#34;&gt;&amp;#39;A feed of all my python posts&amp;#39;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;ul&gt;&#xA;&lt;li&gt;&lt;a href=&#34;https://waylonwalker.com/python/&#34;&gt;https://waylonwalker.com/python/&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;https://waylonwalker.com/python/rss.xml&#34;&gt;https://waylonwalker.com/python/rss.xml&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;https://waylonwalker.com/python/sitemap.xml&#34;&gt;https://waylonwalker.com/python/sitemap.xml&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;https://waylonwalker.com/python/partial/&#34;&gt;https://waylonwalker.com/python/partial/&lt;/a&gt;&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;hr/&gt;&#xA;&lt;h2 id=&#34;directly-from-the-release-notes&#34;&gt;Directly from the release notes &lt;a href=&#34;#directly-from-the-release-notes&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;The rest of the post is details directly from the release notes.&lt;/p&gt;&#xA;&lt;h2 id=&#34;082&#34;&gt;0.8.2 &lt;a href=&#34;#082&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;Fix: markata installs setuptools required by one dependency&lt;/li&gt;&#xA;&lt;li&gt;Fix: cleaup cli output&lt;/li&gt;&#xA;&lt;li&gt;Fix: speed up cli starup with some lazy imports&lt;/li&gt;&#xA;&lt;li&gt;Fix: all cache.adds were replaced with cache.set&lt;/li&gt;&#xA;&lt;li&gt;Fix: Updated to new typer format requiring name=&lt;/li&gt;&#xA;&lt;li&gt;Fix: teardown only runs if a the build process was started, i.e. some clis&#xA;will not need to teardown&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;h2 id=&#34;081&#34;&gt;0.8.1 &lt;a href=&#34;#081&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;h3 id=&#34;feeds-have-partials&#34;&gt;Feeds have partials &lt;a href=&#34;#feeds-have-partials&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h3&gt;&#xA;&lt;p&gt;The &lt;code&gt;feeds&lt;/code&gt; plugin now has configurable &lt;code&gt;partial_template&lt;/code&gt; that can be used to&#xA;render only the inside of the feeds page.  This is indended to allow you to&#xA;load small feeds into a page with &lt;a href=&#34;/htmx/&#34; class=&#34;glossary-term&#34; title=&#34;htmx is a frontend javascript library for creating dynamic web applications.&#34;&gt;htmx&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;h3 id=&#34;better-jinja-templates&#34;&gt;Better Jinja Templates &lt;a href=&#34;#better-jinja-templates&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h3&gt;&#xA;&lt;p&gt;Markata now fully supports jinja templates with a loader that will load from&#xA;your templates directory, the markata built-in templates, and from a&#xA;dynamically generated templates directory in your .markata.cache directory.&lt;/p&gt;&#xA;&lt;h4 id=&#34;cli&#34;&gt;cli &lt;a href=&#34;#cli&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h4&gt;&#xA;&lt;p&gt;You can list out your templates and configuration with the following command&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;markata templates show&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;h4 id=&#34;variables&#34;&gt;Variables &lt;a href=&#34;#variables&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h4&gt;&#xA;&lt;p&gt;The following variables are available within jinja templates for post&#xA;templates.  This is now consistent accross all three built in plugins that&#xA;render jinja templates.&lt;/p&gt;&#xA;&lt;h5 id=&#34;post-template&#34;&gt;post_template&lt;/h5&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;code&gt;__version__&lt;/code&gt; - the version of markata&lt;/li&gt;&#xA;&lt;li&gt;&lt;code&gt;markata&lt;/code&gt; - the markata instance&lt;/li&gt;&#xA;&lt;li&gt;&lt;code&gt;config&lt;/code&gt; - the markata config&lt;/li&gt;&#xA;&lt;li&gt;&lt;code&gt;body&lt;/code&gt; - the body of the post&lt;/li&gt;&#xA;&lt;li&gt;&lt;code&gt;post&lt;/code&gt; - the current post object&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;h5 id=&#34;feeds&#34;&gt;feeds&lt;/h5&gt;&#xA;&lt;p&gt;Similarly from within rendering feeds.&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;code&gt;__version__&lt;/code&gt; - the version of markata&lt;/li&gt;&#xA;&lt;li&gt;&lt;code&gt;markata&lt;/code&gt; - the markata instance&lt;/li&gt;&#xA;&lt;li&gt;&lt;code&gt;config&lt;/code&gt; - the markata config&lt;/li&gt;&#xA;&lt;li&gt;&lt;code&gt;posts&lt;/code&gt; - the list of posts&lt;/li&gt;&#xA;&lt;li&gt;&lt;code&gt;post&lt;/code&gt; - a pseudo post object with title, slug, description, and date for template consistency&lt;/li&gt;&#xA;&lt;li&gt;&lt;code&gt;feed&lt;/code&gt; - the current feed object&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;h5 id=&#34;jinja-md&#34;&gt;jinja_md&lt;/h5&gt;&#xA;&lt;p&gt;Similar to posts from within jinja_md to render a markdown post as a template.&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;code&gt;__version__&lt;/code&gt; - the version of markata&lt;/li&gt;&#xA;&lt;li&gt;&lt;code&gt;markata&lt;/code&gt; - the markata instance&lt;/li&gt;&#xA;&lt;li&gt;&lt;code&gt;body&lt;/code&gt; - the body of the post&lt;/li&gt;&#xA;&lt;li&gt;&lt;code&gt;config&lt;/code&gt; - the markata config&lt;/li&gt;&#xA;&lt;li&gt;&lt;code&gt;post&lt;/code&gt; - the current post object&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;h4 id=&#34;feeds-cli&#34;&gt;Feeds cli &lt;a href=&#34;#feeds-cli&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h4&gt;&#xA;&lt;p&gt;The feeds cli will help show which templates each feed will be using.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;❯ markata feeds show&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;                                          Feeds &lt;span class=&#34;m&#34;&gt;6&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;┏━━━━━━━━━━━━━━━━━┳━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;┃            Feed ┃ posts ┃ config                                                        ┃&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;┡━━━━━━━━━━━━━━━━━╇━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┩&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;│ project_gallery │ &lt;span class=&#34;m&#34;&gt;2&lt;/span&gt;     │ DEFAULT_TITLE: All Posts                                      │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;│                 │       │ title: Project Gallery                                        │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;│                 │       │ slug: project-gallery                                         │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;│                 │       │ name: project_gallery                                         │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;│                 │       │ filter: &lt;span class=&#34;s1&#34;&gt;&amp;#39;project-gallery&amp;#39;&lt;/span&gt; in str&lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;path&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt;                        │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;│                 │       │ sort: title                                                   │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;│                 │       │ reverse: False                                                │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;│                 │       │ rss: True                                                     │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;│                 │       │ sitemap: True                                                 │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;│                 │       │ card_template: card.html                                      │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;│                 │       │ template: feed.html                                           │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;│                 │       │ rss_template: rss.xml                                         │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;│                 │       │ sitemap_template: sitemap.xml                                 │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;│                 │       │ xsl_template: rss.xsl                                         │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;│                 │       │                                                               │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;│            docs │ &lt;span class=&#34;m&#34;&gt;10&lt;/span&gt;    │ DEFAULT_TITLE: All Posts                                      │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;│                 │       │ title: Documentation                                          │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;│                 │       │ slug: docs                                                    │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;│                 │       │ name: docs                                                    │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;│                 │       │ filter: &lt;span class=&#34;s2&#34;&gt;&amp;#34;markata&amp;#34;&lt;/span&gt; not in slug and &lt;span class=&#34;s2&#34;&gt;&amp;#34;tests&amp;#34;&lt;/span&gt; not in slug and ... │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;│                 │       │ sort: slug                                                    │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;│                 │       │ reverse: False                                                │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;│                 │       │ rss: True                                                     │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;│                 │       │ sitemap: True                                                 │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;│                 │       │ card_template: card.html                                      │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;│                 │       │ template: feed.html                                           │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;│                 │       │ rss_template: rss.xml                                         │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;│                 │       │ sitemap_template: sitemap.xml                                 │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;│                 │       │ xsl_template: rss.xsl                                         │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;│                 │       │                                                               │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;│         autodoc │ &lt;span class=&#34;m&#34;&gt;17&lt;/span&gt;    │ DEFAULT_TITLE: All Posts                                      │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;│                 │       │ title: AutoDoc Python Modules.                                │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;│                 │       │ slug: autodoc                                                 │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;│                 │       │ name: autodoc                                                 │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;│                 │       │ filter: &lt;span class=&#34;s2&#34;&gt;&amp;#34;markata&amp;#34;&lt;/span&gt; in slug and &lt;span class=&#34;s2&#34;&gt;&amp;#34;plugin&amp;#34;&lt;/span&gt; not in slug and &lt;span class=&#34;s2&#34;&gt;&amp;#34;te... │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;│                 │       │ sort: slug                                                    │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;│                 │       │ reverse: False                                                │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;│                 │       │ rss: True                                                     │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;│                 │       │ sitemap: True                                                 │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;│                 │       │ card_template: card.html                                      │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;│                 │       │ template: feed.html                                           │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;│                 │       │ rss_template: rss.xml                                         │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;│                 │       │ sitemap_template: sitemap.xml                                 │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;│                 │       │ xsl_template: rss.xsl                                         │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;│                 │       │                                                               │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;│             all │ 73    │ DEFAULT_TITLE: All Posts                                      │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;│                 │       │ title: All Markata Modules                                    │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;│                 │       │ slug: all                                                     │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;│                 │       │ name: all                                                     │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;│                 │       │ filter: True                                                  │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;│                 │       │ sort: date                                                    │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;│                 │       │ reverse: False                                                │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;│                 │       │ rss: True                                                     │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;│                 │       │ sitemap: True                                                 │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;│                 │       │ card_template: card.html                                      │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;│                 │       │ template: feed.html                                           │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;│                 │       │ rss_template: rss.xml                                         │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;│                 │       │ sitemap_template: sitemap.xml                                 │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;│                 │       │ xsl_template: rss.xsl                                         │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;│                 │       │                                                               │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;│    core_modules │ 17    │ DEFAULT_TITLE: All Posts                                      │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;│                 │       │ title: Markata Core Modules                                   │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;│                 │       │ slug: core_modules                                            │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;│                 │       │ name: core_modules                                            │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;│                 │       │ filter: &amp;#39;plugin&amp;#39; not in slug and &amp;#39;test&amp;#39; not in slug and ti... │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;│                 │       │ sort: date                                                    │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;│                 │       │ reverse: False                                                │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;│                 │       │ rss: True                                                     │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;│                 │       │ sitemap: True                                                 │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;│                 │       │ card_template: card.html                                      │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;│                 │       │ template: feed.html                                           │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;│                 │       │ rss_template: rss.xml                                         │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;│                 │       │ sitemap_template: sitemap.xml                                 │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;│                 │       │ xsl_template: rss.xsl                                         │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;│                 │       │                                                               │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;│         plugins │ 42    │ DEFAULT_TITLE: All Posts                                      │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;│                 │       │ title: Markata Plugins                                        │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;│                 │       │ slug: plugins                                                 │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;│                 │       │ name: plugins                                                 │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;│                 │       │ filter: &amp;#39;plugin&amp;#39; in slug and &amp;#39;test&amp;#39; not in slug               │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;│                 │       │ sort: date                                                    │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;│                 │       │ reverse: False                                                │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;│                 │       │ rss: True                                                     │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;│                 │       │ sitemap: True                                                 │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;│                 │       │ card_template: card.html                                      │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;│                 │       │ template: feed.html                                           │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;│                 │       │ rss_template: rss.xml                                         │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;│                 │       │ sitemap_template: sitemap.xml                                 │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;│                 │       │ xsl_template: rss.xsl                                         │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;│                 │       │                                                               │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;└─────────────────┴───────┴───────────────────────────────────────────────────────────────┘&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;h2 id=&#34;080&#34;&gt;0.8.0 &lt;a href=&#34;#080&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;pydantic support&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;h3 id=&#34;pydantic-support&#34;&gt;Pydantic Support &lt;a href=&#34;#pydantic-support&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h3&gt;&#xA;&lt;p&gt;Now plugins are configured through a pydantic Config object.&lt;/p&gt;&#xA;&lt;h3 id=&#34;breaking-changes&#34;&gt;breaking changes &lt;a href=&#34;#breaking-changes&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h3&gt;&#xA;&lt;p&gt;There are a number of breaking changes going into 0.8.0. Use caution when&#xA;upgrading.&lt;/p&gt;&#xA;&lt;h4 id=&#34;glob-config-is-now-under-markataglob&#34;&gt;glob config is now under markata.glob &lt;a href=&#34;#glob-config-is-now-under-markataglob&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h4&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;gd&#34;&gt;- [markata]&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;gd&#34;&gt;- glob_patterns = &amp;#34;pages/**/*.md&amp;#34;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;gi&#34;&gt;+ [markata.glob]&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;gi&#34;&gt;+ glob_patterns = &amp;#34;pages/**/*.md&amp;#34;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;h4 id=&#34;feeds-are-now-a-list&#34;&gt;Feeds are now a list &lt;a href=&#34;#feeds-are-now-a-list&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h4&gt;&#xA;&lt;p&gt;Feeds are now a list of Objects within the configuration that you choose from&#xA;whether its toml or yaml.  Also templates_dir is now configurable, and once you&#xA;have a templates dir it is better to specify templates by name relative to your&#xA;templates_dir.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;nx&#34;&gt;markata&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nx&#34;&gt;templates_dir&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;pages/templates&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;nx&#34;&gt;markata&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nx&#34;&gt;feeds&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nx&#34;&gt;published&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nx&#34;&gt;template&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;archive_template.html&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nx&#34;&gt;card_template&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;feed_card.html&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nx&#34;&gt;filter&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;date&amp;lt;=today and templateKey in [&amp;#39;blog-post&amp;#39;, &amp;#39;til&amp;#39;] and status.lower()==&amp;#39;published&amp;#39;&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nx&#34;&gt;sort&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;date&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;blockquote&gt;&#xA;&lt;p&gt;old&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;[[&lt;/span&gt;&lt;span class=&#34;nx&#34;&gt;markata&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nx&#34;&gt;feeds&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nx&#34;&gt;published&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nx&#34;&gt;template&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;pages/templates/archive_template.html&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nx&#34;&gt;card_template&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;pages/templates/feed_card.html&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nx&#34;&gt;filter&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;date&amp;lt;=today and templateKey in [&amp;#39;blog-post&amp;#39;, &amp;#39;til&amp;#39;] and status.lower()==&amp;#39;published&amp;#39;&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nx&#34;&gt;sort&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;date&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;blockquote&gt;&#xA;&lt;p&gt;new&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;h3 id=&#34;markatasummaryfilter-count-is-now-a-list&#34;&gt;markata.summary.filter_count is now a list &lt;a href=&#34;#markatasummaryfilter-count-is-now-a-list&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h3&gt;&#xA;&lt;p&gt;The old way was to set up a dict, where the keys were the name, now its a list&#xA;of Objects with an explicit name field.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;nx&#34;&gt;markata&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nx&#34;&gt;summary&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nx&#34;&gt;filter_count&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nx&#34;&gt;drafts&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nx&#34;&gt;filter&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;published == &amp;#39;False&amp;#39;&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nx&#34;&gt;color&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;red&amp;#39;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;blockquote&gt;&#xA;&lt;p&gt;Old&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;[[&lt;/span&gt;&lt;span class=&#34;nx&#34;&gt;markata&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nx&#34;&gt;summary&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nx&#34;&gt;filter_count&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nx&#34;&gt;name&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;drafts&amp;#39;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nx&#34;&gt;filter&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;published == &amp;#39;False&amp;#39;&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nx&#34;&gt;color&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;red&amp;#39;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>markata 0.8.0</title>
    <id>https://waylonwalker.com/markata-0-8-0/</id>
    <updated>2025-01-31T20:17:00Z</updated>
    <published>2025-01-31T20:17:00Z</published>
    <link href="https://waylonwalker.com/markata-0-8-0/" rel="alternate" type="text/html"></link>
    <summary type="text">I realize that I never did a post on markata 0.8.0, so here it is. 0.8.0 was released on Jan 2, 2024, just over a year ago at this point. This was the...</summary>
    <content type="html">&lt;p&gt;I realize that I never did a post on markata  0.8.0, so here it is. 0.8.0 was&#xA;released on Jan 2, 2024, just over a year ago at this point.  This was the&#xA;release that we got pydantic support, and multi feeds.&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://dropper.waylonwalker.com/file/76e6f022-360f-4566-9b35-a06cecd48738.png&#34; class=&#34;glightbox-link&#34; aria-label=&#34;screenshot-2025-02-01T02-37-59-690Z.png&#34;&gt;&lt;img src=&#34;https://dropper.waylonwalker.com/file/76e6f022-360f-4566-9b35-a06cecd48738.png&#34; alt=&#34;screenshot-2025-02-01T02-37-59-690Z.png&#34; class=&#34;more-cinematic glightbox&#34;/ data-glightbox=&#34;description: screenshot-2025-02-01T02-37-59-690Z.png&#34;&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;h2 id=&#34;pydantic-support-was-kinda-big&#34;&gt;Pydantic Support Was kinda big &lt;a href=&#34;#pydantic-support-was-kinda-big&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;Markata is leaning on pydantic for configuration and Post models.  These&#xA;models are filled with validators such that you can give it an empty markdown&#xA;post and it will figure out some pretty sane default values for the&#xA;frontmatter. From there you can progressively enhance your post with more&#xA;information like title, date, tags, slug, description.&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;&lt;strong&gt;validators are awesome!!&lt;/strong&gt; for instance I don’t set the description on many&#xA;of my posts by hand, I let the auto_description grab the first bit of text&#xA;from the post most of the time.&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;h2 id=&#34;multi-feeds&#34;&gt;Multi Feeds &lt;a href=&#34;#multi-feeds&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;Markata==0.8.1 brought multiple feeds into the mix, and started to take place&#xA;of RSS and sitemap.  Feeds are a list of posts that are configured with a slug,&#xA;filter, sort, reverse, description, and a template.  These feeds then become&#xA;objects you can use to access posts, as well as &lt;a href=&#34;/html/&#34; class=&#34;glossary-term&#34; title=&#34;HTML (HyperText Markup Language) is the standard markup language used to create and design documents on the World Wide Web. It structures web content by...&#34;&gt;html&lt;/a&gt; pages, RSS feeds and&#xA;sitemaps.&lt;/p&gt;&#xA;&lt;h2 id=&#34;jinja-templates&#34;&gt;Jinja Templates &lt;a href=&#34;#jinja-templates&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;The final major change within this series is the change out from string&#xA;templates to proper jinja templates with partial templates that you can&#xA;include.  This has made maintaining templates much easier, as well as the&#xA;ability to customize.  Markata will load templates from both your local&#xA;templates directory then from its built in templates directory if it does not&#xA;find a template locally.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;[[&lt;/span&gt;&lt;span class=&#34;nx&#34;&gt;markata&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nx&#34;&gt;feeds&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nx&#34;&gt;slug&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;s1&#34;&gt;&amp;#39;python&amp;#39;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nx&#34;&gt;filter&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;date&amp;lt;=today and &amp;#39;python&amp;#39; in str(tags).lower()&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nx&#34;&gt;sort&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;date&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nx&#34;&gt;reverse&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;kc&#34;&gt;true&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nx&#34;&gt;description&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;s1&#34;&gt;&amp;#39;A feed of all my python posts&amp;#39;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;ul&gt;&#xA;&lt;li&gt;&lt;a href=&#34;https://waylonwalker.com/python/&#34;&gt;https://waylonwalker.com/python/&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;https://waylonwalker.com/python/rss.xml&#34;&gt;https://waylonwalker.com/python/rss.xml&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;https://waylonwalker.com/python/sitemap.xml&#34;&gt;https://waylonwalker.com/python/sitemap.xml&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;https://waylonwalker.com/python/partial/&#34;&gt;https://waylonwalker.com/python/partial/&lt;/a&gt;&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;hr/&gt;&#xA;&lt;h2 id=&#34;directly-from-the-release-notes&#34;&gt;Directly from the release notes &lt;a href=&#34;#directly-from-the-release-notes&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;The rest of the post is details directly from the release notes.&lt;/p&gt;&#xA;&lt;h2 id=&#34;082&#34;&gt;0.8.2 &lt;a href=&#34;#082&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;Fix: markata installs setuptools required by one dependency&lt;/li&gt;&#xA;&lt;li&gt;Fix: cleanup cli output&lt;/li&gt;&#xA;&lt;li&gt;Fix: speed up cli startup with some lazy imports&lt;/li&gt;&#xA;&lt;li&gt;Fix: all cache.adds were replaced with cache.set&lt;/li&gt;&#xA;&lt;li&gt;Fix: Updated to new typer format requiring name=&lt;/li&gt;&#xA;&lt;li&gt;Fix: teardown only runs if the build process was started, i.e. some cli’s&#xA;will not need to teardown&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;h2 id=&#34;081&#34;&gt;0.8.1 &lt;a href=&#34;#081&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;h3 id=&#34;feeds-have-partials&#34;&gt;Feeds have partials &lt;a href=&#34;#feeds-have-partials&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h3&gt;&#xA;&lt;p&gt;The &lt;code&gt;feeds&lt;/code&gt; plugin now has configurable &lt;code&gt;partial_template&lt;/code&gt; that can be used to&#xA;render only the inside of the feeds page.  This is indented to allow you to&#xA;load small feeds into a page with &lt;a href=&#34;/htmx/&#34; class=&#34;glossary-term&#34; title=&#34;htmx is a frontend javascript library for creating dynamic web applications.&#34;&gt;htmx&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;h3 id=&#34;better-jinja-templates&#34;&gt;Better Jinja Templates &lt;a href=&#34;#better-jinja-templates&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h3&gt;&#xA;&lt;p&gt;Markata now fully supports jinja templates with a loader that will load from&#xA;your templates directory, the markata built-in templates, and from a&#xA;dynamically generated templates directory in your .markata.cache directory.&lt;/p&gt;&#xA;&lt;h4 id=&#34;cli&#34;&gt;cli &lt;a href=&#34;#cli&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h4&gt;&#xA;&lt;p&gt;You can list out your templates and configuration with the following command&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;markata templates show&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;h4 id=&#34;variables&#34;&gt;Variables &lt;a href=&#34;#variables&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h4&gt;&#xA;&lt;p&gt;The following variables are available within jinja templates for post&#xA;templates.  This is now consistent across all three built in plugins that&#xA;render jinja templates.&lt;/p&gt;&#xA;&lt;h5 id=&#34;post-template&#34;&gt;post_template&lt;/h5&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;code&gt;__version__&lt;/code&gt; - the version of markata&lt;/li&gt;&#xA;&lt;li&gt;&lt;code&gt;markata&lt;/code&gt; - the markata instance&lt;/li&gt;&#xA;&lt;li&gt;&lt;code&gt;config&lt;/code&gt; - the markata config&lt;/li&gt;&#xA;&lt;li&gt;&lt;code&gt;body&lt;/code&gt; - the body of the post&lt;/li&gt;&#xA;&lt;li&gt;&lt;code&gt;post&lt;/code&gt; - the current post object&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;h5 id=&#34;feeds&#34;&gt;feeds&lt;/h5&gt;&#xA;&lt;p&gt;Similarly from within rendering feeds.&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;code&gt;__version__&lt;/code&gt; - the version of markata&lt;/li&gt;&#xA;&lt;li&gt;&lt;code&gt;markata&lt;/code&gt; - the markata instance&lt;/li&gt;&#xA;&lt;li&gt;&lt;code&gt;config&lt;/code&gt; - the markata config&lt;/li&gt;&#xA;&lt;li&gt;&lt;code&gt;posts&lt;/code&gt; - the list of posts&lt;/li&gt;&#xA;&lt;li&gt;&lt;code&gt;post&lt;/code&gt; - a pseudo post object with title, slug, description, and date for template consistency&lt;/li&gt;&#xA;&lt;li&gt;&lt;code&gt;feed&lt;/code&gt; - the current feed object&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;h5 id=&#34;jinja-md&#34;&gt;jinja_md&lt;/h5&gt;&#xA;&lt;p&gt;Similar to posts from within jinja_md to render a markdown post as a template.&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;code&gt;__version__&lt;/code&gt; - the version of markata&lt;/li&gt;&#xA;&lt;li&gt;&lt;code&gt;markata&lt;/code&gt; - the markata instance&lt;/li&gt;&#xA;&lt;li&gt;&lt;code&gt;body&lt;/code&gt; - the body of the post&lt;/li&gt;&#xA;&lt;li&gt;&lt;code&gt;config&lt;/code&gt; - the markata config&lt;/li&gt;&#xA;&lt;li&gt;&lt;code&gt;post&lt;/code&gt; - the current post object&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;h4 id=&#34;feeds-cli&#34;&gt;Feeds cli &lt;a href=&#34;#feeds-cli&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h4&gt;&#xA;&lt;p&gt;The feeds cli will help show which templates each feed will be using.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;❯ markata feeds show&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;                                          Feeds &lt;span class=&#34;m&#34;&gt;6&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;┏━━━━━━━━━━━━━━━━━┳━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;┃            Feed ┃ posts ┃ config                                                        ┃&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;┡━━━━━━━━━━━━━━━━━╇━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┩&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;│ project_gallery │ &lt;span class=&#34;m&#34;&gt;2&lt;/span&gt;     │ DEFAULT_TITLE: All Posts                                      │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;│                 │       │ title: Project Gallery                                        │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;│                 │       │ slug: project-gallery                                         │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;│                 │       │ name: project_gallery                                         │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;│                 │       │ filter: &lt;span class=&#34;s1&#34;&gt;&amp;#39;project-gallery&amp;#39;&lt;/span&gt; in str&lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;path&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt;                        │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;│                 │       │ sort: title                                                   │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;│                 │       │ reverse: False                                                │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;│                 │       │ rss: True                                                     │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;│                 │       │ sitemap: True                                                 │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;│                 │       │ card_template: card.html                                      │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;│                 │       │ template: feed.html                                           │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;│                 │       │ rss_template: rss.xml                                         │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;│                 │       │ sitemap_template: sitemap.xml                                 │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;│                 │       │ xsl_template: rss.xsl                                         │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;│                 │       │                                                               │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;│            docs │ &lt;span class=&#34;m&#34;&gt;10&lt;/span&gt;    │ DEFAULT_TITLE: All Posts                                      │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;│                 │       │ title: Documentation                                          │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;│                 │       │ slug: docs                                                    │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;│                 │       │ name: docs                                                    │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;│                 │       │ filter: &lt;span class=&#34;s2&#34;&gt;&amp;#34;markata&amp;#34;&lt;/span&gt; not in slug and &lt;span class=&#34;s2&#34;&gt;&amp;#34;tests&amp;#34;&lt;/span&gt; not in slug and ... │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;│                 │       │ sort: slug                                                    │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;│                 │       │ reverse: False                                                │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;│                 │       │ rss: True                                                     │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;│                 │       │ sitemap: True                                                 │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;│                 │       │ card_template: card.html                                      │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;│                 │       │ template: feed.html                                           │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;│                 │       │ rss_template: rss.xml                                         │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;│                 │       │ sitemap_template: sitemap.xml                                 │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;│                 │       │ xsl_template: rss.xsl                                         │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;│                 │       │                                                               │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;│         autodoc │ &lt;span class=&#34;m&#34;&gt;17&lt;/span&gt;    │ DEFAULT_TITLE: All Posts                                      │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;│                 │       │ title: AutoDoc Python Modules.                                │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;│                 │       │ slug: autodoc                                                 │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;│                 │       │ name: autodoc                                                 │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;│                 │       │ filter: &lt;span class=&#34;s2&#34;&gt;&amp;#34;markata&amp;#34;&lt;/span&gt; in slug and &lt;span class=&#34;s2&#34;&gt;&amp;#34;plugin&amp;#34;&lt;/span&gt; not in slug and &lt;span class=&#34;s2&#34;&gt;&amp;#34;te... │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;│                 │       │ sort: slug                                                    │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;│                 │       │ reverse: False                                                │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;│                 │       │ rss: True                                                     │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;│                 │       │ sitemap: True                                                 │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;│                 │       │ card_template: card.html                                      │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;│                 │       │ template: feed.html                                           │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;│                 │       │ rss_template: rss.xml                                         │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;│                 │       │ sitemap_template: sitemap.xml                                 │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;│                 │       │ xsl_template: rss.xsl                                         │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;│                 │       │                                                               │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;│             all │ 73    │ DEFAULT_TITLE: All Posts                                      │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;│                 │       │ title: All Markata Modules                                    │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;│                 │       │ slug: all                                                     │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;│                 │       │ name: all                                                     │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;│                 │       │ filter: True                                                  │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;│                 │       │ sort: date                                                    │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;│                 │       │ reverse: False                                                │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;│                 │       │ rss: True                                                     │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;│                 │       │ sitemap: True                                                 │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;│                 │       │ card_template: card.html                                      │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;│                 │       │ template: feed.html                                           │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;│                 │       │ rss_template: rss.xml                                         │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;│                 │       │ sitemap_template: sitemap.xml                                 │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;│                 │       │ xsl_template: rss.xsl                                         │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;│                 │       │                                                               │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;│    core_modules │ 17    │ DEFAULT_TITLE: All Posts                                      │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;│                 │       │ title: Markata Core Modules                                   │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;│                 │       │ slug: core_modules                                            │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;│                 │       │ name: core_modules                                            │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;│                 │       │ filter: &amp;#39;plugin&amp;#39; not in slug and &amp;#39;test&amp;#39; not in slug and ti... │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;│                 │       │ sort: date                                                    │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;│                 │       │ reverse: False                                                │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;│                 │       │ rss: True                                                     │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;│                 │       │ sitemap: True                                                 │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;│                 │       │ card_template: card.html                                      │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;│                 │       │ template: feed.html                                           │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;│                 │       │ rss_template: rss.xml                                         │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;│                 │       │ sitemap_template: sitemap.xml                                 │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;│                 │       │ xsl_template: rss.xsl                                         │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;│                 │       │                                                               │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;│         plugins │ 42    │ DEFAULT_TITLE: All Posts                                      │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;│                 │       │ title: Markata Plugins                                        │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;│                 │       │ slug: plugins                                                 │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;│                 │       │ name: plugins                                                 │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;│                 │       │ filter: &amp;#39;plugin&amp;#39; in slug and &amp;#39;test&amp;#39; not in slug               │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;│                 │       │ sort: date                                                    │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;│                 │       │ reverse: False                                                │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;│                 │       │ rss: True                                                     │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;│                 │       │ sitemap: True                                                 │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;│                 │       │ card_template: card.html                                      │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;│                 │       │ template: feed.html                                           │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;│                 │       │ rss_template: rss.xml                                         │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;│                 │       │ sitemap_template: sitemap.xml                                 │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;│                 │       │ xsl_template: rss.xsl                                         │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;│                 │       │                                                               │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;└─────────────────┴───────┴───────────────────────────────────────────────────────────────┘&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;h2 id=&#34;080&#34;&gt;0.8.0 &lt;a href=&#34;#080&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;pydantic support&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;h3 id=&#34;pydantic-support&#34;&gt;Pydantic Support &lt;a href=&#34;#pydantic-support&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h3&gt;&#xA;&lt;p&gt;Now plugins are configured through a pydantic Config object.&lt;/p&gt;&#xA;&lt;h3 id=&#34;breaking-changes&#34;&gt;breaking changes &lt;a href=&#34;#breaking-changes&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h3&gt;&#xA;&lt;p&gt;There are a number of breaking changes going into 0.8.0. Use caution when&#xA;upgrading.&lt;/p&gt;&#xA;&lt;h4 id=&#34;glob-config-is-now-under-markataglob&#34;&gt;glob config is now under markata.glob &lt;a href=&#34;#glob-config-is-now-under-markataglob&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h4&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;gd&#34;&gt;- [markata]&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;gd&#34;&gt;- glob_patterns = &amp;#34;pages/**/*.md&amp;#34;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;gi&#34;&gt;+ [markata.glob]&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;gi&#34;&gt;+ glob_patterns = &amp;#34;pages/**/*.md&amp;#34;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;h4 id=&#34;feeds-are-now-a-list&#34;&gt;Feeds are now a list &lt;a href=&#34;#feeds-are-now-a-list&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h4&gt;&#xA;&lt;p&gt;Feeds are now a list of Objects within the configuration that you choose from&#xA;whether its toml or yaml.  Also templates_dir is now configurable, and once you&#xA;have a templates dir it is better to specify templates by name relative to your&#xA;templates_dir.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;nx&#34;&gt;markata&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nx&#34;&gt;templates_dir&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;pages/templates&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;nx&#34;&gt;markata&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nx&#34;&gt;feeds&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nx&#34;&gt;published&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nx&#34;&gt;template&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;archive_template.html&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nx&#34;&gt;card_template&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;feed_card.html&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nx&#34;&gt;filter&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;date&amp;lt;=today and templateKey in [&amp;#39;blog-post&amp;#39;, &amp;#39;til&amp;#39;] and status.lower()==&amp;#39;published&amp;#39;&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nx&#34;&gt;sort&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;date&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;blockquote&gt;&#xA;&lt;p&gt;old&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;[[&lt;/span&gt;&lt;span class=&#34;nx&#34;&gt;markata&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nx&#34;&gt;feeds&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nx&#34;&gt;published&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nx&#34;&gt;template&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;pages/templates/archive_template.html&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nx&#34;&gt;card_template&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;pages/templates/feed_card.html&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nx&#34;&gt;filter&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;date&amp;lt;=today and templateKey in [&amp;#39;blog-post&amp;#39;, &amp;#39;til&amp;#39;] and status.lower()==&amp;#39;published&amp;#39;&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nx&#34;&gt;sort&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;date&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;blockquote&gt;&#xA;&lt;p&gt;new&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;h3 id=&#34;markatasummaryfilter-count-is-now-a-list&#34;&gt;markata.summary.filter_count is now a list &lt;a href=&#34;#markatasummaryfilter-count-is-now-a-list&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h3&gt;&#xA;&lt;p&gt;The old way was to set up a dict, where the keys were the name, now its a list&#xA;of Objects with an explicit name field.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;nx&#34;&gt;markata&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nx&#34;&gt;summary&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nx&#34;&gt;filter_count&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nx&#34;&gt;drafts&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nx&#34;&gt;filter&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;published == &amp;#39;False&amp;#39;&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nx&#34;&gt;color&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;red&amp;#39;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;blockquote&gt;&#xA;&lt;p&gt;Old&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;[[&lt;/span&gt;&lt;span class=&#34;nx&#34;&gt;markata&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nx&#34;&gt;summary&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nx&#34;&gt;filter_count&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nx&#34;&gt;name&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;drafts&amp;#39;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nx&#34;&gt;filter&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;published == &amp;#39;False&amp;#39;&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nx&#34;&gt;color&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;red&amp;#39;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ asottile all-repos</title>
    <id>https://waylonwalker.com/asottile-all-repos/</id>
    <updated>2025-01-31T17:12:20Z</updated>
    <published>2025-01-31T17:12:20Z</published>
    <link href="https://waylonwalker.com/asottile-all-repos/" rel="alternate" type="text/html"></link>
    <summary type="text">asottile has done a fantastic job with all-repos. Highly recommend taking a look.</summary>
    <content type="html">&lt;p&gt;&lt;a href=&#34;https://github.com/asottile&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;asottile&lt;/a&gt; has done a fantastic job with &lt;a href=&#34;https://github.com/asottile/all-repos&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;all-repos&lt;/a&gt;. Highly recommend taking a look.&lt;/p&gt;&#xA;&lt;p&gt;Clone all your repositories and apply sweeping changes.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ turbot tailpipe</title>
    <id>https://waylonwalker.com/turbot-tailpipe/</id>
    <updated>2025-01-31T17:05:00Z</updated>
    <published>2025-01-31T17:05:00Z</published>
    <link href="https://waylonwalker.com/turbot-tailpipe/" rel="alternate" type="text/html"></link>
    <summary type="text">If you&#39;re into interesting projects, don&#39;t miss out on tailpipe, created by turbot.</summary>
    <content type="html">&lt;p&gt;If you’re into interesting projects, don’t miss out on &lt;a href=&#34;https://github.com/turbot/tailpipe&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;tailpipe&lt;/a&gt;, created by &lt;a href=&#34;https://github.com/turbot&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;turbot&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;select * from logs; Tailpipe is an open source SIEM for instant log insights, powered by DuckDB. Analyze millions of events in seconds, right from your terminal.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ muni-town roomy</title>
    <id>https://waylonwalker.com/muni-town-roomy/</id>
    <updated>2025-01-31T17:02:22Z</updated>
    <published>2025-01-31T17:02:22Z</published>
    <link href="https://waylonwalker.com/muni-town-roomy/" rel="alternate" type="text/html"></link>
    <summary type="text">I recently discovered roomy by muni-town, and it&#39;s truly impressive.</summary>
    <content type="html">&lt;p&gt;I recently discovered &lt;a href=&#34;https://github.com/muni-town/roomy&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;roomy&lt;/a&gt; by &lt;a href=&#34;https://github.com/muni-town&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;muni-town&lt;/a&gt;, and it’s truly impressive.&lt;/p&gt;&#xA;&lt;p&gt;ATproto-connected p2p group comms&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Behold, the Steam Brick | Rock Paper Shotgun</title>
    <id>https://waylonwalker.com/thought-546/</id>
    <updated>2025-01-31T13:27:21Z</updated>
    <published>2025-01-31T13:27:21Z</published>
    <link href="https://waylonwalker.com/thought-546/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.rockpapershotgun.com/behold-the-steam-brick</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://www.rockpapershotgun.com/behold-the-steam-brick&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://assetsio.gnwcdn.com/steam-brick.jpg?width=1200&amp;amp;height=630&amp;amp;fit=crop&amp;amp;enable=upscale&amp;amp;auto=webp&#34; alt=&#34;Behold, the Steam Brick — A modder has transformed the Steam Deck in a screen-less, controller-less Steam Brick.&#34; loading=&#34;lazy&#34;/ width=&#34;1200&#34; data-glightbox=&#34;description: Behold, the Steam Brick — A modder has transformed the Steam Deck in a screen-less, controller-less Steam Brick.&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Behold, the Steam Brick&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;A modder has transformed the Steam Deck in a screen-less, controller-less Steam Brick.&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;Rock Paper Shotgun · rockpapershotgun.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;I fully believe in our right to repair, ewaste reduction, and bringing a second life to still good hardware that is not up for it’s originally intended purpose.  This is a sick console like experience you can strap to the back of a tv, throw in your back to take on a trip, or leave stuffed in your vehicle to game in the backseat.  Sucks that it cant do 4k, but I’ve used mine on large screens, and it does quite well for a lot of games, maybe not AAA, but the cartoony multplayer games I play with my kids do quite well.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/f3114f19-21cd-4ee6-84a8-06b83346d052.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;image&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/f3114f19-21cd-4ee6-84a8-06b83346d052.webp&#34; alt=&#34;image&#34;/ data-glightbox=&#34;description: image&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 OpenAI Is Actually Terrible - YouTube</title>
    <id>https://waylonwalker.com/thought-545/</id>
    <updated>2025-01-31T03:46:29Z</updated>
    <published>2025-01-31T03:46:29Z</published>
    <link href="https://waylonwalker.com/thought-545/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/watch?v=2D9ON1ZQhnA&amp;t=359s</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;2D9ON1ZQhnA&#34; title=&#34;OpenAI Is Actually Terrible&#34; playlabel=&#34;Play: OpenAI Is Actually Terrible&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Damn these deepseek memes go hard. Wild to see openai get played by their own game.&lt;/p&gt;&#xA;&lt;p&gt;It’s crazy that the normie news that I have seen on deepseek shows that the Chinese made what the Americans did at a fraction of the price, without taking notice that they are building on the shoulders of openai.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>markata search</title>
    <id>https://waylonwalker.com/markata-search/</id>
    <updated>2025-01-30T20:21:36Z</updated>
    <published>2025-01-30T20:21:36Z</published>
    <link href="https://waylonwalker.com/markata-search/" rel="alternate" type="text/html"></link>
    <summary type="text">A side effect of markata-didyoumean is that we are able to implement some rudimentary search based on slug, title, tags, and description.</summary>
    <content type="html">&lt;p&gt;A side effect of &lt;a href=&#34;/markata-didyoumean/&#34; class=&#34;wikilink&#34; data-title=&#34;Markata DidYouMean&#34; data-description=&#34;Coming in Markata 0.9.1 is far better documentation. i.e. Documentation that actually exists for everything. As part of poking around I realized that I often...&#34; data-date=&#34;2025-01-29&#34; data-preview=&#34;Coming in Markata 0.9.1 is far better documentation. i.e. Documentation that actually exists for everything. As part of poking around I realized that I often...&#34;&gt;Markata DidYouMean&lt;/a&gt; is that we are able to implement some&#xA;rudimentary search based on slug, title, tags, and description.&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/50cfa8dc-9d46-4f02-877b-688fa5510a83.png&#34; class=&#34;glightbox-link&#34; aria-label=&#34;screenshot-2025-01-31T14-50-00-094Z.png&#34;&gt;&lt;img src=&#34;https://dropper.waylonwalker.com/api/file/50cfa8dc-9d46-4f02-877b-688fa5510a83.png&#34; alt=&#34;screenshot-2025-01-31T14-50-00-094Z.png&#34; class=&#34;more-cinematic glightbox&#34;/ data-glightbox=&#34;description: screenshot-2025-01-31T14-50-00-094Z.png&#34;&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;I made a video of the early work on using this side effect to search for content on markata.dev.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/fd677374-5ef1-41c7-8845-6de0e10f224b.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Replay markata-search-1.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/fd677374-5ef1-41c7-8845-6de0e10f224b.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/fd677374-5ef1-41c7-8845-6de0e10f224b.mp4&#34; type=&#34;video/mp4&#34;&gt;Replay markata-search-1.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;p&gt;This was first implemented to solve 404 pages giving users a way to try to find&#xA;the page that they tried to access.  But it turned out to be a decent way to&#xA;search through the docs.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 AI Is Making You An Illiterate Programmer - YouTube</title>
    <id>https://waylonwalker.com/thought-544/</id>
    <updated>2025-01-30T14:23:10Z</updated>
    <published>2025-01-30T14:23:10Z</published>
    <link href="https://waylonwalker.com/thought-544/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/watch?v=cQNyYx2fZXw</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;cQNyYx2fZXw&#34; title=&#34;AI Is Making You An Illiterate Programmer&#34; playlabel=&#34;Play: AI Is Making You An Illiterate Programmer&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;👏👏👏 This one is really good. I’m right there with him on most of this.  I am very hesitant on subscription models, and all the ai tools feel like they are getting ready to be the next round of death by a thousand cuts, this time with pretty limited free tier and relatively high prices to run.  I’m sure we will see companies get taken by huge bills soon by building off of someone else’s service.&lt;/p&gt;&#xA;&lt;p&gt;On the flip side I’m definitely the guy that gets in a rut of just copy paste to the ai, wait for codeium to to inject.  I feel like I have issues of momentum more than anything.  When I’m on one side or the other I tend to stick it out for too long, but less so on going without because that llm drug is calling you when you hit a hard problem.&lt;/p&gt;&#xA;&lt;p&gt;I’m excited to see him build out a &lt;a href=&#34;/homelab/&#34; class=&#34;glossary-term&#34; title=&#34;A place to self host applications. For me this is primarily self built web applications, and applications for sharing files with my family. Techno Tim has a...&#34;&gt;homelab&lt;/a&gt; for llm stuff that he mentioned at the top.  I’m interested, but probably not building one out for myself until we start to see some cheaper maybe used hardware to do it.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Markata DidYouMean</title>
    <id>https://waylonwalker.com/markata-didyoumean/</id>
    <updated>2025-01-29T20:28:36Z</updated>
    <published>2025-01-29T20:28:36Z</published>
    <link href="https://waylonwalker.com/markata-didyoumean/" rel="alternate" type="text/html"></link>
    <summary type="text">Coming in Markata 0.9.1 is far better documentation. i.e. Documentation that actually exists for everything. As part of poking around I realized that I often...</summary>
    <content type="html">&lt;p&gt;Coming in Markata 0.9.1 is far better documentation. i.e. Documentation that&#xA;actually exists for everything.  As part of poking around I realized that I&#xA;often go to look up the docs for a plugin and forget that the path is&#xA;&lt;code&gt;/markta/plugins/feeds&lt;/code&gt;, sometimes I might try &lt;code&gt;/markata/feeds&lt;/code&gt; or&#xA;&lt;code&gt;/plugins/feeds.py&lt;/code&gt; or &lt;code&gt;/feeds&lt;/code&gt; or I might even forget the plugin name exactly&#xA;and try something like &lt;code&gt;feed&lt;/code&gt; and get a 404.  So I added a  &lt;code&gt;didyoumean&lt;/code&gt; plugin&#xA;to markata that takes care of this.&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/9c1e92dd-4ea1-4b0f-80bc-e6c3414cf219.png&#34; class=&#34;glightbox-link&#34; aria-label=&#34;screenshot-2025-01-31T14-53-31-264Z.png&#34;&gt;&lt;img src=&#34;https://dropper.waylonwalker.com/api/file/9c1e92dd-4ea1-4b0f-80bc-e6c3414cf219.png&#34; alt=&#34;screenshot-2025-01-31T14-53-31-264Z.png&#34; class=&#34;more-cinematic glightbox&#34;/ data-glightbox=&#34;description: screenshot-2025-01-31T14-53-31-264Z.png&#34;&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;I made a quick recording of this early feature, pay close attention to the url&#xA;as it automatically updates to the correct page.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/3e9a1af6-59e0-4d0a-9540-2514c492cc49.mp4&#34; class=&#34;glightbox-link&#34; aria-label=&#34;markata-didyoumean.mp4&#34;&gt;&lt;video autoplay loop muted playsinline controls preload=&#34;metadata&#34; class=&#34;md-video&#34; poster=&#34;https://dropper.waylonwalker.com/api/file/3e9a1af6-59e0-4d0a-9540-2514c492cc49.webp?h=675&amp;w=1200&#34;&gt;&lt;source src=&#34;https://dropper.waylonwalker.com/api/file/3e9a1af6-59e0-4d0a-9540-2514c492cc49.mp4&#34; type=&#34;video/mp4&#34;&gt;markata-didyoumean.mp4&lt;/video&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;happy-path&#34;&gt;Happy Path &lt;a href=&#34;#happy-path&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;&lt;em&gt;direct forward&lt;/em&gt;&lt;/p&gt;&#xA;&lt;p&gt;If you have one post called &lt;code&gt;/markata/plugins/feeds&lt;/code&gt;, and it is the only post&#xA;called feeds, any combination of &lt;code&gt;/markata/feeds&lt;/code&gt; or &lt;code&gt;/plugins/feeds&lt;/code&gt; or&#xA;&lt;code&gt;/feeds&lt;/code&gt; will all automatically redirect with an &lt;a href=&#34;/html/&#34; class=&#34;glossary-term&#34; title=&#34;HTML (HyperText Markup Language) is the standard markup language used to create and design documents on the World Wide Web. It structures web content by...&#34;&gt;html&lt;/a&gt; page (not a server 3xx)&#xA;to the &lt;code&gt;/markata/plugins/feeds&lt;/code&gt; post.&lt;/p&gt;&#xA;&lt;p&gt;Here is the snippet that does the redirect.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;&amp;lt;&lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;div&lt;/span&gt; &lt;span class=&#34;na&#34;&gt;class&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;&amp;#34;container mx-auto px-4 py-8&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;&amp;gt;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;p&#34;&gt;&amp;lt;&lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;h1&lt;/span&gt; &lt;span class=&#34;na&#34;&gt;class&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;&amp;#34;text-2xl font-bold mb-4&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;&amp;gt;&lt;/span&gt;Redirecting...&lt;span class=&#34;p&#34;&gt;&amp;lt;/&lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;h1&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;&amp;gt;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;p&#34;&gt;&amp;lt;&lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;p&lt;/span&gt; &lt;span class=&#34;na&#34;&gt;class&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;&amp;#34;mb-4&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;&amp;gt;&lt;/span&gt;You will be redirected to &lt;span class=&#34;p&#34;&gt;&amp;lt;&lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;a&lt;/span&gt; &lt;span class=&#34;na&#34;&gt;href&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;&amp;#34;/markata/plugins/feeds&amp;#34;&lt;/span&gt; &lt;span class=&#34;na&#34;&gt;class&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;&amp;#34;text-blue-500 hover:underline&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;&amp;gt;&lt;/span&gt;/markata/plugins/feeds&lt;span class=&#34;p&#34;&gt;&amp;lt;/&lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;a&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;&amp;gt;&amp;lt;/&lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;p&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;&amp;gt;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;p&#34;&gt;&amp;lt;&lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;script&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;&amp;gt;&lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;window&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nx&#34;&gt;location&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nx&#34;&gt;href&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;/markata/plugins/feeds&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&amp;lt;/&lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;script&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;&amp;gt;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;&amp;lt;/&lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;div&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;&amp;gt;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;You won’t see it unless you are on a really bad network, or you have js&#xA;disabled, but this is what it would look like if you ever saw it.  Notice there&#xA;is a backup link if you have js disabled.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/52d95c41-e27a-4a6c-be39-5c57601fc33f.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;image&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/52d95c41-e27a-4a6c-be39-5c57601fc33f.webp&#34; alt=&#34;image&#34;/ data-glightbox=&#34;description: image&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;multiple-similar-posts&#34;&gt;Multiple Similar Posts &lt;a href=&#34;#multiple-similar-posts&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;&lt;em&gt;list of options&lt;/em&gt;&lt;/p&gt;&#xA;&lt;p&gt;If you have multiple posts called &lt;code&gt;didyoumean&lt;/code&gt; from different directories, in&#xA;the video I made a clashing post at &lt;code&gt;/markata/cli/didyoumean&lt;/code&gt; with&#xA;&lt;code&gt;/markata/plugins/didyoumean&lt;/code&gt;.  If you go to &lt;code&gt;/didyoumean&lt;/code&gt; it will notice that&#xA;there are multiple options and present you with a list of all of the potential&#xA;pages that match.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/e05f8314-33a3-4dca-90b0-6009b8642c8a.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;image&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/e05f8314-33a3-4dca-90b0-6009b8642c8a.webp&#34; alt=&#34;image&#34;/ data-glightbox=&#34;description: image&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;finally-no-matches&#34;&gt;Finally No Matches &lt;a href=&#34;#finally-no-matches&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;&lt;em&gt;404.html&lt;/em&gt;&lt;/p&gt;&#xA;&lt;p&gt;Last ditch effort is to implement a 404 page.  This page will know all of the&#xA;possible paths in your project and give you a list of all the similar pages&#xA;more like a traditional &lt;code&gt;didyoumean&lt;/code&gt; plugin.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/a59c9736-da16-4dce-b867-29679e6b9ec3.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;image&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/a59c9736-da16-4dce-b867-29679e6b9ec3.webp&#34; alt=&#34;image&#34;/ data-glightbox=&#34;description: image&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Why is Kubernetes everywhere? | Kelsey Hightower - YouTube</title>
    <id>https://waylonwalker.com/thought-543/</id>
    <updated>2025-01-29T16:28:21Z</updated>
    <published>2025-01-29T16:28:21Z</published>
    <link href="https://waylonwalker.com/thought-543/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/watch?v=MQbkN99eBD8</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;MQbkN99eBD8&#34; title=&#34;Why is Kubernetes everywhere? | Kelsey Hightower&#34; playlabel=&#34;Play: Why is Kubernetes everywhere? | Kelsey Hightower&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Kelsey says several times in this interview, you don’t need kubernetes.  If you are running one node you don’t need kubernetes.  My question though is, would you use kubernetes?  Ya I get it if you are a web developer, data scientist, backend dev, but if you are looking to bee a whole ass engineer, or infrastructure engineer, you know kubernetes, Should you use kubernetes on single node?&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Models - Pydantic</title>
    <id>https://waylonwalker.com/thought-542/</id>
    <updated>2025-01-28T17:27:20Z</updated>
    <published>2025-01-28T17:27:20Z</published>
    <link href="https://waylonwalker.com/thought-542/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://docs.pydantic.dev/latest/concepts/models/#rebuilding-model-schema</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://docs.pydantic.dev/latest/concepts/models/#rebuilding-model-schema&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://pydantic.dev/docs/og/validation/latest/concepts/models.png&#34; alt=&#34;Models&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: Models&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Models&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;Pydantic Docs · docs.pydantic.dev&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;I came accross from_attributes today it allows creation of pydantic models from objects such as a sqlalchemy  &lt;code&gt;Base&lt;/code&gt; Model or while nesting pydantic models.  I believe in the past I have ran into some inconsistencies with nesting pydantic models and I’ll bet one had from_attributes set and another did not.&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;Arbitrary class instances¶&#xA;&lt;em&gt;(Formerly known as “ORM Mode”/from_orm).&lt;/em&gt;&lt;/p&gt;&#xA;&lt;p&gt;Pydantic models can also be created from arbitrary class instances by reading the instance &amp;gt; attributes corresponding to the model field names. One common application of this functionality is integration with object-relational mappings (ORMs).&lt;/p&gt;&#xA;&lt;p&gt;To do this, set the from_attributes config value to True (see the documentation on Configuration for more details).&lt;/p&gt;&#xA;&lt;p&gt;The example here uses SQLAlchemy, but the same approach should work for any ORM.&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 If Mitchell Hashimoto succeeds, Tmux &amp; Zellij will disappear -...</title>
    <id>https://waylonwalker.com/thought-541/</id>
    <updated>2025-01-28T13:18:40Z</updated>
    <published>2025-01-28T13:18:40Z</published>
    <link href="https://waylonwalker.com/thought-541/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/watch?v=o-qtso47ECk</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;o-qtso47ECk&#34; title=&#34;If Mitchell Hashimoto succeeds, Tmux &amp;amp; Zellij will disappear&#34; playlabel=&#34;Play: If Mitchell Hashimoto succeeds, Tmux &amp;amp; Zellij will disappear&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Dang strong stance that tmux and zellij should not exist.  I really do get his point though.  Theres a good number of terminal features I often miss out on because I run tmux.  Its an app that runs apps, and doesn’t let all of the signals back to the host.  But its fantastic at what it does, and brings so much to the table that the little bit of downside it brings is well worth it to me.  The other thing missing in this discussion is that I can take my hotkeys and session workflow to any machine just by running tmux.  I do not need to run a certain terminal, or install it headlessly on a server to get special features just for it.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>cold builds</title>
    <id>https://waylonwalker.com/cold-builds/</id>
    <updated>2025-01-27T20:28:43Z</updated>
    <published>2025-01-27T20:28:43Z</published>
    <link href="https://waylonwalker.com/cold-builds/" rel="alternate" type="text/html"></link>
    <summary type="text">Here are a list of some cold builds from my site. I&#39;ve ran this site for a long time and would like to have some references to go back to, and wish I had...</summary>
    <content type="html">&lt;p&gt;Here are a list of some cold builds from my site.  I’ve ran this site for a&#xA;long time and would like to have some references to go back to, and wish I had&#xA;kept a few profiles of cold builds laying around to compare with. The time is&#xA;now lets keep some cold build links around for reference.&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/cd8f9d96-948a-4e94-aa3d-2c352bb5657b.png&#34; class=&#34;glightbox-link&#34; aria-label=&#34;screenshot-2025-01-31T21-23-56-725Z.png&#34;&gt;&lt;img src=&#34;https://dropper.waylonwalker.com/api/file/cd8f9d96-948a-4e94-aa3d-2c352bb5657b.png&#34; alt=&#34;screenshot-2025-01-31T21-23-56-725Z.png&#34; class=&#34;more-cinematic glightbox&#34;/ data-glightbox=&#34;description: screenshot-2025-01-31T21-23-56-725Z.png&#34;&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;h2 id=&#34;01272025&#34;&gt;01/27/2025 &lt;a href=&#34;#01272025&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;a href=&#34;https://ec314b08.waylonwalker-com.pages.dev/_profile/&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/ec314b08.waylonwalker-com.pages.dev.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/ec314b08.waylonwalker-com.pages.dev.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;https://ec314b08.waylonwalker-com.pages.dev/_profile/&lt;/a&gt; - 429s - markata==0.9.0.dev5 has md_video open cache on every post issue&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;https://27f117fd.waylonwalker-com.pages.dev/_profile/&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/27f117fd.waylonwalker-com.pages.dev.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/27f117fd.waylonwalker-com.pages.dev.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;https://27f117fd.waylonwalker-com.pages.dev/_profile/&lt;/a&gt; - 112s- markata==0.9.0.dev5 after fixing md_video issue&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;https://e6b8f64a.waylonwalker-com.pages.dev/_profile/&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/e6b8f64a.waylonwalker-com.pages.dev.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/e6b8f64a.waylonwalker-com.pages.dev.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;https://e6b8f64a.waylonwalker-com.pages.dev/_profile/&lt;/a&gt; - 16s - markata==0.9.0.dev5 1 post not skipped, this one&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;https://10b778b4.waylonwalker-com.pages.dev/_profile/&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/10b778b4.waylonwalker-com.pages.dev.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/10b778b4.waylonwalker-com.pages.dev.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;https://10b778b4.waylonwalker-com.pages.dev/_profile/&lt;/a&gt; - 5.65s - markata==0.9.0.dev5 fully hot cache build with no changes&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>pesos</title>
    <id>https://waylonwalker.com/pesos/</id>
    <updated>2025-01-25T17:20:55Z</updated>
    <published>2025-01-25T17:20:55Z</published>
    <link href="https://waylonwalker.com/pesos/" rel="alternate" type="text/html"></link>
    <summary type="text">Pesos is the act of Publish Elsewhere Syncicate to Own Site. It is an indieweb concept that I recently started applying to my own site.</summary>
    <content type="html">&lt;p&gt;Pesos is the act of Publish Elsewhere Syncicate to Own Site.  It is an indieweb&#xA;concept that I recently started applying to my own site.&lt;/p&gt;&#xA;&lt;p&gt;here does it skip again&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;See &amp;lt;https://indieweb.org/PESOS&amp;gt; for more information, they have a ton of&#xA;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt;information about the indieweb&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;In short it is the concept of pulling data from other sites that you use and&#xA;republishing it to your own site.  This gives a single source of information&#xA;for you, and protection against sites and apis changing or rug pulling.  Other&#xA;people might have a lot more use cases for this, but I already begin a lot of&#xA;my data right on my site.&lt;/p&gt;&#xA;&lt;h2 id=&#34;github-stars&#34;&gt;GitHub stars &lt;a href=&#34;#github-stars&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;I am using the github api to get a list of my stars and then create posts in&#xA;the github repo for my blog.  This allows me to keep track of things I star on&#xA;GitHub in my own way, and share them out with my rss feeds.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/2380f814-a8cb-45d1-bb5b-538d171933e3.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;image&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/2380f814-a8cb-45d1-bb5b-538d171933e3.webp&#34; alt=&#34;image&#34;/ data-glightbox=&#34;description: image&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ veekaybee gitfeed</title>
    <id>https://waylonwalker.com/veekaybee-gitfeed/</id>
    <updated>2025-01-24T19:34:10Z</updated>
    <published>2025-01-24T19:34:10Z</published>
    <link href="https://waylonwalker.com/veekaybee-gitfeed/" rel="alternate" type="text/html"></link>
    <summary type="text">Check out veekaybee and their project gitfeed.</summary>
    <content type="html">&lt;p&gt;Check out &lt;a href=&#34;https://github.com/veekaybee&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;veekaybee&lt;/a&gt; and their project &lt;a href=&#34;https://github.com/veekaybee/gitfeed&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;gitfeed&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Feed of posts from Bluesky that have a GitHub link&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ ggml-org llama.vim</title>
    <id>https://waylonwalker.com/ggml-org-llama-vim/</id>
    <updated>2025-01-24T01:01:28Z</updated>
    <published>2025-01-24T01:01:28Z</published>
    <link href="https://waylonwalker.com/ggml-org-llama-vim/" rel="alternate" type="text/html"></link>
    <summary type="text">I came across llama.vim from ggml-org, and it&#39;s packed with great features and ideas.</summary>
    <content type="html">&lt;p&gt;I came across &lt;a href=&#34;https://github.com/ggml-org/llama.vim&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;llama.vim&lt;/a&gt; from &lt;a href=&#34;https://github.com/ggml-org&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;ggml-org&lt;/a&gt;, and it’s packed with great features and ideas.&lt;/p&gt;&#xA;&lt;p&gt;Vim plugin for LLM-assisted code/text completion&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>hover z-index and positioning</title>
    <id>https://waylonwalker.com/hover-z-index-and-positioning/</id>
    <updated>2025-01-23T15:54:07Z</updated>
    <published>2025-01-23T15:54:07Z</published>
    <link href="https://waylonwalker.com/hover-z-index-and-positioning/" rel="alternate" type="text/html"></link>
    <summary type="text">I broke my sick-wikilink-hover recently in a refactor, today I did some diving in to figure out what happened.</summary>
    <content type="html">&lt;p&gt;I broke my &lt;a href=&#34;/sick-wikilink-hover/&#34; class=&#34;wikilink&#34; data-title=&#34;sick wikilink hover&#34; data-description=&#34;Today I set up some sick wikilink hover effects using tailwind see a-case-for-tailwindcss. When you hover over them they show an image preview of the link...&#34; data-date=&#34;2024-05-30&#34; data-preview=&#34;Today I set up some sick wikilink hover effects using tailwind see a-case-for-tailwindcss. When you hover over them they show an image preview of the link...&#34;&gt;sick wikilink hover&lt;/a&gt; recently in a refactor, today I did some&#xA;diving in to figure out what happened.&lt;/p&gt;&#xA;&lt;h2 id=&#34;before&#34;&gt;Before &lt;a href=&#34;#before&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;As you can see in the screenshot below, the link is in a list of links, and&#xA;when the hover image pops up it sits behind all of the other text.  The z-index&#xA;of the list-item is supposed to be raised above the others on hover.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/b3158b49-5c0f-4e52-b3e3-47ba67f5c801.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;image&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/b3158b49-5c0f-4e52-b3e3-47ba67f5c801.webp&#34; alt=&#34;image&#34;/ data-glightbox=&#34;description: image&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;p&gt;Manually setting z-index to 20 in the inspector I noticed this message from&#xA;devtools, &lt;em&gt;“The position: static property prevents z-index from having an&#xA;effect. Try setting position to something other than static.”&lt;/em&gt;, looking back at&#xA;some of my refactoring I had relative in an old template and it was lost.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/1c7fb24c-b77d-4962-adfc-8e2eb5e6145c.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;image&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/1c7fb24c-b77d-4962-adfc-8e2eb5e6145c.webp&#34; alt=&#34;image&#34;/ data-glightbox=&#34;description: image&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;after&#34;&gt;After &lt;a href=&#34;#after&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;After properly setting position to relative on the list-item, the hover image&#xA;is raised above the others.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/ef207afb-a3a5-463a-a615-fdfe8a4256c5.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;image&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/ef207afb-a3a5-463a-a615-fdfe8a4256c5.webp&#34; alt=&#34;image&#34;/ data-glightbox=&#34;description: image&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Top Python libraries of 2024 | Tryolabs</title>
    <id>https://waylonwalker.com/thought-540/</id>
    <updated>2025-01-23T00:31:18Z</updated>
    <published>2025-01-23T00:31:18Z</published>
    <link href="https://waylonwalker.com/thought-540/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://tryolabs.com/blog/top-python-libraries-2024</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://tryolabs.com/blog/top-python-libraries-2024&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://tryolabs.com/assets/blog/top-python-libraries-2024/collection-python-e190b6eef0.png&#34; alt=&#34;Top Python libraries of 2024 — Dive into our 10th annual Python Libraries roundup for 2024, now featuring separate curated lists for General Use and AI / ML / Data tools. Discover this year&amp;#39;s most innovative additions to the ecosystem!&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: Top Python libraries of 2024 — Dive into our 10th annual Python Libraries roundup for 2024, now featuring separate curated lists for General Use and AI / ML / Data tools. Discover this year&amp;#39;s most innovative additions to the ecosystem!&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Top Python libraries of 2024&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Dive into our 10th annual Python Libraries roundup for 2024, now featuring separate curated lists for General Use and AI / ML / Data tools. Discover this year&amp;#39;s most innovative additions to the eco...&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;Tryolabs · tryolabs.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Really good listicle of new modern top python libraries from 2024.  Very well done article with images, links, and an actually quality listicle with many things I’ve never even heard of.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Choosing color palettes — seaborn 0.13.2 documentation</title>
    <id>https://waylonwalker.com/thought-539/</id>
    <updated>2025-01-22T13:47:54Z</updated>
    <published>2025-01-22T13:47:54Z</published>
    <link href="https://waylonwalker.com/thought-539/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://seaborn.pydata.org/tutorial/color_palettes.html</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;/static/https://seaborn.pydata.org/tutorial/color_palettes.html&#34; class=&#34;glightbox-link&#34; aria-label=&#34;https://seaborn.pydata.org/tutorial/color_palettes.html&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;/static/https://seaborn.pydata.org/tutorial/color_palettes.html&#34; alt=&#34;https://seaborn.pydata.org/tutorial/color_palettes.html&#34;/ data-glightbox=&#34;description: https://seaborn.pydata.org/tutorial/color_palettes.html&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;p&gt;Good overview of seaborn color palettes.  They have all sorts of different types, some designed to purposfully give each color the same weight for catecorization.  Some designd to give linear differences in value, some have a parabolic feel with a diverging nature.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>analytics</title>
    <id>https://waylonwalker.com/analytics/</id>
    <updated>2025-01-22T08:36:27Z</updated>
    <published>2025-01-22T08:36:27Z</published>
    <link href="https://waylonwalker.com/analytics/" rel="alternate" type="text/html"></link>
    <summary type="text">I&#39;ve been posting on this site since 2016, when layoffs were rolling through the company I worked for at the time. Starting a personal blog and a pile of...</summary>
    <content type="html">&lt;p&gt;I’ve been posting on this site since 2016, when layoffs were rolling through&#xA;the company I worked for at the time.  Starting a personal blog and a pile of&#xA;side projects felt like one of the best things I could do for my resume, so off&#xA;I went.  This site is built on &lt;a href=&#34;/markata/&#34; class=&#34;wikilink&#34; data-title=&#34;markata&#34; data-description=&#34;This post is a work in progress.&#34; data-date=&#34;2024-05-30&#34; data-preview=&#34;This post is a work in progress.&#34;&gt;markata&lt;/a&gt;, more about that in the&#xA;&lt;a href=&#34;/colophon/&#34; class=&#34;wikilink&#34; data-title=&#34;/colophon&#34; data-description=&#34;Colophon a page that describes how the site &amp;gt; is made, with what tools, supporting what technologies&#34; data-date=&#34;2025-01-02&#34; data-preview=&#34;Colophon a page that describes how the site &amp;gt; is made, with what tools, supporting what technologies&#34;&gt;/colophon&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/7b6cf2c2-2299-4320-b58f-b0bebf2d0504.png&#34; class=&#34;glightbox-link&#34; aria-label=&#34;screenshot-2025-01-31T21-23-13-643Z.png&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/7b6cf2c2-2299-4320-b58f-b0bebf2d0504.png&#34; alt=&#34;screenshot-2025-01-31T21-23-13-643Z.png&#34;/ data-glightbox=&#34;description: screenshot-2025-01-31T21-23-13-643Z.png&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;p&gt;The old version of this page embedded static SVGs from my Python Markata build.&#xA;Those files are gone in the &lt;code&gt;markata-go&lt;/code&gt; site, so this page now renders the&#xA;yearly posting history directly from the current content set.&lt;/p&gt;&#xA;&lt;h2 id=&#34;post-contributions-all-time-monthly&#34;&gt;Post Contributions All Time Monthly &lt;a href=&#34;#post-contributions-all-time-monthly&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;div class=&#34;contribution-graph-container contribution-graph-error&#34;&gt;&#xA;  &lt;p&gt;Contribution Graph Error: Invalid JSON configuration&lt;/p&gt;&#xA;  &lt;pre&gt;invalid character &amp;#39;%&amp;#39; looking for beginning of object key string&lt;/pre&gt;&#xA;&lt;/div&gt;&#xA;&lt;h2 id=&#34;post-contributions-in-2026&#34;&gt;Post Contributions in 2026 &lt;a href=&#34;#post-contributions-in-2026&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;div class=&#34;contribution-graph-container&#34;&gt;&#xA;  &lt;div id=&#34;contribution-graph-1&#34;&gt;&lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;h2 id=&#34;post-contributions-in-2025&#34;&gt;Post Contributions in 2025 &lt;a href=&#34;#post-contributions-in-2025&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;div class=&#34;contribution-graph-container&#34;&gt;&#xA;  &lt;div id=&#34;contribution-graph-2&#34;&gt;&lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;h2 id=&#34;post-contributions-in-2024&#34;&gt;Post Contributions in 2024 &lt;a href=&#34;#post-contributions-in-2024&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;div class=&#34;contribution-graph-container&#34;&gt;&#xA;  &lt;div id=&#34;contribution-graph-3&#34;&gt;&lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;h2 id=&#34;post-contributions-in-2023&#34;&gt;Post Contributions in 2023 &lt;a href=&#34;#post-contributions-in-2023&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;2023 was a very busy year for me and I started slowing down.  About mid year I&#xA;felt like I had a lot that I wanted to get out, but felt like I couldn’t,&#xA;because I did not have the time to blog, so I added &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;Thoughts&lt;/a&gt; on 7/22/2023&#xA;with this &lt;a href=&#34;https://waylonwalker.com/thoughts-2/&#34;&gt;first thought&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;div class=&#34;contribution-graph-container&#34;&gt;&#xA;  &lt;div id=&#34;contribution-graph-4&#34;&gt;&lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;Notice the huge uptick that started immediately as shots was released&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;h2 id=&#34;post-contributions-in-2022&#34;&gt;Post Contributions in 2022 &lt;a href=&#34;#post-contributions-in-2022&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;div class=&#34;contribution-graph-container&#34;&gt;&#xA;  &lt;div id=&#34;contribution-graph-5&#34;&gt;&lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;h2 id=&#34;post-contributions-in-2021&#34;&gt;Post Contributions in 2021 &lt;a href=&#34;#post-contributions-in-2021&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;At the End of 2021 I started posting [[ til ]]s daily for a few months.  This&#xA;is the point when I really started lowering the barrier to entry to make a blog&#xA;post.  A blog post did not need to be a super long essay, but could be the size&#xA;of a tweet.&lt;/p&gt;&#xA;&lt;div class=&#34;contribution-graph-container&#34;&gt;&#xA;  &lt;div id=&#34;contribution-graph-6&#34;&gt;&lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;h2 id=&#34;post-contributions-in-2020&#34;&gt;Post Contributions in 2020 &lt;a href=&#34;#post-contributions-in-2020&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;div class=&#34;contribution-graph-container&#34;&gt;&#xA;  &lt;div id=&#34;contribution-graph-7&#34;&gt;&lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;h2 id=&#34;post-contributions-in-2019&#34;&gt;Post Contributions in 2019 &lt;a href=&#34;#post-contributions-in-2019&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;2019 was a huge learning year for me.  I was very busy leading a migration to&#xA;the cloud, containerized data pipeline orchestration, and setting up new&#xA;projects and templates using &lt;a href=&#34;/kedro/&#34; class=&#34;wikilink&#34; data-title=&#34;Kedro&#34; data-description=&#34;My Notes about using kedro&#34; data-date=&#34;2019-11-02&#34; data-preview=&#34;My Notes about using kedro&#34;&gt;Kedro&lt;/a&gt;&lt;/p&gt;&#xA;&lt;div class=&#34;contribution-graph-container&#34;&gt;&#xA;  &lt;div id=&#34;contribution-graph-8&#34;&gt;&lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;h2 id=&#34;post-contributions-in-2018&#34;&gt;Post Contributions in 2018 &lt;a href=&#34;#post-contributions-in-2018&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;This was the year I really started reaching for the terminal kicking off the&#xA;year with &lt;a href=&#34;/vim-notes/&#34; class=&#34;wikilink&#34; data-title=&#34;Vim Notes&#34; data-description=&#34;norcalli/neovim-plugin&#34; data-date=&#34;2018-02-01&#34; data-preview=&#34;norcalli/neovim-plugin&#34;&gt;Vim Notes&lt;/a&gt; and rounding out with &lt;a href=&#34;/bash/&#34; class=&#34;wikilink&#34; data-title=&#34;📝 Bash Notes&#34; data-description=&#34;Waylon Walker&amp;#39;s Bash Notes&#34; data-date=&#34;2019-09-08&#34; data-preview=&#34;Waylon Walker&amp;#39;s Bash Notes&#34;&gt;📝 Bash Notes&lt;/a&gt;.  I had been&#xA;watching luke smith for a awhile, and started managing my first linux server at&#xA;work.  I was stuck with windows at the time, but wsl was a new thing that let&#xA;me run linux in the terminal.&lt;/p&gt;&#xA;&lt;div class=&#34;contribution-graph-container&#34;&gt;&#xA;  &lt;div id=&#34;contribution-graph-9&#34;&gt;&lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;h2 id=&#34;post-contributions-in-2017&#34;&gt;Post Contributions in 2017 &lt;a href=&#34;#post-contributions-in-2017&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;2017 was the year of getting started, I was coming up on 5 years into my&#xA;career, and layoffs were happening hard at the time.  I remember fist landing 5&#xA;years before and being told in the companies long history they have never laid&#xA;off engineers, it was a very safe place to be.  This was a wake up call that it&#xA;might all turn around and I would take nothing with me.  Blogging became my way&#xA;to document things I was learning, it was making be better at communicating,&#xA;and giving me a reason to take a deeper dive into interesting topics.&lt;/p&gt;&#xA;&lt;div class=&#34;contribution-graph-container&#34;&gt;&#xA;  &lt;div id=&#34;contribution-graph-10&#34;&gt;&lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;h2 id=&#34;post-contributions-in-2016&#34;&gt;Post Contributions in 2016 &lt;a href=&#34;#post-contributions-in-2016&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;2016 was the year that I created my github account, and really got serious&#xA;about career switching from Mechanical Engineering to Software Engineering.&#xA;All of my 2016 posts are back-dated github stars.&lt;/p&gt;&#xA;&lt;div class=&#34;contribution-graph-container&#34;&gt;&#xA;  &lt;div id=&#34;contribution-graph-11&#34;&gt;&lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&#xA;&lt;style&gt;&#xA;.contribution-graph-container {&#xA;  width: 100%;&#xA;  overflow: hidden;&#xA;  margin: 1rem 0;&#xA;  display: flex;&#xA;  justify-content: center;&#xA;}&#xA;.contribution-graph-container &gt; div {&#xA;  flex-shrink: 0;&#xA;  transform-origin: top center;&#xA;}&#xA;#ch-tooltip {&#xA;  background: var(--color-surface, #333);&#xA;  color: var(--color-text, #fff);&#xA;  padding: 0.5rem 0.75rem;&#xA;  border-radius: 4px;&#xA;  font-size: 0.875rem;&#xA;  box-shadow: 0 2px 8px rgba(0,0,0,0.2);&#xA;  z-index: 10000 !important;&#xA;}&#xA;&lt;/style&gt;&#xA;&lt;link rel=&#34;stylesheet&#34; href=&#34;https://cdn.jsdelivr.net/npm/cal-heatmap@4.2.4/dist/cal-heatmap.css&#34;&gt;&#xA;&lt;script src=&#34;https://d3js.org/d3.v7.min.js&#34;&gt;&lt;/script&gt;&#xA;&lt;script src=&#34;https://unpkg.com/@popperjs/core@2&#34;&gt;&lt;/script&gt;&#xA;&lt;script src=&#34;https://cdn.jsdelivr.net/npm/cal-heatmap@4.2.4/dist/cal-heatmap.min.js&#34;&gt;&lt;/script&gt;&#xA;&lt;script src=&#34;https://cdn.jsdelivr.net/npm/cal-heatmap@4.2.4/dist/plugins/Tooltip.min.js&#34;&gt;&lt;/script&gt;&#xA;&lt;script&gt;&#xA;document.addEventListener(&#39;DOMContentLoaded&#39;, function() {&#xA;  // Initialize graphs&#xA;  &#xA;  (function() {&#xA;    const graphId = &#39;contribution-graph-1&#39;;&#xA;    const data = [{&#34;date&#34;:&#34;2026-01-01&#34;,&#34;value&#34;:5},{&#34;date&#34;:&#34;2026-01-02&#34;,&#34;value&#34;:3},{&#34;date&#34;:&#34;2026-01-03&#34;,&#34;value&#34;:4},{&#34;date&#34;:&#34;2026-01-04&#34;,&#34;value&#34;:5},{&#34;date&#34;:&#34;2026-01-05&#34;,&#34;value&#34;:3},{&#34;date&#34;:&#34;2026-01-06&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2026-01-07&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2026-01-08&#34;,&#34;value&#34;:7},{&#34;date&#34;:&#34;2026-01-09&#34;,&#34;value&#34;:3},{&#34;date&#34;:&#34;2026-01-10&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2026-01-11&#34;,&#34;value&#34;:6},{&#34;date&#34;:&#34;2026-01-12&#34;,&#34;value&#34;:4},{&#34;date&#34;:&#34;2026-01-13&#34;,&#34;value&#34;:6},{&#34;date&#34;:&#34;2026-01-14&#34;,&#34;value&#34;:6},{&#34;date&#34;:&#34;2026-01-15&#34;,&#34;value&#34;:6},{&#34;date&#34;:&#34;2026-01-17&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2026-01-18&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2026-01-19&#34;,&#34;value&#34;:3},{&#34;date&#34;:&#34;2026-01-21&#34;,&#34;value&#34;:3},{&#34;date&#34;:&#34;2026-01-22&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2026-01-23&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2026-01-24&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2026-01-25&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2026-01-26&#34;,&#34;value&#34;:5},{&#34;date&#34;:&#34;2026-01-27&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2026-01-28&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2026-01-29&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2026-01-30&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2026-02-02&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2026-02-03&#34;,&#34;value&#34;:6},{&#34;date&#34;:&#34;2026-02-04&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2026-02-05&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2026-02-06&#34;,&#34;value&#34;:3},{&#34;date&#34;:&#34;2026-02-07&#34;,&#34;value&#34;:3},{&#34;date&#34;:&#34;2026-02-09&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2026-02-10&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2026-02-11&#34;,&#34;value&#34;:6},{&#34;date&#34;:&#34;2026-02-12&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2026-02-13&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2026-02-14&#34;,&#34;value&#34;:3},{&#34;date&#34;:&#34;2026-02-16&#34;,&#34;value&#34;:4},{&#34;date&#34;:&#34;2026-02-17&#34;,&#34;value&#34;:3},{&#34;date&#34;:&#34;2026-02-18&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2026-02-19&#34;,&#34;value&#34;:4},{&#34;date&#34;:&#34;2026-02-20&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2026-02-21&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2026-02-22&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2026-02-23&#34;,&#34;value&#34;:6},{&#34;date&#34;:&#34;2026-02-24&#34;,&#34;value&#34;:4},{&#34;date&#34;:&#34;2026-02-25&#34;,&#34;value&#34;:5},{&#34;date&#34;:&#34;2026-02-26&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2026-02-27&#34;,&#34;value&#34;:3},{&#34;date&#34;:&#34;2026-02-28&#34;,&#34;value&#34;:3},{&#34;date&#34;:&#34;2026-03-01&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2026-03-02&#34;,&#34;value&#34;:4},{&#34;date&#34;:&#34;2026-03-03&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2026-03-04&#34;,&#34;value&#34;:5},{&#34;date&#34;:&#34;2026-03-05&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2026-03-06&#34;,&#34;value&#34;:3},{&#34;date&#34;:&#34;2026-03-07&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2026-03-09&#34;,&#34;value&#34;:4},{&#34;date&#34;:&#34;2026-03-10&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2026-03-12&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2026-03-13&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2026-03-15&#34;,&#34;value&#34;:3},{&#34;date&#34;:&#34;2026-03-16&#34;,&#34;value&#34;:3},{&#34;date&#34;:&#34;2026-03-17&#34;,&#34;value&#34;:12},{&#34;date&#34;:&#34;2026-03-18&#34;,&#34;value&#34;:3},{&#34;date&#34;:&#34;2026-03-19&#34;,&#34;value&#34;:4},{&#34;date&#34;:&#34;2026-03-20&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2026-03-21&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2026-03-22&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2026-03-23&#34;,&#34;value&#34;:5},{&#34;date&#34;:&#34;2026-03-24&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2026-03-25&#34;,&#34;value&#34;:3},{&#34;date&#34;:&#34;2026-03-26&#34;,&#34;value&#34;:4},{&#34;date&#34;:&#34;2026-03-27&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2026-03-28&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2026-03-29&#34;,&#34;value&#34;:4},{&#34;date&#34;:&#34;2026-03-30&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2026-03-31&#34;,&#34;value&#34;:9},{&#34;date&#34;:&#34;2026-04-01&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2026-04-02&#34;,&#34;value&#34;:7},{&#34;date&#34;:&#34;2026-04-03&#34;,&#34;value&#34;:4},{&#34;date&#34;:&#34;2026-04-04&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2026-04-05&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2026-04-08&#34;,&#34;value&#34;:4},{&#34;date&#34;:&#34;2026-04-09&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2026-04-12&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2026-04-13&#34;,&#34;value&#34;:4},{&#34;date&#34;:&#34;2026-04-14&#34;,&#34;value&#34;:4},{&#34;date&#34;:&#34;2026-04-15&#34;,&#34;value&#34;:4},{&#34;date&#34;:&#34;2026-04-16&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2026-04-17&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2026-04-18&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2026-04-19&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2026-04-21&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2026-04-26&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2026-04-27&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2026-04-28&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2026-04-29&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2026-05-01&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2026-05-02&#34;,&#34;value&#34;:3},{&#34;date&#34;:&#34;2026-05-05&#34;,&#34;value&#34;:3},{&#34;date&#34;:&#34;2026-05-06&#34;,&#34;value&#34;:4},{&#34;date&#34;:&#34;2026-05-07&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2026-05-08&#34;,&#34;value&#34;:3},{&#34;date&#34;:&#34;2026-05-09&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2026-05-10&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2026-05-11&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2026-05-12&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2026-05-13&#34;,&#34;value&#34;:2}];&#xA;    const options = {date: { start: new Date(&#39;2026-01-01&#39;) }, domain: { type: &#39;year&#39; }, subDomain: { type: &#39;day&#39; }, range: 1};&#xA;    const maxValue = 12;&#xA;    const displayData = data.map(function(point) {&#xA;      const value = point.value || 0;&#xA;      if (options.maxValue &amp;&amp; value &gt; options.maxValue) {&#xA;        return Object.assign({}, point, { value: options.maxValue });&#xA;      }&#xA;      return point;&#xA;    });&#xA;&#xA;    function fitGraph() {&#xA;      const inner = document.getElementById(graphId);&#xA;      if (!inner) return;&#xA;&#xA;      const outer = inner.parentElement;&#xA;      if (!outer) return;&#xA;&#xA;      if (!inner.dataset.baseWidth) {&#xA;        inner.dataset.baseWidth = String(inner.scrollWidth || inner.getBoundingClientRect().width || 0);&#xA;      }&#xA;&#xA;      const baseWidth = Number(inner.dataset.baseWidth) || inner.scrollWidth || inner.getBoundingClientRect().width || 0;&#xA;      const scale = baseWidth &gt; 0 ? Math.min(1, outer.clientWidth / baseWidth) : 1;&#xA;      inner.style.zoom = String(scale);&#xA;    }&#xA;&#xA;    function paintGraph() {&#xA;      // Clear existing graph&#xA;      const container = document.getElementById(graphId);&#xA;      if (!container) return;&#xA;      container.innerHTML = &#39;&#39;;&#xA;      delete container.dataset.baseWidth;&#xA;&#xA;      // Get theme colors from CSS variables&#xA;      const styles = getComputedStyle(document.documentElement);&#xA;      const bgColor = styles.getPropertyValue(&#39;--color-background&#39;).trim();&#xA;      const surfaceColor = styles.getPropertyValue(&#39;--color-surface&#39;).trim();&#xA;      const primaryColor = styles.getPropertyValue(&#39;--color-primary&#39;).trim();&#xA;&#xA;      // Use surface color as base, primary as accent&#xA;      const baseColor = surfaceColor || bgColor || &#39;#ebedf0&#39;;&#xA;      const accentColor = primaryColor || &#39;#216e39&#39;;&#xA;&#xA;      const cal = new CalHeatmap();&#xA;      cal.paint(&#xA;        {&#xA;          itemSelector: &#39;#&#39; + graphId,&#xA;          data: {&#xA;            source: displayData,&#xA;            x: &#39;date&#39;,&#xA;            y: &#39;value&#39;&#xA;          },&#xA;          date: options.date,&#xA;          domain: options.domain || { type: &#39;year&#39; },&#xA;          subDomain: options.subDomain || { type: &#39;day&#39; },&#xA;          range: options.range,&#xA;          scale: {&#xA;            color: {&#xA;              type: &#39;linear&#39;,&#xA;              range: [baseColor, accentColor],&#xA;              domain: [0, maxValue]&#xA;            }&#xA;          }&#xA;        },&#xA;        [&#xA;          [&#xA;            Tooltip,&#xA;            {&#xA;              text: function (date, value, dayjsDate) {&#xA;                const original = data.find(function(point) {&#xA;                  return point.date === dayjsDate.format(&#39;YYYY-MM-DD&#39;);&#xA;                });&#xA;                const originalValue = original ? (original.value || 0) : (value || 0);&#xA;                return (originalValue ? originalValue : &#39;No&#39;) + &#39; posts on &#39; + dayjsDate.format(&#39;MMM D, YYYY&#39;);&#xA;              },&#xA;            },&#xA;          ],&#xA;        ]&#xA;      );&#xA;&#xA;      fitGraph();&#xA;    }&#xA;&#xA;    // Initial paint&#xA;    paintGraph();&#xA;&#xA;    // Register for theme changes&#xA;    if (!window._contributionGraphPainters) {&#xA;      window._contributionGraphPainters = [];&#xA;    }&#xA;    window._contributionGraphPainters.push(paintGraph);&#xA;&#xA;    if (!window._contributionGraphFitters) {&#xA;      window._contributionGraphFitters = [];&#xA;    }&#xA;    window._contributionGraphFitters.push(fitGraph);&#xA;  })();&#xA;&#xA;  (function() {&#xA;    const graphId = &#39;contribution-graph-2&#39;;&#xA;    const data = [{&#34;date&#34;:&#34;2025-01-02&#34;,&#34;value&#34;:6},{&#34;date&#34;:&#34;2025-01-03&#34;,&#34;value&#34;:6},{&#34;date&#34;:&#34;2025-01-04&#34;,&#34;value&#34;:5},{&#34;date&#34;:&#34;2025-01-06&#34;,&#34;value&#34;:3},{&#34;date&#34;:&#34;2025-01-07&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2025-01-08&#34;,&#34;value&#34;:3},{&#34;date&#34;:&#34;2025-01-09&#34;,&#34;value&#34;:12},{&#34;date&#34;:&#34;2025-01-10&#34;,&#34;value&#34;:3},{&#34;date&#34;:&#34;2025-01-11&#34;,&#34;value&#34;:3},{&#34;date&#34;:&#34;2025-01-12&#34;,&#34;value&#34;:3},{&#34;date&#34;:&#34;2025-01-13&#34;,&#34;value&#34;:5},{&#34;date&#34;:&#34;2025-01-16&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2025-01-17&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2025-01-18&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2025-01-19&#34;,&#34;value&#34;:5},{&#34;date&#34;:&#34;2025-01-20&#34;,&#34;value&#34;:3},{&#34;date&#34;:&#34;2025-01-21&#34;,&#34;value&#34;:11},{&#34;date&#34;:&#34;2025-01-22&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2025-01-23&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2025-01-24&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2025-01-25&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2025-01-27&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2025-01-28&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2025-01-29&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2025-01-30&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2025-01-31&#34;,&#34;value&#34;:7},{&#34;date&#34;:&#34;2025-02-01&#34;,&#34;value&#34;:4},{&#34;date&#34;:&#34;2025-02-02&#34;,&#34;value&#34;:5},{&#34;date&#34;:&#34;2025-02-03&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2025-02-05&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2025-02-07&#34;,&#34;value&#34;:3},{&#34;date&#34;:&#34;2025-02-08&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2025-02-09&#34;,&#34;value&#34;:3},{&#34;date&#34;:&#34;2025-02-10&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2025-02-11&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2025-02-12&#34;,&#34;value&#34;:6},{&#34;date&#34;:&#34;2025-02-13&#34;,&#34;value&#34;:6},{&#34;date&#34;:&#34;2025-02-14&#34;,&#34;value&#34;:7},{&#34;date&#34;:&#34;2025-02-15&#34;,&#34;value&#34;:6},{&#34;date&#34;:&#34;2025-02-16&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2025-02-17&#34;,&#34;value&#34;:11},{&#34;date&#34;:&#34;2025-02-18&#34;,&#34;value&#34;:3},{&#34;date&#34;:&#34;2025-02-20&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2025-02-21&#34;,&#34;value&#34;:3},{&#34;date&#34;:&#34;2025-02-22&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2025-02-23&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2025-02-25&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2025-02-26&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2025-02-28&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2025-03-01&#34;,&#34;value&#34;:3},{&#34;date&#34;:&#34;2025-03-02&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2025-03-03&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2025-03-04&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2025-03-06&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2025-03-08&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2025-03-11&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2025-03-12&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2025-03-13&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2025-03-14&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2025-03-15&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2025-03-17&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2025-03-20&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2025-03-24&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2025-03-25&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2025-03-26&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2025-03-29&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2025-04-04&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2025-04-07&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2025-04-09&#34;,&#34;value&#34;:3},{&#34;date&#34;:&#34;2025-04-12&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2025-04-13&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2025-04-15&#34;,&#34;value&#34;:3},{&#34;date&#34;:&#34;2025-04-17&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2025-04-19&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2025-04-20&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2025-04-22&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2025-04-24&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2025-04-25&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2025-04-27&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2025-04-28&#34;,&#34;value&#34;:6},{&#34;date&#34;:&#34;2025-04-30&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2025-05-01&#34;,&#34;value&#34;:9},{&#34;date&#34;:&#34;2025-05-02&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2025-05-04&#34;,&#34;value&#34;:4},{&#34;date&#34;:&#34;2025-05-05&#34;,&#34;value&#34;:3},{&#34;date&#34;:&#34;2025-05-06&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2025-05-07&#34;,&#34;value&#34;:4},{&#34;date&#34;:&#34;2025-05-09&#34;,&#34;value&#34;:4},{&#34;date&#34;:&#34;2025-05-10&#34;,&#34;value&#34;:4},{&#34;date&#34;:&#34;2025-05-11&#34;,&#34;value&#34;:3},{&#34;date&#34;:&#34;2025-05-12&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2025-05-16&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2025-05-18&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2025-05-19&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2025-05-21&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2025-05-22&#34;,&#34;value&#34;:3},{&#34;date&#34;:&#34;2025-05-23&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2025-05-24&#34;,&#34;value&#34;:4},{&#34;date&#34;:&#34;2025-05-25&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2025-05-26&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2025-05-27&#34;,&#34;value&#34;:5},{&#34;date&#34;:&#34;2025-05-28&#34;,&#34;value&#34;:5},{&#34;date&#34;:&#34;2025-05-29&#34;,&#34;value&#34;:3},{&#34;date&#34;:&#34;2025-05-31&#34;,&#34;value&#34;:10},{&#34;date&#34;:&#34;2025-06-01&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2025-06-02&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2025-06-03&#34;,&#34;value&#34;:3},{&#34;date&#34;:&#34;2025-06-04&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2025-06-05&#34;,&#34;value&#34;:3},{&#34;date&#34;:&#34;2025-06-06&#34;,&#34;value&#34;:8},{&#34;date&#34;:&#34;2025-06-07&#34;,&#34;value&#34;:7},{&#34;date&#34;:&#34;2025-06-08&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2025-06-09&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2025-06-10&#34;,&#34;value&#34;:4},{&#34;date&#34;:&#34;2025-06-11&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2025-06-13&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2025-06-14&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2025-06-15&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2025-06-16&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2025-06-17&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2025-06-18&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2025-06-19&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2025-06-21&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2025-06-22&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2025-06-23&#34;,&#34;value&#34;:4},{&#34;date&#34;:&#34;2025-06-24&#34;,&#34;value&#34;:3},{&#34;date&#34;:&#34;2025-06-25&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2025-06-26&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2025-06-27&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2025-06-29&#34;,&#34;value&#34;:3},{&#34;date&#34;:&#34;2025-06-30&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2025-07-01&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2025-07-02&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2025-07-04&#34;,&#34;value&#34;:3},{&#34;date&#34;:&#34;2025-07-05&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2025-07-06&#34;,&#34;value&#34;:7},{&#34;date&#34;:&#34;2025-07-07&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2025-07-08&#34;,&#34;value&#34;:3},{&#34;date&#34;:&#34;2025-07-09&#34;,&#34;value&#34;:3},{&#34;date&#34;:&#34;2025-07-10&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2025-07-11&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2025-07-12&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2025-07-15&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2025-07-16&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2025-07-17&#34;,&#34;value&#34;:3},{&#34;date&#34;:&#34;2025-07-18&#34;,&#34;value&#34;:4},{&#34;date&#34;:&#34;2025-07-19&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2025-07-21&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2025-07-22&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2025-07-23&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2025-07-24&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2025-07-25&#34;,&#34;value&#34;:4},{&#34;date&#34;:&#34;2025-07-26&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2025-07-27&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2025-07-28&#34;,&#34;value&#34;:4},{&#34;date&#34;:&#34;2025-07-29&#34;,&#34;value&#34;:6},{&#34;date&#34;:&#34;2025-07-30&#34;,&#34;value&#34;:5},{&#34;date&#34;:&#34;2025-07-31&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2025-08-01&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2025-08-02&#34;,&#34;value&#34;:7},{&#34;date&#34;:&#34;2025-08-03&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2025-08-04&#34;,&#34;value&#34;:4},{&#34;date&#34;:&#34;2025-08-05&#34;,&#34;value&#34;:6},{&#34;date&#34;:&#34;2025-08-06&#34;,&#34;value&#34;:4},{&#34;date&#34;:&#34;2025-08-07&#34;,&#34;value&#34;:3},{&#34;date&#34;:&#34;2025-08-08&#34;,&#34;value&#34;:3},{&#34;date&#34;:&#34;2025-08-09&#34;,&#34;value&#34;:3},{&#34;date&#34;:&#34;2025-08-10&#34;,&#34;value&#34;:4},{&#34;date&#34;:&#34;2025-08-11&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2025-08-12&#34;,&#34;value&#34;:4},{&#34;date&#34;:&#34;2025-08-13&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2025-08-14&#34;,&#34;value&#34;:3},{&#34;date&#34;:&#34;2025-08-15&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2025-08-16&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2025-08-17&#34;,&#34;value&#34;:4},{&#34;date&#34;:&#34;2025-08-18&#34;,&#34;value&#34;:4},{&#34;date&#34;:&#34;2025-08-21&#34;,&#34;value&#34;:5},{&#34;date&#34;:&#34;2025-08-22&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2025-08-23&#34;,&#34;value&#34;:11},{&#34;date&#34;:&#34;2025-08-24&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2025-08-25&#34;,&#34;value&#34;:7},{&#34;date&#34;:&#34;2025-08-26&#34;,&#34;value&#34;:5},{&#34;date&#34;:&#34;2025-08-27&#34;,&#34;value&#34;:5},{&#34;date&#34;:&#34;2025-08-28&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2025-08-29&#34;,&#34;value&#34;:6},{&#34;date&#34;:&#34;2025-08-30&#34;,&#34;value&#34;:7},{&#34;date&#34;:&#34;2025-08-31&#34;,&#34;value&#34;:7},{&#34;date&#34;:&#34;2025-09-02&#34;,&#34;value&#34;:5},{&#34;date&#34;:&#34;2025-09-03&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2025-09-04&#34;,&#34;value&#34;:3},{&#34;date&#34;:&#34;2025-09-05&#34;,&#34;value&#34;:3},{&#34;date&#34;:&#34;2025-09-07&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2025-09-08&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2025-09-10&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2025-09-11&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2025-09-13&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2025-09-16&#34;,&#34;value&#34;:8},{&#34;date&#34;:&#34;2025-09-17&#34;,&#34;value&#34;:3},{&#34;date&#34;:&#34;2025-09-18&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2025-09-19&#34;,&#34;value&#34;:4},{&#34;date&#34;:&#34;2025-09-20&#34;,&#34;value&#34;:6},{&#34;date&#34;:&#34;2025-09-21&#34;,&#34;value&#34;:5},{&#34;date&#34;:&#34;2025-09-23&#34;,&#34;value&#34;:3},{&#34;date&#34;:&#34;2025-09-25&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2025-09-26&#34;,&#34;value&#34;:3},{&#34;date&#34;:&#34;2025-09-27&#34;,&#34;value&#34;:7},{&#34;date&#34;:&#34;2025-09-28&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2025-09-29&#34;,&#34;value&#34;:4},{&#34;date&#34;:&#34;2025-10-01&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2025-10-02&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2025-10-03&#34;,&#34;value&#34;:5},{&#34;date&#34;:&#34;2025-10-05&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2025-10-08&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2025-10-09&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2025-10-10&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2025-10-11&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2025-10-12&#34;,&#34;value&#34;:3},{&#34;date&#34;:&#34;2025-10-15&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2025-10-16&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2025-10-18&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2025-10-19&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2025-10-20&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2025-10-21&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2025-10-22&#34;,&#34;value&#34;:3},{&#34;date&#34;:&#34;2025-10-23&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2025-10-24&#34;,&#34;value&#34;:5},{&#34;date&#34;:&#34;2025-10-26&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2025-10-27&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2025-10-28&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2025-10-29&#34;,&#34;value&#34;:3},{&#34;date&#34;:&#34;2025-10-30&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2025-10-31&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2025-11-01&#34;,&#34;value&#34;:3},{&#34;date&#34;:&#34;2025-11-02&#34;,&#34;value&#34;:6},{&#34;date&#34;:&#34;2025-11-04&#34;,&#34;value&#34;:3},{&#34;date&#34;:&#34;2025-11-05&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2025-11-06&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2025-11-09&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2025-11-11&#34;,&#34;value&#34;:4},{&#34;date&#34;:&#34;2025-11-12&#34;,&#34;value&#34;:3},{&#34;date&#34;:&#34;2025-11-15&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2025-11-17&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2025-11-18&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2025-11-19&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2025-11-20&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2025-11-21&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2025-11-23&#34;,&#34;value&#34;:4},{&#34;date&#34;:&#34;2025-11-24&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2025-11-26&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2025-11-27&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2025-11-28&#34;,&#34;value&#34;:4},{&#34;date&#34;:&#34;2025-11-29&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2025-11-30&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2025-12-01&#34;,&#34;value&#34;:7},{&#34;date&#34;:&#34;2025-12-02&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2025-12-03&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2025-12-04&#34;,&#34;value&#34;:3},{&#34;date&#34;:&#34;2025-12-05&#34;,&#34;value&#34;:3},{&#34;date&#34;:&#34;2025-12-06&#34;,&#34;value&#34;:15},{&#34;date&#34;:&#34;2025-12-07&#34;,&#34;value&#34;:8},{&#34;date&#34;:&#34;2025-12-08&#34;,&#34;value&#34;:6},{&#34;date&#34;:&#34;2025-12-09&#34;,&#34;value&#34;:9},{&#34;date&#34;:&#34;2025-12-10&#34;,&#34;value&#34;:4},{&#34;date&#34;:&#34;2025-12-11&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2025-12-12&#34;,&#34;value&#34;:3},{&#34;date&#34;:&#34;2025-12-13&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2025-12-14&#34;,&#34;value&#34;:4},{&#34;date&#34;:&#34;2025-12-15&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2025-12-16&#34;,&#34;value&#34;:3},{&#34;date&#34;:&#34;2025-12-17&#34;,&#34;value&#34;:3},{&#34;date&#34;:&#34;2025-12-18&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2025-12-19&#34;,&#34;value&#34;:3},{&#34;date&#34;:&#34;2025-12-20&#34;,&#34;value&#34;:3},{&#34;date&#34;:&#34;2025-12-21&#34;,&#34;value&#34;:6},{&#34;date&#34;:&#34;2025-12-22&#34;,&#34;value&#34;:7},{&#34;date&#34;:&#34;2025-12-23&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2025-12-24&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2025-12-25&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2025-12-28&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2025-12-29&#34;,&#34;value&#34;:3},{&#34;date&#34;:&#34;2025-12-31&#34;,&#34;value&#34;:1}];&#xA;    const options = {date: { start: new Date(&#39;2025-01-01&#39;) }, domain: { type: &#39;year&#39; }, subDomain: { type: &#39;day&#39; }, range: 1};&#xA;    const maxValue = 15;&#xA;    const displayData = data.map(function(point) {&#xA;      const value = point.value || 0;&#xA;      if (options.maxValue &amp;&amp; value &gt; options.maxValue) {&#xA;        return Object.assign({}, point, { value: options.maxValue });&#xA;      }&#xA;      return point;&#xA;    });&#xA;&#xA;    function fitGraph() {&#xA;      const inner = document.getElementById(graphId);&#xA;      if (!inner) return;&#xA;&#xA;      const outer = inner.parentElement;&#xA;      if (!outer) return;&#xA;&#xA;      if (!inner.dataset.baseWidth) {&#xA;        inner.dataset.baseWidth = String(inner.scrollWidth || inner.getBoundingClientRect().width || 0);&#xA;      }&#xA;&#xA;      const baseWidth = Number(inner.dataset.baseWidth) || inner.scrollWidth || inner.getBoundingClientRect().width || 0;&#xA;      const scale = baseWidth &gt; 0 ? Math.min(1, outer.clientWidth / baseWidth) : 1;&#xA;      inner.style.zoom = String(scale);&#xA;    }&#xA;&#xA;    function paintGraph() {&#xA;      // Clear existing graph&#xA;      const container = document.getElementById(graphId);&#xA;      if (!container) return;&#xA;      container.innerHTML = &#39;&#39;;&#xA;      delete container.dataset.baseWidth;&#xA;&#xA;      // Get theme colors from CSS variables&#xA;      const styles = getComputedStyle(document.documentElement);&#xA;      const bgColor = styles.getPropertyValue(&#39;--color-background&#39;).trim();&#xA;      const surfaceColor = styles.getPropertyValue(&#39;--color-surface&#39;).trim();&#xA;      const primaryColor = styles.getPropertyValue(&#39;--color-primary&#39;).trim();&#xA;&#xA;      // Use surface color as base, primary as accent&#xA;      const baseColor = surfaceColor || bgColor || &#39;#ebedf0&#39;;&#xA;      const accentColor = primaryColor || &#39;#216e39&#39;;&#xA;&#xA;      const cal = new CalHeatmap();&#xA;      cal.paint(&#xA;        {&#xA;          itemSelector: &#39;#&#39; + graphId,&#xA;          data: {&#xA;            source: displayData,&#xA;            x: &#39;date&#39;,&#xA;            y: &#39;value&#39;&#xA;          },&#xA;          date: options.date,&#xA;          domain: options.domain || { type: &#39;year&#39; },&#xA;          subDomain: options.subDomain || { type: &#39;day&#39; },&#xA;          range: options.range,&#xA;          scale: {&#xA;            color: {&#xA;              type: &#39;linear&#39;,&#xA;              range: [baseColor, accentColor],&#xA;              domain: [0, maxValue]&#xA;            }&#xA;          }&#xA;        },&#xA;        [&#xA;          [&#xA;            Tooltip,&#xA;            {&#xA;              text: function (date, value, dayjsDate) {&#xA;                const original = data.find(function(point) {&#xA;                  return point.date === dayjsDate.format(&#39;YYYY-MM-DD&#39;);&#xA;                });&#xA;                const originalValue = original ? (original.value || 0) : (value || 0);&#xA;                return (originalValue ? originalValue : &#39;No&#39;) + &#39; posts on &#39; + dayjsDate.format(&#39;MMM D, YYYY&#39;);&#xA;              },&#xA;            },&#xA;          ],&#xA;        ]&#xA;      );&#xA;&#xA;      fitGraph();&#xA;    }&#xA;&#xA;    // Initial paint&#xA;    paintGraph();&#xA;&#xA;    // Register for theme changes&#xA;    if (!window._contributionGraphPainters) {&#xA;      window._contributionGraphPainters = [];&#xA;    }&#xA;    window._contributionGraphPainters.push(paintGraph);&#xA;&#xA;    if (!window._contributionGraphFitters) {&#xA;      window._contributionGraphFitters = [];&#xA;    }&#xA;    window._contributionGraphFitters.push(fitGraph);&#xA;  })();&#xA;&#xA;  (function() {&#xA;    const graphId = &#39;contribution-graph-3&#39;;&#xA;    const data = [{&#34;date&#34;:&#34;2024-01-12&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2024-01-14&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2024-01-25&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2024-01-26&#34;,&#34;value&#34;:4},{&#34;date&#34;:&#34;2024-01-28&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2024-01-30&#34;,&#34;value&#34;:3},{&#34;date&#34;:&#34;2024-02-03&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2024-02-09&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2024-02-11&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2024-02-16&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2024-02-27&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2024-03-01&#34;,&#34;value&#34;:3},{&#34;date&#34;:&#34;2024-03-04&#34;,&#34;value&#34;:3},{&#34;date&#34;:&#34;2024-03-06&#34;,&#34;value&#34;:3},{&#34;date&#34;:&#34;2024-03-07&#34;,&#34;value&#34;:5},{&#34;date&#34;:&#34;2024-03-09&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2024-03-14&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2024-03-15&#34;,&#34;value&#34;:4},{&#34;date&#34;:&#34;2024-03-16&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2024-03-18&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2024-03-19&#34;,&#34;value&#34;:3},{&#34;date&#34;:&#34;2024-03-20&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2024-03-21&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2024-03-24&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2024-03-25&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2024-03-26&#34;,&#34;value&#34;:3},{&#34;date&#34;:&#34;2024-03-27&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2024-03-28&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2024-03-29&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2024-03-30&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2024-04-01&#34;,&#34;value&#34;:5},{&#34;date&#34;:&#34;2024-04-02&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2024-04-03&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2024-04-04&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2024-04-05&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2024-04-06&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2024-04-07&#34;,&#34;value&#34;:4},{&#34;date&#34;:&#34;2024-04-08&#34;,&#34;value&#34;:3},{&#34;date&#34;:&#34;2024-04-09&#34;,&#34;value&#34;:3},{&#34;date&#34;:&#34;2024-04-10&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2024-04-11&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2024-04-12&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2024-04-13&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2024-04-14&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2024-04-15&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2024-04-16&#34;,&#34;value&#34;:3},{&#34;date&#34;:&#34;2024-04-17&#34;,&#34;value&#34;:5},{&#34;date&#34;:&#34;2024-04-18&#34;,&#34;value&#34;:3},{&#34;date&#34;:&#34;2024-04-19&#34;,&#34;value&#34;:3},{&#34;date&#34;:&#34;2024-04-20&#34;,&#34;value&#34;:5},{&#34;date&#34;:&#34;2024-04-21&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2024-04-22&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2024-04-23&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2024-04-24&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2024-04-25&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2024-04-30&#34;,&#34;value&#34;:7},{&#34;date&#34;:&#34;2024-05-01&#34;,&#34;value&#34;:3},{&#34;date&#34;:&#34;2024-05-02&#34;,&#34;value&#34;:3},{&#34;date&#34;:&#34;2024-05-08&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2024-05-09&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2024-05-10&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2024-05-11&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2024-05-12&#34;,&#34;value&#34;:3},{&#34;date&#34;:&#34;2024-05-14&#34;,&#34;value&#34;:3},{&#34;date&#34;:&#34;2024-05-16&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2024-05-21&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2024-05-22&#34;,&#34;value&#34;:4},{&#34;date&#34;:&#34;2024-05-25&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2024-05-26&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2024-05-30&#34;,&#34;value&#34;:8},{&#34;date&#34;:&#34;2024-05-31&#34;,&#34;value&#34;:3},{&#34;date&#34;:&#34;2024-06-01&#34;,&#34;value&#34;:4},{&#34;date&#34;:&#34;2024-06-03&#34;,&#34;value&#34;:4},{&#34;date&#34;:&#34;2024-06-04&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2024-06-06&#34;,&#34;value&#34;:4},{&#34;date&#34;:&#34;2024-06-07&#34;,&#34;value&#34;:3},{&#34;date&#34;:&#34;2024-06-08&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2024-06-09&#34;,&#34;value&#34;:3},{&#34;date&#34;:&#34;2024-06-10&#34;,&#34;value&#34;:3},{&#34;date&#34;:&#34;2024-06-11&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2024-06-12&#34;,&#34;value&#34;:4},{&#34;date&#34;:&#34;2024-06-14&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2024-06-16&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2024-06-18&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2024-06-23&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2024-06-24&#34;,&#34;value&#34;:5},{&#34;date&#34;:&#34;2024-06-25&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2024-06-26&#34;,&#34;value&#34;:3},{&#34;date&#34;:&#34;2024-06-28&#34;,&#34;value&#34;:5},{&#34;date&#34;:&#34;2024-06-30&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2024-07-01&#34;,&#34;value&#34;:4},{&#34;date&#34;:&#34;2024-07-02&#34;,&#34;value&#34;:5},{&#34;date&#34;:&#34;2024-07-03&#34;,&#34;value&#34;:5},{&#34;date&#34;:&#34;2024-07-04&#34;,&#34;value&#34;:3},{&#34;date&#34;:&#34;2024-07-05&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2024-07-06&#34;,&#34;value&#34;:7},{&#34;date&#34;:&#34;2024-07-07&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2024-07-09&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2024-07-10&#34;,&#34;value&#34;:4},{&#34;date&#34;:&#34;2024-07-11&#34;,&#34;value&#34;:5},{&#34;date&#34;:&#34;2024-07-12&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2024-07-13&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2024-07-15&#34;,&#34;value&#34;:3},{&#34;date&#34;:&#34;2024-07-17&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2024-07-18&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2024-07-19&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2024-07-20&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2024-07-21&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2024-07-22&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2024-07-23&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2024-07-24&#34;,&#34;value&#34;:6},{&#34;date&#34;:&#34;2024-07-25&#34;,&#34;value&#34;:4},{&#34;date&#34;:&#34;2024-07-26&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2024-07-27&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2024-07-30&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2024-07-31&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2024-08-01&#34;,&#34;value&#34;:4},{&#34;date&#34;:&#34;2024-08-02&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2024-08-04&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2024-08-05&#34;,&#34;value&#34;:7},{&#34;date&#34;:&#34;2024-08-07&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2024-08-12&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2024-08-15&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2024-08-21&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2024-08-23&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2024-08-27&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2024-08-29&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2024-09-03&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2024-09-07&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2024-09-13&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2024-09-15&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2024-09-16&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2024-09-18&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2024-09-23&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2024-09-24&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2024-09-27&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2024-09-28&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2024-09-29&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2024-09-30&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2024-10-02&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2024-10-03&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2024-10-04&#34;,&#34;value&#34;:4},{&#34;date&#34;:&#34;2024-10-05&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2024-10-08&#34;,&#34;value&#34;:8},{&#34;date&#34;:&#34;2024-10-09&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2024-10-11&#34;,&#34;value&#34;:3},{&#34;date&#34;:&#34;2024-10-15&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2024-10-16&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2024-10-20&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2024-10-25&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2024-10-27&#34;,&#34;value&#34;:3},{&#34;date&#34;:&#34;2024-10-29&#34;,&#34;value&#34;:9},{&#34;date&#34;:&#34;2024-10-30&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2024-10-31&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2024-11-01&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2024-11-04&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2024-11-05&#34;,&#34;value&#34;:3},{&#34;date&#34;:&#34;2024-11-06&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2024-11-08&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2024-11-12&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2024-11-15&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2024-11-16&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2024-11-17&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2024-11-18&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2024-11-19&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2024-11-21&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2024-11-22&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2024-11-24&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2024-11-25&#34;,&#34;value&#34;:3},{&#34;date&#34;:&#34;2024-11-27&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2024-12-02&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2024-12-03&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2024-12-04&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2024-12-05&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2024-12-06&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2024-12-11&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2024-12-13&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2024-12-14&#34;,&#34;value&#34;:4},{&#34;date&#34;:&#34;2024-12-16&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2024-12-17&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2024-12-18&#34;,&#34;value&#34;:11},{&#34;date&#34;:&#34;2024-12-19&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2024-12-22&#34;,&#34;value&#34;:3},{&#34;date&#34;:&#34;2024-12-23&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2024-12-24&#34;,&#34;value&#34;:6},{&#34;date&#34;:&#34;2024-12-25&#34;,&#34;value&#34;:4},{&#34;date&#34;:&#34;2024-12-26&#34;,&#34;value&#34;:3},{&#34;date&#34;:&#34;2024-12-27&#34;,&#34;value&#34;:4},{&#34;date&#34;:&#34;2024-12-28&#34;,&#34;value&#34;:3},{&#34;date&#34;:&#34;2024-12-30&#34;,&#34;value&#34;:6},{&#34;date&#34;:&#34;2024-12-31&#34;,&#34;value&#34;:2}];&#xA;    const options = {date: { start: new Date(&#39;2024-01-01&#39;) }, domain: { type: &#39;year&#39; }, subDomain: { type: &#39;day&#39; }, range: 1};&#xA;    const maxValue = 6;&#xA;    const displayData = data.map(function(point) {&#xA;      const value = point.value || 0;&#xA;      if (options.maxValue &amp;&amp; value &gt; options.maxValue) {&#xA;        return Object.assign({}, point, { value: options.maxValue });&#xA;      }&#xA;      return point;&#xA;    });&#xA;&#xA;    function fitGraph() {&#xA;      const inner = document.getElementById(graphId);&#xA;      if (!inner) return;&#xA;&#xA;      const outer = inner.parentElement;&#xA;      if (!outer) return;&#xA;&#xA;      if (!inner.dataset.baseWidth) {&#xA;        inner.dataset.baseWidth = String(inner.scrollWidth || inner.getBoundingClientRect().width || 0);&#xA;      }&#xA;&#xA;      const baseWidth = Number(inner.dataset.baseWidth) || inner.scrollWidth || inner.getBoundingClientRect().width || 0;&#xA;      const scale = baseWidth &gt; 0 ? Math.min(1, outer.clientWidth / baseWidth) : 1;&#xA;      inner.style.zoom = String(scale);&#xA;    }&#xA;&#xA;    function paintGraph() {&#xA;      // Clear existing graph&#xA;      const container = document.getElementById(graphId);&#xA;      if (!container) return;&#xA;      container.innerHTML = &#39;&#39;;&#xA;      delete container.dataset.baseWidth;&#xA;&#xA;      // Get theme colors from CSS variables&#xA;      const styles = getComputedStyle(document.documentElement);&#xA;      const bgColor = styles.getPropertyValue(&#39;--color-background&#39;).trim();&#xA;      const surfaceColor = styles.getPropertyValue(&#39;--color-surface&#39;).trim();&#xA;      const primaryColor = styles.getPropertyValue(&#39;--color-primary&#39;).trim();&#xA;&#xA;      // Use surface color as base, primary as accent&#xA;      const baseColor = surfaceColor || bgColor || &#39;#ebedf0&#39;;&#xA;      const accentColor = primaryColor || &#39;#216e39&#39;;&#xA;&#xA;      const cal = new CalHeatmap();&#xA;      cal.paint(&#xA;        {&#xA;          itemSelector: &#39;#&#39; + graphId,&#xA;          data: {&#xA;            source: displayData,&#xA;            x: &#39;date&#39;,&#xA;            y: &#39;value&#39;&#xA;          },&#xA;          date: options.date,&#xA;          domain: options.domain || { type: &#39;year&#39; },&#xA;          subDomain: options.subDomain || { type: &#39;day&#39; },&#xA;          range: options.range,&#xA;          scale: {&#xA;            color: {&#xA;              type: &#39;linear&#39;,&#xA;              range: [baseColor, accentColor],&#xA;              domain: [0, maxValue]&#xA;            }&#xA;          }&#xA;        },&#xA;        [&#xA;          [&#xA;            Tooltip,&#xA;            {&#xA;              text: function (date, value, dayjsDate) {&#xA;                const original = data.find(function(point) {&#xA;                  return point.date === dayjsDate.format(&#39;YYYY-MM-DD&#39;);&#xA;                });&#xA;                const originalValue = original ? (original.value || 0) : (value || 0);&#xA;                return (originalValue ? originalValue : &#39;No&#39;) + &#39; posts on &#39; + dayjsDate.format(&#39;MMM D, YYYY&#39;);&#xA;              },&#xA;            },&#xA;          ],&#xA;        ]&#xA;      );&#xA;&#xA;      fitGraph();&#xA;    }&#xA;&#xA;    // Initial paint&#xA;    paintGraph();&#xA;&#xA;    // Register for theme changes&#xA;    if (!window._contributionGraphPainters) {&#xA;      window._contributionGraphPainters = [];&#xA;    }&#xA;    window._contributionGraphPainters.push(paintGraph);&#xA;&#xA;    if (!window._contributionGraphFitters) {&#xA;      window._contributionGraphFitters = [];&#xA;    }&#xA;    window._contributionGraphFitters.push(fitGraph);&#xA;  })();&#xA;&#xA;  (function() {&#xA;    const graphId = &#39;contribution-graph-4&#39;;&#xA;    const data = [{&#34;date&#34;:&#34;2023-01-15&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2023-01-16&#34;,&#34;value&#34;:4},{&#34;date&#34;:&#34;2023-01-18&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2023-01-19&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2023-01-23&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2023-01-27&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2023-01-28&#34;,&#34;value&#34;:4},{&#34;date&#34;:&#34;2023-01-30&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2023-02-01&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2023-02-02&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2023-02-05&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2023-02-06&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2023-02-07&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2023-02-09&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2023-02-11&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2023-02-12&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2023-02-13&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2023-02-15&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2023-02-20&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2023-02-21&#34;,&#34;value&#34;:4},{&#34;date&#34;:&#34;2023-02-28&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2023-03-03&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2023-03-07&#34;,&#34;value&#34;:4},{&#34;date&#34;:&#34;2023-03-08&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2023-03-13&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2023-03-21&#34;,&#34;value&#34;:3},{&#34;date&#34;:&#34;2023-04-04&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2023-04-09&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2023-04-10&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2023-04-11&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2023-04-12&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2023-04-18&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2023-04-27&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2023-04-30&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2023-05-01&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2023-05-03&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2023-05-10&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2023-05-15&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2023-05-21&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2023-05-23&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2023-05-27&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2023-05-28&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2023-05-30&#34;,&#34;value&#34;:3},{&#34;date&#34;:&#34;2023-06-15&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2023-06-16&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2023-06-17&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2023-06-24&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2023-06-27&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2023-07-03&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2023-07-09&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2023-07-11&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2023-07-20&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2023-07-25&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2023-07-28&#34;,&#34;value&#34;:42},{&#34;date&#34;:&#34;2023-07-29&#34;,&#34;value&#34;:8},{&#34;date&#34;:&#34;2023-07-30&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2023-07-31&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2023-08-01&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2023-08-02&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2023-08-04&#34;,&#34;value&#34;:3},{&#34;date&#34;:&#34;2023-08-05&#34;,&#34;value&#34;:3},{&#34;date&#34;:&#34;2023-08-06&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2023-08-08&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2023-08-09&#34;,&#34;value&#34;:3},{&#34;date&#34;:&#34;2023-08-10&#34;,&#34;value&#34;:3},{&#34;date&#34;:&#34;2023-08-11&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2023-08-15&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2023-08-16&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2023-08-19&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2023-08-20&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2023-08-21&#34;,&#34;value&#34;:6},{&#34;date&#34;:&#34;2023-08-22&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2023-08-23&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2023-08-24&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2023-08-26&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2023-09-01&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2023-09-02&#34;,&#34;value&#34;:3},{&#34;date&#34;:&#34;2023-09-06&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2023-09-07&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2023-09-08&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2023-09-10&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2023-09-13&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2023-09-17&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2023-09-19&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2023-09-20&#34;,&#34;value&#34;:3},{&#34;date&#34;:&#34;2023-09-22&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2023-09-23&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2023-09-25&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2023-09-29&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2023-09-30&#34;,&#34;value&#34;:4},{&#34;date&#34;:&#34;2023-10-01&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2023-10-03&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2023-10-04&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2023-10-05&#34;,&#34;value&#34;:3},{&#34;date&#34;:&#34;2023-10-08&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2023-10-10&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2023-10-11&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2023-10-12&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2023-10-13&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2023-10-14&#34;,&#34;value&#34;:3},{&#34;date&#34;:&#34;2023-10-17&#34;,&#34;value&#34;:4},{&#34;date&#34;:&#34;2023-10-18&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2023-10-19&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2023-10-20&#34;,&#34;value&#34;:3},{&#34;date&#34;:&#34;2023-10-21&#34;,&#34;value&#34;:4},{&#34;date&#34;:&#34;2023-10-22&#34;,&#34;value&#34;:4},{&#34;date&#34;:&#34;2023-10-23&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2023-10-25&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2023-10-28&#34;,&#34;value&#34;:4},{&#34;date&#34;:&#34;2023-10-30&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2023-10-31&#34;,&#34;value&#34;:5},{&#34;date&#34;:&#34;2023-11-01&#34;,&#34;value&#34;:3},{&#34;date&#34;:&#34;2023-11-03&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2023-11-04&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2023-11-05&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2023-11-11&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2023-11-14&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2023-11-18&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2023-11-22&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2023-11-27&#34;,&#34;value&#34;:3},{&#34;date&#34;:&#34;2023-11-28&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2023-11-29&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2023-11-30&#34;,&#34;value&#34;:4},{&#34;date&#34;:&#34;2023-12-04&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2023-12-06&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2023-12-07&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2023-12-09&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2023-12-10&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2023-12-11&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2023-12-12&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2023-12-13&#34;,&#34;value&#34;:7},{&#34;date&#34;:&#34;2023-12-14&#34;,&#34;value&#34;:3},{&#34;date&#34;:&#34;2023-12-15&#34;,&#34;value&#34;:3},{&#34;date&#34;:&#34;2023-12-17&#34;,&#34;value&#34;:4},{&#34;date&#34;:&#34;2023-12-20&#34;,&#34;value&#34;:4},{&#34;date&#34;:&#34;2023-12-21&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2023-12-22&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2023-12-25&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2023-12-26&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2023-12-28&#34;,&#34;value&#34;:1}];&#xA;    const options = {date: { start: new Date(&#39;2023-01-01&#39;) }, domain: { type: &#39;year&#39; }, subDomain: { type: &#39;day&#39; }, range: 1};&#xA;    const maxValue = 8;&#xA;    const displayData = data.map(function(point) {&#xA;      const value = point.value || 0;&#xA;      if (options.maxValue &amp;&amp; value &gt; options.maxValue) {&#xA;        return Object.assign({}, point, { value: options.maxValue });&#xA;      }&#xA;      return point;&#xA;    });&#xA;&#xA;    function fitGraph() {&#xA;      const inner = document.getElementById(graphId);&#xA;      if (!inner) return;&#xA;&#xA;      const outer = inner.parentElement;&#xA;      if (!outer) return;&#xA;&#xA;      if (!inner.dataset.baseWidth) {&#xA;        inner.dataset.baseWidth = String(inner.scrollWidth || inner.getBoundingClientRect().width || 0);&#xA;      }&#xA;&#xA;      const baseWidth = Number(inner.dataset.baseWidth) || inner.scrollWidth || inner.getBoundingClientRect().width || 0;&#xA;      const scale = baseWidth &gt; 0 ? Math.min(1, outer.clientWidth / baseWidth) : 1;&#xA;      inner.style.zoom = String(scale);&#xA;    }&#xA;&#xA;    function paintGraph() {&#xA;      // Clear existing graph&#xA;      const container = document.getElementById(graphId);&#xA;      if (!container) return;&#xA;      container.innerHTML = &#39;&#39;;&#xA;      delete container.dataset.baseWidth;&#xA;&#xA;      // Get theme colors from CSS variables&#xA;      const styles = getComputedStyle(document.documentElement);&#xA;      const bgColor = styles.getPropertyValue(&#39;--color-background&#39;).trim();&#xA;      const surfaceColor = styles.getPropertyValue(&#39;--color-surface&#39;).trim();&#xA;      const primaryColor = styles.getPropertyValue(&#39;--color-primary&#39;).trim();&#xA;&#xA;      // Use surface color as base, primary as accent&#xA;      const baseColor = surfaceColor || bgColor || &#39;#ebedf0&#39;;&#xA;      const accentColor = primaryColor || &#39;#216e39&#39;;&#xA;&#xA;      const cal = new CalHeatmap();&#xA;      cal.paint(&#xA;        {&#xA;          itemSelector: &#39;#&#39; + graphId,&#xA;          data: {&#xA;            source: displayData,&#xA;            x: &#39;date&#39;,&#xA;            y: &#39;value&#39;&#xA;          },&#xA;          date: options.date,&#xA;          domain: options.domain || { type: &#39;year&#39; },&#xA;          subDomain: options.subDomain || { type: &#39;day&#39; },&#xA;          range: options.range,&#xA;          scale: {&#xA;            color: {&#xA;              type: &#39;linear&#39;,&#xA;              range: [baseColor, accentColor],&#xA;              domain: [0, maxValue]&#xA;            }&#xA;          }&#xA;        },&#xA;        [&#xA;          [&#xA;            Tooltip,&#xA;            {&#xA;              text: function (date, value, dayjsDate) {&#xA;                const original = data.find(function(point) {&#xA;                  return point.date === dayjsDate.format(&#39;YYYY-MM-DD&#39;);&#xA;                });&#xA;                const originalValue = original ? (original.value || 0) : (value || 0);&#xA;                return (originalValue ? originalValue : &#39;No&#39;) + &#39; posts on &#39; + dayjsDate.format(&#39;MMM D, YYYY&#39;);&#xA;              },&#xA;            },&#xA;          ],&#xA;        ]&#xA;      );&#xA;&#xA;      fitGraph();&#xA;    }&#xA;&#xA;    // Initial paint&#xA;    paintGraph();&#xA;&#xA;    // Register for theme changes&#xA;    if (!window._contributionGraphPainters) {&#xA;      window._contributionGraphPainters = [];&#xA;    }&#xA;    window._contributionGraphPainters.push(paintGraph);&#xA;&#xA;    if (!window._contributionGraphFitters) {&#xA;      window._contributionGraphFitters = [];&#xA;    }&#xA;    window._contributionGraphFitters.push(fitGraph);&#xA;  })();&#xA;&#xA;  (function() {&#xA;    const graphId = &#39;contribution-graph-5&#39;;&#xA;    const data = [{&#34;date&#34;:&#34;2022-01-08&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2022-01-14&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2022-01-15&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2022-01-22&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2022-01-26&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2022-01-27&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2022-01-30&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2022-02-01&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2022-02-03&#34;,&#34;value&#34;:3},{&#34;date&#34;:&#34;2022-02-05&#34;,&#34;value&#34;:3},{&#34;date&#34;:&#34;2022-02-06&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2022-02-07&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2022-02-08&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2022-02-11&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2022-02-12&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2022-02-19&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2022-02-21&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2022-02-26&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2022-03-04&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2022-03-08&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2022-03-09&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2022-03-11&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2022-03-19&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2022-03-20&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2022-03-22&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2022-04-01&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2022-04-02&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2022-04-12&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2022-04-14&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2022-04-15&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2022-04-19&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2022-04-29&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2022-04-30&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2022-05-01&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2022-05-02&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2022-05-03&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2022-05-07&#34;,&#34;value&#34;:3},{&#34;date&#34;:&#34;2022-05-11&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2022-05-12&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2022-05-16&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2022-05-17&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2022-05-28&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2022-06-04&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2022-06-07&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2022-06-09&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2022-06-10&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2022-06-11&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2022-06-13&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2022-06-17&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2022-06-28&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2022-07-05&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2022-07-12&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2022-07-20&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2022-07-23&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2022-07-28&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2022-07-29&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2022-07-30&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2022-08-04&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2022-08-20&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2022-08-21&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2022-08-22&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2022-08-24&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2022-08-25&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2022-08-27&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2022-08-28&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2022-08-29&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2022-08-30&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2022-08-31&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2022-09-01&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2022-09-02&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2022-09-03&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2022-09-06&#34;,&#34;value&#34;:5},{&#34;date&#34;:&#34;2022-09-07&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2022-09-09&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2022-09-11&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2022-09-13&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2022-09-17&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2022-09-18&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2022-09-19&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2022-09-20&#34;,&#34;value&#34;:3},{&#34;date&#34;:&#34;2022-09-24&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2022-09-25&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2022-09-26&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2022-09-27&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2022-10-01&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2022-10-08&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2022-10-09&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2022-10-11&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2022-10-17&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2022-10-18&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2022-10-19&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2022-10-20&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2022-10-24&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2022-10-25&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2022-10-26&#34;,&#34;value&#34;:4},{&#34;date&#34;:&#34;2022-10-27&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2022-10-29&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2022-10-30&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2022-11-01&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2022-11-22&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2022-11-24&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2022-11-29&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2022-11-30&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2022-12-03&#34;,&#34;value&#34;:3},{&#34;date&#34;:&#34;2022-12-04&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2022-12-05&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2022-12-06&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2022-12-07&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2022-12-08&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2022-12-09&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2022-12-10&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2022-12-11&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2022-12-12&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2022-12-13&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2022-12-14&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2022-12-15&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2022-12-16&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2022-12-17&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2022-12-18&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2022-12-19&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2022-12-20&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2022-12-21&#34;,&#34;value&#34;:7},{&#34;date&#34;:&#34;2022-12-22&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2022-12-23&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2022-12-27&#34;,&#34;value&#34;:1}];&#xA;    const options = {date: { start: new Date(&#39;2022-01-01&#39;) }, domain: { type: &#39;year&#39; }, subDomain: { type: &#39;day&#39; }, range: 1};&#xA;    const maxValue = 7;&#xA;    const displayData = data.map(function(point) {&#xA;      const value = point.value || 0;&#xA;      if (options.maxValue &amp;&amp; value &gt; options.maxValue) {&#xA;        return Object.assign({}, point, { value: options.maxValue });&#xA;      }&#xA;      return point;&#xA;    });&#xA;&#xA;    function fitGraph() {&#xA;      const inner = document.getElementById(graphId);&#xA;      if (!inner) return;&#xA;&#xA;      const outer = inner.parentElement;&#xA;      if (!outer) return;&#xA;&#xA;      if (!inner.dataset.baseWidth) {&#xA;        inner.dataset.baseWidth = String(inner.scrollWidth || inner.getBoundingClientRect().width || 0);&#xA;      }&#xA;&#xA;      const baseWidth = Number(inner.dataset.baseWidth) || inner.scrollWidth || inner.getBoundingClientRect().width || 0;&#xA;      const scale = baseWidth &gt; 0 ? Math.min(1, outer.clientWidth / baseWidth) : 1;&#xA;      inner.style.zoom = String(scale);&#xA;    }&#xA;&#xA;    function paintGraph() {&#xA;      // Clear existing graph&#xA;      const container = document.getElementById(graphId);&#xA;      if (!container) return;&#xA;      container.innerHTML = &#39;&#39;;&#xA;      delete container.dataset.baseWidth;&#xA;&#xA;      // Get theme colors from CSS variables&#xA;      const styles = getComputedStyle(document.documentElement);&#xA;      const bgColor = styles.getPropertyValue(&#39;--color-background&#39;).trim();&#xA;      const surfaceColor = styles.getPropertyValue(&#39;--color-surface&#39;).trim();&#xA;      const primaryColor = styles.getPropertyValue(&#39;--color-primary&#39;).trim();&#xA;&#xA;      // Use surface color as base, primary as accent&#xA;      const baseColor = surfaceColor || bgColor || &#39;#ebedf0&#39;;&#xA;      const accentColor = primaryColor || &#39;#216e39&#39;;&#xA;&#xA;      const cal = new CalHeatmap();&#xA;      cal.paint(&#xA;        {&#xA;          itemSelector: &#39;#&#39; + graphId,&#xA;          data: {&#xA;            source: displayData,&#xA;            x: &#39;date&#39;,&#xA;            y: &#39;value&#39;&#xA;          },&#xA;          date: options.date,&#xA;          domain: options.domain || { type: &#39;year&#39; },&#xA;          subDomain: options.subDomain || { type: &#39;day&#39; },&#xA;          range: options.range,&#xA;          scale: {&#xA;            color: {&#xA;              type: &#39;linear&#39;,&#xA;              range: [baseColor, accentColor],&#xA;              domain: [0, maxValue]&#xA;            }&#xA;          }&#xA;        },&#xA;        [&#xA;          [&#xA;            Tooltip,&#xA;            {&#xA;              text: function (date, value, dayjsDate) {&#xA;                const original = data.find(function(point) {&#xA;                  return point.date === dayjsDate.format(&#39;YYYY-MM-DD&#39;);&#xA;                });&#xA;                const originalValue = original ? (original.value || 0) : (value || 0);&#xA;                return (originalValue ? originalValue : &#39;No&#39;) + &#39; posts on &#39; + dayjsDate.format(&#39;MMM D, YYYY&#39;);&#xA;              },&#xA;            },&#xA;          ],&#xA;        ]&#xA;      );&#xA;&#xA;      fitGraph();&#xA;    }&#xA;&#xA;    // Initial paint&#xA;    paintGraph();&#xA;&#xA;    // Register for theme changes&#xA;    if (!window._contributionGraphPainters) {&#xA;      window._contributionGraphPainters = [];&#xA;    }&#xA;    window._contributionGraphPainters.push(paintGraph);&#xA;&#xA;    if (!window._contributionGraphFitters) {&#xA;      window._contributionGraphFitters = [];&#xA;    }&#xA;    window._contributionGraphFitters.push(fitGraph);&#xA;  })();&#xA;&#xA;  (function() {&#xA;    const graphId = &#39;contribution-graph-6&#39;;&#xA;    const data = [{&#34;date&#34;:&#34;2021-01-02&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2021-01-03&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2021-01-04&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2021-01-06&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2021-01-08&#34;,&#34;value&#34;:3},{&#34;date&#34;:&#34;2021-01-09&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2021-01-10&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2021-01-11&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2021-01-14&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2021-01-17&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2021-01-18&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2021-01-19&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2021-01-20&#34;,&#34;value&#34;:5},{&#34;date&#34;:&#34;2021-01-21&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2021-01-22&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2021-01-25&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2021-01-27&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2021-01-28&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2021-02-01&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2021-02-17&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2021-02-25&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2021-03-03&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2021-03-06&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2021-03-08&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2021-03-14&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2021-03-20&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2021-03-22&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2021-03-24&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2021-03-25&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2021-03-26&#34;,&#34;value&#34;:3},{&#34;date&#34;:&#34;2021-03-27&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2021-03-29&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2021-04-01&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2021-04-02&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2021-04-05&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2021-04-07&#34;,&#34;value&#34;:4},{&#34;date&#34;:&#34;2021-04-08&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2021-04-10&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2021-04-12&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2021-04-14&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2021-04-15&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2021-04-16&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2021-04-17&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2021-04-18&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2021-04-19&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2021-04-20&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2021-04-21&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2021-04-23&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2021-04-26&#34;,&#34;value&#34;:3},{&#34;date&#34;:&#34;2021-04-29&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2021-05-02&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2021-05-05&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2021-05-07&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2021-05-10&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2021-05-11&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2021-05-13&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2021-05-14&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2021-05-17&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2021-05-20&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2021-05-21&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2021-05-23&#34;,&#34;value&#34;:3},{&#34;date&#34;:&#34;2021-05-29&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2021-05-31&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2021-06-02&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2021-06-04&#34;,&#34;value&#34;:4},{&#34;date&#34;:&#34;2021-06-05&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2021-06-06&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2021-06-07&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2021-06-08&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2021-06-10&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2021-06-11&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2021-06-12&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2021-06-19&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2021-06-22&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2021-07-01&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2021-07-08&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2021-07-09&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2021-07-14&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2021-07-15&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2021-07-16&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2021-07-17&#34;,&#34;value&#34;:3},{&#34;date&#34;:&#34;2021-07-18&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2021-07-19&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2021-07-20&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2021-07-21&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2021-07-22&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2021-07-23&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2021-07-24&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2021-07-25&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2021-07-26&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2021-07-27&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2021-07-28&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2021-07-29&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2021-07-30&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2021-07-31&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2021-08-01&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2021-08-02&#34;,&#34;value&#34;:3},{&#34;date&#34;:&#34;2021-08-03&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2021-08-04&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2021-08-05&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2021-08-06&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2021-08-07&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2021-08-08&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2021-08-09&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2021-08-11&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2021-08-12&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2021-08-13&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2021-08-14&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2021-08-16&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2021-08-17&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2021-08-18&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2021-08-20&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2021-08-21&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2021-08-22&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2021-08-23&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2021-08-24&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2021-08-28&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2021-08-30&#34;,&#34;value&#34;:4},{&#34;date&#34;:&#34;2021-09-03&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2021-09-05&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2021-09-09&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2021-09-13&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2021-09-19&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2021-10-01&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2021-10-05&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2021-10-10&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2021-10-11&#34;,&#34;value&#34;:3},{&#34;date&#34;:&#34;2021-10-12&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2021-10-15&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2021-10-17&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2021-10-19&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2021-10-20&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2021-10-28&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2021-10-29&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2021-10-30&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2021-11-04&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2021-11-06&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2021-11-08&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2021-11-15&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2021-11-17&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2021-11-20&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2021-11-29&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2021-11-30&#34;,&#34;value&#34;:3},{&#34;date&#34;:&#34;2021-12-02&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2021-12-03&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2021-12-04&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2021-12-08&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2021-12-11&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2021-12-17&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2021-12-20&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2021-12-21&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2021-12-24&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2021-12-28&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2021-12-29&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2021-12-30&#34;,&#34;value&#34;:1}];&#xA;    const options = {date: { start: new Date(&#39;2021-01-01&#39;) }, domain: { type: &#39;year&#39; }, subDomain: { type: &#39;day&#39; }, range: 1};&#xA;    const maxValue = 5;&#xA;    const displayData = data.map(function(point) {&#xA;      const value = point.value || 0;&#xA;      if (options.maxValue &amp;&amp; value &gt; options.maxValue) {&#xA;        return Object.assign({}, point, { value: options.maxValue });&#xA;      }&#xA;      return point;&#xA;    });&#xA;&#xA;    function fitGraph() {&#xA;      const inner = document.getElementById(graphId);&#xA;      if (!inner) return;&#xA;&#xA;      const outer = inner.parentElement;&#xA;      if (!outer) return;&#xA;&#xA;      if (!inner.dataset.baseWidth) {&#xA;        inner.dataset.baseWidth = String(inner.scrollWidth || inner.getBoundingClientRect().width || 0);&#xA;      }&#xA;&#xA;      const baseWidth = Number(inner.dataset.baseWidth) || inner.scrollWidth || inner.getBoundingClientRect().width || 0;&#xA;      const scale = baseWidth &gt; 0 ? Math.min(1, outer.clientWidth / baseWidth) : 1;&#xA;      inner.style.zoom = String(scale);&#xA;    }&#xA;&#xA;    function paintGraph() {&#xA;      // Clear existing graph&#xA;      const container = document.getElementById(graphId);&#xA;      if (!container) return;&#xA;      container.innerHTML = &#39;&#39;;&#xA;      delete container.dataset.baseWidth;&#xA;&#xA;      // Get theme colors from CSS variables&#xA;      const styles = getComputedStyle(document.documentElement);&#xA;      const bgColor = styles.getPropertyValue(&#39;--color-background&#39;).trim();&#xA;      const surfaceColor = styles.getPropertyValue(&#39;--color-surface&#39;).trim();&#xA;      const primaryColor = styles.getPropertyValue(&#39;--color-primary&#39;).trim();&#xA;&#xA;      // Use surface color as base, primary as accent&#xA;      const baseColor = surfaceColor || bgColor || &#39;#ebedf0&#39;;&#xA;      const accentColor = primaryColor || &#39;#216e39&#39;;&#xA;&#xA;      const cal = new CalHeatmap();&#xA;      cal.paint(&#xA;        {&#xA;          itemSelector: &#39;#&#39; + graphId,&#xA;          data: {&#xA;            source: displayData,&#xA;            x: &#39;date&#39;,&#xA;            y: &#39;value&#39;&#xA;          },&#xA;          date: options.date,&#xA;          domain: options.domain || { type: &#39;year&#39; },&#xA;          subDomain: options.subDomain || { type: &#39;day&#39; },&#xA;          range: options.range,&#xA;          scale: {&#xA;            color: {&#xA;              type: &#39;linear&#39;,&#xA;              range: [baseColor, accentColor],&#xA;              domain: [0, maxValue]&#xA;            }&#xA;          }&#xA;        },&#xA;        [&#xA;          [&#xA;            Tooltip,&#xA;            {&#xA;              text: function (date, value, dayjsDate) {&#xA;                const original = data.find(function(point) {&#xA;                  return point.date === dayjsDate.format(&#39;YYYY-MM-DD&#39;);&#xA;                });&#xA;                const originalValue = original ? (original.value || 0) : (value || 0);&#xA;                return (originalValue ? originalValue : &#39;No&#39;) + &#39; posts on &#39; + dayjsDate.format(&#39;MMM D, YYYY&#39;);&#xA;              },&#xA;            },&#xA;          ],&#xA;        ]&#xA;      );&#xA;&#xA;      fitGraph();&#xA;    }&#xA;&#xA;    // Initial paint&#xA;    paintGraph();&#xA;&#xA;    // Register for theme changes&#xA;    if (!window._contributionGraphPainters) {&#xA;      window._contributionGraphPainters = [];&#xA;    }&#xA;    window._contributionGraphPainters.push(paintGraph);&#xA;&#xA;    if (!window._contributionGraphFitters) {&#xA;      window._contributionGraphFitters = [];&#xA;    }&#xA;    window._contributionGraphFitters.push(fitGraph);&#xA;  })();&#xA;&#xA;  (function() {&#xA;    const graphId = &#39;contribution-graph-7&#39;;&#xA;    const data = [{&#34;date&#34;:&#34;2020-01-01&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2020-01-03&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2020-01-10&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2020-01-12&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2020-01-13&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2020-01-19&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2020-01-22&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2020-01-23&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2020-01-28&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2020-01-29&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2020-02-01&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2020-02-04&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2020-02-06&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2020-02-07&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2020-02-08&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2020-02-10&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2020-02-11&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2020-02-17&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2020-02-18&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2020-02-19&#34;,&#34;value&#34;:3},{&#34;date&#34;:&#34;2020-02-21&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2020-02-22&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2020-02-24&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2020-02-25&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2020-02-26&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2020-03-01&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2020-03-02&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2020-03-03&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2020-03-06&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2020-03-07&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2020-03-14&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2020-03-16&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2020-03-18&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2020-03-22&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2020-03-29&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2020-03-31&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2020-04-01&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2020-04-03&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2020-04-04&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2020-04-05&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2020-04-07&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2020-04-08&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2020-04-09&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2020-04-13&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2020-04-15&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2020-04-16&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2020-04-27&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2020-04-29&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2020-04-30&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2020-05-01&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2020-05-03&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2020-05-04&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2020-05-07&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2020-05-08&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2020-05-09&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2020-05-10&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2020-05-12&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2020-05-15&#34;,&#34;value&#34;:4},{&#34;date&#34;:&#34;2020-05-17&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2020-05-18&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2020-05-20&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2020-05-22&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2020-05-23&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2020-05-24&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2020-05-28&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2020-05-29&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2020-05-31&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2020-06-03&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2020-06-04&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2020-06-05&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2020-06-08&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2020-06-10&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2020-06-11&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2020-06-15&#34;,&#34;value&#34;:3},{&#34;date&#34;:&#34;2020-06-16&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2020-06-19&#34;,&#34;value&#34;:3},{&#34;date&#34;:&#34;2020-06-22&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2020-06-25&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2020-06-29&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2020-07-02&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2020-07-04&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2020-07-05&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2020-07-06&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2020-07-08&#34;,&#34;value&#34;:3},{&#34;date&#34;:&#34;2020-07-09&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2020-07-10&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2020-07-11&#34;,&#34;value&#34;:3},{&#34;date&#34;:&#34;2020-07-12&#34;,&#34;value&#34;:3},{&#34;date&#34;:&#34;2020-07-13&#34;,&#34;value&#34;:4},{&#34;date&#34;:&#34;2020-07-14&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2020-07-16&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2020-07-18&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2020-07-21&#34;,&#34;value&#34;:3},{&#34;date&#34;:&#34;2020-07-22&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2020-07-23&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2020-07-24&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2020-07-25&#34;,&#34;value&#34;:3},{&#34;date&#34;:&#34;2020-07-27&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2020-07-28&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2020-07-29&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2020-07-31&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2020-08-01&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2020-08-03&#34;,&#34;value&#34;:4},{&#34;date&#34;:&#34;2020-08-06&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2020-08-07&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2020-08-10&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2020-08-11&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2020-08-13&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2020-09-01&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2020-09-04&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2020-09-13&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2020-09-15&#34;,&#34;value&#34;:3},{&#34;date&#34;:&#34;2020-09-27&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2020-09-29&#34;,&#34;value&#34;:4},{&#34;date&#34;:&#34;2020-09-30&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2020-10-01&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2020-10-02&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2020-10-08&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2020-10-11&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2020-10-17&#34;,&#34;value&#34;:3},{&#34;date&#34;:&#34;2020-10-18&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2020-10-20&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2020-10-21&#34;,&#34;value&#34;:3},{&#34;date&#34;:&#34;2020-10-23&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2020-10-25&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2020-10-27&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2020-10-28&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2020-10-31&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2020-11-01&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2020-11-02&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2020-11-06&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2020-11-07&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2020-11-12&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2020-11-16&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2020-11-18&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2020-11-21&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2020-11-23&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2020-11-25&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2020-11-27&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2020-12-01&#34;,&#34;value&#34;:3},{&#34;date&#34;:&#34;2020-12-02&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2020-12-04&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2020-12-07&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2020-12-10&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2020-12-11&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2020-12-13&#34;,&#34;value&#34;:4},{&#34;date&#34;:&#34;2020-12-20&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2020-12-30&#34;,&#34;value&#34;:1}];&#xA;    const options = {date: { start: new Date(&#39;2020-01-01&#39;) }, domain: { type: &#39;year&#39; }, subDomain: { type: &#39;day&#39; }, range: 1};&#xA;    const maxValue = 4;&#xA;    const displayData = data.map(function(point) {&#xA;      const value = point.value || 0;&#xA;      if (options.maxValue &amp;&amp; value &gt; options.maxValue) {&#xA;        return Object.assign({}, point, { value: options.maxValue });&#xA;      }&#xA;      return point;&#xA;    });&#xA;&#xA;    function fitGraph() {&#xA;      const inner = document.getElementById(graphId);&#xA;      if (!inner) return;&#xA;&#xA;      const outer = inner.parentElement;&#xA;      if (!outer) return;&#xA;&#xA;      if (!inner.dataset.baseWidth) {&#xA;        inner.dataset.baseWidth = String(inner.scrollWidth || inner.getBoundingClientRect().width || 0);&#xA;      }&#xA;&#xA;      const baseWidth = Number(inner.dataset.baseWidth) || inner.scrollWidth || inner.getBoundingClientRect().width || 0;&#xA;      const scale = baseWidth &gt; 0 ? Math.min(1, outer.clientWidth / baseWidth) : 1;&#xA;      inner.style.zoom = String(scale);&#xA;    }&#xA;&#xA;    function paintGraph() {&#xA;      // Clear existing graph&#xA;      const container = document.getElementById(graphId);&#xA;      if (!container) return;&#xA;      container.innerHTML = &#39;&#39;;&#xA;      delete container.dataset.baseWidth;&#xA;&#xA;      // Get theme colors from CSS variables&#xA;      const styles = getComputedStyle(document.documentElement);&#xA;      const bgColor = styles.getPropertyValue(&#39;--color-background&#39;).trim();&#xA;      const surfaceColor = styles.getPropertyValue(&#39;--color-surface&#39;).trim();&#xA;      const primaryColor = styles.getPropertyValue(&#39;--color-primary&#39;).trim();&#xA;&#xA;      // Use surface color as base, primary as accent&#xA;      const baseColor = surfaceColor || bgColor || &#39;#ebedf0&#39;;&#xA;      const accentColor = primaryColor || &#39;#216e39&#39;;&#xA;&#xA;      const cal = new CalHeatmap();&#xA;      cal.paint(&#xA;        {&#xA;          itemSelector: &#39;#&#39; + graphId,&#xA;          data: {&#xA;            source: displayData,&#xA;            x: &#39;date&#39;,&#xA;            y: &#39;value&#39;&#xA;          },&#xA;          date: options.date,&#xA;          domain: options.domain || { type: &#39;year&#39; },&#xA;          subDomain: options.subDomain || { type: &#39;day&#39; },&#xA;          range: options.range,&#xA;          scale: {&#xA;            color: {&#xA;              type: &#39;linear&#39;,&#xA;              range: [baseColor, accentColor],&#xA;              domain: [0, maxValue]&#xA;            }&#xA;          }&#xA;        },&#xA;        [&#xA;          [&#xA;            Tooltip,&#xA;            {&#xA;              text: function (date, value, dayjsDate) {&#xA;                const original = data.find(function(point) {&#xA;                  return point.date === dayjsDate.format(&#39;YYYY-MM-DD&#39;);&#xA;                });&#xA;                const originalValue = original ? (original.value || 0) : (value || 0);&#xA;                return (originalValue ? originalValue : &#39;No&#39;) + &#39; posts on &#39; + dayjsDate.format(&#39;MMM D, YYYY&#39;);&#xA;              },&#xA;            },&#xA;          ],&#xA;        ]&#xA;      );&#xA;&#xA;      fitGraph();&#xA;    }&#xA;&#xA;    // Initial paint&#xA;    paintGraph();&#xA;&#xA;    // Register for theme changes&#xA;    if (!window._contributionGraphPainters) {&#xA;      window._contributionGraphPainters = [];&#xA;    }&#xA;    window._contributionGraphPainters.push(paintGraph);&#xA;&#xA;    if (!window._contributionGraphFitters) {&#xA;      window._contributionGraphFitters = [];&#xA;    }&#xA;    window._contributionGraphFitters.push(fitGraph);&#xA;  })();&#xA;&#xA;  (function() {&#xA;    const graphId = &#39;contribution-graph-8&#39;;&#xA;    const data = [{&#34;date&#34;:&#34;2019-01-01&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2019-01-05&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2019-01-06&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2019-01-12&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2019-01-21&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2019-01-26&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2019-01-30&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2019-02-01&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2019-02-02&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2019-02-05&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2019-02-09&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2019-03-04&#34;,&#34;value&#34;:3},{&#34;date&#34;:&#34;2019-03-11&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2019-03-13&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2019-04-23&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2019-05-10&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2019-05-18&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2019-05-20&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2019-05-27&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2019-05-30&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2019-06-19&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2019-06-20&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2019-06-28&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2019-07-07&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2019-08-10&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2019-08-31&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2019-09-05&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2019-09-06&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2019-09-07&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2019-09-08&#34;,&#34;value&#34;:4},{&#34;date&#34;:&#34;2019-09-10&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2019-09-11&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2019-09-13&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2019-09-15&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2019-09-18&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2019-09-22&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2019-09-24&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2019-09-25&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2019-09-26&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2019-10-01&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2019-10-03&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2019-10-06&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2019-10-14&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2019-10-15&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2019-10-18&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2019-10-19&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2019-10-28&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2019-10-29&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2019-11-02&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2019-11-07&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2019-11-10&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2019-11-11&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2019-11-12&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2019-11-13&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2019-11-14&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2019-11-17&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2019-11-21&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2019-11-27&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2019-11-28&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2019-12-02&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2019-12-04&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2019-12-21&#34;,&#34;value&#34;:1}];&#xA;    const options = {date: { start: new Date(&#39;2019-01-01&#39;) }, domain: { type: &#39;year&#39; }, subDomain: { type: &#39;day&#39; }, range: 1};&#xA;    const maxValue = 4;&#xA;    const displayData = data.map(function(point) {&#xA;      const value = point.value || 0;&#xA;      if (options.maxValue &amp;&amp; value &gt; options.maxValue) {&#xA;        return Object.assign({}, point, { value: options.maxValue });&#xA;      }&#xA;      return point;&#xA;    });&#xA;&#xA;    function fitGraph() {&#xA;      const inner = document.getElementById(graphId);&#xA;      if (!inner) return;&#xA;&#xA;      const outer = inner.parentElement;&#xA;      if (!outer) return;&#xA;&#xA;      if (!inner.dataset.baseWidth) {&#xA;        inner.dataset.baseWidth = String(inner.scrollWidth || inner.getBoundingClientRect().width || 0);&#xA;      }&#xA;&#xA;      const baseWidth = Number(inner.dataset.baseWidth) || inner.scrollWidth || inner.getBoundingClientRect().width || 0;&#xA;      const scale = baseWidth &gt; 0 ? Math.min(1, outer.clientWidth / baseWidth) : 1;&#xA;      inner.style.zoom = String(scale);&#xA;    }&#xA;&#xA;    function paintGraph() {&#xA;      // Clear existing graph&#xA;      const container = document.getElementById(graphId);&#xA;      if (!container) return;&#xA;      container.innerHTML = &#39;&#39;;&#xA;      delete container.dataset.baseWidth;&#xA;&#xA;      // Get theme colors from CSS variables&#xA;      const styles = getComputedStyle(document.documentElement);&#xA;      const bgColor = styles.getPropertyValue(&#39;--color-background&#39;).trim();&#xA;      const surfaceColor = styles.getPropertyValue(&#39;--color-surface&#39;).trim();&#xA;      const primaryColor = styles.getPropertyValue(&#39;--color-primary&#39;).trim();&#xA;&#xA;      // Use surface color as base, primary as accent&#xA;      const baseColor = surfaceColor || bgColor || &#39;#ebedf0&#39;;&#xA;      const accentColor = primaryColor || &#39;#216e39&#39;;&#xA;&#xA;      const cal = new CalHeatmap();&#xA;      cal.paint(&#xA;        {&#xA;          itemSelector: &#39;#&#39; + graphId,&#xA;          data: {&#xA;            source: displayData,&#xA;            x: &#39;date&#39;,&#xA;            y: &#39;value&#39;&#xA;          },&#xA;          date: options.date,&#xA;          domain: options.domain || { type: &#39;year&#39; },&#xA;          subDomain: options.subDomain || { type: &#39;day&#39; },&#xA;          range: options.range,&#xA;          scale: {&#xA;            color: {&#xA;              type: &#39;linear&#39;,&#xA;              range: [baseColor, accentColor],&#xA;              domain: [0, maxValue]&#xA;            }&#xA;          }&#xA;        },&#xA;        [&#xA;          [&#xA;            Tooltip,&#xA;            {&#xA;              text: function (date, value, dayjsDate) {&#xA;                const original = data.find(function(point) {&#xA;                  return point.date === dayjsDate.format(&#39;YYYY-MM-DD&#39;);&#xA;                });&#xA;                const originalValue = original ? (original.value || 0) : (value || 0);&#xA;                return (originalValue ? originalValue : &#39;No&#39;) + &#39; posts on &#39; + dayjsDate.format(&#39;MMM D, YYYY&#39;);&#xA;              },&#xA;            },&#xA;          ],&#xA;        ]&#xA;      );&#xA;&#xA;      fitGraph();&#xA;    }&#xA;&#xA;    // Initial paint&#xA;    paintGraph();&#xA;&#xA;    // Register for theme changes&#xA;    if (!window._contributionGraphPainters) {&#xA;      window._contributionGraphPainters = [];&#xA;    }&#xA;    window._contributionGraphPainters.push(paintGraph);&#xA;&#xA;    if (!window._contributionGraphFitters) {&#xA;      window._contributionGraphFitters = [];&#xA;    }&#xA;    window._contributionGraphFitters.push(fitGraph);&#xA;  })();&#xA;&#xA;  (function() {&#xA;    const graphId = &#39;contribution-graph-9&#39;;&#xA;    const data = [{&#34;date&#34;:&#34;2018-01-01&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2018-01-07&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2018-01-24&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2018-02-01&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2018-02-06&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2018-02-19&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2018-02-25&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2018-03-13&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2018-03-16&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2018-04-22&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2018-04-28&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2018-05-02&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2018-05-05&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2018-05-06&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2018-05-08&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2018-05-22&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2018-06-09&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2018-07-05&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2018-07-09&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2018-07-12&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2018-07-20&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2018-08-06&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2018-08-08&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2018-08-13&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2018-09-10&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2018-09-22&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2018-09-23&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2018-09-24&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2018-09-25&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2018-09-27&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2018-10-04&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2018-10-09&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2018-10-10&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2018-11-28&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2018-11-29&#34;,&#34;value&#34;:1}];&#xA;    const options = {date: { start: new Date(&#39;2018-01-01&#39;) }, domain: { type: &#39;year&#39; }, subDomain: { type: &#39;day&#39; }, range: 1};&#xA;    const maxValue = 2;&#xA;    const displayData = data.map(function(point) {&#xA;      const value = point.value || 0;&#xA;      if (options.maxValue &amp;&amp; value &gt; options.maxValue) {&#xA;        return Object.assign({}, point, { value: options.maxValue });&#xA;      }&#xA;      return point;&#xA;    });&#xA;&#xA;    function fitGraph() {&#xA;      const inner = document.getElementById(graphId);&#xA;      if (!inner) return;&#xA;&#xA;      const outer = inner.parentElement;&#xA;      if (!outer) return;&#xA;&#xA;      if (!inner.dataset.baseWidth) {&#xA;        inner.dataset.baseWidth = String(inner.scrollWidth || inner.getBoundingClientRect().width || 0);&#xA;      }&#xA;&#xA;      const baseWidth = Number(inner.dataset.baseWidth) || inner.scrollWidth || inner.getBoundingClientRect().width || 0;&#xA;      const scale = baseWidth &gt; 0 ? Math.min(1, outer.clientWidth / baseWidth) : 1;&#xA;      inner.style.zoom = String(scale);&#xA;    }&#xA;&#xA;    function paintGraph() {&#xA;      // Clear existing graph&#xA;      const container = document.getElementById(graphId);&#xA;      if (!container) return;&#xA;      container.innerHTML = &#39;&#39;;&#xA;      delete container.dataset.baseWidth;&#xA;&#xA;      // Get theme colors from CSS variables&#xA;      const styles = getComputedStyle(document.documentElement);&#xA;      const bgColor = styles.getPropertyValue(&#39;--color-background&#39;).trim();&#xA;      const surfaceColor = styles.getPropertyValue(&#39;--color-surface&#39;).trim();&#xA;      const primaryColor = styles.getPropertyValue(&#39;--color-primary&#39;).trim();&#xA;&#xA;      // Use surface color as base, primary as accent&#xA;      const baseColor = surfaceColor || bgColor || &#39;#ebedf0&#39;;&#xA;      const accentColor = primaryColor || &#39;#216e39&#39;;&#xA;&#xA;      const cal = new CalHeatmap();&#xA;      cal.paint(&#xA;        {&#xA;          itemSelector: &#39;#&#39; + graphId,&#xA;          data: {&#xA;            source: displayData,&#xA;            x: &#39;date&#39;,&#xA;            y: &#39;value&#39;&#xA;          },&#xA;          date: options.date,&#xA;          domain: options.domain || { type: &#39;year&#39; },&#xA;          subDomain: options.subDomain || { type: &#39;day&#39; },&#xA;          range: options.range,&#xA;          scale: {&#xA;            color: {&#xA;              type: &#39;linear&#39;,&#xA;              range: [baseColor, accentColor],&#xA;              domain: [0, maxValue]&#xA;            }&#xA;          }&#xA;        },&#xA;        [&#xA;          [&#xA;            Tooltip,&#xA;            {&#xA;              text: function (date, value, dayjsDate) {&#xA;                const original = data.find(function(point) {&#xA;                  return point.date === dayjsDate.format(&#39;YYYY-MM-DD&#39;);&#xA;                });&#xA;                const originalValue = original ? (original.value || 0) : (value || 0);&#xA;                return (originalValue ? originalValue : &#39;No&#39;) + &#39; posts on &#39; + dayjsDate.format(&#39;MMM D, YYYY&#39;);&#xA;              },&#xA;            },&#xA;          ],&#xA;        ]&#xA;      );&#xA;&#xA;      fitGraph();&#xA;    }&#xA;&#xA;    // Initial paint&#xA;    paintGraph();&#xA;&#xA;    // Register for theme changes&#xA;    if (!window._contributionGraphPainters) {&#xA;      window._contributionGraphPainters = [];&#xA;    }&#xA;    window._contributionGraphPainters.push(paintGraph);&#xA;&#xA;    if (!window._contributionGraphFitters) {&#xA;      window._contributionGraphFitters = [];&#xA;    }&#xA;    window._contributionGraphFitters.push(fitGraph);&#xA;  })();&#xA;&#xA;  (function() {&#xA;    const graphId = &#39;contribution-graph-10&#39;;&#xA;    const data = [{&#34;date&#34;:&#34;2017-01-21&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2017-04-20&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2017-04-28&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2017-05-10&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2017-05-16&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2017-06-10&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2017-06-14&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2017-07-04&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2017-08-31&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2017-09-16&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2017-09-21&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2017-09-24&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2017-12-01&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2017-12-02&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2017-12-13&#34;,&#34;value&#34;:1}];&#xA;    const options = {date: { start: new Date(&#39;2017-01-01&#39;) }, domain: { type: &#39;year&#39; }, subDomain: { type: &#39;day&#39; }, range: 1};&#xA;    const maxValue = 2;&#xA;    const displayData = data.map(function(point) {&#xA;      const value = point.value || 0;&#xA;      if (options.maxValue &amp;&amp; value &gt; options.maxValue) {&#xA;        return Object.assign({}, point, { value: options.maxValue });&#xA;      }&#xA;      return point;&#xA;    });&#xA;&#xA;    function fitGraph() {&#xA;      const inner = document.getElementById(graphId);&#xA;      if (!inner) return;&#xA;&#xA;      const outer = inner.parentElement;&#xA;      if (!outer) return;&#xA;&#xA;      if (!inner.dataset.baseWidth) {&#xA;        inner.dataset.baseWidth = String(inner.scrollWidth || inner.getBoundingClientRect().width || 0);&#xA;      }&#xA;&#xA;      const baseWidth = Number(inner.dataset.baseWidth) || inner.scrollWidth || inner.getBoundingClientRect().width || 0;&#xA;      const scale = baseWidth &gt; 0 ? Math.min(1, outer.clientWidth / baseWidth) : 1;&#xA;      inner.style.zoom = String(scale);&#xA;    }&#xA;&#xA;    function paintGraph() {&#xA;      // Clear existing graph&#xA;      const container = document.getElementById(graphId);&#xA;      if (!container) return;&#xA;      container.innerHTML = &#39;&#39;;&#xA;      delete container.dataset.baseWidth;&#xA;&#xA;      // Get theme colors from CSS variables&#xA;      const styles = getComputedStyle(document.documentElement);&#xA;      const bgColor = styles.getPropertyValue(&#39;--color-background&#39;).trim();&#xA;      const surfaceColor = styles.getPropertyValue(&#39;--color-surface&#39;).trim();&#xA;      const primaryColor = styles.getPropertyValue(&#39;--color-primary&#39;).trim();&#xA;&#xA;      // Use surface color as base, primary as accent&#xA;      const baseColor = surfaceColor || bgColor || &#39;#ebedf0&#39;;&#xA;      const accentColor = primaryColor || &#39;#216e39&#39;;&#xA;&#xA;      const cal = new CalHeatmap();&#xA;      cal.paint(&#xA;        {&#xA;          itemSelector: &#39;#&#39; + graphId,&#xA;          data: {&#xA;            source: displayData,&#xA;            x: &#39;date&#39;,&#xA;            y: &#39;value&#39;&#xA;          },&#xA;          date: options.date,&#xA;          domain: options.domain || { type: &#39;year&#39; },&#xA;          subDomain: options.subDomain || { type: &#39;day&#39; },&#xA;          range: options.range,&#xA;          scale: {&#xA;            color: {&#xA;              type: &#39;linear&#39;,&#xA;              range: [baseColor, accentColor],&#xA;              domain: [0, maxValue]&#xA;            }&#xA;          }&#xA;        },&#xA;        [&#xA;          [&#xA;            Tooltip,&#xA;            {&#xA;              text: function (date, value, dayjsDate) {&#xA;                const original = data.find(function(point) {&#xA;                  return point.date === dayjsDate.format(&#39;YYYY-MM-DD&#39;);&#xA;                });&#xA;                const originalValue = original ? (original.value || 0) : (value || 0);&#xA;                return (originalValue ? originalValue : &#39;No&#39;) + &#39; posts on &#39; + dayjsDate.format(&#39;MMM D, YYYY&#39;);&#xA;              },&#xA;            },&#xA;          ],&#xA;        ]&#xA;      );&#xA;&#xA;      fitGraph();&#xA;    }&#xA;&#xA;    // Initial paint&#xA;    paintGraph();&#xA;&#xA;    // Register for theme changes&#xA;    if (!window._contributionGraphPainters) {&#xA;      window._contributionGraphPainters = [];&#xA;    }&#xA;    window._contributionGraphPainters.push(paintGraph);&#xA;&#xA;    if (!window._contributionGraphFitters) {&#xA;      window._contributionGraphFitters = [];&#xA;    }&#xA;    window._contributionGraphFitters.push(fitGraph);&#xA;  })();&#xA;&#xA;  (function() {&#xA;    const graphId = &#39;contribution-graph-11&#39;;&#xA;    const data = [{&#34;date&#34;:&#34;2016-01-01&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2016-10-05&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2016-11-18&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2016-11-22&#34;,&#34;value&#34;:2},{&#34;date&#34;:&#34;2016-12-09&#34;,&#34;value&#34;:1},{&#34;date&#34;:&#34;2016-12-13&#34;,&#34;value&#34;:1}];&#xA;    const options = {date: { start: new Date(&#39;2016-01-01&#39;) }, domain: { type: &#39;year&#39; }, subDomain: { type: &#39;day&#39; }, range: 1};&#xA;    const maxValue = 2;&#xA;    const displayData = data.map(function(point) {&#xA;      const value = point.value || 0;&#xA;      if (options.maxValue &amp;&amp; value &gt; options.maxValue) {&#xA;        return Object.assign({}, point, { value: options.maxValue });&#xA;      }&#xA;      return point;&#xA;    });&#xA;&#xA;    function fitGraph() {&#xA;      const inner = document.getElementById(graphId);&#xA;      if (!inner) return;&#xA;&#xA;      const outer = inner.parentElement;&#xA;      if (!outer) return;&#xA;&#xA;      if (!inner.dataset.baseWidth) {&#xA;        inner.dataset.baseWidth = String(inner.scrollWidth || inner.getBoundingClientRect().width || 0);&#xA;      }&#xA;&#xA;      const baseWidth = Number(inner.dataset.baseWidth) || inner.scrollWidth || inner.getBoundingClientRect().width || 0;&#xA;      const scale = baseWidth &gt; 0 ? Math.min(1, outer.clientWidth / baseWidth) : 1;&#xA;      inner.style.zoom = String(scale);&#xA;    }&#xA;&#xA;    function paintGraph() {&#xA;      // Clear existing graph&#xA;      const container = document.getElementById(graphId);&#xA;      if (!container) return;&#xA;      container.innerHTML = &#39;&#39;;&#xA;      delete container.dataset.baseWidth;&#xA;&#xA;      // Get theme colors from CSS variables&#xA;      const styles = getComputedStyle(document.documentElement);&#xA;      const bgColor = styles.getPropertyValue(&#39;--color-background&#39;).trim();&#xA;      const surfaceColor = styles.getPropertyValue(&#39;--color-surface&#39;).trim();&#xA;      const primaryColor = styles.getPropertyValue(&#39;--color-primary&#39;).trim();&#xA;&#xA;      // Use surface color as base, primary as accent&#xA;      const baseColor = surfaceColor || bgColor || &#39;#ebedf0&#39;;&#xA;      const accentColor = primaryColor || &#39;#216e39&#39;;&#xA;&#xA;      const cal = new CalHeatmap();&#xA;      cal.paint(&#xA;        {&#xA;          itemSelector: &#39;#&#39; + graphId,&#xA;          data: {&#xA;            source: displayData,&#xA;            x: &#39;date&#39;,&#xA;            y: &#39;value&#39;&#xA;          },&#xA;          date: options.date,&#xA;          domain: options.domain || { type: &#39;year&#39; },&#xA;          subDomain: options.subDomain || { type: &#39;day&#39; },&#xA;          range: options.range,&#xA;          scale: {&#xA;            color: {&#xA;              type: &#39;linear&#39;,&#xA;              range: [baseColor, accentColor],&#xA;              domain: [0, maxValue]&#xA;            }&#xA;          }&#xA;        },&#xA;        [&#xA;          [&#xA;            Tooltip,&#xA;            {&#xA;              text: function (date, value, dayjsDate) {&#xA;                const original = data.find(function(point) {&#xA;                  return point.date === dayjsDate.format(&#39;YYYY-MM-DD&#39;);&#xA;                });&#xA;                const originalValue = original ? (original.value || 0) : (value || 0);&#xA;                return (originalValue ? originalValue : &#39;No&#39;) + &#39; posts on &#39; + dayjsDate.format(&#39;MMM D, YYYY&#39;);&#xA;              },&#xA;            },&#xA;          ],&#xA;        ]&#xA;      );&#xA;&#xA;      fitGraph();&#xA;    }&#xA;&#xA;    // Initial paint&#xA;    paintGraph();&#xA;&#xA;    // Register for theme changes&#xA;    if (!window._contributionGraphPainters) {&#xA;      window._contributionGraphPainters = [];&#xA;    }&#xA;    window._contributionGraphPainters.push(paintGraph);&#xA;&#xA;    if (!window._contributionGraphFitters) {&#xA;      window._contributionGraphFitters = [];&#xA;    }&#xA;    window._contributionGraphFitters.push(fitGraph);&#xA;  })();&#xA;&#xA;  // Watch for theme/palette changes and re-paint graphs&#xA;  const observer = new MutationObserver(function(mutations) {&#xA;    mutations.forEach(function(mutation) {&#xA;      if (mutation.attributeName === &#39;data-palette&#39; || mutation.attributeName === &#39;class&#39;) {&#xA;        // Small delay to let CSS variables update&#xA;        setTimeout(function() {&#xA;          if (window._contributionGraphPainters) {&#xA;            window._contributionGraphPainters.forEach(function(paint) {&#xA;              paint();&#xA;            });&#xA;          }&#xA;        }, 50);&#xA;      }&#xA;    });&#xA;  });&#xA;&#xA;  observer.observe(document.documentElement, { attributes: true });&#xA;  observer.observe(document.body, { attributes: true });&#xA;&#xA;  window.addEventListener(&#39;resize&#39;, function() {&#xA;    if (window._contributionGraphFitters) {&#xA;      window._contributionGraphFitters.forEach(function(fit) {&#xA;        fit();&#xA;      });&#xA;    }&#xA;  });&#xA;});&#xA;&lt;/script&gt;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ ublue-os ucore</title>
    <id>https://waylonwalker.com/ublue-os-ucore/</id>
    <updated>2025-01-21T22:22:29Z</updated>
    <published>2025-01-21T22:22:29Z</published>
    <link href="https://waylonwalker.com/ublue-os-ucore/" rel="alternate" type="text/html"></link>
    <summary type="text">ublue-os has done a fantastic job with ucore. Highly recommend taking a look.</summary>
    <content type="html">&lt;p&gt;&lt;a href=&#34;https://github.com/ublue-os&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;ublue-os&lt;/a&gt; has done a fantastic job with &lt;a href=&#34;https://github.com/ublue-os/ucore&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;ucore&lt;/a&gt;. Highly recommend taking a look.&lt;/p&gt;&#xA;&lt;p&gt;An OCI base image of Fedora CoreOS with batteries included&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ ublue-os bazzite</title>
    <id>https://waylonwalker.com/ublue-os-bazzite/</id>
    <updated>2025-01-21T22:22:12Z</updated>
    <published>2025-01-21T22:22:12Z</published>
    <link href="https://waylonwalker.com/ublue-os-bazzite/" rel="alternate" type="text/html"></link>
    <summary type="text">Just starred bazzite by ublue-os. It&#39;s an exciting project with a lot to offer.</summary>
    <content type="html">&lt;p&gt;Just starred &lt;a href=&#34;https://github.com/ublue-os/bazzite&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;bazzite&lt;/a&gt; by &lt;a href=&#34;https://github.com/ublue-os&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;ublue-os&lt;/a&gt;. It’s an exciting project with a lot to offer.&lt;/p&gt;&#xA;&lt;p&gt;Bazzite is a cloud native image built upon Fedora Atomic Desktops that brings the best of Linux gaming to all of your devices - including your favorite handheld.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 poolers.postgresql.cnpg.io CRD metadata.annotations Too long ·...</title>
    <id>https://waylonwalker.com/thought-538/</id>
    <updated>2025-01-21T17:06:21Z</updated>
    <published>2025-01-21T17:06:21Z</published>
    <link href="https://waylonwalker.com/thought-538/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://github.com/cloudnative-pg/charts/issues/325</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://github.com/cloudnative-pg/charts/issues/325&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://opengraph.githubassets.com/42368c5206f375a8cd5aa7b6fd8a9f0832a56704f689e76a81e392bf8e484f6a/cloudnative-pg/charts/issues/325&#34; alt=&#34;poolers.postgresql.cnpg.io CRD metadata.annotations Too long · Issue #325 · cloudnative-pg/charts — Unable to deploy helm chart using ArgoCD. Getting following error Failed sync attempt to : one or more objects failed to apply, reason: CustomResourceDefinition.apiextensions.k8s.io &amp;#34;poolers.postgr...&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: poolers.postgresql.cnpg.io CRD metadata.annotations Too long · Issue #325 · cloudnative-pg/charts — Unable to deploy helm chart using ArgoCD. Getting following error Failed sync attempt to : one or more objects failed to apply, reason: CustomResourceDefinition.apiextensions.k8s.io &amp;#34;poolers.postgr...&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;poolers.postgresql.cnpg.io CRD metadata.annotations Too long · Issue #325 · cloudnative-pg/charts&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Unable to deploy helm chart using ArgoCD. Getting following error Failed sync attempt to : one or more objects failed to apply, reason: CustomResourceDefinition.apiextensions.k8s.io &amp;#34;poolers.postgr...&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;GitHub · github.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;I’ve never seen or needed to use a serversideapply in kubernetes before, but I ran into this same issue in my k3s &lt;a href=&#34;/homelab/&#34; class=&#34;glossary-term&#34; title=&#34;A place to self host applications. For me this is primarily self built web applications, and applications for sharing files with my family. Techno Tim has a...&#34;&gt;homelab&lt;/a&gt; while installing cloudnative-pg.&lt;/p&gt;&#xA;&lt;p&gt;You can do it with argo&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nt&#34;&gt;apiVersion&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;l&#34;&gt;argoproj.io/v1alpha1&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nt&#34;&gt;kind&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;l&#34;&gt;Application&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nt&#34;&gt;spec&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nt&#34;&gt;syncPolicy&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nt&#34;&gt;syncOptions&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;- &lt;span class=&#34;l&#34;&gt;ServerSideApply=true&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;and you can do it with kubectl&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;kubectl apply --server-side --force-conflicts -f cnpg-1.25.0.yaml&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>I fixed lists in my blog</title>
    <id>https://waylonwalker.com/i-fixed-lists-in-my-blog/</id>
    <updated>2025-01-21T16:08:01Z</updated>
    <published>2025-01-21T16:08:01Z</published>
    <link href="https://waylonwalker.com/i-fixed-lists-in-my-blog/" rel="alternate" type="text/html"></link>
    <summary type="text">A small improvement to my blog today. I was checking out my now post and noticed that lists have left padding but no discs or numbers. I popped open my added...</summary>
    <content type="html">&lt;p&gt;A small improvement to my blog today. I was checking out my &lt;a href=&#34;/now/&#34; class=&#34;wikilink&#34; data-title=&#34;/now&#34; data-description=&#34;This page is meant to be simple view into what is happening in my life right now. Inspired by @NowNowNow. and Derek Sivers.&#34; data-date=&#34;2025-01-12&#34; data-preview=&#34;This page is meant to be simple view into what is happening in my life right now. Inspired by @NowNowNow. and Derek Sivers.&#34;&gt;/now&lt;/a&gt; post and&#xA;noticed that lists have left padding but no discs or numbers.  I popped open my&#xA;&lt;code&gt;tailwind/app.css&lt;/code&gt; added these lines and rebuilt.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;#&lt;/span&gt;&lt;span class=&#34;nn&#34;&gt;post-body&lt;/span&gt; &lt;span class=&#34;nt&#34;&gt;li&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  &lt;span class=&#34;err&#34;&gt;@apply&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;list-disc&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;}&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;#&lt;/span&gt;&lt;span class=&#34;nn&#34;&gt;post-body&lt;/span&gt; &lt;span class=&#34;nt&#34;&gt;ol&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  &lt;span class=&#34;err&#34;&gt;@apply&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;list-decimal&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;}&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;And rebuild, which I actually do with &lt;a href=&#34;/casey-just/&#34; class=&#34;wikilink&#34; data-title=&#34;⭐ casey just&#34; data-description=&#34;Just starred just by casey. It&amp;#39;s an exciting project with a lot to offer.&#34; data-date=&#34;2023-10-22&#34; data-preview=&#34;Just starred just by casey. It&amp;#39;s an exciting project with a lot to offer.&#34;&gt;⭐ casey just&lt;/a&gt;, but showing the&#xA;command here for clarity.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;npx tailwindcss --input tailwind/app.css --output static/app-39.css&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;h2 id=&#34;why-the-applies&#34;&gt;WHY the applies &lt;a href=&#34;#why-the-applies&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p class=&#34;bg-blue-900 border-r-8 border-black rounded-xl max-w-xl p-6 font-bold&#34;&gt;&lt;/p&gt;&#xA;&lt;p class=&#34;bg-green-900 border-l-8 border-black rounded-xl max-w-xl p-6 ml-auto mr-0 font-bold&#34;&gt;&lt;/p&gt;&#xA;&lt;p class=&#34;bg-blue-900 border-r-8 border-black rounded-xl max-w-xl p-6 font-bold&#34;&gt;&lt;/p&gt;&#xA;&lt;p class=&#34;bg-green-900 border-l-8 border-black rounded-xl max-w-xl p-6 ml-auto mr-0 font-bold&#34;&gt;&lt;/p&gt;&#xA;&lt;h2 id=&#34;before&#34;&gt;Before &lt;a href=&#34;#before&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/5c48f763-5ef6-49b0-9e8f-5167ab046f05.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;image&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/5c48f763-5ef6-49b0-9e8f-5167ab046f05.webp&#34; alt=&#34;image&#34;/ data-glightbox=&#34;description: image&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;after&#34;&gt;After &lt;a href=&#34;#after&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/0cf1c5d9-0948-444f-9a6c-387d22b9db43.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;image&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/0cf1c5d9-0948-444f-9a6c-387d22b9db43.webp&#34; alt=&#34;image&#34;/ data-glightbox=&#34;description: image&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>setting up nvim-manager starship prompt</title>
    <id>https://waylonwalker.com/setting-up-nvim-manager-starship-prompt/</id>
    <updated>2025-01-21T16:03:46Z</updated>
    <published>2025-01-21T16:03:46Z</published>
    <link href="https://waylonwalker.com/setting-up-nvim-manager-starship-prompt/" rel="alternate" type="text/html"></link>
    <summary type="text">I built out a tool for myself to manage my nvim configuration, and I wanted to quickly see which one I am running in my starship prompt. Here&#39;s the config I...</summary>
    <content type="html">&lt;p&gt;I built out a tool for myself to manage my nvim configuration, and I wanted to&#xA;quickly see which one I am running in my starship prompt. Here’s the config I&#xA;ended up with.  It warns if the &lt;code&gt;NVIM_APPNAME&lt;/code&gt; environment variable is not set, and&#xA;it shows which nvim I am using if it is set.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;nx&#34;&gt;custom&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nx&#34;&gt;nvim-manager-system&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nx&#34;&gt;when&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;s1&#34;&gt;&amp;#39;[[ ! -n &amp;#34;${NVIM_APPNAME}&amp;#34; ]]&amp;#39;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nx&#34;&gt;style&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;bold yellow&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nx&#34;&gt;symbol&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;s1&#34;&gt;&amp;#39;[ ](fg:#15AABF)&amp;#39;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nx&#34;&gt;format&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;s1&#34;&gt;&amp;#39;$symbol[USING SYSTEM NVIM]($style)&amp;#39;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;nx&#34;&gt;env_var&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nx&#34;&gt;NVIM_APPNAME&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nx&#34;&gt;style&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;green&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nx&#34;&gt;symbol&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;s1&#34;&gt;&amp;#39;[ ](fg:#15AABF)&amp;#39;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nx&#34;&gt;format&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;s1&#34;&gt;&amp;#39;[$symbol${env_value}]($style)&amp;#39;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nx&#34;&gt;variable&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;NVIM_APPNAME&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ moonbeam-nyc snorlax</title>
    <id>https://waylonwalker.com/moonbeam-nyc-snorlax/</id>
    <updated>2025-01-21T03:19:48Z</updated>
    <published>2025-01-21T03:19:48Z</published>
    <link href="https://waylonwalker.com/moonbeam-nyc-snorlax/" rel="alternate" type="text/html"></link>
    <summary type="text">snorlax by moonbeam-nyc is a game-changer in its space. Excited to see how it evolves.</summary>
    <content type="html">&lt;p&gt;&lt;a href=&#34;https://github.com/moonbeam-nyc/snorlax&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;snorlax&lt;/a&gt; by &lt;a href=&#34;https://github.com/moonbeam-nyc&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;moonbeam-nyc&lt;/a&gt; is a game-changer in its space. Excited to see how it evolves.&lt;/p&gt;&#xA;&lt;p&gt;wake and sleep Kubernetes deployments on a schedule&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ kubernetes-sigs headlamp</title>
    <id>https://waylonwalker.com/kubernetes-sigs-headlamp/</id>
    <updated>2025-01-21T03:13:58Z</updated>
    <published>2025-01-21T03:13:58Z</published>
    <link href="https://waylonwalker.com/kubernetes-sigs-headlamp/" rel="alternate" type="text/html"></link>
    <summary type="text">I came across headlamp from kubernetes-sigs, and it&#39;s packed with great features and ideas.</summary>
    <content type="html">&lt;p&gt;I came across &lt;a href=&#34;https://github.com/kubernetes-sigs/headlamp&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;headlamp&lt;/a&gt; from &lt;a href=&#34;https://github.com/kubernetes-sigs&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;kubernetes-sigs&lt;/a&gt;, and it’s packed with great features and ideas.&lt;/p&gt;&#xA;&lt;p&gt;A Kubernetes web UI that is fully-featured, user-friendly and extensible&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ headlamp-k8s headlamp</title>
    <id>https://waylonwalker.com/headlamp-k8s-headlamp/</id>
    <updated>2025-01-21T03:13:58Z</updated>
    <published>2025-01-21T03:13:58Z</published>
    <link href="https://waylonwalker.com/headlamp-k8s-headlamp/" rel="alternate" type="text/html"></link>
    <summary type="text">Just starred headlamp by headlamp-k8s. It&#39;s an exciting project with a lot to offer.</summary>
    <content type="html">&lt;p&gt;Just starred &lt;a href=&#34;https://github.com/headlamp-k8s/headlamp&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;headlamp&lt;/a&gt; by &lt;a href=&#34;https://github.com/headlamp-k8s&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;headlamp-k8s&lt;/a&gt;. It’s an exciting project with a lot to offer.&lt;/p&gt;&#xA;&lt;p&gt;A Kubernetes web UI that is fully-featured, user-friendly and extensible&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ gitui-org gitui</title>
    <id>https://waylonwalker.com/gitui-org-gitui/</id>
    <updated>2025-01-21T02:43:48Z</updated>
    <published>2025-01-21T02:43:48Z</published>
    <link href="https://waylonwalker.com/gitui-org-gitui/" rel="alternate" type="text/html"></link>
    <summary type="text">If you&#39;re into interesting projects, don&#39;t miss out on gitui, created by gitui-org.</summary>
    <content type="html">&lt;p&gt;If you’re into interesting projects, don’t miss out on &lt;a href=&#34;https://github.com/gitui-org/gitui&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;gitui&lt;/a&gt;, created by &lt;a href=&#34;https://github.com/gitui-org&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;gitui-org&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Blazing 💥 fast terminal-ui for &lt;a href=&#34;/glossary/git/&#34; class=&#34;glossary-term&#34; title=&#34;Git is a version control system for tracking changes in source code during software development. In the beginning there were many, some were licensed. As...&#34;&gt;git&lt;/a&gt; written in rust 🦀&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ extrawurst gitui</title>
    <id>https://waylonwalker.com/extrawurst-gitui/</id>
    <updated>2025-01-21T02:43:48Z</updated>
    <published>2025-01-21T02:43:48Z</published>
    <link href="https://waylonwalker.com/extrawurst-gitui/" rel="alternate" type="text/html"></link>
    <summary type="text">The work on gitui by extrawurst.</summary>
    <content type="html">&lt;p&gt;The work on &lt;a href=&#34;https://github.com/extrawurst/gitui&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;gitui&lt;/a&gt; by &lt;a href=&#34;https://github.com/extrawurst&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;extrawurst&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Blazing 💥 fast terminal-ui for &lt;a href=&#34;/glossary/git/&#34; class=&#34;glossary-term&#34; title=&#34;Git is a version control system for tracking changes in source code during software development. In the beginning there were many, some were licensed. As...&#34;&gt;git&lt;/a&gt; written in rust 🦀&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Nerd Fonts - Iconic font aggregator, glyphs/icons collection, ...</title>
    <id>https://waylonwalker.com/thought-537/</id>
    <updated>2025-01-21T01:04:01Z</updated>
    <published>2025-01-21T01:04:01Z</published>
    <link href="https://waylonwalker.com/thought-537/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.nerdfonts.com/cheat-sheet</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://www.nerdfonts.com/cheat-sheet&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://www.nerdfonts.com/assets/img/sankey-glyphs-combined-diagram.png&#34; alt=&#34;Nerd Fonts - Iconic font aggregator, glyphs/icons collection, &amp;amp; fonts patcher — Iconic font aggregator, collection, &amp;amp; patcher: 9,000+ glyph/icons, 60+ patched fonts: Hack, Source Code Pro, more. Popular glyph collections: Font Awesome, Octicons, Material Design Icons, and more&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: Nerd Fonts - Iconic font aggregator, glyphs/icons collection, &amp;amp; fonts patcher — Iconic font aggregator, collection, &amp;amp; patcher: 9,000+ glyph/icons, 60+ patched fonts: Hack, Source Code Pro, more. Popular glyph collections: Font Awesome, Octicons, Material Design Icons, and more&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Nerd Fonts - Iconic font aggregator, glyphs/icons collection, &amp;amp; fonts patcher&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Iconic font aggregator, collection, &amp;amp; patcher: 9,000+ glyph/icons, 60+ patched fonts: Hack, Source Code Pro, more. Popular glyph collections: Font Awesome, Octicons, Material Design Icons, and more&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;Nerd Fonts · nerdfonts.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Nerdfont cheatsheet is a fantastic way to copy paste icons into your shell.  I just used it to juice up my starship prompt with my current &lt;code&gt;$NVIM_APPNAME&lt;/code&gt; managed by &lt;a href=&#34;/nvim-manager/&#34; class=&#34;wikilink&#34; data-title=&#34;nvim-manager&#34; data-description=&#34;I recently built a cli application as a nearly-one-shot-app called nvim-manager. It manages your nvim dotfiles install.&#34; data-date=&#34;2025-01-12&#34; data-preview=&#34;I recently built a cli application as a nearly-one-shot-app called nvim-manager. It manages your nvim dotfiles install.&#34;&gt;nvim-manager&lt;/a&gt;&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/3635351b-c006-4cff-8011-85c3b14bfc8f.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;image&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/3635351b-c006-4cff-8011-85c3b14bfc8f.webp&#34; alt=&#34;image&#34;/ data-glightbox=&#34;description: image&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>emoji in headless chrome in docker</title>
    <id>https://waylonwalker.com/emoji-in-headless-chrome-in-docker/</id>
    <updated>2025-01-20T13:55:37Z</updated>
    <published>2025-01-20T13:55:37Z</published>
    <link href="https://waylonwalker.com/emoji-in-headless-chrome-in-docker/" rel="alternate" type="text/html"></link>
    <summary type="text">I recently noticed that my og images were missing emoji. They were taken using headless chrome in a container. I fixed it by adding an emoji font in the...</summary>
    <content type="html">&lt;p&gt;I recently noticed that my &lt;a href=&#34;/og/&#34; class=&#34;glossary-term&#34; title=&#34;OG is short for open graph, a set of standard meta tags that are used for social media sharing. This is what tells other websites how to describe and display...&#34;&gt;og&lt;/a&gt; images were missing emoji.  They were taken using&#xA;headless chrome in a container.  I fixed it by adding an emoji font in the&#xA;containerfile / dockerfile.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;RUN&lt;/span&gt; apt-get update &lt;span class=&#34;o&#34;&gt;&amp;amp;&amp;amp;&lt;/span&gt; apt-get install -y &lt;span class=&#34;se&#34;&gt;\&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;c1&#34;&gt;# Add fonts with emoji support&lt;/span&gt;&lt;span class=&#34;err&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    fonts-noto-color-emoji &lt;span class=&#34;se&#34;&gt;\&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;o&#34;&gt;&amp;amp;&amp;amp;&lt;/span&gt; rm -rf /var/lib/apt/lists/*&lt;span class=&#34;err&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;h2 id=&#34;before&#34;&gt;Before &lt;a href=&#34;#before&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;Here’s what they were looking like with broken emoji fonts.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/6e9060f2-0e15-4f22-88b6-b6ec5ddb34de.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;image&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/6e9060f2-0e15-4f22-88b6-b6ec5ddb34de.webp&#34; alt=&#34;image&#34;/ data-glightbox=&#34;description: image&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;after&#34;&gt;After &lt;a href=&#34;#after&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;And now with the fixed emoji font.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/8ed5e338-50c2-4130-8cce-549ecc802f01.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;image&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/8ed5e338-50c2-4130-8cce-549ecc802f01.webp&#34; alt=&#34;image&#34;/ data-glightbox=&#34;description: image&#34;&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;I put thought bubbles on my thoughts posts and stars on my github stars posts&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ one2nc cloudlens</title>
    <id>https://waylonwalker.com/one2nc-cloudlens/</id>
    <updated>2025-01-20T00:21:58Z</updated>
    <published>2025-01-20T00:21:58Z</published>
    <link href="https://waylonwalker.com/one2nc-cloudlens/" rel="alternate" type="text/html"></link>
    <summary type="text">one2nc has done a fantastic job with cloudlens. Highly recommend taking a look.</summary>
    <content type="html">&lt;p&gt;&lt;a href=&#34;https://github.com/one2nc&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;one2nc&lt;/a&gt; has done a fantastic job with &lt;a href=&#34;https://github.com/one2nc/cloudlens&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;cloudlens&lt;/a&gt;. Highly recommend taking a look.&lt;/p&gt;&#xA;&lt;p&gt;k9s like CLI for AWS and GCP&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ dlvhdr gh-dash</title>
    <id>https://waylonwalker.com/dlvhdr-gh-dash/</id>
    <updated>2025-01-20T00:21:53Z</updated>
    <published>2025-01-20T00:21:53Z</published>
    <link href="https://waylonwalker.com/dlvhdr-gh-dash/" rel="alternate" type="text/html"></link>
    <summary type="text">I like dlvhdr&#39;s project gh-dash.</summary>
    <content type="html">&lt;p&gt;I like &lt;a href=&#34;https://github.com/dlvhdr&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;dlvhdr’s&lt;/a&gt; project &lt;a href=&#34;https://github.com/dlvhdr/gh-dash&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;gh-dash&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;A beautiful CLI dashboard for GitHub 🚀&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ doitintl kube-no-trouble</title>
    <id>https://waylonwalker.com/doitintl-kube-no-trouble/</id>
    <updated>2025-01-19T23:10:54Z</updated>
    <published>2025-01-19T23:10:54Z</published>
    <link href="https://waylonwalker.com/doitintl-kube-no-trouble/" rel="alternate" type="text/html"></link>
    <summary type="text">I recently discovered kube-no-trouble by doitintl, and it&#39;s truly impressive.</summary>
    <content type="html">&lt;p&gt;I recently discovered &lt;a href=&#34;https://github.com/doitintl/kube-no-trouble&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;kube-no-trouble&lt;/a&gt; by &lt;a href=&#34;https://github.com/doitintl&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;doitintl&lt;/a&gt;, and it’s truly impressive.&lt;/p&gt;&#xA;&lt;p&gt;Easily check your clusters for use of deprecated APIs&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Manufacturer Recertified Drives | Enterprise Grade — ServerPar...</title>
    <id>https://waylonwalker.com/thought-536/</id>
    <updated>2025-01-19T19:11:47Z</updated>
    <published>2025-01-19T19:11:47Z</published>
    <link href="https://waylonwalker.com/thought-536/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://serverpartdeals.com/collections/manufacturer-recertified-drives</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://serverpartdeals.com/collections/manufacturer-recertified-drives&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://serverpartdeals.com/cdn/shop/files/SPD_Logo_-_2000x2000_88baf93f-3981-4a53-88bc-df53f34c620e_1200x1200.png?v=1629317788&#34; alt=&#34;Manufacturer Recertified Drives | Enterprise Grade — Manufacturer Recertified enterprise drives work and look like new. Rebuilt by the manufacturer and quality tested to ensure they function as new, our recertified drives save on cost. Shop now!&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: Manufacturer Recertified Drives | Enterprise Grade — Manufacturer Recertified enterprise drives work and look like new. Rebuilt by the manufacturer and quality tested to ensure they function as new, our recertified drives save on cost. Shop now!&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Manufacturer Recertified Drives | Enterprise Grade&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Manufacturer Recertified enterprise drives work and look like new. Rebuilt by the manufacturer and quality tested to ensure they function as new, our recertified drives save on cost. Shop now!&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;ServerPartDeals.com · serverpartdeals.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;For my next drive upgrade in my &lt;a href=&#34;/homelab/&#34; class=&#34;glossary-term&#34; title=&#34;A place to self host applications. For me this is primarily self built web applications, and applications for sharing files with my family. Techno Tim has a...&#34;&gt;homelab&lt;/a&gt; I am gong to be using one of these factory recertified drives from serverpartdeals.com.  Found them on an LTT video awhile back.  They are some lightly used and recertified, fully burnt in drives.&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;Shop for drives that are certified once again by the manufacturer to work like new. Factory ReCertified drives are cost-effective alternatives compared to factory-sealed new counter parts. Additionally, unlike in mass production, the re-certification process involves closer attention to the overall operation of the hardware so that the re-certification will not have to happen a 2nd time&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Releases · bootandy/dust</title>
    <id>https://waylonwalker.com/thought-535/</id>
    <updated>2025-01-19T18:58:42Z</updated>
    <published>2025-01-19T18:58:42Z</published>
    <link href="https://waylonwalker.com/thought-535/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://github.com/bootandy/dust?tab=readme-ov-file</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://github.com/bootandy/dust?tab=readme-ov-file&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://opengraph.githubassets.com/fc5bbe9497a0dea0c7099cbd9db1ec29af7044b435c75cf7ec8796344ead0463/bootandy/dust&#34; alt=&#34;GitHub - bootandy/dust: A more intuitive version of du in rust — A more intuitive version of du in rust. Contribute to bootandy/dust development by creating an account on GitHub.&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: GitHub - bootandy/dust: A more intuitive version of du in rust — A more intuitive version of du in rust. Contribute to bootandy/dust development by creating an account on GitHub.&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;GitHub - bootandy/dust: A more intuitive version of du in rust&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;A more intuitive version of du in rust. Contribute to bootandy/dust development by creating an account on GitHub.&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;GitHub · github.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;dust is one of my favorite rust rewrite tools.  Its so useful for narrowing down file system bloat and cleaning up some disk space on your nearly full disks.  It runs right in your terminal and gives you a nice bar graph on the top directories in use.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/31b206fd-d508-451e-ba96-860c5d8110d1.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;image&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/31b206fd-d508-451e-ba96-860c5d8110d1.webp&#34; alt=&#34;image&#34;/ data-glightbox=&#34;description: image&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ bootandy dust</title>
    <id>https://waylonwalker.com/bootandy-dust/</id>
    <updated>2025-01-19T18:56:38Z</updated>
    <published>2025-01-19T18:56:38Z</published>
    <link href="https://waylonwalker.com/bootandy-dust/" rel="alternate" type="text/html"></link>
    <summary type="text">Check out dust by bootandy. It&#39;s a well-crafted project with great potential.</summary>
    <content type="html">&lt;p&gt;Check out &lt;a href=&#34;https://github.com/bootandy/dust&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;dust&lt;/a&gt; by &lt;a href=&#34;https://github.com/bootandy&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;bootandy&lt;/a&gt;. It’s a well-crafted project with great potential.&lt;/p&gt;&#xA;&lt;p&gt;A more intuitive version of du in rust&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Keycloak</title>
    <id>https://waylonwalker.com/thought-534/</id>
    <updated>2025-01-19T05:34:32Z</updated>
    <published>2025-01-19T05:34:32Z</published>
    <link href="https://waylonwalker.com/thought-534/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.keycloak.org/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://www.keycloak.org/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://www.keycloak.org/preview/index.png&#34; alt=&#34;Keycloak — Keycloak - the open source identity and access management solution. Add single-sign-on and authentication to applications and secure services with minimum effort.&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: Keycloak — Keycloak - the open source identity and access management solution. Add single-sign-on and authentication to applications and secure services with minimum effort.&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Keycloak&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Keycloak - the open source identity and access management solution. Add single-sign-on and authentication to applications and secure services with minimum effort.&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;Keycloak · keycloak.org&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Keycloak looks like an interesting way to setup sso.  It’s part of the cncf so it’s got a good backing.  I want something better for argo workflows and this might be it.  I’m curious what else I can tie into it.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ nvim-mini mini.ai</title>
    <id>https://waylonwalker.com/nvim-mini-mini-ai/</id>
    <updated>2025-01-18T17:08:45Z</updated>
    <published>2025-01-18T17:08:45Z</published>
    <link href="https://waylonwalker.com/nvim-mini-mini-ai/" rel="alternate" type="text/html"></link>
    <summary type="text">I&#39;m impressed by mini.ai from nvim-mini.</summary>
    <content type="html">&lt;p&gt;I’m impressed by &lt;a href=&#34;https://github.com/nvim-mini/mini.ai&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;mini.ai&lt;/a&gt; from &lt;a href=&#34;https://github.com/nvim-mini&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;nvim-mini&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Neovim Lua plugin to extend and create &lt;code&gt;a&lt;/code&gt;/&lt;code&gt;i&lt;/code&gt; textobjects. Part of ‘mini.nvim’ library.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ echasnovski mini.ai</title>
    <id>https://waylonwalker.com/echasnovski-mini-ai/</id>
    <updated>2025-01-18T17:08:45Z</updated>
    <published>2025-01-18T17:08:45Z</published>
    <link href="https://waylonwalker.com/echasnovski-mini-ai/" rel="alternate" type="text/html"></link>
    <summary type="text">Check out echasnovski and their project mini.ai.</summary>
    <content type="html">&lt;p&gt;Check out &lt;a href=&#34;https://github.com/echasnovski&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;echasnovski&lt;/a&gt; and their project &lt;a href=&#34;https://github.com/echasnovski/mini.ai&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;mini.ai&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Neovim Lua plugin to extend and create &lt;code&gt;a&lt;/code&gt;/&lt;code&gt;i&lt;/code&gt; textobjects. Part of ‘mini.nvim’ library.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 The Worst Thing You Can Do For Your Career - YouTube</title>
    <id>https://waylonwalker.com/thought-533/</id>
    <updated>2025-01-17T14:54:14Z</updated>
    <published>2025-01-17T14:54:14Z</published>
    <link href="https://waylonwalker.com/thought-533/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/watch?v=CVG6f1N0VT8</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;CVG6f1N0VT8&#34; title=&#34;The Worst Thing You Can Do For Your Career&#34; playlabel=&#34;Play: The Worst Thing You Can Do For Your Career&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Don’t stop learning!  Stop trying because you have a doomer outlook on ai, llms, industry and think they are taking over.  If you have no hope for the future, if you stop now you are cementing in that you will be no good and the ai will be better.  Many, maybe most of us in this industry go here by hard work, long nights of learning, trying to solve problems that our job had.  If llms  take over then the world is going to be a whole lot different, it will be a world you cannot predict or plan for.  For now put your head down and succeed in the world we have today.&lt;/p&gt;&#xA;&lt;p&gt;TEEJ has some great thoughts on this whole sentiment, put this on for you morning walk or whatever you do.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ swark-io swark</title>
    <id>https://waylonwalker.com/swark-io-swark/</id>
    <updated>2025-01-17T03:20:26Z</updated>
    <published>2025-01-17T03:20:26Z</published>
    <link href="https://waylonwalker.com/swark-io-swark/" rel="alternate" type="text/html"></link>
    <summary type="text">The work on swark by swark-io.</summary>
    <content type="html">&lt;p&gt;The work on &lt;a href=&#34;https://github.com/swark-io/swark&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;swark&lt;/a&gt; by &lt;a href=&#34;https://github.com/swark-io&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;swark-io&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Create architecture diagrams from code automatically using large language models (LLMs).&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>a night of rounds</title>
    <id>https://waylonwalker.com/a-night-of-rounds/</id>
    <updated>2025-01-16T21:11:56Z</updated>
    <published>2025-01-16T21:11:56Z</published>
    <link href="https://waylonwalker.com/a-night-of-rounds/" rel="alternate" type="text/html"></link>
    <summary type="text">Tonight my son and I played rounds, I pulled clips of all the final rounds of each set of rounds. We play hardly any games with guns in them, this is one of...</summary>
    <content type="html">&lt;p&gt;Tonight my son and I played rounds, I pulled clips of all the final rounds of&#xA;each set of rounds.  We play hardly any games with guns in them, this is one of&#xA;the few exceptions, it feels quite whimsical, fun, and strategic, and not at&#xA;all realistic or first person.  The strategy part really brings me back to the&#xA;fps games I would play with friends in my teens.&lt;/p&gt;&#xA;&lt;h2 id=&#34;round-1---orange&#34;&gt;Round 1 - Orange &lt;a href=&#34;#round-1---orange&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;I thought I had him on this one.  I had this rare power up that allows me to&#xA;shot through walls.  It came down to the very last round and he had too much&#xA;firepowerfor me.&lt;/p&gt;&#xA;&lt;video autoplay=&#34;&#34; controls=&#34;&#34; loop=&#34;true&#34; muted=&#34;&#34; playsinline=&#34;&#34; width=&#34;100%&#34; class=&#34;rounded-xl border-pink-900 border-2&#34;&gt;&#xA;     &lt;source src=&#34;https://dropper.waylonwalker.com/api/file/5863caea-da25-45e1-9a4d-111c6e4408a3.mp4&#34; type=&#34;video/mp4&#34;/&gt;&#xA;     Sorry, your browser doesn&amp;#39;t support embedded videos.&#xA;&lt;/video&gt;&#xA;&lt;h2 id=&#34;round-2---blue&#34;&gt;Round 2 - Blue &lt;a href=&#34;#round-2---blue&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;The final round of round 2 was Super fast.  I felt like I nerfed my homing&#xA;power up by adding fastball to it and it didn’t really home in anymore.  What&#xA;made it so quick, I think he had glass cannon and I laid down two well placed&#xA;shots.&lt;/p&gt;&#xA;&lt;video autoplay=&#34;&#34; controls=&#34;&#34; loop=&#34;true&#34; muted=&#34;&#34; playsinline=&#34;&#34; width=&#34;100%&#34; class=&#34;rounded-xl border-pink-900 border-2&#34;&gt;&#xA;     &lt;source src=&#34;https://dropper.waylonwalker.com/api/file/453553d6-802d-4b76-acb1-40300922b655.mp4&#34; type=&#34;video/mp4&#34;/&gt;&#xA;     Sorry, your browser doesn&amp;#39;t support embedded videos.&#xA;&lt;/video&gt;&#xA;&lt;h2 id=&#34;round-3---orange&#34;&gt;Round 3 - Orange &lt;a href=&#34;#round-3---orange&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;Round three he got some really good cards, but too much firepower and stacking&#xA;bouncy and ricochet made it too much to control and he friendly fired both&#xA;rounds.&lt;/p&gt;&#xA;&lt;video autoplay=&#34;&#34; controls=&#34;&#34; loop=&#34;true&#34; muted=&#34;&#34; playsinline=&#34;&#34; width=&#34;100%&#34; class=&#34;rounded-xl border-pink-900 border-2&#34;&gt;&#xA;     &lt;source src=&#34;https://dropper.waylonwalker.com/api/file/1ad4422e-1172-4218-bf1c-7bb0fa69f809.mp4&#34; type=&#34;video/mp4&#34;/&gt;&#xA;     Sorry, your browser doesn&amp;#39;t support embedded videos.&#xA;&lt;/video&gt;&#xA;&lt;h2 id=&#34;round-4---blue&#34;&gt;Round 4 - Blue &lt;a href=&#34;#round-4---blue&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;Round 4 I stacked up radiance and saw and just went for it.  Radiance emits the&#xA;power of the sun while reloading, so I went in guns blazin, pulled the shield&#xA;for saw and ran at him.&lt;/p&gt;&#xA;&lt;video autoplay=&#34;&#34; controls=&#34;&#34; loop=&#34;true&#34; muted=&#34;&#34; playsinline=&#34;&#34; width=&#34;100%&#34; class=&#34;rounded-xl border-pink-900 border-2&#34;&gt;&#xA;     &lt;source src=&#34;https://dropper.waylonwalker.com/api/file/dc5be9d9-b365-467e-9761-ab2767d85621.mp4&#34; type=&#34;video/mp4&#34;/&gt;&#xA;     Sorry, your browser doesn&amp;#39;t support embedded videos.&#xA;&lt;/video&gt;&#xA;&lt;h2 id=&#34;round-5&#34;&gt;Round 5 &lt;a href=&#34;#round-5&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;Round 5 I stacked up a multi shot, Big bullet, and timed explosion.  I didn’t&#xA;let off the firepower and there was no chance.&lt;/p&gt;&#xA;&lt;video autoplay=&#34;&#34; controls=&#34;&#34; loop=&#34;true&#34; muted=&#34;&#34; playsinline=&#34;&#34; width=&#34;100%&#34; class=&#34;rounded-xl border-pink-900 border-2&#34;&gt;&#xA;     &lt;source src=&#34;https://dropper.waylonwalker.com/api/file/72c6394e-77c6-4f83-9f06-c81b339277c5.mp4&#34; type=&#34;video/mp4&#34;/&gt;&#xA;     Sorry, your browser doesn&amp;#39;t support embedded videos.&#xA;&lt;/video&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>wondercraft session one</title>
    <id>https://waylonwalker.com/wondercraft-session-one/</id>
    <updated>2025-01-13T15:06:46Z</updated>
    <published>2025-01-13T15:06:46Z</published>
    <link href="https://waylonwalker.com/wondercraft-session-one/" rel="alternate" type="text/html"></link>
    <summary type="text">My son and I are starting a new Minecraft server today called wondercraft.</summary>
    <content type="html">&lt;p&gt;My son and I are starting a new Minecraft server today called wondercraft.&lt;/p&gt;&#xA;&lt;h2 id=&#34;setup&#34;&gt;setup &lt;a href=&#34;#setup&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;We are running a few mods on this server notably FTB Ultimine for less grindy&#xA;resource gathering, Sodium for shaders, and Universal Shops.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/730b4480-6356-4ad6-aecc-4b4661603ee6.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;image&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/730b4480-6356-4ad6-aecc-4b4661603ee6.webp&#34; alt=&#34;image&#34;/ data-glightbox=&#34;description: image&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;p&gt;We are runninng on Minecraft 1.20.1, I &lt;em&gt;think&lt;/em&gt; this is because it was the&#xA;latest supported by Universal Shops, its at least one major release old at this&#xA;point.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/66550abc-060c-47b2-830f-be7355ad7120.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;image&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/66550abc-060c-47b2-830f-be7355ad7120.webp&#34; alt=&#34;image&#34;/ data-glightbox=&#34;description: image&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;p&gt;I grabbed a few shaders, the ones that you see in this post are rethinking&#xA;voxels.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/3d6ab456-64dd-4760-a27e-02c2326ea36b.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;image&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/3d6ab456-64dd-4760-a27e-02c2326ea36b.webp&#34; alt=&#34;image&#34;/ data-glightbox=&#34;description: image&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;spawn&#34;&gt;spawn &lt;a href=&#34;#spawn&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;We initially spawned in a plains biome near an acacia and forest biome.  We&#xA;ended up going straight for the forest, only coming back for some sheep and&#xA;wheat seeds.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/2cb49488-0e5f-44f4-b89e-dc5eaa8bf077.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;image&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/2cb49488-0e5f-44f4-b89e-dc5eaa8bf077.webp&#34; alt=&#34;image&#34;/ data-glightbox=&#34;description: image&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;night-one-zombie-fight&#34;&gt;Night one Zombie fight &lt;a href=&#34;#night-one-zombie-fight&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;On the first night we had the obligitory zombie fight before getting beds and bases set.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/28b09b9c-6dd9-4437-9330-bf0e52401b6d.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;image&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/28b09b9c-6dd9-4437-9330-bf0e52401b6d.webp&#34; alt=&#34;image&#34;/ data-glightbox=&#34;description: image&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;salmon-wrangler&#34;&gt;Salmon Wrangler &lt;a href=&#34;#salmon-wrangler&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;I was the designated food provider.  I setup a small wheat farm with about 64&#xA;seeds, then went out to hunt down some salmon for the immediate food need.  I&#xA;ended up with about a stack of salmon at the end of the session.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/387ae50c-3048-4ee6-be93-beaf9369efaa.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;387ae50c-3048-4ee6-be93-beaf9369efaa.webp&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/387ae50c-3048-4ee6-be93-beaf9369efaa.webp&#34; alt=&#34;387ae50c-3048-4ee6-be93-beaf9369efaa.webp&#34;/ data-glightbox=&#34;description: 387ae50c-3048-4ee6-be93-beaf9369efaa.webp&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;setting-up-shop&#34;&gt;Setting up Shop &lt;a href=&#34;#setting-up-shop&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;So as mentioned above we are running a mod for shops called universal shops.&#xA;This mod is new to me and my son wanted to run it inspired by watching&#xA;hermitcraft.  We both decided that diamonds were the goal currency, but we&#xA;wanted to set up some shops early so we settled on Oak logs as the currency.&#xA;My job was to setup food based shops while he set up ore based shops.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/7e585608-db41-436f-8daa-77399cb78e20.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;7e585608-db41-436f-8daa-77399cb78e20.webp&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/7e585608-db41-436f-8daa-77399cb78e20.webp&#34; alt=&#34;7e585608-db41-436f-8daa-77399cb78e20.webp&#34;/ data-glightbox=&#34;description: 7e585608-db41-436f-8daa-77399cb78e20.webp&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;p&gt;My earnings after the first day.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/3e930e2f-d2c5-4308-9c3c-5308e7ae6f54.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;3e930e2f-d2c5-4308-9c3c-5308e7ae6f54.webp&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/3e930e2f-d2c5-4308-9c3c-5308e7ae6f54.webp&#34; alt=&#34;3e930e2f-d2c5-4308-9c3c-5308e7ae6f54.webp&#34;/ data-glightbox=&#34;description: 3e930e2f-d2c5-4308-9c3c-5308e7ae6f54.webp&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;first-death&#34;&gt;First Death &lt;a href=&#34;#first-death&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;I forgot that I turned my sound off for a call, got lost on the chase of the&#xA;salmon and did not leave myself enough time to get to the top.&lt;/p&gt;&#xA;&lt;video autoplay=&#34;&#34; controls=&#34;&#34; loop=&#34;true&#34; muted=&#34;&#34; playsinline=&#34;&#34; width=&#34;100%&#34; class=&#34;rounded-xl border-pink-900 border-2&#34;&gt;&#xA;     &lt;source src=&#34;https://dropper.waylonwalker.com/api/file/f112d27a-3a77-4e8f-8bf7-8ff981b6355b.mp4&#34; type=&#34;video/mp4&#34;/&gt;&#xA;     Sorry, your browser doesn&amp;#39;t support embedded videos.&#xA;&lt;/video&gt;&#xA;&lt;h2 id=&#34;second-death&#34;&gt;Second Death &lt;a href=&#34;#second-death&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;Playing sloppy again I was walking around at night with only three hearts left.&#xA;My son wanted me to check out his shop that he just built out and I got hit by&#xA;a skelly on the way up, after the first hit I was sitting at 1 heart with no&#xA;where to go.&lt;/p&gt;&#xA;&lt;video autoplay=&#34;&#34; controls=&#34;&#34; loop=&#34;true&#34; muted=&#34;&#34; playsinline=&#34;&#34; width=&#34;100%&#34; class=&#34;rounded-xl border-pink-900 border-2&#34;&gt;&#xA;     &lt;source src=&#34;https://dropper.waylonwalker.com/api/file/ab088aa3-2661-4551-9040-1fad928ec450.mp4&#34; type=&#34;video/mp4&#34;/&gt;&#xA;     Sorry, your browser doesn&amp;#39;t support embedded videos.&#xA;&lt;/video&gt;&#xA;&lt;h2 id=&#34;third-death&#34;&gt;Third Death &lt;a href=&#34;#third-death&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;This one is just plain embarrasing, I was lost in the flow of hunting salmon&#xA;again, not paying any attention.  I came up for air, but didn’t even gie time&#xA;for more than a couple bubbles to come back before diving back in and died&#xA;almost instantly.&lt;/p&gt;&#xA;&lt;video autoplay=&#34;&#34; controls=&#34;&#34; loop=&#34;true&#34; muted=&#34;&#34; playsinline=&#34;&#34; width=&#34;100%&#34; class=&#34;rounded-xl border-pink-900 border-2&#34;&gt;&#xA;     &lt;source src=&#34;https://dropper.waylonwalker.com/api/file/f36b068d-0094-4d24-8b19-314ee23d71b1.mp4&#34; type=&#34;video/mp4&#34;/&gt;&#xA;     Sorry, your browser doesn&amp;#39;t support embedded videos.&#xA;&lt;/video&gt;&#xA;&lt;h2 id=&#34;note-to-self&#34;&gt;Note to self &lt;a href=&#34;#note-to-self&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;Next time run Minecraft in full screen so you don’t dox your start menu.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 The Future of HTMX - YouTube</title>
    <id>https://waylonwalker.com/thought-532/</id>
    <updated>2025-01-13T02:45:27Z</updated>
    <published>2025-01-13T02:45:27Z</published>
    <link href="https://waylonwalker.com/thought-532/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/watch?v=0rtpsJSLb44&amp;t=624s</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;0rtpsJSLb44&#34; title=&#34;The Future of &lt;a href=&#34;/htmx/&#34; class=&#34;glossary-term&#34; title=&#34;htmx is a frontend javascript library for creating dynamic web applications.&#34;&gt;HTMX&lt;/a&gt;&#34; playlabel=&#34;Play: The Future of HTMX&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;I like the charts that Theo brings to to these videos.  Shout out for a positive k8s reference and not shitting on it.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/6b2d4ec0-98f2-4e58-8ab4-936b7356e7f4.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;image&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/6b2d4ec0-98f2-4e58-8ab4-936b7356e7f4.webp&#34; alt=&#34;image&#34;/ data-glightbox=&#34;description: image&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;p&gt;Htmx brings &lt;a href=&#34;/html/&#34; class=&#34;glossary-term&#34; title=&#34;HTML (HyperText Markup Language) is the standard markup language used to create and design documents on the World Wide Web. It structures web content by...&#34;&gt;html&lt;/a&gt;/css just a bit further down the complexity graph with little to no extra effort, while react allows us to go all the way full complexity at the cost of build and dev complexity to go from zero to 100 as soon as its introduced.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/71ac480a-4e45-4777-87eb-a9d2d8775cca.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;image&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/71ac480a-4e45-4777-87eb-a9d2d8775cca.webp&#34; alt=&#34;image&#34;/ data-glightbox=&#34;description: image&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;p&gt;htmx brings us back to the ease of jquery ajax without any complex swapping or json parsing, all of the object parsing and html templating is done in the backend, the front end just tracks where to put it.  HTMX couples the frontend and backend much tigher, since all of the front end html is generated in the backend, done correctly it is not possible for the front end to get out of sync and try to do things that the back end does not know how to handle, vice versa.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/aa09051d-7e36-43a3-b6da-a6257cad1cc9.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;image&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/aa09051d-7e36-43a3-b6da-a6257cad1cc9.webp&#34; alt=&#34;image&#34;/ data-glightbox=&#34;description: image&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Why I Write</title>
    <id>https://waylonwalker.com/thought-531/</id>
    <updated>2025-01-13T02:28:21Z</updated>
    <published>2025-01-13T02:28:21Z</published>
    <link href="https://waylonwalker.com/thought-531/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://brittanyellich.com/why-i-write/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://brittanyellich.com/why-i-write/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://brittanyellich.com/_astro/typewriter.LhfVZpCN_Z1bzYMR.jpg&#34; alt=&#34;Why I Write — Staff Software Engineer at GitHub specializing in developer productivity, AI-assisted development, and accessibility. Creator of The Balanced Engineer newsletter and co-host of the Overcommitted podcast.&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: Why I Write — Staff Software Engineer at GitHub specializing in developer productivity, AI-assisted development, and accessibility. Creator of The Balanced Engineer newsletter and co-host of the Overcommitted podcast.&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Why I Write&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Staff Software Engineer at GitHub specializing in developer productivity, AI-assisted development, and accessibility. Creator of The Balanced Engineer newsletter and co-host of the Overcommitted po...&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;Brittany Ellich · brittanyellich.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;It’s interesting how many people in tech maintain a blog.  I think part of this brings us back to web 1.0 days when so many individual websites owned the web it was a free for all unindexed land and you got to own a small piece of it.&lt;/p&gt;&#xA;&lt;p&gt;I agree with most of Brittany’s points here I write a lot to keep my skills sharp, and to refer back to.  Brittany mentions keeping all her old posts, even the cringy ones.  I’m all with you here, I’m just wodering how you look back at anything you wrote in the past and not get a bit of that feel, maybe its just me, but I see cringe and mistakes gallore, but it all makes me better moving forward.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Availability</title>
    <id>https://waylonwalker.com/thought-530/</id>
    <updated>2025-01-13T02:20:16Z</updated>
    <published>2025-01-13T02:20:16Z</published>
    <link href="https://waylonwalker.com/thought-530/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://brittanyellich.com/note/availability/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://brittanyellich.com/note/availability/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://brittanyellich.com/_astro/ProfilePicSquare.7t78KdLr_Z18Hm6X.jpg&#34; alt=&#34;Availability — Staff Software Engineer at GitHub specializing in developer productivity, AI-assisted development, and accessibility. Creator of The Balanced Engineer newsletter and co-host of the Overcommitted podcast.&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: Availability — Staff Software Engineer at GitHub specializing in developer productivity, AI-assisted development, and accessibility. Creator of The Balanced Engineer newsletter and co-host of the Overcommitted podcast.&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Availability&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Staff Software Engineer at GitHub specializing in developer productivity, AI-assisted development, and accessibility. Creator of The Balanced Engineer newsletter and co-host of the Overcommitted po...&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;Brittany Ellich · brittanyellich.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;nice overview of availability measurements and what they really mean.  The crazy world we live in today depends on so many things runnig, its also so hard to measure your uptime, The uptime metrics can mean a lot of different things.  The site is up and accepting traffic, but can users make changes or submit orders, there is a lot more to it than just up or down.  I really appreciate Brittany’s story from Nike nested in there.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 SuperMini nRF52840 Wireless Controller Development Board - kri...</title>
    <id>https://waylonwalker.com/thought-529/</id>
    <updated>2025-01-13T01:51:24Z</updated>
    <published>2025-01-13T01:51:24Z</published>
    <link href="https://waylonwalker.com/thought-529/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://kriscables.com/supermini-nrf52840/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://kriscables.com/supermini-nrf52840/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://kriscables.com/wp-content/uploads/2019/11/cropped-500x250.png&#34; alt=&#34;nRF52840 Wireless Controller Development Board - kriscables — SuperMini nRF52840 Wireless Controller Development Board&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: nRF52840 Wireless Controller Development Board - kriscables — SuperMini nRF52840 Wireless Controller Development Board&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;nRF52840 Wireless Controller Development Board - kriscables&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;SuperMini nRF52840 Wireless Controller Development Board&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;kriscables - Custom Ergo Keyboards and Cables · kriscables.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;The SuperMini nrf52840 is a sick controller for building keyboards, affordable, easy to get, and compact.  Bluetooth and wired setup just works in zmk.  This page has a nice image of the pinout.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>nvim-manager</title>
    <id>https://waylonwalker.com/nvim-manager/</id>
    <updated>2025-01-12T21:14:19Z</updated>
    <published>2025-01-12T21:14:19Z</published>
    <link href="https://waylonwalker.com/nvim-manager/" rel="alternate" type="text/html"></link>
    <summary type="text">I recently built a cli application as a nearly-one-shot-app called nvim-manager. It manages your nvim dotfiles install.</summary>
    <content type="html">&lt;p&gt;I recently built a cli application as a nearly-one-shot-app called&#xA;&lt;a href=&#34;https://github.com/waylonwalker/nvim-manager&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;nvim-manager&lt;/a&gt;. It manages your&#xA;nvim dotfiles install.&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/20f800f1-64a6-43a3-93eb-e805b07d86b1.png&#34; class=&#34;glightbox-link&#34; aria-label=&#34;screenshot-2025-01-31T21-21-40-707Z.png&#34;&gt;&lt;img src=&#34;https://dropper.waylonwalker.com/api/file/20f800f1-64a6-43a3-93eb-e805b07d86b1.png&#34; alt=&#34;screenshot-2025-01-31T21-21-40-707Z.png&#34; class=&#34;more-cinematic glightbox&#34;/ data-glightbox=&#34;description: screenshot-2025-01-31T21-21-40-707Z.png&#34;&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;h2 id=&#34;why&#34;&gt;Why &lt;a href=&#34;#why&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p class=&#34;chat-left&#34;&gt;&lt;/p&gt;&#xA;&lt;p class=&#34;chat-right&#34;&gt;&lt;/p&gt;&#xA;&lt;p class=&#34;chat-left&#34;&gt;&lt;/p&gt;&#xA;&lt;p class=&#34;chat-right&#34;&gt;&lt;/p&gt;&#xA;&lt;h2 id=&#34;how-is-nvim-manager-any-better&#34;&gt;How is nvim manager any better &lt;a href=&#34;#how-is-nvim-manager-any-better&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;nvim-manager allows you to install pinned versions of your dotfiles, your&#xA;friends dotfiles, and distros in ~/.config.  This allows you to have stable&#xA;versions that will not break installed while you change things.&lt;/p&gt;&#xA;&lt;p&gt;I’m sure most of us have experienced the pain of installing one plugin, only to&#xA;update all of your plugins and break something.&lt;/p&gt;&#xA;&lt;p&gt;Or, you have small changes on every machine you use, because they are all just&#xA;a bit different and now you have big merge conflicts to deal with.&lt;/p&gt;&#xA;&lt;p&gt;All of this aside you can install a distro to get you by, or a known working&#xA;version of your own dotfiles.&lt;/p&gt;&#xA;&lt;h2 id=&#34;so-all-these-versions-in-config&#34;&gt;So all these versions in ~/.config &lt;a href=&#34;#so-all-these-versions-in-config&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;ya, thats the magic of &lt;code&gt;NVIM_APPNAME&lt;/code&gt;, I can boot up any of these intalled&#xA;working versions in an instant with &lt;code&gt;NVIM_APPNAME=nvim-waylonwalker-v0.0.1 nvim&lt;/code&gt;.  I can still cowboy up and break my main install, but as long as I am&#xA;diligent to keep these installs untouched I will always have a version to fall&#xA;back to in that moment of need.&lt;/p&gt;&#xA;&lt;h2 id=&#34;so-what-do-i-need-to-do&#34;&gt;So what do I need to do? &lt;a href=&#34;#so-what-do-i-need-to-do&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;ol&gt;&#xA;&lt;li&gt;start tagging your dotfiles as you hit stable versions&lt;/li&gt;&#xA;&lt;li&gt;Install &lt;code&gt;curl https://i.jpillora.com/waylonwalker/nvim-manager | bash&lt;/code&gt;&lt;/li&gt;&#xA;&lt;li&gt;Add some env variables to your shell startup (~/.bashrc or ~/.zshrc for example)&lt;/li&gt;&#xA;&lt;li&gt;Install that pinned version of your dotfiles &lt;code&gt;nvim-manager install v0.0.1&lt;/code&gt;&lt;/li&gt;&#xA;&lt;li&gt;Install a distro &lt;code&gt;nvim-manager install --distro astronvim&lt;/code&gt;&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;p&gt;Here are those environment variables I was talking about, set them to use your&#xA;dotfiles repo, name it what you like, and set your NVIM_APPNAME if you want to&#xA;default to a stable &lt;code&gt;nvim&lt;/code&gt; and force yourself to &lt;code&gt;unset NVIM_APPNAME&lt;/code&gt; to live&#xA;on the edge.&lt;/p&gt;&#xA;&lt;h2 id=&#34;install-nvim-manager&#34;&gt;Install nvim-manager &lt;a href=&#34;#install-nvim-manager&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;apt install curl git unzip&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;curl https://i.jpillora.com/MordechaiHadad/bob &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt; bash&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;bob install nightly&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;bob use nightly&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;ln -s ~/.local/share/bob/nvim-bin/nvim ~/.local/bin&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;curl https://i.jpillora.com/waylonwalker/nvim-manager &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt; bash&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;h2 id=&#34;install-your-own-dotfiles&#34;&gt;Install your own dotfiles &lt;a href=&#34;#install-your-own-dotfiles&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;Setup with the following environment variables.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# nvim-manager&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;export&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;NVIM_MANAGER_REPO&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;https://github.com/WaylonWalker/devtainer&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;export&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;NVIM_CONFIG_PATH&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;nvim/.config/nvim&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;export&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;NVIM_MANAGER_INSTALL_DIR&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;$HOME&lt;/span&gt;/.config&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;export&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;NVIM_MANAGER_PREFIX&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;nvim-waylonwalker&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;export&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;NVIM_APPNAME&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;${&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;NVIM_MANAGER_PREFIX&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;}&lt;/span&gt;-v0.0.1&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;nvim-manager install v0.0.1&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;nvim&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;blockquote&gt;&#xA;&lt;p&gt;Note I like installer by jpillora, I &lt;a href=&#34;/self-host/&#34; class=&#34;glossary-term&#34; title=&#34;Self hosting is the act of hosting your own applications and services without using a SAS provider. This is typically done with your own hardware, but there...&#34;&gt;self host&lt;/a&gt; it for my own security, but&#xA;feel free to download from GH if it makes you feel safer.&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;h2 id=&#34;ubuntu-container-speedrun&#34;&gt;Ubuntu Container Speedrun &lt;a href=&#34;#ubuntu-container-speedrun&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;Here is a speedrun to getting nvim up and running in an ubuntu container.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;set&lt;/span&gt; -euxo&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;mkdir -p ~/.local/bin&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;export&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;PATH&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;$PATH&lt;/span&gt;:~/.local/bin&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;apt update&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;apt install curl git unzip -y&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;curl -LsSf https://astral.sh/uv/install.sh &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt; sh&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;curl https://i.jpillora.com/MordechaiHadad/bob &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt; bash&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;mv bob ~/.local/bin&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;bob install nightly&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;bob use nightly&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;ln -s ~/.local/share/bob/nvim-bin/nvim ~/.local/bin&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;curl https://i.jpillora.com/waylonwalker/nvim-manager &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt; bash&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;mv nvim-manager ~/.local/bin&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;export&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;NVIM_MANAGER_REPO&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;https://github.com/WaylonWalker/devtainer&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;export&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;NVIM_CONFIG_PATH&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;nvim/.config/nvim&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;export&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;NVIM_MANAGER_INSTALL_DIR&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;$HOME&lt;/span&gt;/.config&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;export&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;NVIM_MANAGER_PREFIX&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;nvim-waylonwalker&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;export&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;NVIM_APPNAME&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;${&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;NVIM_MANAGER_PREFIX&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;}&lt;/span&gt;-v0.0.1&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;nvim-manager install v0.0.1&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;nvim-manager install --distro lazyvim&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;nvim-manager install --distro astronvim&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;nvim-manager install --distro nvchad&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;nvim-manager install --distro kickstart&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;nvim-manager install --distro lunarvim&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# plugins like treesiter need gcc and make&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;apt install gcc make -y&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;export&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;TZ&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;America/Chicago&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;export&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;DEBIAN_FRONTEND&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;noninteractive&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;apt update&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;apt install tzdata -y&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;ln -fs /usr/share/zoneinfo/&lt;span class=&#34;nv&#34;&gt;$TZ&lt;/span&gt; /etc/localtime&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;dpkg-reconfigure -f noninteractive tzdata&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# Some of the mason installs need npm&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;apt install nodejs npm -y&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# plugins like telescope require ripgrep&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;apt install fzf ripgrep -y&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;h2 id=&#34;give-it-a-star&#34;&gt;Give it a Star &lt;a href=&#34;#give-it-a-star&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;I’d appreciate a star if you find this app useful.&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://github.com/waylonwalker/nvim-manager&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;https://github.com/waylonwalker/nvim-manager&lt;/a&gt;&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>/now</title>
    <id>https://waylonwalker.com/now/</id>
    <updated>2025-01-12T21:07:12Z</updated>
    <published>2025-01-12T21:07:12Z</published>
    <link href="https://waylonwalker.com/now/" rel="alternate" type="text/html"></link>
    <summary type="text">This page is meant to be simple view into what is happening in my life right now. Inspired by @NowNowNow. and Derek Sivers.</summary>
    <content type="html">&lt;p&gt;This page is meant to be simple view into what is happening in my life right now. Inspired by &lt;a href=&#34;https://nownownow.com/&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/nownownow.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/nownownow.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;@NowNowNow&lt;/a&gt;. and Derek Sivers.&lt;/p&gt;&#xA;&lt;p&gt;Last Update 2025-10-29&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;Silksong has my attention, it’s great&lt;/li&gt;&#xA;&lt;li&gt;Working on new features for dropper&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/vibe-coding/&#34; class=&#34;glossary-term&#34; title=&#34;A coding style popularized in 2025. It is the act of using LLMs to generate code for an application, but the author never looks at the output. The author...&#34;&gt;Vibe coding&lt;/a&gt; sucks&lt;/li&gt;&#xA;&lt;li&gt;Images will soon be able to be resized and be more efficient over the network.&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;/li&gt;&#xA;&lt;li&gt;Trying to branch out and add more than software to the blog.  Things like design and 3d printing.&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;hr/&gt;&#xA;&lt;p&gt;Last Update 2025-05-22 14:27:47&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;Working on [[ninesui]]&lt;/li&gt;&#xA;&lt;li&gt;Working on [[krayt]]&lt;/li&gt;&#xA;&lt;li&gt;learning observability with grafana&lt;/li&gt;&#xA;&lt;li&gt;Fairly happy with &lt;a href=&#34;/markata/&#34; class=&#34;wikilink&#34; data-title=&#34;markata&#34; data-description=&#34;This post is a work in progress.&#34; data-date=&#34;2024-05-30&#34; data-preview=&#34;This post is a work in progress.&#34;&gt;markata&lt;/a&gt;, at the moment, less focus and some small fixes&lt;/li&gt;&#xA;&lt;li&gt;The blog is fully k8s, love the experience&lt;/li&gt;&#xA;&lt;li&gt;replacing Google apps with self hosted apps [[replacing-google-search-apps-with-&lt;a href=&#34;/self-host/&#34; class=&#34;glossary-term&#34; title=&#34;Self hosting is the act of hosting your own applications and services without using a SAS provider. This is typically done with your own hardware, but there...&#34;&gt;self-hosted&lt;/a&gt;-web-apps]]&lt;/li&gt;&#xA;&lt;li&gt;Doing a second run through &lt;a href=&#34;/hollow-knight-home-row-layout/&#34; class=&#34;wikilink&#34; data-title=&#34;hollow knight home row layout&#34; data-description=&#34;I just made it past 100% in my main hollow knight run, so now I will allow myself to get silksong when it comes out. I did this with a little bit of YT...&#34; data-date=&#34;2025-05-05&#34; data-preview=&#34;I just made it past 100% in my main hollow knight run, so now I will allow myself to get silksong when it comes out. I did this with a little bit of YT...&#34;&gt;hollow knight home row layout&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;Also second run of animal well&lt;/li&gt;&#xA;&lt;li&gt;put a pause on the thps gap project &lt;a href=&#34;/tags/thps-gaps/&#34; class=&#34;wikilink&#34; data-title=&#34;Posts tagged: thps-gaps&#34; data-description=&#34;All posts with the tag &amp;#34;thps-gaps&amp;#34;&#34; data-preview=&#34;All posts with the tag &amp;#34;thps-gaps&amp;#34;&#34;&gt;Posts tagged: thps-gaps&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;working on a split version of my keyboard&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;hr/&gt;&#xA;&lt;p&gt;Last update Fri Jan 31 08:43:10 PM CST 2025&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;Heavy Focus in on &lt;a href=&#34;/markata/&#34; class=&#34;wikilink&#34; data-title=&#34;markata&#34; data-description=&#34;This post is a work in progress.&#34; data-date=&#34;2024-05-30&#34; data-preview=&#34;This post is a work in progress.&#34;&gt;markata&lt;/a&gt;, upcoming &lt;a href=&#34;/markata-search/&#34; class=&#34;wikilink&#34; data-title=&#34;markata search&#34; data-description=&#34;A side effect of markata-didyoumean is that we are able to implement some rudimentary search based on slug, title, tags, and description.&#34; data-date=&#34;2025-01-30&#34; data-preview=&#34;A side effect of markata-didyoumean is that we are able to implement some rudimentary search based on slug, title, tags, and description.&#34;&gt;markata search&lt;/a&gt; and &lt;a href=&#34;/markata-didyoumean/&#34; class=&#34;wikilink&#34; data-title=&#34;Markata DidYouMean&#34; data-description=&#34;Coming in Markata 0.9.1 is far better documentation. i.e. Documentation that actually exists for everything. As part of poking around I realized that I often...&#34; data-date=&#34;2025-01-29&#34; data-preview=&#34;Coming in Markata 0.9.1 is far better documentation. i.e. Documentation that actually exists for everything. As part of poking around I realized that I often...&#34;&gt;Markata DidYouMean&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;Moving from Arch to Bazzite, I’m fully here but making everything just that&#xA;much smoother in a container based world.&lt;/li&gt;&#xA;&lt;li&gt;kubernetes - trying to get better&lt;/li&gt;&#xA;&lt;li&gt;k8s in the &lt;a href=&#34;/homelab/&#34; class=&#34;glossary-term&#34; title=&#34;A place to self host applications. For me this is primarily self built web applications, and applications for sharing files with my family. Techno Tim has a...&#34;&gt;homelab&lt;/a&gt; - All of my services I run in my homelab are currently&#xA;k8s, trying to make it all smooth and consistent&lt;/li&gt;&#xA;&lt;li&gt;k8s in the blog, I’m building this static site in k8s and its never been&#xA;better.&lt;/li&gt;&#xA;&lt;li&gt;learning agentic workflows - I’m trying to build out a few side projects&#xA;minimally touching the code and only instructing windsurf&lt;/li&gt;&#xA;&lt;li&gt;mostly-one-shot-apps - I just built &lt;a href=&#34;/nvim-manager/&#34; class=&#34;wikilink&#34; data-title=&#34;nvim-manager&#34; data-description=&#34;I recently built a cli application as a nearly-one-shot-app called nvim-manager. It manages your nvim dotfiles install.&#34; data-date=&#34;2025-01-12&#34; data-preview=&#34;I recently built a cli application as a nearly-one-shot-app called nvim-manager. It manages your nvim dotfiles install.&#34;&gt;nvim-manager&lt;/a&gt; as a mostly&#xA;one-shot-app (i.e. the app was nearly v1 out of the first prompt)&lt;/li&gt;&#xA;&lt;li&gt;markata plugins with chatgpt project using rag - &lt;a href=&#34;/analytics/&#34; class=&#34;wikilink&#34; data-title=&#34;analytics&#34; data-description=&#34;I&amp;#39;ve been posting on this site since 2016, when layoffs were rolling through the company I worked for at the time. Starting a personal blog and a pile of...&#34; data-date=&#34;2025-01-22&#34; data-preview=&#34;I&amp;#39;ve been posting on this site since 2016, when layoffs were rolling through the company I worked for at the time. Starting a personal blog and a pile of...&#34;&gt;analytics&lt;/a&gt; - tag aggregator&lt;/li&gt;&#xA;&lt;li&gt;Family focus - &lt;a href=&#34;/we-beat-trailmakers/&#34; class=&#34;wikilink&#34; data-title=&#34;we beat trailmakers&#34; data-description=&#34;Today we broke through the atmosphere in trailmakers ready for pickup from those back at mission conrol.&#34; data-date=&#34;2025-01-10&#34; data-preview=&#34;Today we broke through the atmosphere in trailmakers ready for pickup from those back at mission conrol.&#34;&gt;we beat trailmakers&lt;/a&gt; &lt;a href=&#34;/a-night-of-rounds/&#34; class=&#34;wikilink&#34; data-title=&#34;a night of rounds&#34; data-description=&#34;Tonight my son and I played rounds, I pulled clips of all the final rounds of each set of rounds. We play hardly any games with guns in them, this is one of...&#34; data-date=&#34;2025-01-16&#34; data-preview=&#34;Tonight my son and I played rounds, I pulled clips of all the final rounds of each set of rounds. We play hardly any games with guns in them, this is one of...&#34;&gt;a night of rounds&lt;/a&gt;&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>one-shot-s3-cleanup</title>
    <id>https://waylonwalker.com/one-shot-s3-cleanup/</id>
    <updated>2025-01-12T11:18:25Z</updated>
    <published>2025-01-12T11:18:25Z</published>
    <link href="https://waylonwalker.com/one-shot-s3-cleanup/" rel="alternate" type="text/html"></link>
    <summary type="text">So I made a mistake in an app I am working on and ended up creating thumbnails of thumbnails, and thumbnails of thumbnails of thumbnails... etc. I was able...</summary>
    <content type="html">&lt;p&gt;So I made a mistake in an app I am working on and ended up creating thumbnails&#xA;of thumbnails, and thumbnails of thumbnails of thumbnails… etc. I was able to&#xA;delete them all, but I wanted to make a one-shot script to do it.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/e804dd2c-e3d9-4a83-83fa-95a720cdc92b.png&#34; class=&#34;glightbox-link&#34; aria-label=&#34;screenshot-2025-01-31T21-20-56-934Z.png&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/e804dd2c-e3d9-4a83-83fa-95a720cdc92b.png&#34; alt=&#34;screenshot-2025-01-31T21-20-56-934Z.png&#34;/ data-glightbox=&#34;description: screenshot-2025-01-31T21-20-56-934Z.png&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;one-shot-app&#34;&gt;One Shot App &lt;a href=&#34;#one-shot-app&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;I got the idea of the one shot app from &lt;a href=&#34;https://simonwillison.net/2024/Dec/19/one-shot-python-tools/&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/simonwillison.net.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/simonwillison.net.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;Simon&#xA;Willison&lt;/a&gt; and&#xA;replicated his setup in a chatgpt project&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/78d6eea9-29a2-43ed-b09e-1585762c991c.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;screenshot-2025-01-12T18-16-57-443Z.png&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/78d6eea9-29a2-43ed-b09e-1585762c991c.webp&#34; alt=&#34;screenshot-2025-01-12T18-16-57-443Z.png&#34;/ data-glightbox=&#34;description: screenshot-2025-01-12T18-16-57-443Z.png&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;initial-prompt&#34;&gt;Initial Prompt &lt;a href=&#34;#initial-prompt&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;a mistake was made in my s3 bucket and I&amp;#39;ve created a bunch of extra files&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;write a script that deletes all files that contain _thumb_thumb&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;⬢ [devtainer] ❯ aws s3 ls s3://dropper&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;2024-12-29 14:32:32      16158 02271f4c-be18-4bea-b23e-d00f9fe42b9f.webp&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;2025-01-11 14:20:49       2878 02271f4c-be18-4bea-b23e-d00f9fe42b9f_thumb.webp&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;2025-01-11 14:21:17       2858 02271f4c-be18-4bea-b23e-d00f9fe42b9f_thumb_thumb.webp&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;2025-01-11 14:21:44       2856 02271f4c-be18-4bea-b23e-d00f9fe42b9f_thumb_thumb_thumb.webp&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;2025-01-11 14:21:44       2856 02271f4c-be18-4bea-b23e-d00f9fe42b9f_thumb_thumb_thumb_thumb.webp&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;2024-12-27 10:25:36       2812 06422c09-d0da-44ec-9339-786864ebccf2.webp&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;2025-01-11 14:20:49       2710 06422c09-d0da-44ec-9339-786864ebccf2_thumb.webp&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;2025-01-11 14:21:17       2652 06422c09-d0da-44ec-9339-786864ebccf2_thumb_thumb.webp&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;2025-01-11 14:21:45       2632 06422c09-d0da-44ec-9339-786864ebccf2_thumb_thumb_thumb.webp&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;2025-01-11 14:21:45       2632 06422c09-d0da-44ec-9339-786864ebccf2_thumb_thumb_thumb_thumb.webp&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;2024-12-29 20:44:14     146060 074edddb-8b46-4d94-9b55-d70a7bb74366.webp&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;2025-01-11 14:20:50      12476 074edddb-8b46-4d94-9b55-d70a7bb74366_thumb.webp&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;2025-01-11 14:21:17      12400 074edddb-8b46-4d94-9b55-d70a7bb74366_thumb_thumb.webp&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;create a typer application to do this job&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;include a --dry-run flag&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;make the search for _thumb_thumb editable&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;h2 id=&#34;s3-cleanup&#34;&gt;s3_cleanup &lt;a href=&#34;#s3-cleanup&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;Here is the result of the s3_cleanup script.  It ended up being 5 or 6 passes&#xA;to get everything I wanted with soft-delete enabled. Nice preview outputs in&#xA;the dry run.  This was 90% created by chatgpt 4o, with some slight hand edits&#xA;by me along the way.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;ch&#34;&gt;#!/usr/bin/env -S uv run --quiet --script&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# /// script&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# requires-python = &amp;#34;&amp;gt;=3.12&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# dependencies = [&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;#     &amp;#34;boto3&amp;#34;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;#     &amp;#34;typer&amp;#34;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;#     &amp;#34;rich&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# ]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# ///&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;kn&#34;&gt;import&lt;/span&gt; &lt;span class=&#34;nn&#34;&gt;boto3&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;kn&#34;&gt;from&lt;/span&gt; &lt;span class=&#34;nn&#34;&gt;datetime&lt;/span&gt; &lt;span class=&#34;kn&#34;&gt;import&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;datetime&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;timezone&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;kn&#34;&gt;from&lt;/span&gt; &lt;span class=&#34;nn&#34;&gt;rich.console&lt;/span&gt; &lt;span class=&#34;kn&#34;&gt;import&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;Console&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;kn&#34;&gt;from&lt;/span&gt; &lt;span class=&#34;nn&#34;&gt;rich.table&lt;/span&gt; &lt;span class=&#34;kn&#34;&gt;import&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;Table&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;kn&#34;&gt;import&lt;/span&gt; &lt;span class=&#34;nn&#34;&gt;traceback&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;kn&#34;&gt;import&lt;/span&gt; &lt;span class=&#34;nn&#34;&gt;typer&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;app&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;typer&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;Typer&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;()&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;console&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;Console&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;()&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;DEFAULT_SOFT_DELETE_DIR&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;soft-delete/&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;def&lt;/span&gt; &lt;span class=&#34;nf&#34;&gt;human_readable_size&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;size&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;nb&#34;&gt;int&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;-&amp;gt;&lt;/span&gt; &lt;span class=&#34;nb&#34;&gt;str&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;s2&#34;&gt;&amp;#34;&amp;#34;&amp;#34;Convert bytes to a human-readable format.&amp;#34;&amp;#34;&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;k&#34;&gt;for&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;unit&lt;/span&gt; &lt;span class=&#34;ow&#34;&gt;in&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;B&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;KB&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;MB&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;GB&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;TB&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]:&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;k&#34;&gt;if&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;size&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;&amp;lt;&lt;/span&gt; &lt;span class=&#34;mi&#34;&gt;1024&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;            &lt;span class=&#34;k&#34;&gt;return&lt;/span&gt; &lt;span class=&#34;sa&#34;&gt;f&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;size&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;.2f&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;}&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt; &lt;/span&gt;&lt;span class=&#34;si&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;unit&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;}&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;n&#34;&gt;size&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;/=&lt;/span&gt; &lt;span class=&#34;mi&#34;&gt;1024&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;k&#34;&gt;return&lt;/span&gt; &lt;span class=&#34;sa&#34;&gt;f&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;size&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;.2f&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;}&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt; PB&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;def&lt;/span&gt; &lt;span class=&#34;nf&#34;&gt;calculate_file_age&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;last_modified&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;datetime&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;-&amp;gt;&lt;/span&gt; &lt;span class=&#34;nb&#34;&gt;str&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;s2&#34;&gt;&amp;#34;&amp;#34;&amp;#34;Calculate the age of the file from the current time.&amp;#34;&amp;#34;&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;n&#34;&gt;now&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;datetime&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;now&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;timezone&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;utc&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;n&#34;&gt;age&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;now&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;-&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;last_modified&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;n&#34;&gt;days&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;age&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;days&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;k&#34;&gt;if&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;days&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;&amp;gt;&lt;/span&gt; &lt;span class=&#34;mi&#34;&gt;0&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;k&#34;&gt;return&lt;/span&gt; &lt;span class=&#34;sa&#34;&gt;f&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;days&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;}&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt; days&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;n&#34;&gt;hours&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;remainder&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;nb&#34;&gt;divmod&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;age&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;seconds&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;mi&#34;&gt;3600&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;n&#34;&gt;minutes&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;remainder&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;//&lt;/span&gt; &lt;span class=&#34;mi&#34;&gt;60&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;k&#34;&gt;if&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;hours&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;&amp;gt;&lt;/span&gt; &lt;span class=&#34;mi&#34;&gt;0&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;k&#34;&gt;return&lt;/span&gt; &lt;span class=&#34;sa&#34;&gt;f&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;hours&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;}&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt; hours&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;k&#34;&gt;return&lt;/span&gt; &lt;span class=&#34;sa&#34;&gt;f&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;minutes&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;}&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt; minutes&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nd&#34;&gt;@app.command&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;()&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;def&lt;/span&gt; &lt;span class=&#34;nf&#34;&gt;clean&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;n&#34;&gt;bucket_name&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;nb&#34;&gt;str&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;typer&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;Argument&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;...&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;help&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;The name of the S3 bucket.&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;),&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;n&#34;&gt;substring&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;nb&#34;&gt;str&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;typer&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;Argument&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;o&#34;&gt;...&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;help&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;The substring to search for in file names.&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;p&#34;&gt;),&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;n&#34;&gt;dry_run&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;nb&#34;&gt;bool&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;typer&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;Option&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;kc&#34;&gt;False&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;help&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;If set, no files will be deleted; only listed.&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;p&#34;&gt;),&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;n&#34;&gt;soft_delete&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;nb&#34;&gt;bool&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;typer&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;Option&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;kc&#34;&gt;False&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;n&#34;&gt;help&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;If set, files will be moved to a soft delete directory instead of permanently deleted.&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;p&#34;&gt;),&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;n&#34;&gt;soft_delete_dir&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;nb&#34;&gt;str&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;typer&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;Option&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;n&#34;&gt;DEFAULT_SOFT_DELETE_DIR&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;help&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;The directory to move soft-deleted files to.&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;p&#34;&gt;),&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;n&#34;&gt;max_age&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;nb&#34;&gt;int&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;typer&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;Option&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;kc&#34;&gt;None&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;help&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;Maximum age of files to include, in days.&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;),&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;n&#34;&gt;min_age&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;nb&#34;&gt;int&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;typer&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;Option&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;kc&#34;&gt;None&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;help&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;Minimum age of files to include, in days.&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;),&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;):&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;s2&#34;&gt;&amp;#34;&amp;#34;&amp;#34;Delete or soft-delete files in an S3 bucket that contain a specific substring in their names.&amp;#34;&amp;#34;&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;n&#34;&gt;s3&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;boto3&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;client&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;s3&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;k&#34;&gt;try&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;c1&#34;&gt;# List all objects in the bucket&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;n&#34;&gt;response&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;s3&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;list_objects_v2&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;Bucket&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;bucket_name&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;k&#34;&gt;if&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;Contents&amp;#34;&lt;/span&gt; &lt;span class=&#34;ow&#34;&gt;not&lt;/span&gt; &lt;span class=&#34;ow&#34;&gt;in&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;response&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;            &lt;span class=&#34;n&#34;&gt;console&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;print&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;[bold yellow]No files found in the bucket.[/bold yellow]&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;            &lt;span class=&#34;k&#34;&gt;return&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;n&#34;&gt;now&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;datetime&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;now&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;timezone&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;utc&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;k&#34;&gt;def&lt;/span&gt; &lt;span class=&#34;nf&#34;&gt;file_within_age_range&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;obj&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;):&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;            &lt;span class=&#34;n&#34;&gt;file_age&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;now&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;-&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;obj&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;LastModified&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;])&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;days&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;            &lt;span class=&#34;k&#34;&gt;if&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;max_age&lt;/span&gt; &lt;span class=&#34;ow&#34;&gt;is&lt;/span&gt; &lt;span class=&#34;ow&#34;&gt;not&lt;/span&gt; &lt;span class=&#34;kc&#34;&gt;None&lt;/span&gt; &lt;span class=&#34;ow&#34;&gt;and&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;file_age&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;&amp;gt;&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;max_age&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;                &lt;span class=&#34;k&#34;&gt;return&lt;/span&gt; &lt;span class=&#34;kc&#34;&gt;False&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;            &lt;span class=&#34;k&#34;&gt;if&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;min_age&lt;/span&gt; &lt;span class=&#34;ow&#34;&gt;is&lt;/span&gt; &lt;span class=&#34;ow&#34;&gt;not&lt;/span&gt; &lt;span class=&#34;kc&#34;&gt;None&lt;/span&gt; &lt;span class=&#34;ow&#34;&gt;and&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;file_age&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;&amp;lt;&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;min_age&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;                &lt;span class=&#34;k&#34;&gt;return&lt;/span&gt; &lt;span class=&#34;kc&#34;&gt;False&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;            &lt;span class=&#34;k&#34;&gt;return&lt;/span&gt; &lt;span class=&#34;kc&#34;&gt;True&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;n&#34;&gt;files_to_process&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;            &lt;span class=&#34;n&#34;&gt;obj&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;            &lt;span class=&#34;k&#34;&gt;for&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;obj&lt;/span&gt; &lt;span class=&#34;ow&#34;&gt;in&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;response&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;Contents&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;            &lt;span class=&#34;k&#34;&gt;if&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;substring&lt;/span&gt; &lt;span class=&#34;ow&#34;&gt;in&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;obj&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;Key&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]&lt;/span&gt; &lt;span class=&#34;ow&#34;&gt;and&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;file_within_age_range&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;obj&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;p&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;k&#34;&gt;if&lt;/span&gt; &lt;span class=&#34;ow&#34;&gt;not&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;files_to_process&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;            &lt;span class=&#34;n&#34;&gt;console&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;print&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;                &lt;span class=&#34;s2&#34;&gt;&amp;#34;[bold yellow]No files matching criteria found in the bucket.[/bold yellow]&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;            &lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;            &lt;span class=&#34;k&#34;&gt;return&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;k&#34;&gt;if&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;dry_run&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;            &lt;span class=&#34;n&#34;&gt;console&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;print&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;                &lt;span class=&#34;s2&#34;&gt;&amp;#34;[bold blue]Dry run mode: The following files would be processed:[/bold blue]&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;            &lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;            &lt;span class=&#34;n&#34;&gt;table&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;Table&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;title&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;Files to be Processed&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;            &lt;span class=&#34;n&#34;&gt;table&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;add_column&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;File Name&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;style&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;cyan&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;no_wrap&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;kc&#34;&gt;True&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;            &lt;span class=&#34;n&#34;&gt;table&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;add_column&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;Size&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;style&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;magenta&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;justify&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;right&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;            &lt;span class=&#34;n&#34;&gt;table&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;add_column&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;Age&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;style&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;green&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;justify&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;right&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;            &lt;span class=&#34;n&#34;&gt;table&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;add_column&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;Action&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;style&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;yellow&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;no_wrap&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;kc&#34;&gt;True&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;            &lt;span class=&#34;n&#34;&gt;total_size&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;mi&#34;&gt;0&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;            &lt;span class=&#34;k&#34;&gt;for&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;obj&lt;/span&gt; &lt;span class=&#34;ow&#34;&gt;in&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;files_to_process&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;                &lt;span class=&#34;n&#34;&gt;human_size&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;human_readable_size&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;obj&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;Size&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;])&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;                &lt;span class=&#34;n&#34;&gt;file_age&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;calculate_file_age&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;obj&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;LastModified&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;])&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;                &lt;span class=&#34;n&#34;&gt;action&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;                    &lt;span class=&#34;sa&#34;&gt;f&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;[bold yellow]-&amp;gt; &lt;/span&gt;&lt;span class=&#34;si&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;soft_delete_dir&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;}{&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;obj&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;Key&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;}&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;[/bold yellow]&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;                    &lt;span class=&#34;k&#34;&gt;if&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;soft_delete&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;                    &lt;span class=&#34;k&#34;&gt;else&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;[bold red]DELETE[/bold red]&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;                &lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;                &lt;span class=&#34;n&#34;&gt;table&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;add_row&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;obj&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;Key&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;],&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;human_size&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;file_age&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;action&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;                &lt;span class=&#34;n&#34;&gt;total_size&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;+=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;obj&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;Size&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;            &lt;span class=&#34;n&#34;&gt;console&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;print&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;table&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;            &lt;span class=&#34;n&#34;&gt;console&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;print&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;                &lt;span class=&#34;sa&#34;&gt;f&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;se&#34;&gt;\n&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;[bold green]Summary:[/bold green] &lt;/span&gt;&lt;span class=&#34;si&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;len&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;files_to_process&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;}&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt; files, Total Size: &lt;/span&gt;&lt;span class=&#34;si&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;human_readable_size&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;total_size&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;}&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;, Operation: &lt;/span&gt;&lt;span class=&#34;si&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;Soft Delete&amp;#39;&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;if&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;soft_delete&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;else&lt;/span&gt; &lt;span class=&#34;s1&#34;&gt;&amp;#39;Delete&amp;#39;&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;}&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;            &lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;k&#34;&gt;else&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;            &lt;span class=&#34;k&#34;&gt;for&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;obj&lt;/span&gt; &lt;span class=&#34;ow&#34;&gt;in&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;files_to_process&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;                &lt;span class=&#34;n&#34;&gt;file_key&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;obj&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;Key&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;                &lt;span class=&#34;k&#34;&gt;if&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;soft_delete&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;                    &lt;span class=&#34;n&#34;&gt;copy_source&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;Bucket&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;bucket_name&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;Key&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;file_key&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;}&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;                    &lt;span class=&#34;n&#34;&gt;new_key&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;sa&#34;&gt;f&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;soft_delete_dir&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;}{&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;file_key&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;}&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;                    &lt;span class=&#34;n&#34;&gt;s3&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;copy_object&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;                        &lt;span class=&#34;n&#34;&gt;CopySource&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;copy_source&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;Bucket&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;bucket_name&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;Key&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;new_key&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;                    &lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;                    &lt;span class=&#34;n&#34;&gt;s3&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;delete_object&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;Bucket&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;bucket_name&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;Key&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;file_key&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;                    &lt;span class=&#34;n&#34;&gt;console&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;print&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;                        &lt;span class=&#34;sa&#34;&gt;f&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;[bold yellow]Moved to soft-delete:[/bold yellow] &lt;/span&gt;&lt;span class=&#34;si&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;file_key&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;}&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt; -&amp;gt; &lt;/span&gt;&lt;span class=&#34;si&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;new_key&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;}&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;                    &lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;                &lt;span class=&#34;k&#34;&gt;else&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;                    &lt;span class=&#34;n&#34;&gt;s3&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;delete_object&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;Bucket&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;bucket_name&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;Key&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;file_key&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;                    &lt;span class=&#34;n&#34;&gt;console&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;print&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;sa&#34;&gt;f&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;[bold red]Deleted:[/bold red] &lt;/span&gt;&lt;span class=&#34;si&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;file_key&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;}&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;            &lt;span class=&#34;n&#34;&gt;console&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;print&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;                &lt;span class=&#34;sa&#34;&gt;f&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;[bold green]Operation completed. &lt;/span&gt;&lt;span class=&#34;si&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;len&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;files_to_process&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;}&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt; files processed. Operation: &lt;/span&gt;&lt;span class=&#34;si&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;Soft Delete&amp;#39;&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;if&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;soft_delete&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;else&lt;/span&gt; &lt;span class=&#34;s1&#34;&gt;&amp;#39;Delete&amp;#39;&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;}&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;[/bold green]&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;            &lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;k&#34;&gt;except&lt;/span&gt; &lt;span class=&#34;ne&#34;&gt;Exception&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;as&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;e&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;n&#34;&gt;console&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;print&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;sa&#34;&gt;f&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;[bold red]Error:[/bold red] &lt;/span&gt;&lt;span class=&#34;si&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;e&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;}&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;style&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;red&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nd&#34;&gt;@app.command&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;()&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;def&lt;/span&gt; &lt;span class=&#34;nf&#34;&gt;clear_soft_delete&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;n&#34;&gt;bucket_name&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;nb&#34;&gt;str&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;typer&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;Argument&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;...&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;help&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;The name of the S3 bucket.&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;),&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;n&#34;&gt;soft_delete_dir&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;nb&#34;&gt;str&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;typer&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;Option&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;n&#34;&gt;DEFAULT_SOFT_DELETE_DIR&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;help&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;The soft delete directory to clear.&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;p&#34;&gt;),&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;n&#34;&gt;dry_run&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;nb&#34;&gt;bool&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;typer&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;Option&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;kc&#34;&gt;False&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;help&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;If set, no files will be deleted; only listed.&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;p&#34;&gt;),&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;):&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;s2&#34;&gt;&amp;#34;&amp;#34;&amp;#34;Remove all files in the soft delete directory.&amp;#34;&amp;#34;&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;n&#34;&gt;s3&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;boto3&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;client&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;s3&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;k&#34;&gt;try&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;n&#34;&gt;response&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;s3&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;list_objects_v2&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;Bucket&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;bucket_name&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;Prefix&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;soft_delete_dir&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;k&#34;&gt;if&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;Contents&amp;#34;&lt;/span&gt; &lt;span class=&#34;ow&#34;&gt;not&lt;/span&gt; &lt;span class=&#34;ow&#34;&gt;in&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;response&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;            &lt;span class=&#34;n&#34;&gt;console&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;print&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;                &lt;span class=&#34;sa&#34;&gt;f&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;[bold yellow]No files found in the soft delete directory &amp;#39;&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;soft_delete_dir&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;}&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#39;.[/bold yellow]&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;            &lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;            &lt;span class=&#34;k&#34;&gt;return&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;n&#34;&gt;files_to_delete&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;obj&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;for&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;obj&lt;/span&gt; &lt;span class=&#34;ow&#34;&gt;in&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;response&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;Contents&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;k&#34;&gt;if&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;dry_run&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;            &lt;span class=&#34;n&#34;&gt;console&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;print&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;                &lt;span class=&#34;s2&#34;&gt;&amp;#34;[bold blue]Dry run mode: The following files would be deleted from the soft delete directory:[/bold blue]&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;            &lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;            &lt;span class=&#34;n&#34;&gt;table&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;Table&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;title&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;Files to be Deleted&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;            &lt;span class=&#34;n&#34;&gt;table&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;add_column&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;File Name&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;style&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;cyan&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;no_wrap&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;kc&#34;&gt;True&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;            &lt;span class=&#34;n&#34;&gt;table&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;add_column&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;Size&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;style&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;magenta&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;justify&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;right&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;            &lt;span class=&#34;n&#34;&gt;total_size&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;mi&#34;&gt;0&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;            &lt;span class=&#34;k&#34;&gt;for&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;obj&lt;/span&gt; &lt;span class=&#34;ow&#34;&gt;in&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;files_to_delete&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;                &lt;span class=&#34;n&#34;&gt;human_size&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;human_readable_size&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;obj&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;Size&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;])&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;                &lt;span class=&#34;n&#34;&gt;table&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;add_row&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;obj&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;Key&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;],&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;human_size&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;                &lt;span class=&#34;n&#34;&gt;total_size&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;+=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;obj&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;Size&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;            &lt;span class=&#34;n&#34;&gt;console&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;print&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;table&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;            &lt;span class=&#34;n&#34;&gt;console&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;print&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;                &lt;span class=&#34;sa&#34;&gt;f&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;se&#34;&gt;\n&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;[bold green]Summary:[/bold green] &lt;/span&gt;&lt;span class=&#34;si&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;len&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;files_to_delete&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;}&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt; files, Total Size: &lt;/span&gt;&lt;span class=&#34;si&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;human_readable_size&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;total_size&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;}&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;            &lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;k&#34;&gt;else&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;            &lt;span class=&#34;k&#34;&gt;for&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;file_key&lt;/span&gt; &lt;span class=&#34;ow&#34;&gt;in&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;files_to_delete&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;                &lt;span class=&#34;n&#34;&gt;file_key&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;file_key&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;Key&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;                &lt;span class=&#34;n&#34;&gt;s3&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;delete_object&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;Bucket&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;bucket_name&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;Key&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;file_key&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;                &lt;span class=&#34;n&#34;&gt;console&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;print&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;                    &lt;span class=&#34;sa&#34;&gt;f&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;[bold red]Deleted from soft-delete:[/bold red] &lt;/span&gt;&lt;span class=&#34;si&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;file_key&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;}&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;                &lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;            &lt;span class=&#34;n&#34;&gt;console&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;print&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;                &lt;span class=&#34;sa&#34;&gt;f&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;[bold green]Soft delete directory &amp;#39;&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;soft_delete_dir&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;}&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#39; cleared. &lt;/span&gt;&lt;span class=&#34;si&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;len&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;files_to_delete&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;}&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt; files removed.[/bold green]&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;            &lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;k&#34;&gt;except&lt;/span&gt; &lt;span class=&#34;ne&#34;&gt;Exception&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;as&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;e&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;n&#34;&gt;console&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;print&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;sa&#34;&gt;f&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;[bold red]Error:[/bold red] &lt;/span&gt;&lt;span class=&#34;si&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;e&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;}&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;style&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;red&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;n&#34;&gt;console&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;print&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;[bold red]Operation failed.[/bold red]&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;n&#34;&gt;console&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;print&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;traceback&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;format_exc&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;())&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nd&#34;&gt;@app.command&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;()&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;def&lt;/span&gt; &lt;span class=&#34;nf&#34;&gt;undo_soft_delete&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;n&#34;&gt;bucket_name&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;nb&#34;&gt;str&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;typer&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;Argument&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;...&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;help&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;The name of the S3 bucket.&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;),&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;n&#34;&gt;soft_delete_dir&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;nb&#34;&gt;str&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;typer&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;Option&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;n&#34;&gt;DEFAULT_SOFT_DELETE_DIR&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;help&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;The soft delete directory to restore from.&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;p&#34;&gt;),&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;n&#34;&gt;dry_run&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;nb&#34;&gt;bool&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;typer&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;Option&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;kc&#34;&gt;False&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;help&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;If set, no files will be restored; only listed.&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;p&#34;&gt;),&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;):&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;s2&#34;&gt;&amp;#34;&amp;#34;&amp;#34;Restore all files from the soft delete directory to their original locations.&amp;#34;&amp;#34;&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;n&#34;&gt;s3&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;boto3&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;client&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;s3&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;k&#34;&gt;try&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;n&#34;&gt;response&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;s3&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;list_objects_v2&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;Bucket&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;bucket_name&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;Prefix&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;soft_delete_dir&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;k&#34;&gt;if&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;Contents&amp;#34;&lt;/span&gt; &lt;span class=&#34;ow&#34;&gt;not&lt;/span&gt; &lt;span class=&#34;ow&#34;&gt;in&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;response&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;            &lt;span class=&#34;n&#34;&gt;console&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;print&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;                &lt;span class=&#34;sa&#34;&gt;f&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;[bold yellow]No files found in the soft delete directory &amp;#39;&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;soft_delete_dir&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;}&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#39;.[/bold yellow]&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;            &lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;            &lt;span class=&#34;k&#34;&gt;return&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;n&#34;&gt;files_to_restore&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;obj&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;for&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;obj&lt;/span&gt; &lt;span class=&#34;ow&#34;&gt;in&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;response&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;Contents&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;k&#34;&gt;if&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;dry_run&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;            &lt;span class=&#34;n&#34;&gt;console&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;print&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;                &lt;span class=&#34;s2&#34;&gt;&amp;#34;[bold blue]Dry run mode: The following files would be restored:[/bold blue]&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;            &lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;            &lt;span class=&#34;n&#34;&gt;table&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;Table&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;title&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;Files to be Restored&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;            &lt;span class=&#34;n&#34;&gt;table&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;add_column&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;File Name&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;style&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;cyan&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;no_wrap&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;kc&#34;&gt;True&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;            &lt;span class=&#34;n&#34;&gt;table&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;add_column&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;Size&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;style&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;magenta&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;justify&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;right&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;            &lt;span class=&#34;n&#34;&gt;table&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;add_column&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;Original Location&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;style&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;green&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;no_wrap&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;kc&#34;&gt;True&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;            &lt;span class=&#34;n&#34;&gt;total_size&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;mi&#34;&gt;0&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;            &lt;span class=&#34;k&#34;&gt;for&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;obj&lt;/span&gt; &lt;span class=&#34;ow&#34;&gt;in&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;files_to_restore&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;                &lt;span class=&#34;n&#34;&gt;human_size&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;human_readable_size&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;obj&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;Size&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;])&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;                &lt;span class=&#34;n&#34;&gt;original_key&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;obj&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;Key&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;][&lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;len&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;soft_delete_dir&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;:]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;                &lt;span class=&#34;n&#34;&gt;table&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;add_row&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;obj&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;Key&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;],&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;human_size&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;original_key&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;                &lt;span class=&#34;n&#34;&gt;total_size&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;+=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;obj&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;Size&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;            &lt;span class=&#34;n&#34;&gt;console&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;print&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;table&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;            &lt;span class=&#34;n&#34;&gt;console&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;print&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;                &lt;span class=&#34;sa&#34;&gt;f&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;se&#34;&gt;\n&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;[bold green]Summary:[/bold green] &lt;/span&gt;&lt;span class=&#34;si&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;len&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;files_to_restore&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;}&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt; files, Total Size: &lt;/span&gt;&lt;span class=&#34;si&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;human_readable_size&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;total_size&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;}&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;            &lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;k&#34;&gt;else&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;            &lt;span class=&#34;k&#34;&gt;for&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;obj&lt;/span&gt; &lt;span class=&#34;ow&#34;&gt;in&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;files_to_restore&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;                &lt;span class=&#34;n&#34;&gt;file_key&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;obj&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;Key&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;                &lt;span class=&#34;n&#34;&gt;original_key&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;file_key&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;                    &lt;span class=&#34;nb&#34;&gt;len&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;soft_delete_dir&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;                &lt;span class=&#34;p&#34;&gt;]&lt;/span&gt;  &lt;span class=&#34;c1&#34;&gt;# Remove the soft delete prefix&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;                &lt;span class=&#34;n&#34;&gt;copy_source&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;Bucket&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;bucket_name&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;Key&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;file_key&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;}&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;                &lt;span class=&#34;n&#34;&gt;s3&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;copy_object&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;                    &lt;span class=&#34;n&#34;&gt;CopySource&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;copy_source&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;Bucket&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;bucket_name&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;Key&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;original_key&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;                &lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;                &lt;span class=&#34;n&#34;&gt;s3&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;delete_object&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;Bucket&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;bucket_name&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;Key&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;file_key&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;                &lt;span class=&#34;n&#34;&gt;console&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;print&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;                    &lt;span class=&#34;sa&#34;&gt;f&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;[bold green]Restored:[/bold green] &lt;/span&gt;&lt;span class=&#34;si&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;file_key&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;}&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt; -&amp;gt; &lt;/span&gt;&lt;span class=&#34;si&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;original_key&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;}&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;                &lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;            &lt;span class=&#34;n&#34;&gt;console&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;print&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;                &lt;span class=&#34;sa&#34;&gt;f&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;[bold green]Restoration completed. &lt;/span&gt;&lt;span class=&#34;si&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;len&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;files_to_restore&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;}&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt; files restored.[/bold green]&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;            &lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;k&#34;&gt;except&lt;/span&gt; &lt;span class=&#34;ne&#34;&gt;Exception&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;as&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;e&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;n&#34;&gt;console&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;print&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;sa&#34;&gt;f&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;[bold red]Error:[/bold red] &lt;/span&gt;&lt;span class=&#34;si&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;e&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;}&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;style&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;red&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;if&lt;/span&gt; &lt;span class=&#34;vm&#34;&gt;__name__&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;==&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;__main__&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;n&#34;&gt;app&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;()&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;h2 id=&#34;full-help-text-output&#34;&gt;full help text output &lt;a href=&#34;#full-help-text-output&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;Here is the help text for all of the commands in the script.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;dropper on  main &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;!?&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt; is 📦 v1.0.0 via  v22.13.0  v3.11.10 on  &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;us-east-1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt;  NO PYTHON VENV SET took 7s&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;⬢ &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;devtainer&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt; ❯ ./scripts/s3_cleanup.py --help&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt; Usage: s3_cleanup.py &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;OPTIONS&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt; COMMAND &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;ARGS&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;╭─ Options ───────────────────────────────────────────────────────────────────────────────────────────────────────╮&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;│ --install-completion          Install completion &lt;span class=&#34;k&#34;&gt;for&lt;/span&gt; the current shell.                                         │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;│ --show-completion             Show completion &lt;span class=&#34;k&#34;&gt;for&lt;/span&gt; the current shell, to copy it or customize the installation.  │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;│ --help                        Show this message and exit.                                                       │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;╭─ Commands ──────────────────────────────────────────────────────────────────────────────────────────────────────╮&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;│ clean               Delete or soft-delete files in an S3 bucket that contain a specific substring in their      │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;│                     names.                                                                                      │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;│ clear-soft-delete   Remove all files in the soft delete directory.                                              │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;│ undo-soft-delete    Restore all files from the soft delete directory to their original locations.               │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;⬢ &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;devtainer&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt; ❯ ./scripts/s3_cleanup.py clean --help&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt; Usage: s3_cleanup.py clean &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;OPTIONS&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt; BUCKET_NAME SUBSTRING&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt; Delete or soft-delete files in an S3 bucket that contain a specific substring in their names.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;╭─ Arguments ─────────────────────────────────────────────────────────────────────────────────────────────────────╮&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;│ *    bucket_name      TEXT  The name of the S3 bucket. &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;default: None&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;required&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;                               │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;│ *    substring        TEXT  The substring to search &lt;span class=&#34;k&#34;&gt;for&lt;/span&gt; in file names. &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;default: None&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;required&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;               │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;╭─ Options ───────────────────────────────────────────────────────────────────────────────────────────────────────╮&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;│ --dry-run            --no-dry-run                 If set, no files will be deleted&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt; only listed.                │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;│                                                   &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;default: no-dry-run&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;                                         │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;│ --soft-delete        --no-soft-delete             If set, files will be moved to a soft delete directory        │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;│                                                   instead of permanently deleted.                               │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;│                                                   &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;default: no-soft-delete&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;                                     │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;│ --soft-delete-dir                        TEXT     The directory to move soft-deleted files to.                  │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;│                                                   &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;default: soft-delete/&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;                                       │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;│ --max-age                                INTEGER  Maximum age of files to include, in days. &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;default: None&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;     │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;│ --min-age                                INTEGER  Minimum age of files to include, in days. &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;default: None&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;     │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;│ --help                                            Show this message and exit.                                   │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;⬢ &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;devtainer&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt; ❯ ./scripts/s3_cleanup.py clear-soft-delete --help&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt; Usage: s3_cleanup.py clear-soft-delete &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;OPTIONS&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt; BUCKET_NAME&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt; Remove all files in the soft delete directory.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;╭─ Arguments ─────────────────────────────────────────────────────────────────────────────────────────────────────╮&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;│ *    bucket_name      TEXT  The name of the S3 bucket. &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;default: None&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;required&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;                               │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;╭─ Options ───────────────────────────────────────────────────────────────────────────────────────────────────────╮&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;│ --soft-delete-dir                    TEXT  The soft delete directory to clear. &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;default: soft-delete/&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;          │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;│ --dry-run            --no-dry-run          If set, no files will be deleted&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt; only listed. &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;default: no-dry-run&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt; │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;│ --help                                     Show this message and exit.                                          │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;⬢ &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;devtainer&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt; ❯ ./scripts/s3_cleanup.py undo-soft-delete --help&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt; Usage: s3_cleanup.py undo-soft-delete &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;OPTIONS&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt; BUCKET_NAME&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt; Restore all files from the soft delete directory to their original locations.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;╭─ Arguments ─────────────────────────────────────────────────────────────────────────────────────────────────────╮&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;│ *    bucket_name      TEXT  The name of the S3 bucket. &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;default: None&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;required&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;                               │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;╭─ Options ───────────────────────────────────────────────────────────────────────────────────────────────────────╮&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;│ --soft-delete-dir                    TEXT  The soft delete directory to restore from. &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;default: soft-delete/&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;   │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;│ --dry-run            --no-dry-run          If set, no files will be restored&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt; only listed.                      │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;│                                            &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;default: no-dry-run&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;                                                │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;│ --help                                     Show this message and exit.                                          │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Quick Start - kotaemon Docs</title>
    <id>https://waylonwalker.com/thought-527/</id>
    <updated>2025-01-11T16:34:26Z</updated>
    <published>2025-01-11T16:34:26Z</published>
    <link href="https://waylonwalker.com/thought-527/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://cinnamon.github.io/kotaemon/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://cinnamon.github.io/kotaemon/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Quick Start - kotaemon Docs&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;cinnamon.github.io&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;interesting UI for RAG based workflows, i.e. chatting with your documents.  It looks like it can run a number of models, feels like ollama with RAG and a nice web ui.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Bluesky is more like Twitter than X is</title>
    <id>https://waylonwalker.com/thought-526/</id>
    <updated>2025-01-11T02:17:50Z</updated>
    <published>2025-01-11T02:17:50Z</published>
    <link href="https://waylonwalker.com/thought-526/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://joelhooks.com/bluesky</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://joelhooks.com/bluesky&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://res.cloudinary.com/badass-courses/image/upload/w_1200,h_630,c_fill,f_auto/w_1020,h_450,c_fit,co_rgb:FFFFFF,g_west,x_90,y_-40,l_text:Roboto_60_left_bold:bluesky%20is%20more%20like%20twitter%20than%20x%20is/v1731357274/social-image-templates/joelhooks-com_sbhjby.png&#34; alt=&#34;Bluesky is more like Twitter than X is&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: Bluesky is more like Twitter than X is&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Bluesky is more like Twitter than X is&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;joelhooks.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Bluesky is almost excatly like twitter was when I joined years ago.  It’s gone crazy lately bogged deep in politics, bots, and ads.  I’ve seen like two scroll pages of ads in a row, its nuts.  What I did not know before Joel pointed out here is that the feed I am looking at is my following feed, its only feed of people I follow in descending order.  On bluesky you get to pick your feed!!!  This feels like tweetdeck did back when we were able to run that.  You could tune in search terms and save them it was glorious.  Bluesky has some really interesting ones that you can use like popular with friends, only posts, my bangers, that have a pre defined algorithms.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Why You Should Game on Linux (feat. GloriousEggroll of Nobara)...</title>
    <id>https://waylonwalker.com/thought-524/</id>
    <updated>2025-01-11T01:38:57Z</updated>
    <published>2025-01-11T01:38:57Z</published>
    <link href="https://waylonwalker.com/thought-524/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/watch?v=QwpTAk_IiyU&amp;t=28s</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;QwpTAk_IiyU&#34; title=&#34;Why You Should Game on Linux (feat. GloriousEggroll of Nobara)&#34; playlabel=&#34;Play: Why You Should Game on Linux (feat. GloriousEggroll of Nobara)&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;This man is responsible for making gaming on linux what it is today.  Such a heartfelt story to hear that reviving his dad’s machine was at the core of what drove him to do what he has done for the wider gaming on linux community.  Update on your schedule, remove all the tracking and bloatware, this is what drove him to start using linux before making it accessible for his Dad.&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;But really do update, this is not your 2002 PHP box, things need updated and regular updates help the process.&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>postiz-file-upload</title>
    <id>https://waylonwalker.com/postiz-file-upload/</id>
    <updated>2025-01-10T20:35:39Z</updated>
    <published>2025-01-10T20:35:39Z</published>
    <link href="https://waylonwalker.com/postiz-file-upload/" rel="alternate" type="text/html"></link>
    <summary type="text">Today I learned that the docs in postiz are a bit behind, (fantastic docs btw, they are to the point, and cover almost all of what you need). The docs state...</summary>
    <content type="html">&lt;p&gt;Today I learned that the docs in postiz are a bit behind, (fantastic docs btw,&#xA;they are to the point, and cover almost all of what you need).  The docs state&#xA;that you need to include an R2 bucket to handle uploads.&lt;/p&gt;&#xA;&lt;p&gt;This &lt;a href=&#34;https://github.com/gitroomhq/postiz-app/issues/322&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;issue&lt;/a&gt; shows that&#xA;more work has been done, one of which is local storage.  The &lt;a href=&#34;https://docs.postiz.com/installation/docker-compose&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/docs.postiz.com.png&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/docs.postiz.com.png&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;compose&#xA;file&lt;/a&gt; they use in the&#xA;quick start has the required env variables to set this up.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;      &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;STORAGE_PROVIDER&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;local&amp;#34;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;      &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;UPLOAD_DIRECTORY&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;/uploads&amp;#34;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;      &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;NEXT_PUBLIC_UPLOAD_DIRECTORY&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;/uploads&amp;#34;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;looking into my running instance I can see my images there.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;⬢ &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;devtainer&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt; ❯ podman &lt;span class=&#34;nb&#34;&gt;exec&lt;/span&gt; postiz ls /uploads/2025/01/09&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;811747b3f703f5d9a7f10aff5103412ff0.jpeg&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;a221db10a76f0c414171ab417379b09ec.jpeg&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>we beat trailmakers</title>
    <id>https://waylonwalker.com/we-beat-trailmakers/</id>
    <updated>2025-01-10T19:53:14Z</updated>
    <published>2025-01-10T19:53:14Z</published>
    <link href="https://waylonwalker.com/we-beat-trailmakers/" rel="alternate" type="text/html"></link>
    <summary type="text">Today we broke through the atmosphere in trailmakers ready for pickup from those back at mission conrol.</summary>
    <content type="html">&lt;p&gt;Today we broke through the atmosphere in trailmakers ready for pickup from&#xA;those back at mission conrol.&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;I haven’t posted a lot of gaming content to by blog, idk why, but I think I&#xA;am going to start, especially for the ones that are good memories with my&#xA;son.&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;p&gt;Today we hit 100% of the required parts required to build the space ship and&#xA;leave the atmosphere of the planet that the story is set in.  Trailmakers is a&#xA;game where you design and build your own vehicles.  The campaign mode standed&#xA;is a story where you are in a high tech freighter ship that crash lands on a&#xA;distant planet.  Your crew back home can come as far as the planet your on but&#xA;cannot break through the atmosphere.  Your job is to collect all the wreckage&#xA;and gain all the parts required for a space ship build to take you out of the&#xA;atmosphere to meet them.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/f751d33e-1829-47ea-a593-f1d940c86f4f.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;end screen&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/f751d33e-1829-47ea-a593-f1d940c86f4f.webp&#34; alt=&#34;end screen&#34;/ data-glightbox=&#34;description: end screen&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/73fed115-7d6a-4629-a9a3-be6819def314.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;end achievement&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/73fed115-7d6a-4629-a9a3-be6819def314.webp&#34; alt=&#34;end achievement&#34;/ data-glightbox=&#34;description: end achievement&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;p&gt;There were a couple really heavy salvages to gather up, this one is high in the&#xA;floating islands and is the cockpit fo the space ship.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/7ab6954a-4dd5-4ab8-b50e-91440c89570b.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;image&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/7ab6954a-4dd5-4ab8-b50e-91440c89570b.webp&#34; alt=&#34;image&#34;/ data-glightbox=&#34;description: image&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;p&gt;I thought this was a cool shot of one of our builds with the suspension fully&#xA;squatted out with a heavy load on the back.&lt;/p&gt;&#xA;&lt;h2 id=&#34;multiple-salvages&#34;&gt;Multiple Salvages &lt;a href=&#34;#multiple-salvages&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;It took us way to long to realize that we had enough power cores to add a bunch&#xA;of tractor beams to do multiple salvages at once. Each tractor beam only has&#xA;the ability to pick up one salvage at a time.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/36f1b541-e9c1-46f9-8219-e37bbed67344.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;screenshot-2025-01-11T03-14-29-022Z.png&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/36f1b541-e9c1-46f9-8219-e37bbed67344.webp&#34; alt=&#34;screenshot-2025-01-11T03-14-29-022Z.png&#34;/ data-glightbox=&#34;description: screenshot-2025-01-11T03-14-29-022Z.png&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;some-wild-moments&#34;&gt;Some wild moments &lt;a href=&#34;#some-wild-moments&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/e68cfa29-bc0b-41cc-8ae8-79ef26d1aa97.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;image&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/e68cfa29-bc0b-41cc-8ae8-79ef26d1aa97.webp&#34; alt=&#34;image&#34;/ data-glightbox=&#34;description: image&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;p&gt;This clip brought both of us to curled over laughter, I wish I had recording on&#xA;to get a full clip of it, this screenshot is the best I got.  What happened was&#xA;my son was being super silly and blew us up, but somehow the seat of the last&#xA;build stayed in while we respawnd and our new vehicle picked it up.  Not only&#xA;that, but the broken seat was still usable and he was able to sit in it!&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/636f3409-b8ad-44f7-9545-9b38d0393f07.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;image&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/636f3409-b8ad-44f7-9545-9b38d0393f07.webp&#34; alt=&#34;image&#34;/ data-glightbox=&#34;description: image&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;acheivements-status&#34;&gt;acheivements status &lt;a href=&#34;#acheivements-status&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;Currently I am quite a ways from getting 100% of the achievements for the game.&#xA;I think I will finish 100% of the stranded campaign because it is super fun,&#xA;but probably wont 100% it.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/2fa177b8-d4d3-41ef-b006-67b369459175.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;screenshot-2025-01-11T01-58-45-192Z.png&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/2fa177b8-d4d3-41ef-b006-67b369459175.webp&#34; alt=&#34;screenshot-2025-01-11T01-58-45-192Z.png&#34;/ data-glightbox=&#34;description: screenshot-2025-01-11T01-58-45-192Z.png&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;im-trying-out-video&#34;&gt;I’m trying out video &lt;a href=&#34;#im-trying-out-video&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;I turned on steam recording and played for a minute to test out hosting video here.&lt;/p&gt;&#xA;&lt;p&gt;&lt;video src=&#34;https://dropper.waylonwalker.com/api/file/efd58566-2f64-47d1-8b0b-13129b60a860.mp4&#34; controls=&#34;&#34;&gt;&lt;/video&gt;&lt;/p&gt;&#xA;&lt;h2 id=&#34;i-accidentally-entered-deep-space&#34;&gt;I accidentally entered deep space &lt;a href=&#34;#i-accidentally-entered-deep-space&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/956214ef-5f83-439b-9414-49be0c26b77a.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;screenshot-2025-01-12T02-04-53-917Z.png&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/956214ef-5f83-439b-9414-49be0c26b77a.webp&#34; alt=&#34;screenshot-2025-01-12T02-04-53-917Z.png&#34;/ data-glightbox=&#34;description: screenshot-2025-01-12T02-04-53-917Z.png&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 V2 suddenly getting client-not-enrolled today - X API - X Deve...</title>
    <id>https://waylonwalker.com/thought-523/</id>
    <updated>2025-01-10T02:56:15Z</updated>
    <published>2025-01-10T02:56:15Z</published>
    <link href="https://waylonwalker.com/thought-523/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://devcommunity.x.com/t/v2-suddenly-getting-client-not-enrolled-today/195456</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://devcommunity.x.com/t/v2-suddenly-getting-client-not-enrolled-today/195456&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;External Link&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;devcommunity.x.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Just tried using my twitter api key for the first time in quite awhile.  Apps now need to be tied to projects in order to work.  It looks like projects are where pricing comes into play.  Thankfully they still give a free tier for doing small time things for myself.  You can really see the effect that llms have on these things though as it is 5x more expensive to read posts than to make posts currently.  Data is the new gold for these kind of companies.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 containers/podman-compose: a script to run docker-compose.yml ...</title>
    <id>https://waylonwalker.com/thought-522/</id>
    <updated>2025-01-09T14:57:06Z</updated>
    <published>2025-01-09T14:57:06Z</published>
    <link href="https://waylonwalker.com/thought-522/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://github.com/containers/podman-compose</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://github.com/containers/podman-compose&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://opengraph.githubassets.com/8f66dda4b1cab1bbcccf715302518ca1594b91c6fe6ee469dc371a17bb1b782a/containers/podman-compose&#34; alt=&#34;GitHub - containers/podman-compose: a script to run docker-compose.yml using podman — a script to run docker-compose.yml using podman. Contribute to containers/podman-compose development by creating an account on GitHub.&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: GitHub - containers/podman-compose: a script to run docker-compose.yml using podman — a script to run docker-compose.yml using podman. Contribute to containers/podman-compose development by creating an account on GitHub.&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;GitHub - containers/podman-compose: a script to run docker-compose.yml using podman&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;a script to run docker-compose.yml using podman. Contribute to containers/podman-compose development by creating an account on GitHub.&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;GitHub · github.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Wild that the podman-compose github readme calls out k3s as an alternative.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/9326cd6f-3f27-4703-85fd-a3b16f7bdc92.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;image&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/9326cd6f-3f27-4703-85fd-a3b16f7bdc92.webp&#34; alt=&#34;image&#34;/ data-glightbox=&#34;description: image&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;p&gt;compose definitely has its place, especially for local development on a developers machine, its so much easier to stand up and get things like hot reload up and running smooth.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ containers podman-compose</title>
    <id>https://waylonwalker.com/containers-podman-compose/</id>
    <updated>2025-01-09T14:54:36Z</updated>
    <published>2025-01-09T14:54:36Z</published>
    <link href="https://waylonwalker.com/containers-podman-compose/" rel="alternate" type="text/html"></link>
    <summary type="text">The work on podman-compose by containers.</summary>
    <content type="html">&lt;p&gt;The work on &lt;a href=&#34;https://github.com/containers/podman-compose&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;podman-compose&lt;/a&gt; by &lt;a href=&#34;https://github.com/containers&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;containers&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;a script to run docker-compose.yml using podman&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 bic | Static blog generator, in bash</title>
    <id>https://waylonwalker.com/thought-521/</id>
    <updated>2025-01-09T14:22:47Z</updated>
    <published>2025-01-09T14:22:47Z</published>
    <link href="https://waylonwalker.com/thought-521/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://bic.sh/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://bic.sh/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;bic&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Static blog generator, in bash&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;bic · bic.sh&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Intereresting someone built a blog generator in bash.  it comes with normal markdown to &lt;a href=&#34;/html/&#34; class=&#34;glossary-term&#34; title=&#34;HTML (HyperText Markup Language) is the standard markup language used to create and design documents on the World Wide Web. It structures web content by...&#34;&gt;html&lt;/a&gt;, static content, robots.txt, sitemap, rss, and tags.  It uses pandoc to take markdown to html and mustache for page templates.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Animate to height: auto; (and other intrinsic sizing keywords)...</title>
    <id>https://waylonwalker.com/thought-520/</id>
    <updated>2025-01-09T14:20:25Z</updated>
    <published>2025-01-09T14:20:25Z</published>
    <link href="https://waylonwalker.com/thought-520/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://developer.chrome.com/docs/css-ui/animate-to-height-auto/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://developer.chrome.com/docs/css-ui/animate-to-height-auto/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://developer.chrome.com/static/docs/css-ui/animate-to-height-auto/image/animate-to-height-auto.png&#34; alt=&#34;Animate to height: auto; (and other intrinsic sizing keywords) in CSS  |  CSS and UI  |  Chrome for Developers — Animate to and from intrinsic sizing keywords with `interpolate-size` and `calc-size()`&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: Animate to height: auto; (and other intrinsic sizing keywords) in CSS  |  CSS and UI  |  Chrome for Developers — Animate to and from intrinsic sizing keywords with `interpolate-size` and `calc-size()`&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Animate to height: auto; (and other intrinsic sizing keywords) in CSS  |  CSS and UI  |  Chrome for Developers&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Animate to and from intrinsic sizing keywords with `interpolate-size` and `calc-size()`&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;Chrome for Developers · developer.chrome.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Css is getting so good, new things like interpolate-size are making things that use to require some deep expertise and hacks intuitive and easy.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c&#34;&gt;/* Opt-in the whole page to interpolate sizes to/from keywords */&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;nd&#34;&gt;root&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;n&#34;&gt;interpolate-size&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;allow-keywords&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt; &lt;span class=&#34;c&#34;&gt;/* 👈 */&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;}&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 awesome-cursorrules/rules/py-fast-api/.cursorrules at main · P...</title>
    <id>https://waylonwalker.com/thought-519/</id>
    <updated>2025-01-09T14:03:12Z</updated>
    <published>2025-01-09T14:03:12Z</published>
    <link href="https://waylonwalker.com/thought-519/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://github.com/PatrickJS/awesome-cursorrules/blob/main/rules/py-fast-api/.cursorrules</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;/static/https://github.com/PatrickJS/awesome-cursorrules/blob/main/rules/py-fast-api/.cursorrules&#34; class=&#34;glightbox-link&#34; aria-label=&#34;https://github.com/PatrickJS/awesome-cursorrules/blob/main/rules/py-fast-api/.cursorrules&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;/static/https://github.com/PatrickJS/awesome-cursorrules/blob/main/rules/py-fast-api/.cursorrules&#34; alt=&#34;https://github.com/PatrickJS/awesome-cursorrules/blob/main/rules/py-fast-api/.cursorrules&#34;/ data-glightbox=&#34;description: https://github.com/PatrickJS/awesome-cursorrules/blob/main/rules/py-fast-api/.cursorrules&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;p&gt;Looks like a great start to a rules file for &lt;a href=&#34;/fastapi/&#34; class=&#34;glossary-term&#34; title=&#34;FastAPI is a modern and efficient web framework for Python, built on top of the Starlette web framework, and pydantic for data validation and serialization.&#34;&gt;fastapi&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;Place the happy path last in the function for improved readability.&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;p&gt;I have never heard anyone say this.  It feels weird to me.  The other early return, find and handle errors early all make sense to me, but happy path last is new to me.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Generate Custom .cursorrules for Your Project Based on Communi...</title>
    <id>https://waylonwalker.com/thought-518/</id>
    <updated>2025-01-09T13:53:40Z</updated>
    <published>2025-01-09T13:53:40Z</published>
    <link href="https://waylonwalker.com/thought-518/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://egghead.io/generate-custom-cursorrules-for-your-project-based-on-community-examples~eimq2</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://egghead.io/generate-custom-cursorrules-for-your-project-based-on-community-examples~eimq2&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://builder.egghead.io/api/og?resource=generate-custom-cursorrules-for-your-project-based-on-community-examples~eimq2&#34; alt=&#34;Generate Custom .cursorrules for Your Project Based on Community Examples — expert led courses for front-end web developers and teams that want to level up through straightforward and concise lessons on the most useful tools available.&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: Generate Custom .cursorrules for Your Project Based on Community Examples — expert led courses for front-end web developers and teams that want to level up through straightforward and concise lessons on the most useful tools available.&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Generate Custom .cursorrules for Your Project Based on Community Examples&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;expert led courses for front-end web developers and teams that want to level up through straightforward and concise lessons on the most useful tools available.&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;egghead · egghead.io&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Really interesting way to generate a rules file for agentic workflows based on your current repo.  John uses gitingest here, looks like a fantastic tool, but probably not useful for most private repos.  I’m sure you can replicate the same thing in a private repo wtih a small amount of effort the few times you need to do it.  gitingest looks like a great way to pull in some extra context for some open source dependencies that you have though.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 cyclotruc/gitingest: Replace &#39;hub&#39; with &#39;ingest&#39; in any github...</title>
    <id>https://waylonwalker.com/thought-517/</id>
    <updated>2025-01-09T13:46:33Z</updated>
    <published>2025-01-09T13:46:33Z</published>
    <link href="https://waylonwalker.com/thought-517/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://github.com/cyclotruc/gitingest</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://github.com/cyclotruc/gitingest&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://opengraph.githubassets.com/cfed6a23a30a854c357f8c47f5dd9641ce2499c01ca1527def9b6be5423d30da/coderamp-labs/gitingest&#34; alt=&#34;GitHub - coderamp-labs/gitingest: Replace &amp;#39;hub&amp;#39; with &amp;#39;ingest&amp;#39; in any GitHub URL to get a prompt-friendly extract of a codebase — Replace &amp;#39;hub&amp;#39; with &amp;#39;ingest&amp;#39; in any GitHub URL to get a prompt-friendly extract of a codebase  - coderamp-labs/gitingest&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: GitHub - coderamp-labs/gitingest: Replace &amp;#39;hub&amp;#39; with &amp;#39;ingest&amp;#39; in any GitHub URL to get a prompt-friendly extract of a codebase — Replace &amp;#39;hub&amp;#39; with &amp;#39;ingest&amp;#39; in any GitHub URL to get a prompt-friendly extract of a codebase  - coderamp-labs/gitingest&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;GitHub - coderamp-labs/gitingest: Replace &amp;#39;hub&amp;#39; with &amp;#39;ingest&amp;#39; in any GitHub URL to get a prompt-friendly extract of a codebase&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Replace &amp;#39;hub&amp;#39; with &amp;#39;ingest&amp;#39; in any GitHub URL to get a prompt-friendly extract of a codebase  - coderamp-labs/gitingest&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;GitHub · github.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Gitingest has a python package on pypi that you can run with uvx, and it accepts the same arguments as the web version, right in your terminal&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;⬢ &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;devtainer&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt; ❯ uvx gitingest --help&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Usage: gitingest &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;OPTIONS&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt; SOURCE&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  Analyze a directory and create a text dump of its contents.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Options:&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  -o, --output TEXT           Output file path &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;default: &amp;lt;repo_name&amp;gt;.txt in&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;                              current directory&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  -s, --max-size INTEGER      Maximum file size to process in bytes&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  -e, --exclude-pattern TEXT  Patterns to exclude&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  -i, --include-pattern TEXT  Patterns to include&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  --help                      Show this message and exit.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ cyclotruc gitingest</title>
    <id>https://waylonwalker.com/cyclotruc-gitingest/</id>
    <updated>2025-01-09T13:41:27Z</updated>
    <published>2025-01-09T13:41:27Z</published>
    <link href="https://waylonwalker.com/cyclotruc-gitingest/" rel="alternate" type="text/html"></link>
    <summary type="text">I&#39;m really excited about gitingest, an amazing project by cyclotruc. It&#39;s worth exploring!</summary>
    <content type="html">&lt;p&gt;I’m really excited about &lt;a href=&#34;https://github.com/cyclotruc/gitingest&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;gitingest&lt;/a&gt;, an amazing project by &lt;a href=&#34;https://github.com/cyclotruc&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;cyclotruc&lt;/a&gt;. It’s worth exploring!&lt;/p&gt;&#xA;&lt;p&gt;Replace ‘hub’ with ‘ingest’ in any github url to get a prompt-friendly extract of a codebase&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ coderamp-labs gitingest</title>
    <id>https://waylonwalker.com/coderamp-labs-gitingest/</id>
    <updated>2025-01-09T13:41:27Z</updated>
    <published>2025-01-09T13:41:27Z</published>
    <link href="https://waylonwalker.com/coderamp-labs-gitingest/" rel="alternate" type="text/html"></link>
    <summary type="text">Looking for inspiration? gitingest by coderamp-labs.</summary>
    <content type="html">&lt;p&gt;Looking for inspiration? &lt;a href=&#34;https://github.com/coderamp-labs/gitingest&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;gitingest&lt;/a&gt; by &lt;a href=&#34;https://github.com/coderamp-labs&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;coderamp-labs&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Replace ‘hub’ with ‘ingest’ in any github url to get a prompt-friendly extract of a codebase&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Gitingest</title>
    <id>https://waylonwalker.com/thought-516/</id>
    <updated>2025-01-09T13:40:41Z</updated>
    <published>2025-01-09T13:40:41Z</published>
    <link href="https://waylonwalker.com/thought-516/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://gitingest.com/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://gitingest.com/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;/static/og-image.png&#34; alt=&#34;Gitingest — Replace&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: Gitingest — Replace&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Gitingest&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Replace &lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;gitingest.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Replace &lt;strong&gt;hub&lt;/strong&gt; with &lt;strong&gt;ingest&lt;/strong&gt; in any &lt;strong&gt;github&lt;/strong&gt; and get a prompt friendly codebase ready to feed into any llm.  It combines the entire codebase, based on a gitignore style glob that you pass in, into a single TXT file.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ Pinjasaur bic</title>
    <id>https://waylonwalker.com/pinjasaur-bic/</id>
    <updated>2025-01-09T02:25:48Z</updated>
    <published>2025-01-09T02:25:48Z</published>
    <link href="https://waylonwalker.com/pinjasaur-bic/" rel="alternate" type="text/html"></link>
    <summary type="text">Check out bic by Pinjasaur. It&#39;s a well-crafted project with great potential.</summary>
    <content type="html">&lt;p&gt;Check out &lt;a href=&#34;https://github.com/Pinjasaur/bic&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;bic&lt;/a&gt; by &lt;a href=&#34;https://github.com/Pinjasaur&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;Pinjasaur&lt;/a&gt;. It’s a well-crafted project with great potential.&lt;/p&gt;&#xA;&lt;p&gt;Static blog generator, in bash&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 olimorris/codecompanion.nvim: ✨ AI-powered coding, seamlessly ...</title>
    <id>https://waylonwalker.com/thought-515/</id>
    <updated>2025-01-09T02:18:50Z</updated>
    <published>2025-01-09T02:18:50Z</published>
    <link href="https://waylonwalker.com/thought-515/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://github.com/olimorris/codecompanion.nvim</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;/static/https://github.com/olimorris/codecompanion.nvim&#34; class=&#34;glightbox-link&#34; aria-label=&#34;https://github.com/olimorris/codecompanion.nvim&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;/static/https://github.com/olimorris/codecompanion.nvim&#34; alt=&#34;https://github.com/olimorris/codecompanion.nvim&#34;/ data-glightbox=&#34;description: https://github.com/olimorris/codecompanion.nvim&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;p&gt;Definitely need to give codecompanion.nvim a try, it looks like a competitor to windsurf but in nvim.  It looks so feature complete that its hard to grasp all of what it does.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Cracking the Code | Open Sauce 2024 - YouTube</title>
    <id>https://waylonwalker.com/thought-514/</id>
    <updated>2025-01-08T21:08:08Z</updated>
    <published>2025-01-08T21:08:08Z</published>
    <link href="https://waylonwalker.com/thought-514/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/watch?v=9vSiP_ftyuQ</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;9vSiP_ftyuQ&#34; title=&#34;Cracking the Code | Open Sauce 2024&#34; playlabel=&#34;Play: Cracking the Code | Open Sauce 2024&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Great panel of software folks at open sauce.  It was interesting hearing from all these creators from the perspective of an open sauce panel.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 WaylonWalker/nvim-manager: manage dotfiles with nvim_appname</title>
    <id>https://waylonwalker.com/thought-513/</id>
    <updated>2025-01-08T17:11:34Z</updated>
    <published>2025-01-08T17:11:34Z</published>
    <link href="https://waylonwalker.com/thought-513/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://github.com/WaylonWalker/nvim-manager/releases/tag/v0.0.2</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;/static/https://github.com/WaylonWalker/nvim-manager/releases/tag/v0.0.2&#34; class=&#34;glightbox-link&#34; aria-label=&#34;https://github.com/WaylonWalker/nvim-manager/releases/tag/v0.0.2&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;/static/https://github.com/WaylonWalker/nvim-manager/releases/tag/v0.0.2&#34; alt=&#34;https://github.com/WaylonWalker/nvim-manager/releases/tag/v0.0.2&#34;/ data-glightbox=&#34;description: https://github.com/WaylonWalker/nvim-manager/releases/tag/v0.0.2&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;p&gt;New release out for nvim-manager that supports installing pre-configured distros.  It’s such a breeze to install these now, its been fun to go through each of them.  The currently included distros are.&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;LazyVim&lt;/li&gt;&#xA;&lt;li&gt;AstroVim&lt;/li&gt;&#xA;&lt;li&gt;kickstart&lt;/li&gt;&#xA;&lt;li&gt;NvChad&lt;/li&gt;&#xA;&lt;li&gt;LunarVim&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Releases · WaylonWalker/nvim-manager</title>
    <id>https://waylonwalker.com/thought-512/</id>
    <updated>2025-01-08T03:09:30Z</updated>
    <published>2025-01-08T03:09:30Z</published>
    <link href="https://waylonwalker.com/thought-512/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://github.com/WaylonWalker/nvim-manager/releases</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://github.com/WaylonWalker/nvim-manager/releases&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://opengraph.githubassets.com/288ea3d9a89631a1c891efaa01f6a0511d367d92e445d5a0b6036aab9c640567/WaylonWalker/nvim-manager&#34; alt=&#34;Releases · WaylonWalker/nvim-manager — manage dotfiles with nvim_appname. Contribute to WaylonWalker/nvim-manager development by creating an account on GitHub.&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: Releases · WaylonWalker/nvim-manager — manage dotfiles with nvim_appname. Contribute to WaylonWalker/nvim-manager development by creating an account on GitHub.&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Releases · WaylonWalker/nvim-manager&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;manage dotfiles with nvim_appname. Contribute to WaylonWalker/nvim-manager development by creating an account on GitHub.&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;GitHub · github.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;First release of &lt;code&gt;nvim-manager&lt;/code&gt; is out. Your dotfiles change a lot, sometimes it’s hard to manage all of the places you have installed them and potentially made hand edits to. nvim-manager allows you to easily make static releases of your dotfiles, and keep your nvim install from breaking by leveraging NVIM_APPNAME and pinned releases of your dotfiles stored in ~/.config. In this directory you might have many nvim configurations installed, nvim-manager automates the process of installing and updating from your dotfiles, while keeping previous pinned versions untouched.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 URL escape codes</title>
    <id>https://waylonwalker.com/thought-511/</id>
    <updated>2025-01-07T02:03:16Z</updated>
    <published>2025-01-07T02:03:16Z</published>
    <link href="https://waylonwalker.com/thought-511/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://docs.microfocus.com/OMi/10.62/Content/OMi/ExtGuide/ExtApps/URL_encoding.htm</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;/static/https://docs.microfocus.com/OMi/10.62/Content/OMi/ExtGuide/ExtApps/URL_encoding.htm&#34; class=&#34;glightbox-link&#34; aria-label=&#34;https://docs.microfocus.com/OMi/10.62/Content/OMi/ExtGuide/ExtApps/URL_encoding.htm&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;/static/https://docs.microfocus.com/OMi/10.62/Content/OMi/ExtGuide/ExtApps/URL_encoding.htm&#34; alt=&#34;https://docs.microfocus.com/OMi/10.62/Content/OMi/ExtGuide/ExtApps/URL_encoding.htm&#34;/ data-glightbox=&#34;description: https://docs.microfocus.com/OMi/10.62/Content/OMi/ExtGuide/ExtApps/URL_encoding.htm&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;p&gt;Nice list of url escape codes.  I did not actually know that to get a literal sequence like %2D you can use $2D.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 GitHub - ngalaiko/tree-sitter-go-template: Golang template gra...</title>
    <id>https://waylonwalker.com/thought-510/</id>
    <updated>2025-01-06T18:49:13Z</updated>
    <published>2025-01-06T18:49:13Z</published>
    <link href="https://waylonwalker.com/thought-510/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://github.com/ngalaiko/tree-sitter-go-template</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://github.com/ngalaiko/tree-sitter-go-template&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://opengraph.githubassets.com/d2cfdb7a2039f6a25b30519f20b54d0e31c8a3515aa81111420bb9807d9734bc/ngalaiko/tree-sitter-go-template&#34; alt=&#34;GitHub - ngalaiko/tree-sitter-go-template: Golang template grammar for tree-sitter — Golang template grammar for tree-sitter. Contribute to ngalaiko/tree-sitter-go-template development by creating an account on GitHub.&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: GitHub - ngalaiko/tree-sitter-go-template: Golang template grammar for tree-sitter — Golang template grammar for tree-sitter. Contribute to ngalaiko/tree-sitter-go-template development by creating an account on GitHub.&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;GitHub - ngalaiko/tree-sitter-go-template: Golang template grammar for tree-sitter&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Golang template grammar for tree-sitter. Contribute to ngalaiko/tree-sitter-go-template development by creating an account on GitHub.&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;GitHub · github.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;This setup fixed my nvim syntax highlighting in helm templates.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 imagegenius/docker-immich: Monolithic (Single) Docker Containe...</title>
    <id>https://waylonwalker.com/thought-509/</id>
    <updated>2025-01-06T14:44:08Z</updated>
    <published>2025-01-06T14:44:08Z</published>
    <link href="https://waylonwalker.com/thought-509/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://github.com/imagegenius/docker-immich/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://github.com/imagegenius/docker-immich/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://opengraph.githubassets.com/e1d9e80a3c64d9ce290b5b052066b50b82cd68db427935ee8096c69b7bca5c36/imagegenius/docker-immich&#34; alt=&#34;GitHub - imagegenius/docker-immich: Monolithic (Single) Docker Container for Immich — Monolithic (Single) Docker Container for Immich. Contribute to imagegenius/docker-immich development by creating an account on GitHub.&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: GitHub - imagegenius/docker-immich: Monolithic (Single) Docker Container for Immich — Monolithic (Single) Docker Container for Immich. Contribute to imagegenius/docker-immich development by creating an account on GitHub.&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;GitHub - imagegenius/docker-immich: Monolithic (Single) Docker Container for Immich&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Monolithic (Single) Docker Container for Immich. Contribute to imagegenius/docker-immich development by creating an account on GitHub.&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;GitHub · github.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;imagegenius has made an immich all in one setup that looks much easier to use than immich.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Owning It · Matthias Ott</title>
    <id>https://waylonwalker.com/thought-508/</id>
    <updated>2025-01-06T13:23:23Z</updated>
    <published>2025-01-06T13:23:23Z</published>
    <link href="https://waylonwalker.com/thought-508/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://matthiasott.com/notes/owning-it</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://matthiasott.com/notes/owning-it&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://matthiasott.com//assets/pictures/_twitterimage/owning-it_2025-01-06-002955_syir.jpg&#34; alt=&#34;Owning It · Matthias Ott — Owning your content and platform means true independence on the web. Why it matters more than ever for creators.&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: Owning It · Matthias Ott — Owning your content and platform means true independence on the web. Why it matters more than ever for creators.&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Owning It · Matthias Ott&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Owning your content and platform means true independence on the web. Why it matters more than ever for creators.&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;Matthias Ott – Web Design Engineer · matthiasott.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;I can say I had the same kind of feelings when I first saw something called “Own Your Web” being run in Buttondown.  I totally get it.  It takes time and effort to build your own stuff, email sending is hard, not done right ends you in the spam folder.  There is something about the name though that I think needs to set an example and &lt;a href=&#34;/self-host/&#34; class=&#34;glossary-term&#34; title=&#34;Self hosting is the act of hosting your own applications and services without using a SAS provider. This is typically done with your own hardware, but there...&#34;&gt;self host&lt;/a&gt; as much as it possibly can.&lt;/p&gt;&#xA;&lt;p&gt;The changelog has covered this several times, do they need to go to the crazy lengths they do to run their site, no probably not, but it keeps them in the loop.  They are using the tech they talk about in a very real and production critical way to run the show.&lt;/p&gt;&#xA;&lt;p&gt;Cant wait to see more from ownyourweb.site&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 The weirdest controller I&#39;ve ever used</title>
    <id>https://waylonwalker.com/thought-507/</id>
    <updated>2025-01-04T17:07:40Z</updated>
    <published>2025-01-04T17:07:40Z</published>
    <link href="https://waylonwalker.com/thought-507/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/watch?v=OrucAJknMys</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;OrucAJknMys&#34; title=&#34;The Weirdest controller I&amp;#39;ve ever Used.&#34; playlabel=&#34;Play: The Weirdest controller I&amp;#39;ve ever Used.&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Gyroscope better than a mouse??  Nerd nest really sells how having two gyros in the way they have done for noise cancelling changes the game on it, and makes it a contender to replace a mouse.&lt;/p&gt;&#xA;&lt;p&gt;It really makes me want to try it.  I love how repairable this controller looks.  I’ve got to imagine that the fact that it comes as a kit, and all the parts are available that this hits S tier repairability.  My current controller of choice is a PS5 and I’ve had stick issues I wish I could fix.&lt;/p&gt;&#xA;&lt;p&gt;No analog triggers, I’m out.  Maybe they will make it an option in the future idk.  I don’t play shooters where I need a hair trigger, this won’t work on session or driving games.&lt;/p&gt;&#xA;&lt;p&gt;micro usb, seriously, that kinda kills it for me too.&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;edit&lt;/strong&gt; I looked on their website and they have usb c in the latest version&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Postiz: The All-in-One Social Media Management Tool</title>
    <id>https://waylonwalker.com/thought-506/</id>
    <updated>2025-01-04T15:39:27Z</updated>
    <published>2025-01-04T15:39:27Z</published>
    <link href="https://waylonwalker.com/thought-506/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://postiz.com/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://postiz.com/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://cms.postiz.com/wp-content/uploads/2024/06/OG-1-1024x538.png&#34; alt=&#34;Postiz: The All-in-One agentic social media scheduling tool — Streamline your social media with Postiz. Schedule posts, analyze performance, and manage all accounts in one place.&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: Postiz: The All-in-One agentic social media scheduling tool — Streamline your social media with Postiz. Schedule posts, analyze performance, and manage all accounts in one place.&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Postiz: The All-in-One agentic social media scheduling tool&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Streamline your social media with Postiz. Schedule posts, analyze performance, and manage all accounts in one place.&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;Postiz · postiz.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;postiz looks like a very polished way to automate and schedule posts to all the social services.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 gitroomhq/postiz-helmchart: Helm for Postiz</title>
    <id>https://waylonwalker.com/thought-505/</id>
    <updated>2025-01-04T15:36:10Z</updated>
    <published>2025-01-04T15:36:10Z</published>
    <link href="https://waylonwalker.com/thought-505/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://github.com/gitroomhq/postiz-helmchart</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://github.com/gitroomhq/postiz-helmchart&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://opengraph.githubassets.com/31d2afed8816c39d3c96c166a9b66790610e86b994524ad0c48957223d9efeef/gitroomhq/postiz-helmchart&#34; alt=&#34;GitHub - gitroomhq/postiz-helmchart: Helm for Postiz — Helm for Postiz. Contribute to gitroomhq/postiz-helmchart development by creating an account on GitHub.&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: GitHub - gitroomhq/postiz-helmchart: Helm for Postiz — Helm for Postiz. Contribute to gitroomhq/postiz-helmchart development by creating an account on GitHub.&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;GitHub - gitroomhq/postiz-helmchart: Helm for Postiz&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Helm for Postiz. Contribute to gitroomhq/postiz-helmchart development by creating an account on GitHub.&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;GitHub · github.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Reminder to myself, look into self hosting postiz with this helm chart later.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Realign – Chris Coyier</title>
    <id>https://waylonwalker.com/thought-503/</id>
    <updated>2025-01-04T14:25:02Z</updated>
    <published>2025-01-04T14:25:02Z</published>
    <link href="https://waylonwalker.com/thought-503/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://chriscoyier.net/2025/01/03/realign/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://chriscoyier.net/2025/01/03/realign/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://jetpack.com/redirect/?source=sigenerate&amp;amp;query=t%3DeyJ0eHQiOiJSZWFsaWduIiwidGVtcGxhdGUiOiJmdWxsc2NyZWVuIiwiYmxvZ19pZCI6NzQwNzQyNDh9.MbeAu1AeMezY52RJjFG9lceg8PN8Y3YjvU4J6PtSV3EMQ&#34; alt=&#34;Realign — I just popped out a realign of the ol’ personal website. I only say realign as I didn’t rethink every single detail of the thing. I’d say probably 40% of the original HTML and CSS…&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: Realign — I just popped out a realign of the ol’ personal website. I only say realign as I didn’t rethink every single detail of the thing. I’d say probably 40% of the original HTML and CSS…&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Realign&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;I just popped out a realign of the ol’ personal website. I only say realign as I didn’t rethink every single detail of the thing. I’d say probably 40% of the original HTML and CSS…&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;Chris Coyier · chriscoyier.net&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Chris Coyier had a small re-align on his site, some good nuggets in here.&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;I like the idea of having a photo of myself prominently on the site, so you know who you’re dealing with here.&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;p&gt;I really like this after thinking about it and I think I am going to make sure I get my face back on my posts.  I do have my 8bit style pixel art image of me that I use on social media, but no real picture.&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;I feel like a lot of people redesign their entire website when it’s time to update to the latest list of social networks and I’m no different. Once you touch it you gotta keep going.&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;p&gt;I can totally relate to this, once you open the thing, you get the build tools greased up, and your confidence high that re-deploying isn’t going to mess something up, I tend to start digging in to other things.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 About Me – Harry Roberts – Web Performance Consultant</title>
    <id>https://waylonwalker.com/thought-502/</id>
    <updated>2025-01-04T04:14:00Z</updated>
    <published>2025-01-04T04:14:00Z</published>
    <link href="https://waylonwalker.com/thought-502/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://csswizardry.com/about/#section:colophon</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://csswizardry.com/about/#section:colophon&#34; class=&#34;embed-card-link  has-avatar has-avatar-before&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/csswizardry.com.png&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/csswizardry.com.png&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;About Harry Roberts – CSS Wizardry&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;csswizardry.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;I’ve only recently learned what colophon means, and I really like to read through site that use it.  If you don’t know its about how the site is built.  I’ve always liked peeking under the hood of things to understand how they work, it’s what turned me towards an engineering degree.&lt;/p&gt;&#xA;&lt;p&gt;I love how he mentions that he chose the name when he was 17 and he is stuck with it.  I particularly like the name, it has something special to it.  Hats off to you for doing something that has lasted so long for you.  I fully understand though, I have projects that I made a year ago that I think why did I name it that.  At the same time when I try to think of a name I end up with the I don’t have anything good and I’d rather build the thing so fuck it, its going to be what it is.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Using Obsidian as a Gaming Backlog Library</title>
    <id>https://waylonwalker.com/thought-501/</id>
    <updated>2025-01-03T22:59:05Z</updated>
    <published>2025-01-03T22:59:05Z</published>
    <link href="https://waylonwalker.com/thought-501/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://bryanhogan.com/blog/obsidian-gaming-backlog</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://bryanhogan.com/blog/obsidian-gaming-backlog&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://bryanhogan.com/images/Bryan-Hogan-Preview.png&#34; alt=&#34;Using Obsidian as a Gaming Backlog Library — How to use Obsidian as a gaming backlog library. Get a long-lasting overview of games you want to and have played.&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: Using Obsidian as a Gaming Backlog Library — How to use Obsidian as a gaming backlog library. Get a long-lasting overview of games you want to and have played.&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Using Obsidian as a Gaming Backlog Library&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;How to use Obsidian as a gaming backlog library. Get a long-lasting overview of games you want to and have played.&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;Bryan Hogan · bryanhogan.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Very interesting way to catalog games, I need to make a catalog of mine, I’ll probably start adding some blog entries for games I’m in and have completed.  Wonder if there is a way to hook into steam with python to get achievements and progress live.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Harry Roberts: &#34;📡 I’ve been writing a lot lately. I’ve also du...</title>
    <id>https://waylonwalker.com/thought-500/</id>
    <updated>2025-01-03T22:56:44Z</updated>
    <published>2025-01-03T22:56:44Z</published>
    <link href="https://waylonwalker.com/thought-500/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://bsky.app/profile/csswizardry.com/post/3lckq4qo6zs22</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://bsky.app/profile/csswizardry.com/post/3lckq4qo6zs22&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://cdn.bsky.app/img/avatar_thumbnail/plain/did:plc:52up7cndgdslkpxfrxb3kghh/bafkreiggbvzqgtieuxek4nfspovxuptd7762coyawrgmsx7c6fmscrvjru&#34; alt=&#34;Harry Roberts (@csswizardry.com) — 📡 I’ve been writing a lot lately. I’ve also dusted off my RSS reader. Send me your feeds! Mine is at csswizardry.com/feed.xml&#xA;https://csswizardry.com/feed.xml&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: Harry Roberts (@csswizardry.com) — 📡 I’ve been writing a lot lately. I’ve also dusted off my RSS reader. Send me your feeds! Mine is at csswizardry.com/feed.xml&#xA;https://csswizardry.com/feed.xml&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Harry Roberts (@csswizardry.com)&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;📡 I’ve been writing a lot lately. I’ve also dusted off my RSS reader. Send me your feeds! Mine is at csswizardry.com/feed.xml&#xA;https://csswizardry.com/feed.xml&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;Bluesky Social · bsky.app&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Tons of cool people came out with their rss feeds here, again will need to browse more closely later.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 myRSS/personal-blogs.xml at master · sturobson/myRSS</title>
    <id>https://waylonwalker.com/thought-499/</id>
    <updated>2025-01-03T22:54:32Z</updated>
    <published>2025-01-03T22:54:32Z</published>
    <link href="https://waylonwalker.com/thought-499/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://github.com/sturobson/myRSS/blob/master/personal-blogs.xml</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;/static/https://github.com/sturobson/myRSS/blob/master/personal-blogs.xml&#34; class=&#34;glightbox-link&#34; aria-label=&#34;https://github.com/sturobson/myRSS/blob/master/personal-blogs.xml&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;/static/https://github.com/sturobson/myRSS/blob/master/personal-blogs.xml&#34; alt=&#34;https://github.com/sturobson/myRSS/blob/master/personal-blogs.xml&#34;/ data-glightbox=&#34;description: https://github.com/sturobson/myRSS/blob/master/personal-blogs.xml&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;p&gt;Sturobson has a ton of rss feeds here, I recognize quite a few, will definitely need to poke at some of these later.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Own Your Web • Buttondown</title>
    <id>https://waylonwalker.com/thought-497/</id>
    <updated>2025-01-03T16:43:26Z</updated>
    <published>2025-01-03T16:43:26Z</published>
    <link href="https://waylonwalker.com/thought-497/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://buttondown.com/ownyourweb</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://buttondown.com/ownyourweb&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://assets.buttondown.email/images/349f6a10-bca3-4f68-9106-2fc7af674487.jpg&#34; alt=&#34;Own Your Web — Own Your Web is a newsletter by Matthias Ott about designing, building, creating, and publishing for and on the Web. Every other week, I send out an exclusive email full of actionable insights, best practices, hacks, links, books, tools, and other high-quality insights I found or explored. Whether you want to get started with your own personal website or level up as a designer, developer, or independent creator working with the ever-changing material of the Web, this little email is for you. ❤✊ Free. No spam ever. You can unsubscribe at any time. By signing up, you consent to my use of your email address to stay in touch with you, as provided in my Privacy Policy.&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: Own Your Web — Own Your Web is a newsletter by Matthias Ott about designing, building, creating, and publishing for and on the Web. Every other week, I send out an exclusive email full of actionable insights, best practices, hacks, links, books, tools, and other high-quality insights I found or explored. Whether you want to get started with your own personal website or level up as a designer, developer, or independent creator working with the ever-changing material of the Web, this little email is for you. ❤✊ Free. No spam ever. You can unsubscribe at any time. By signing up, you consent to my use of your email address to stay in touch with you, as provided in my Privacy Policy.&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Own Your Web&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Own Your Web is a newsletter by Matthias Ott about designing, building, creating, and publishing for and on the Web. Every other week, I send out an exclusive email full of actionable insights, bes...&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;buttondown.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;I’m a sucker for good own your own shit on the web blogs, and Matthias Ott has a top notch one here.  The archive has been a great read so far, I’ve discovered things like slashpages.net.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Fork Around And Find Out | Remaining Authentic in Retirement w...</title>
    <id>https://waylonwalker.com/thought-496/</id>
    <updated>2025-01-03T16:39:51Z</updated>
    <published>2025-01-03T16:39:51Z</published>
    <link href="https://waylonwalker.com/thought-496/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://share.transistor.fm/s/a9e41e15</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://share.transistor.fm/s/a9e41e15&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://img.transistorcdn.com/mHoxCHu62O4E-j5TFlNHwKgjmPh6nVKx-9HlNfwAYBg/rs:fill:0:0:1/w:800/h:800/q:60/mb:500000/aHR0cHM6Ly9pbWct/dXBsb2FkLXByb2R1/Y3Rpb24udHJhbnNp/c3Rvci5mbS8xMzk0/MmM3M2ExY2IwNTdh/MGM5MjdhMTMyN2Qw/OGU5Ny5wbmc.webp&#34; alt=&#34;Fork Around And Find Out | Remaining Authentic in Retirement with Kelsey Hightower — Retirement is about the journey, not the destination. For Kelsey Hightower, it’s been an epic journey. On our debut episode of the Fork Around and Find Out Podcast (and much to Autumn’s elation), Kelsey joins us to run down his illustrious career that spans a quarter of a century.Known for...&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: Fork Around And Find Out | Remaining Authentic in Retirement with Kelsey Hightower — Retirement is about the journey, not the destination. For Kelsey Hightower, it’s been an epic journey. On our debut episode of the Fork Around and Find Out Podcast (and much to Autumn’s elation), Kelsey joins us to run down his illustrious career that spans a quarter of a century.Known for...&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Fork Around And Find Out | Remaining Authentic in Retirement with Kelsey Hightower&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Retirement is about the journey, not the destination. For Kelsey Hightower, it’s been an epic journey. On our debut episode of the Fork Around and Find Out Podcast (and much to Autumn’s elation...&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;share.transistor.fm&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;What a great first guest for FAFO.  Kelsey is always such a great listen.  He talks about killedbygoogle and how engineers get no incentive to work on old projects, google had no incentive, and you got the thing for FREE in the first place.  He talks about end of career and having love you money, having so much in the bank you can say no.  If you are presented with a project that does not align with your values you can say no.M&lt;/p&gt;&#xA;&lt;p&gt;Justin even mentions how Google has more killedbygoogle projects than Amazon has total projects.&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;If we knew how hard it would be, we would never build it.&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;p&gt;Autumn’s Fav quote from ep1 of shipit&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>/start</title>
    <id>https://waylonwalker.com/start/</id>
    <updated>2025-01-03T10:49:47Z</updated>
    <published>2025-01-03T10:49:47Z</published>
    <link href="https://waylonwalker.com/start/" rel="alternate" type="text/html"></link>
    <summary type="text">Welcome to waylonwalker.com, my small corner of the internet. I currently have posts published, here are some links to help you get started around here.</summary>
    <content type="html">&lt;p&gt;Welcome to waylonwalker.com, my small corner of the internet.  I currently have&#xA;3657 posts published,&#xA;here are some links to help you get started around here.&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/1896de8d-abd9-4652-95df-b41dc7eaf48b.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;2fcdafc0-f152-4fa9-ac91-799acd9084d3-239-1.webp&#34;&gt;&lt;img src=&#34;https://dropper.waylonwalker.com/api/file/1896de8d-abd9-4652-95df-b41dc7eaf48b.webp&#34; alt=&#34;2fcdafc0-f152-4fa9-ac91-799acd9084d3-239-1.webp&#34; class=&#34;more-cinematic glightbox&#34;/ data-glightbox=&#34;description: 2fcdafc0-f152-4fa9-ac91-799acd9084d3-239-1.webp&#34;&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;h2 id=&#34;feeds&#34;&gt;Feeds &lt;a href=&#34;#feeds&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;I have quite a few different feeds that you can browse or subscribe to in your&#xA;rss reader, you can find them on my &lt;a href=&#34;/feeds/&#34; class=&#34;wikilink&#34; data-title=&#34;feeds&#34; data-description=&#34;I have several feeds that you can consume my content with. Many posts will cross between them, so if you would like to follow a certain stream of content in...&#34; data-date=&#34;2024-04-02&#34; data-preview=&#34;I have several feeds that you can consume my content with. Many posts will cross between them, so if you would like to follow a certain stream of content in...&#34;&gt;feeds&lt;/a&gt; page.&lt;/p&gt;&#xA;&lt;h2 id=&#34;slash-posts&#34;&gt;Slash posts &lt;a href=&#34;#slash-posts&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;[[ slashes ]]&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://slashpages.net/&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/slashpages.net.png&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/slashpages.net.png&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;Slash pages&lt;/a&gt; are some evergreen pages that I will do my best to keep up to date,&#xA;they are typically not targeted to a specific moment in time, but designed to&#xA;be ever living.&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/about/&#34; class=&#34;wikilink&#34; data-title=&#34;Waylon Walker&#34; data-description=&#34;Husband, dad of two, and hobbyist builder of things on the internet.&#34; data-date=&#34;2021-11-20&#34; data-preview=&#34;Husband, dad of two, and hobbyist builder of things on the internet.&#34;&gt;Waylon Walker&lt;/a&gt; - Husband, dad of two, and hobbyist builder of things on the internet.&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/ai/&#34; class=&#34;wikilink&#34; data-title=&#34;Ai&#34; data-description=&#34;Last updated Jan 2026.&#34; data-date=&#34;2026-01-11&#34; data-preview=&#34;Last updated Jan 2026.&#34;&gt;Ai&lt;/a&gt; - Last updated Jan 2026.&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/analytics/&#34; class=&#34;wikilink&#34; data-title=&#34;analytics&#34; data-description=&#34;I&amp;#39;ve been posting on this site since 2016, when layoffs were rolling through the company I worked for at the time. Starting a personal blog and a pile of...&#34; data-date=&#34;2025-01-22&#34; data-preview=&#34;I&amp;#39;ve been posting on this site since 2016, when layoffs were rolling through the company I worked for at the time. Starting a personal blog and a pile of...&#34;&gt;analytics&lt;/a&gt; - I&amp;#39;ve been posting on this site since 2016, when layoffs were rolling through the company I worked for at the time. Starting a personal blog and a pile of…&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/carry/&#34; class=&#34;wikilink&#34; data-title=&#34;/carry/&#34; data-description=&#34;I try to keep a pretty light every day carry, but it never works out, keyfobs and headphone cases end up causing more bulk than I&amp;#39;d like, but My EDC is no...&#34; data-date=&#34;2026-03-27&#34; data-preview=&#34;I try to keep a pretty light every day carry, but it never works out, keyfobs and headphone cases end up causing more bulk than I&amp;#39;d like, but My EDC is no...&#34;&gt;/carry/&lt;/a&gt; - I try to keep a pretty light every day carry, but it never works out, keyfobs and headphone cases end up causing more bulk than I&amp;#39;d like, but My EDC is no…&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/colophon/&#34; class=&#34;wikilink&#34; data-title=&#34;/colophon&#34; data-description=&#34;Colophon a page that describes how the site &amp;gt; is made, with what tools, supporting what technologies&#34; data-date=&#34;2025-01-02&#34; data-preview=&#34;Colophon a page that describes how the site &amp;gt; is made, with what tools, supporting what technologies&#34;&gt;/colophon&lt;/a&gt; - Colophon a page that describes how the site &amp;gt; is made, with what tools, supporting what technologies&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/feeds/&#34; class=&#34;wikilink&#34; data-title=&#34;feeds&#34; data-description=&#34;I have several feeds that you can consume my content with. Many posts will cross between them, so if you would like to follow a certain stream of content in...&#34; data-date=&#34;2024-04-02&#34; data-preview=&#34;I have several feeds that you can consume my content with. Many posts will cross between them, so if you would like to follow a certain stream of content in...&#34;&gt;feeds&lt;/a&gt; - I have several feeds that you can consume my content with. Many posts will cross between them, so if you would like to follow a certain stream of content in…&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/markata/&#34; class=&#34;wikilink&#34; data-title=&#34;markata&#34; data-description=&#34;This post is a work in progress.&#34; data-date=&#34;2024-05-30&#34; data-preview=&#34;This post is a work in progress.&#34;&gt;markata&lt;/a&gt; - This post is a work in progress.&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/nope/&#34; class=&#34;wikilink&#34; data-title=&#34;/nope&#34; data-description=&#34;Inspired by @baty&amp;#39;s nope slashpage, a list of ** things I don&amp;#39;t like, don&amp;#39;t care, avoid, overhyped, or won&amp;#39;t do in no particular order, updated as I think...&#34; data-date=&#34;2026-02-11&#34; data-preview=&#34;Inspired by @baty&amp;#39;s nope slashpage, a list of ** things I don&amp;#39;t like, don&amp;#39;t care, avoid, overhyped, or won&amp;#39;t do in no particular order, updated as I think...&#34;&gt;/nope&lt;/a&gt; - Inspired by @baty&amp;#39;s nope slashpage, a list of ** things I don&amp;#39;t like, don&amp;#39;t care, avoid, overhyped, or won&amp;#39;t do in no particular order, updated as I think…&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/now/&#34; class=&#34;wikilink&#34; data-title=&#34;/now&#34; data-description=&#34;This page is meant to be simple view into what is happening in my life right now. Inspired by @NowNowNow. and Derek Sivers.&#34; data-date=&#34;2025-01-12&#34; data-preview=&#34;This page is meant to be simple view into what is happening in my life right now. Inspired by @NowNowNow. and Derek Sivers.&#34;&gt;/now&lt;/a&gt; - This page is meant to be simple view into what is happening in my life right now. Inspired by @NowNowNow. and Derek Sivers.&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/start/&#34; class=&#34;wikilink&#34; data-title=&#34;/start&#34; data-description=&#34;Welcome to waylonwalker.com, my small corner of the internet. I currently have posts published, here are some links to help you get started around here.&#34; data-date=&#34;2025-01-03&#34; data-preview=&#34;Welcome to waylonwalker.com, my small corner of the internet. I currently have posts published, here are some links to help you get started around here.&#34;&gt;/start&lt;/a&gt; - Welcome to waylonwalker.com, my small corner of the internet. I currently have posts published, here are some links to help you get started around here.&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;Thoughts&lt;/a&gt; - These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my…&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/tinyapps/&#34; class=&#34;wikilink&#34; data-title=&#34;tinyapps&#34; data-description=&#34;I&amp;#39;m working on replacing my usage of google inline search apps with real apps, these are ones that I create and host on my own homelab. The first three that...&#34; data-date=&#34;2025-05-22&#34; data-preview=&#34;I&amp;#39;m working on replacing my usage of google inline search apps with real apps, these are ones that I create and host on my own homelab. The first three that...&#34;&gt;tinyapps&lt;/a&gt; - I&amp;#39;m working on replacing my usage of google inline search apps with real apps, these are ones that I create and host on my own &lt;a href=&#34;/homelab/&#34; class=&#34;glossary-term&#34; title=&#34;A place to self host applications. For me this is primarily self built web applications, and applications for sharing files with my family. Techno Tim has a...&#34;&gt;homelab&lt;/a&gt;. The first three that…&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/top4/&#34; class=&#34;wikilink&#34; data-title=&#34;/top4&#34; data-description=&#34;Definitive ranked lists of my top 3 favorites plus an honorable mention.&#34; data-date=&#34;2026-02-11&#34; data-preview=&#34;Definitive ranked lists of my top 3 favorites plus an honorable mention.&#34;&gt;/top4&lt;/a&gt; - Definitive ranked lists of my top 3 favorites plus an honorable mention.&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/verify/&#34; class=&#34;wikilink&#34; data-title=&#34;/verify&#34; data-description=&#34;Inspired by @mollywhite&amp;#39;s verify slashpage. This page serves as the system of record for my online identity. The best places to follow me are:&#34; data-date=&#34;2026-02-24&#34; data-preview=&#34;Inspired by @mollywhite&amp;#39;s verify slashpage. This page serves as the system of record for my online identity. The best places to follow me are:&#34;&gt;/verify&lt;/a&gt; - Inspired by @mollywhite&amp;#39;s verify slashpage. This page serves as the system of record for my online identity. The best places to follow me are:&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/wants/&#34; class=&#34;wikilink&#34; data-title=&#34;wants&#34; data-description=&#34;Inspired by mara.town/wants&#34; data-date=&#34;2025-05-27&#34; data-preview=&#34;Inspired by mara.town/wants&#34;&gt;wants&lt;/a&gt; - Inspired by mara.town/wants&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/yep/&#34; class=&#34;wikilink&#34; data-title=&#34;/yep&#34; data-description=&#34;Inspired by @fyrio&amp;#39;s yep slashpage, a list of ** things I enjoy, use, recommend, want to know more about, or seek out in no particular order, updated as I...&#34; data-date=&#34;2026-02-11&#34; data-preview=&#34;Inspired by @fyrio&amp;#39;s yep slashpage, a list of ** things I enjoy, use, recommend, want to know more about, or seek out in no particular order, updated as I...&#34;&gt;/yep&lt;/a&gt; - Inspired by @fyrio&amp;#39;s yep slashpage, a list of ** things I enjoy, use, recommend, want to know more about, or seek out in no particular order, updated as I…&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>slow nfs performance</title>
    <id>https://waylonwalker.com/slow-nfs-performance/</id>
    <updated>2025-01-02T20:23:10Z</updated>
    <published>2025-01-02T20:23:10Z</published>
    <link href="https://waylonwalker.com/slow-nfs-performance/" rel="alternate" type="text/html"></link>
    <summary type="text">I&#39;m running a two node k3s cluster at home, I _ I could simply mount an nfs share on each worker node, and essentially have the same storage accross all...</summary>
    <content type="html">&lt;p&gt;I’m running a two node k3s cluster at home, I &lt;em&gt;thought&lt;/em&gt; I could simply mount an&#xA;nfs share on each worker node, and essentially have the same storage accross&#xA;all nodes.  I’m already learning why this is not reccommended.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/0e1f8cc5-4212-4c9a-b71c-e714abd43692.png&#34; class=&#34;glightbox-link&#34; aria-label=&#34;screenshot-2025-01-31T21-18-43-543Z.png&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/0e1f8cc5-4212-4c9a-b71c-e714abd43692.png&#34; alt=&#34;screenshot-2025-01-31T21-18-43-543Z.png&#34;/ data-glightbox=&#34;description: screenshot-2025-01-31T21-18-43-543Z.png&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;slow&#34;&gt;Slow &lt;a href=&#34;#slow&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;I’ve been running some cronjobs and argo workflows on the second node for&#xA;awhile, these are things that run in the background and I don’t care if they&#xA;take a bit longer to keep my master node freed up for more critical work.&lt;/p&gt;&#xA;&lt;p&gt;I just started trying to build this site in a cronjob, It was taking 20 minutes&#xA;to build, and something I noticed was that markata was taking minutes to run&#xA;glob &lt;em&gt;( search for files )&lt;/em&gt;, normally this happens in a few ms and I never&#xA;notice this step.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/57605850-2537-41f9-a3cd-15ff2d41c330.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;image&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/57605850-2537-41f9-a3cd-15ff2d41c330.webp&#34; alt=&#34;image&#34;/ data-glightbox=&#34;description: image&#34;&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;I just moved into the master node and the results were wild at ~30x faster&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;permissions&#34;&gt;Permissions &lt;a href=&#34;#permissions&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;I have seen where you &lt;em&gt;can&lt;/em&gt; get diffent permissions on the nfs share based on&#xA;user id.  Since I’m homelabbing here I only have one user per machine.  As you&#xA;step into enterprise level VMs with tighter controls and dozens of users for&#xA;all the different services that might run on it.&lt;/p&gt;&#xA;&lt;p&gt;I’ve ran into maybe one issue where I was root in one place and not another,&#xA;other than that it’s been fine.&lt;/p&gt;&#xA;&lt;h2 id=&#34;and-it-only-got-better&#34;&gt;And it only got better &lt;a href=&#34;#and-it-only-got-better&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;As the cache was warm subsequent runs only got better.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/9681f8a0-2bdc-46a7-9764-2fd58dea6e7b.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;image&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/9681f8a0-2bdc-46a7-9764-2fd58dea6e7b.webp&#34; alt=&#34;image&#34;/ data-glightbox=&#34;description: image&#34;&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;I just checked again and we are now 80x faster&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;conclusion&#34;&gt;Conclusion &lt;a href=&#34;#conclusion&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;I don’t have the answers yet, it might be my network, it might be nfs settings,&#xA;it might be ext4 filesystem.  I have some things to try, but what I do know is&#xA;that it is not as easy as I thought it would be just to have the same file&#xA;system mounted on both ends and share data between nodes.&lt;/p&gt;&#xA;&lt;p&gt;I might even go with a complete alternative and use minio as a storage backend,&#xA;and sync the files in on each run, this will add some latency to do the sync&#xA;each time though.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Changelog • Robb Knight</title>
    <id>https://waylonwalker.com/thought-495/</id>
    <updated>2025-01-02T18:16:10Z</updated>
    <published>2025-01-02T18:16:10Z</published>
    <link href="https://waylonwalker.com/thought-495/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://rknight.me/log/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://rknight.me/log/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://v1.screenshot.11ty.dev/https%3A%2F%2Frknight.me%2Fopengraph%2Flog%2F/opengraph/_14334&#34; alt=&#34;Changelog — Maker of web things, sticker merchant, viral toot-based business man, blogger, podcaster, and pizzaiolo. Human dad.&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: Changelog — Maker of web things, sticker merchant, viral toot-based business man, blogger, podcaster, and pizzaiolo. Human dad.&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Changelog&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Maker of web things, sticker merchant, viral toot-based business man, blogger, podcaster, and pizzaiolo. Human dad.&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;rknight.me&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Well done changelog with some really good inspirational nuggets.  Many slash pages I want to check out and an 11ty contribution graph.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 slash pages</title>
    <id>https://waylonwalker.com/thought-494/</id>
    <updated>2025-01-02T16:17:51Z</updated>
    <published>2025-01-02T16:17:51Z</published>
    <link href="https://waylonwalker.com/thought-494/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://slashpages.net/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://slashpages.net/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://slashpages.net/icons/preview.jpg&#34; alt=&#34;slash pages — A guide to common pages you can add to your website&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: slash pages — A guide to common pages you can add to your website&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;slash pages&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;A guide to common pages you can add to your website&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;slashpages.net&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;A nice list of slashpages you might want to consider including / aliasing / 301ing. These feel like nice things to setup and keep in the back pocket for obsidian style wiki link to easily.  I get kinda bad at wiki-linking as much as I would like to, mostly because it does require some amount of work to make the page, and keep it up to date over time, then remember that you even have it.&lt;/p&gt;&#xA;&lt;p&gt;Some are serious, some very common, some quite useful.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/ba4edf27-03d4-49ff-ab4e-712e9ab8acda.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;image&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/ba4edf27-03d4-49ff-ab4e-712e9ab8acda.webp&#34; alt=&#34;image&#34;/ data-glightbox=&#34;description: image&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>/colophon</title>
    <id>https://waylonwalker.com/colophon/</id>
    <updated>2025-01-02T10:21:23Z</updated>
    <published>2025-01-02T10:21:23Z</published>
    <link href="https://waylonwalker.com/colophon/" rel="alternate" type="text/html"></link>
    <summary type="text">Colophon a page that describes how the site &gt; is made, with what tools, supporting what technologies</summary>
    <content type="html">&lt;blockquote&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://indieweb.org/colophon&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/indieweb.org.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/indieweb.org.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;Colophon&lt;/a&gt; a page that describes how the site&#xA;is made, with what tools, supporting what technologies&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;h2 id=&#34;author&#34;&gt;Author &lt;a href=&#34;#author&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://images.waylonwalker.com/profile.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Waylon Walker’s Profile Picture&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://images.waylonwalker.com/profile.webp&#34; alt=&#34;Waylon Walker’s Profile Picture&#34;/ data-glightbox=&#34;description: Waylon Walker’s Profile Picture&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;p&gt;All posts on this site are written by &lt;a href=&#34;https://waylonwalker.com&#34;&gt;Waylon&#xA;Walker&lt;/a&gt;, the typical content has changed and evolved&#xA;over time.  I go back and make a few corrections, but for the most part things&#xA;stay pretty much as they were published originally.&lt;/p&gt;&#xA;&lt;p&gt;see more in &lt;a href=&#34;/about/&#34; class=&#34;wikilink&#34; data-title=&#34;Waylon Walker&#34; data-description=&#34;Husband, dad of two, and hobbyist builder of things on the internet.&#34; data-date=&#34;2021-11-20&#34; data-preview=&#34;Husband, dad of two, and hobbyist builder of things on the internet.&#34;&gt;Waylon Walker&lt;/a&gt;&lt;/p&gt;&#xA;&lt;h2 id=&#34;tech&#34;&gt;tech &lt;a href=&#34;#tech&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;This site is a static site build with my own static site generator &lt;a href=&#34;/markata/&#34; class=&#34;wikilink&#34; data-title=&#34;markata&#34; data-description=&#34;This post is a work in progress.&#34; data-date=&#34;2024-05-30&#34; data-preview=&#34;This post is a work in progress.&#34;&gt;markata&lt;/a&gt;, &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;Thoughts&lt;/a&gt; or as Simon Willison calls it a &lt;a href=&#34;https://simonwillison.net/2024/Dec/22/link-blog/#atom-everything&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/simonwillison.net.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/simonwillison.net.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;link&#xA;blog&lt;/a&gt; posts&#xA;are pulled in as a regular posts, all is hosted on cloudflare pages.&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/markata/&#34; class=&#34;wikilink&#34; data-title=&#34;markata&#34; data-description=&#34;This post is a work in progress.&#34; data-date=&#34;2024-05-30&#34; data-preview=&#34;This post is a work in progress.&#34;&gt;markata&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;Thoughts&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;cloudflare pages&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;see more about these components in &lt;a href=&#34;/about-this-site/&#34; class=&#34;wikilink&#34; data-title=&#34;about this site&#34; data-description=&#34;I registered waylonwalker.com and started making content for it in 2017 after a big industry downturn in 2016 that left me scared for what would happen if I...&#34; data-date=&#34;2024-05-31&#34; data-preview=&#34;I registered waylonwalker.com and started making content for it in 2017 after a big industry downturn in 2016 that left me scared for what would happen if I...&#34;&gt;about this site&lt;/a&gt;&lt;/p&gt;&#xA;&lt;h2 id=&#34;analytics&#34;&gt;Analytics &lt;a href=&#34;#analytics&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;I do not track users, I respect the privacy of my readers and do not track&#xA;their information.  I do track &lt;a href=&#34;/analytics/&#34; class=&#34;wikilink&#34; data-title=&#34;analytics&#34; data-description=&#34;I&amp;#39;ve been posting on this site since 2016, when layoffs were rolling through the company I worked for at the time. Starting a personal blog and a pile of...&#34; data-date=&#34;2025-01-22&#34; data-preview=&#34;I&amp;#39;ve been posting on this site since 2016, when layoffs were rolling through the company I worked for at the time. Starting a personal blog and a pile of...&#34;&gt;analytics&lt;/a&gt; on my own writing a post rate.&#xA;Its more of an interesting history of the site.&lt;/p&gt;&#xA;&lt;h2 id=&#34;meta&#34;&gt;meta &lt;a href=&#34;#meta&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;Some evergreen pages that are more about me or this site from the &lt;a href=&#34;/tags/meta/&#34; class=&#34;wikilink&#34; data-title=&#34;Posts tagged: meta&#34; data-description=&#34;All posts with the tag &amp;#34;meta&amp;#34;&#34; data-preview=&#34;All posts with the tag &amp;#34;meta&amp;#34;&#34;&gt;Posts tagged: meta&lt;/a&gt; feed.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 We need to have a talk... - YouTube</title>
    <id>https://waylonwalker.com/thought-493/</id>
    <updated>2025-01-02T03:04:14Z</updated>
    <published>2025-01-02T03:04:14Z</published>
    <link href="https://waylonwalker.com/thought-493/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/watch?v=_HTk9PM&amp;t=2607s</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;_VQl_HTk9PM&#34; title=&#34;Serverless: A Comprehensive Breakdown&#34; playlabel=&#34;Play: Serverless: A Comprehensive Breakdown&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Theo does a fantastic history of serverless here.&lt;/p&gt;&#xA;&lt;h2 id=&#34;kubernetes-shit&#34;&gt;Kubernetes shit &lt;a href=&#34;#kubernetes-shit&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;Theo can’t have an infra video without shitting on k8s.  Specifically people who have never touched k8s pushing fear of k8s to large audiences of people who have never touched k8s.  If you are a webdev who solely lives in webdev space and never touches as much as a dockerfile listen to him.  If you touch infra at all try it before you take his opinion at face value.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/a84ec689-e84f-458a-b1d6-fec85b310023.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;image&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/a84ec689-e84f-458a-b1d6-fec85b310023.webp&#34; alt=&#34;image&#34;/ data-glightbox=&#34;description: image&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;serverless-shines-in-high-variance&#34;&gt;Serverless shines in high variance &lt;a href=&#34;#serverless-shines-in-high-variance&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;If you plan on having traffic spikes 10x your regular traffic for something like black friday, serverless might be right for your use case.&lt;/p&gt;&#xA;&lt;h2 id=&#34;stateless-programming&#34;&gt;stateless programming &lt;a href=&#34;#stateless-programming&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;He argues that targeting a stateless deployment of serverless leads to better code.  I’d like to see more examples here.  Maybe most of the code bases I work on already do this.  I’ve never targeted a serverless deployment, but I’ve targeted horizontally scaled deployments many times and they feel like they have the same targets.  For instance if I spin up 8 pods for my application or uvicorn with 3 workers I have to target statelessness, all of the state must live in the database and cannot live in memory.  Even if I target 1 instance in a containerized environment I have to be ready for restarts at any point in time.&lt;/p&gt;&#xA;&lt;p&gt;I might be missing something here, but I don’t see how this point applies to serverless.&lt;/p&gt;&#xA;&lt;h2 id=&#34;scale-to-zero-services&#34;&gt;Scale to Zero Services &lt;a href=&#34;#scale-to-zero-services&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/a06523f8-35e1-46cf-83b8-fd6be0831d93.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;image&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/a06523f8-35e1-46cf-83b8-fd6be0831d93.webp&#34; alt=&#34;image&#34;/ data-glightbox=&#34;description: image&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://www.youtube.com/watch?v=_VQl_HTk9PM&amp;amp;t=2607s&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/www.youtube.com.png&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/www.youtube.com.png&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;https://www.youtube.com/watch?v=_VQl_HTk9PM&amp;amp;t=2607s&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Companies that can run on scale to zero can allow your shitty side projects that have no users run for free indefinitely because it costs them nothing.  He compares planetscale running mysql vs Turso running SQLite stored in s3.&lt;/p&gt;&#xA;&lt;h2 id=&#34;everything-he-covers-is-really-cloud-to-cloud&#34;&gt;Everything he covers is really cloud to cloud &lt;a href=&#34;#everything-he-covers-is-really-cloud-to-cloud&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;He compares early deployments of LAMP and MEAN stack running on one server then jumps to serverless.  It feels like he is missing the angle of owning your own hardware.  This might just be the experience difference between theo and DHH.  DHH works on one focused company, Theo is jumping around between startups.&lt;/p&gt;&#xA;&lt;h2 id=&#34;ok-i-get-some-of-it&#34;&gt;Ok I get some of it &lt;a href=&#34;#ok-i-get-some-of-it&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;At the end he covers a dumb side project that has branch deploys.  It had a 100s of deploy still running, some very old, some never even touched, vercel can do this because it costs them nothing if its not running.  What I didn’t think about right away is that there is probably a backend component to this.&lt;/p&gt;&#xA;&lt;p&gt;In my python backends I often have deploy environments, but since they don’t scale to zero they have at least some cost even if its small, with this I cannot just keep hundreds of them running because that cost would add up.&lt;/p&gt;&#xA;&lt;p&gt;I would argue that this is hardly useful, because you can checkout any old version and run it locally, and you rarely are going to need to poke through these old branch deploys.  But in that case that you need to quickly do this serverless is definitely superior.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 linkding | linkding</title>
    <id>https://waylonwalker.com/thought-492/</id>
    <updated>2025-01-02T02:51:03Z</updated>
    <published>2025-01-02T02:51:03Z</published>
    <link href="https://waylonwalker.com/thought-492/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://linkding.link/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://linkding.link/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;linkding&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;A self-hosted bookmarking service that is designed to be minimal, fast and easy to set up.&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;linkding · linkding.link&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;linkding looks like an interesting alternative to thoughts.  Thoughts is focused on the note being a value add tweet length blog post that you share to the public.  This seems more focused on fire and forget with some note taking and search ability.  I should definitely level up the search and tag discovery in thoughts.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Wrapping your favorite CLI in neovim - YouTube</title>
    <id>https://waylonwalker.com/thought-489/</id>
    <updated>2024-12-31T21:02:44Z</updated>
    <published>2024-12-31T21:02:44Z</published>
    <link href="https://waylonwalker.com/thought-489/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/watch?v=rerTvidyz-0&amp;t=160s</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;rerTvidyz-0&#34; title=&#34;Wrapping your favorite CLI in neovim&#34; playlabel=&#34;Play: Wrapping your favorite CLI in neovim&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;cool video on expanding vim with cli.&lt;/p&gt;&#xA;&lt;h2 id=&#34;piping-commands-into-vim&#34;&gt;piping commands into vim &lt;a href=&#34;#piping-commands-into-vim&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/4283e98a-9b12-4f8a-9799-a097d5f3184d.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;piping commands into vim&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/4283e98a-9b12-4f8a-9799-a097d5f3184d.webp&#34; alt=&#34;piping commands into vim&#34;/ data-glightbox=&#34;description: piping commands into vim&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;write-a-healthcheck&#34;&gt;write a healthcheck &lt;a href=&#34;#write-a-healthcheck&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/d90a8c88-4748-4dfe-8569-b51c023c825b.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;write a healthcheck&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/d90a8c88-4748-4dfe-8569-b51c023c825b.webp&#34; alt=&#34;write a healthcheck&#34;/ data-glightbox=&#34;description: write a healthcheck&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Why Your Backend Shouldn&#39;t Serve Files - YouTube</title>
    <id>https://waylonwalker.com/thought-488/</id>
    <updated>2024-12-31T16:24:28Z</updated>
    <published>2024-12-31T16:24:28Z</published>
    <link href="https://waylonwalker.com/thought-488/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/watch?v=aybSXT9ZJ8w</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;aybSXT9ZJ8w&#34; title=&#34;Why Your Backend Shouldn&amp;#39;t Serve Files&#34; playlabel=&#34;Play: Why Your Backend Shouldn&amp;#39;t Serve Files&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Lane from boot.dev madde this fantastic video about serving files on the internet.  It has me wondering if I need to rethink a few of my things that I have built.  I have a few things I am serving media from, but I have very aggressive cloudflare cache rules on them, so each file should only be uploaded about once per year.&lt;/p&gt;&#xA;&lt;p&gt;My problem going straight out of minio right now is how do i set headers for cache control on it.  If I can’t set the cache control and everything is coming out of minio this does not solve my problems.&lt;/p&gt;&#xA;&lt;hr/&gt;&#xA;&lt;p&gt;I went back and played with presigned urls and you can in fact control and set response headers, this is definitely the way and I have been wrong.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 curl with partial files | daniel.haxx.se</title>
    <id>https://waylonwalker.com/thought-487/</id>
    <updated>2024-12-30T21:29:52Z</updated>
    <published>2024-12-30T21:29:52Z</published>
    <link href="https://waylonwalker.com/thought-487/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://daniel.haxx.se/blog/2024/12/30/curl-with-partial-files/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://daniel.haxx.se/blog/2024/12/30/curl-with-partial-files/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://daniel.haxx.se/blog/wp-content/uploads/2021/04/curl-polynesia-puzzle.jpg&#34; alt=&#34;curl with partial files — Back in September 2023, we extended the curl command line tool with a new fairly advanced and flexible variable system. Using this, users can use files, environment variables and more in a powerful way when building curl command lines in ways not previously possible - with almost all existing command line options. curl command lines … Continue reading curl with partial files →&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: curl with partial files — Back in September 2023, we extended the curl command line tool with a new fairly advanced and flexible variable system. Using this, users can use files, environment variables and more in a powerful way when building curl command lines in ways not previously possible - with almost all existing command line options. curl command lines … Continue reading curl with partial files →&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;curl with partial files&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Back in September 2023, we extended the curl command line tool with a new fairly advanced and flexible variable system. Using this, users can use files, environment variables and more in a powerful...&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;daniel.haxx.se · daniel.haxx.se&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;This is a cool new feature coming to bash, I can’t think of a use case I have out of the gate, but it looks cool.  I’m thinking this might be good to keep in the back pocket for something like CI where I don’t have a hightly tuned bashrc file, and I want a dynamic curl request based on some state that exists as a fille.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 The beautiful sentence that is the web</title>
    <id>https://waylonwalker.com/thought-486/</id>
    <updated>2024-12-30T21:25:08Z</updated>
    <published>2024-12-30T21:25:08Z</published>
    <link href="https://waylonwalker.com/thought-486/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://cassidoo.co/post/web-dev-sentence/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://cassidoo.co/post/web-dev-sentence/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://cassidoo.co/og-image/web-dev-sentence.png&#34; alt=&#34;The beautiful sentence that is the web — A metaphor for the building blocks of web development.&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: The beautiful sentence that is the web — A metaphor for the building blocks of web development.&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;The beautiful sentence that is the web&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;A metaphor for the building blocks of web development.&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;cassidoo.co&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Nicely worded Cassidy!  Javascript can be too much, it can bog down low powered devices, we can ship so much that its untenable on poor connections.  It can be argued that its a bad language and putting it on the server is a mistake, but it brings sites to life.  It makes it possible to extend the static nature of &lt;a href=&#34;/html/&#34; class=&#34;glossary-term&#34; title=&#34;HTML (HyperText Markup Language) is the standard markup language used to create and design documents on the World Wide Web. It structures web content by...&#34;&gt;html&lt;/a&gt;/css with just a little special spice only your site needs.&lt;/p&gt;&#xA;&lt;p&gt;I’d add to the argument that a lot of js should go away over time.  Over time libraries such as jquery have fallen out of use, not because they are bad, or have been replaced by new libraries, but because the browser has adopted most of the functionality that jquery brought.&lt;/p&gt;&#xA;&lt;p&gt;As a primarily python dev I’d really like to see &lt;a href=&#34;/htmx/&#34; class=&#34;glossary-term&#34; title=&#34;htmx is a frontend javascript library for creating dynamic web applications.&#34;&gt;htmx&lt;/a&gt; die a very similar graceful death.  There have been several iterations on this idea, and the crux of it is very similar, give the ability to use HTTP verbs right inside html with some instruction of when to apply them and what to apply them to.&lt;/p&gt;&#xA;&lt;p&gt;No js should not go away, it never will, we will always find new patterns that the browser should take, sites will always need a small bit of spice to bring them to life.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Teleport to coop partner | Hypixel Forums</title>
    <id>https://waylonwalker.com/thought-485/</id>
    <updated>2024-12-30T17:19:10Z</updated>
    <published>2024-12-30T17:19:10Z</published>
    <link href="https://waylonwalker.com/thought-485/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://hypixel.net/threads/teleport-to-coop-partner.2250505/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://hypixel.net/threads/teleport-to-coop-partner.2250505/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://hypixel.net/styles/hypixel-v2/images/hypixel-512px.png&#34; alt=&#34;Teleport to coop partner — Hello,&#xA;Is there a command where you can teleport to your coop partner? Or is it just this Follow button in chat?  :)&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: Teleport to coop partner — Hello,&#xA;Is there a command where you can teleport to your coop partner? Or is it just this Follow button in chat?  :)&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Teleport to coop partner&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Hello,&#xA;Is there a command where you can teleport to your coop partner? Or is it just this Follow button in chat?  :)&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;Hypixel Forums · hypixel.net&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;/p warp will warp your party to your current server in hypixel skyblock&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/a4f5be07-5f79-450c-a40d-1f48ac086e05.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;image&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/a4f5be07-5f79-450c-a40d-1f48ac086e05.webp&#34; alt=&#34;image&#34;/ data-glightbox=&#34;description: image&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 How to configure base url for all requests using HTMX? - Stack...</title>
    <id>https://waylonwalker.com/thought-484/</id>
    <updated>2024-12-30T16:25:49Z</updated>
    <published>2024-12-30T16:25:49Z</published>
    <link href="https://waylonwalker.com/thought-484/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://stackoverflow.com/questions/69456875/how-to-configure-base-url-for-all-requests-using-htmx</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://stackoverflow.com/questions/69456875/how-to-configure-base-url-for-all-requests-using-htmx&#34; class=&#34;embed-card-link  has-avatar has-avatar-before&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/stackoverflow.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/stackoverflow.com.ico&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;External Link&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;stackoverflow.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Today I learned how to configure the baseurl for &lt;a href=&#34;/htmx/&#34; class=&#34;glossary-term&#34; title=&#34;htmx is a frontend javascript library for creating dynamic web applications.&#34;&gt;htmx&lt;/a&gt; using the &lt;base/&gt; tag.  This is pretty handy to be able to configure different baseurls.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  &lt;span class=&#34;p&#34;&gt;&amp;lt;&lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;base&lt;/span&gt; &lt;span class=&#34;na&#34;&gt;href&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;&amp;#34;&amp;lt;scheme&amp;gt;://&amp;lt;netloc&amp;gt;/api/v1/&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;&amp;gt;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  &lt;span class=&#34;p&#34;&gt;&amp;lt;&lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;button&lt;/span&gt; &lt;span class=&#34;na&#34;&gt;hx-post&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;&amp;#34;clicked&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;       &lt;span class=&#34;na&#34;&gt;hx-trigger&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;&amp;#34;click&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;       &lt;span class=&#34;na&#34;&gt;hx-target&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;&amp;#34;#parent-div&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;       &lt;span class=&#34;na&#34;&gt;hx-swap&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;&amp;#34;outerHTML&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;&amp;gt;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    Click Me!&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  &lt;span class=&#34;p&#34;&gt;&amp;lt;/&lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;button&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;&amp;gt;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Addy Osmani: &#34;Tip: Chrome DevTools can override the content of...</title>
    <id>https://waylonwalker.com/thought-482/</id>
    <updated>2024-12-30T02:48:43Z</updated>
    <published>2024-12-30T02:48:43Z</published>
    <link href="https://waylonwalker.com/thought-482/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://bsky.app/profile/addyosmani.bsky.social/post/3lei5jhkgdk2k</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://bsky.app/profile/addyosmani.bsky.social/post/3lei5jhkgdk2k&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://video.bsky.app/watch/did%3Aplc%3Aympscj7qcsrcpj4qz35qhs3v/bafkreiapekc7qrtgki4efd36iftkvm57ejdnp5lkmlp6ifnlufver7dqum/thumbnail.jpg&#34; alt=&#34;Addy Osmani (@addyosmani.bsky.social) — Tip: Chrome DevTools can override the content of Fetch/XHR requests! Useful for mocking APIs without waiting on backend changes.&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: Addy Osmani (@addyosmani.bsky.social) — Tip: Chrome DevTools can override the content of Fetch/XHR requests! Useful for mocking APIs without waiting on backend changes.&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Addy Osmani (@addyosmani.bsky.social)&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Tip: Chrome DevTools can override the content of Fetch/XHR requests! Useful for mocking APIs without waiting on backend changes.&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;Bluesky Social · bsky.app&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;WTF, you can just change a server response from devtools and update a vuejs app?  Just tried with &lt;a href=&#34;/htmx/&#34; class=&#34;glossary-term&#34; title=&#34;htmx is a frontend javascript library for creating dynamic web applications.&#34;&gt;htmx&lt;/a&gt;, and my GET requests are not showing up in the sources tab.  I’ll keep this in my back pocket for next time I’m supporting a vuejs app though.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Gary Vaynerchuk: &#34;2025 : the year of action … who’s finally re...</title>
    <id>https://waylonwalker.com/thought-481/</id>
    <updated>2024-12-30T02:45:02Z</updated>
    <published>2024-12-30T02:45:02Z</published>
    <link href="https://waylonwalker.com/thought-481/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://bsky.app/profile/garyvee.com/post/3leidcd6xjk2y</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://bsky.app/profile/garyvee.com/post/3leidcd6xjk2y&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img src=&#34;https://cdn.bsky.app/img/feed_thumbnail/plain/did:plc:3g5dwh5bw3leulmrtfo4rlxm/bafkreig7nwdidlkbnyghjzmgfxr7bjjewepoodqywqvtykui4yfozt3i7m&#34; alt=&#34;Gary Vaynerchuk (@garyvee.com) — 2025 : the year of action … who’s finally ready ?&#xA;&amp;lt;p&amp;gt;PS: text me for any follow up questions at 📱 1-212-931-5731&amp;lt;/p&amp;gt;&#xA;&amp;lt;p&amp;gt;#2025 #todo #todolist #motivation #garyvee&amp;#34; loading=“lazy”&amp;gt;&#xA;&amp;lt;/div&amp;gt;&#xA;&amp;lt;div class=&#34; embed-card-content glightbox&#34;=&#34;&#34;/ data-glightbox=&#34;description: Gary Vaynerchuk (@garyvee.com) — 2025 : the year of action … who’s finally ready ?&#xA;&amp;lt;p&amp;gt;PS: text me for any follow up questions at 📱 1-212-931-5731&amp;lt;/p&amp;gt;&#xA;&amp;lt;p&amp;gt;#2025 #todo #todolist #motivation #garyvee&amp;#34; loading=“lazy”&amp;gt;&#xA;&amp;lt;/div&amp;gt;&#xA;&amp;lt;div class=&#34;&gt;&#xA;&lt;div class=&#34;embed-card-title&#34;&gt;Gary Vaynerchuk (@garyvee.com)&lt;/div&gt;&#xA;&lt;div class=&#34;embed-card-description&#34;&gt;2025 : the year of action … who’s finally ready ?&lt;p&gt;&lt;/p&gt;&#xA;&lt;p&gt;PS: text me for any follow up questions at 📱 1-212-931-5731&lt;/p&gt;&#xA;&lt;p&gt;#2025 #todo #todolist #motivation #garyvee&lt;/p&gt;&lt;/div&gt;&#xA;&lt;div class=&#34;embed-card-meta&#34;&gt;Bluesky Social · bsky.app&lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;/a&gt;&lt;p&gt;&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Gary Vee, is the goat.  leaving this image as a reminder for myself&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/074edddb-8b46-4d94-9b55-d70a7bb74366.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;image&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/074edddb-8b46-4d94-9b55-d70a7bb74366.webp&#34; alt=&#34;image&#34;/ data-glightbox=&#34;description: image&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ atuinsh atuin</title>
    <id>https://waylonwalker.com/atuinsh-atuin/</id>
    <updated>2024-12-28T23:18:51Z</updated>
    <published>2024-12-28T23:18:51Z</published>
    <link href="https://waylonwalker.com/atuinsh-atuin/" rel="alternate" type="text/html"></link>
    <summary type="text">The work on atuin by atuinsh.</summary>
    <content type="html">&lt;p&gt;The work on &lt;a href=&#34;https://github.com/atuinsh/atuin&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;atuin&lt;/a&gt; by &lt;a href=&#34;https://github.com/atuinsh&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;atuinsh&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;✨ Magical shell history&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Ellie Huxtable: &#34;Atuin v18.4 is out now! Including `atuin wrap...</title>
    <id>https://waylonwalker.com/thought-475/</id>
    <updated>2024-12-28T06:29:12Z</updated>
    <published>2024-12-28T06:29:12Z</published>
    <link href="https://waylonwalker.com/thought-475/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://bsky.app/profile/ellie.wtf/post/3lecj36r5ps2x</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://bsky.app/profile/ellie.wtf/post/3lecj36r5ps2x&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img src=&#34;https://cdn.bsky.app/img/feed_thumbnail/plain/did:plc:6pz6ncxxtia36hrtbf24wzue/bafkreigfrzhv3ju3ynaugisqh5wc2qsharsqott5ru4i7tb53ha2fnerde&#34; alt=&#34;Ellie Huxtable (@ellie.wtf) — Atuin v18.4 is out now!&#xA;&amp;lt;p&amp;gt;Including &amp;lt;code&amp;gt;atuin wrapped&amp;lt;/code&amp;gt;, your year in shell history 🐢&amp;lt;/p&amp;gt;&#xA;&amp;lt;p&amp;gt;thanks @daveeddy.com for the suggestion!&amp;#34; loading=“lazy”&amp;gt;&#xA;&amp;lt;/div&amp;gt;&#xA;&amp;lt;div class=&#34; embed-card-content glightbox&#34;=&#34;&#34;/ data-glightbox=&#34;description: Ellie Huxtable (@ellie.wtf) — Atuin v18.4 is out now!&#xA;&amp;lt;p&amp;gt;Including &amp;lt;code&amp;gt;atuin wrapped&amp;lt;/code&amp;gt;, your year in shell history 🐢&amp;lt;/p&amp;gt;&#xA;&amp;lt;p&amp;gt;thanks @daveeddy.com for the suggestion!&amp;#34; loading=“lazy”&amp;gt;&#xA;&amp;lt;/div&amp;gt;&#xA;&amp;lt;div class=&#34;&gt;&#xA;&lt;div class=&#34;embed-card-title&#34;&gt;Ellie Huxtable (@ellie.wtf)&lt;/div&gt;&#xA;&lt;div class=&#34;embed-card-description&#34;&gt;Atuin v18.4 is out now!&lt;p&gt;&lt;/p&gt;&#xA;&lt;p&gt;Including &lt;code&gt;atuin wrapped&lt;/code&gt;, your year in shell history 🐢&lt;/p&gt;&#xA;&lt;p&gt;thanks @daveeddy.com for the suggestion!&lt;/p&gt;&lt;/div&gt;&#xA;&lt;div class=&#34;embed-card-meta&#34;&gt;Bluesky Social · bsky.app&lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;/a&gt;&lt;p&gt;&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Atuin v18.4 is out with an atuin wrapped command.&lt;/p&gt;&#xA;&lt;p&gt;Here’s Ellie’s Wrapped.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/246f2dc6-4e46-410c-9d25-fa6ccc85f8f2.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;image&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/246f2dc6-4e46-410c-9d25-fa6ccc85f8f2.webp&#34; alt=&#34;image&#34;/ data-glightbox=&#34;description: image&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;p&gt;This is a pretty sick command, I’ve only been using Atuin about as long as I’ve been on bazzite, so maybe 4 months, but here is my wrapped.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/434e1290-cf81-4ae5-abaf-34927006f3b6.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;image&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/434e1290-cf81-4ae5-abaf-34927006f3b6.webp&#34; alt=&#34;image&#34;/ data-glightbox=&#34;description: image&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;p&gt;Comparing to Ellie, I’m surprised that I even have 126 package related commands, being on an immutable distro most of my packages come from the container, I don’t need to run packaging commands.  My cd is also super low, I use tmux sessions to take me where I need to be most of the time, which is a project’s root directory, It’s pretty rare to see me outside of a project root directory.&lt;/p&gt;&#xA;&lt;p&gt;I’d venture to guess that nvim would be higher if it didn’t auto start on every tmux session as well.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Hybrid Cloud Show – Episode 20 - YouTube</title>
    <id>https://waylonwalker.com/thought-474/</id>
    <updated>2024-12-28T04:58:50Z</updated>
    <published>2024-12-28T04:58:50Z</published>
    <link href="https://waylonwalker.com/thought-474/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/watch?v=IXUtIXYjFDM</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;IXUtIXYjFDM&#34; title=&#34;Hybrid Cloud Show – Episode 20&#34; playlabel=&#34;Play: Hybrid Cloud Show – Episode 20&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Red Hat has donated the whole open alternative to docker to the CNCF, the hosts weigh in with thier opinions all being pretty positive as they seem to be a legitimate donation and not dumping crap on open source.&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;podman&lt;/li&gt;&#xA;&lt;li&gt;podman-desktop&lt;/li&gt;&#xA;&lt;li&gt;buildah&lt;/li&gt;&#xA;&lt;li&gt;compose-fs&lt;/li&gt;&#xA;&lt;li&gt;podman&lt;/li&gt;&#xA;&lt;li&gt;bootc&lt;/li&gt;&#xA;&lt;li&gt;scopio&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;Personally I’ve been running podman exclusively at home since switching to Bazzite in August.  I’d like to use buildah in ci. I gave it a try, but was unable to swap out my use of kaniko for buildah, I will get there, but it was not quite as drop in as I wanted.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 are we cooked w/ o3? - YouTube</title>
    <id>https://waylonwalker.com/thought-473/</id>
    <updated>2024-12-27T16:09:32Z</updated>
    <published>2024-12-27T16:09:32Z</published>
    <link href="https://waylonwalker.com/thought-473/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/watch?v=kjOxkPl3RGo</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;kjOxkPl3RGo&#34; title=&#34;are we cooked w/ o3?&#34; playlabel=&#34;Play: are we cooked w/ o3?&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Holy shit these AGI models are incredibly expensive to run, require lots of wild hardware that there is not enough to go around, and requires shit tons of power to run.&lt;/p&gt;&#xA;&lt;p&gt;Now more than ever is time to distinguish yourself with deep expertise, jack of all trades is being eaten by ai.  People with deep expertise are getting a jack of all trades bump from ai, not o3, just the regular stuff.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>setting up ucore-zfs</title>
    <id>https://waylonwalker.com/setting-up-ucore-zfs/</id>
    <updated>2024-12-27T08:55:50Z</updated>
    <published>2024-12-27T08:55:50Z</published>
    <link href="https://waylonwalker.com/setting-up-ucore-zfs/" rel="alternate" type="text/html"></link>
    <summary type="text">I just setup my oldest hardware on the newest hotest server distro ucore-zfs. This is a gateway FX6860 manufactured in 2010.</summary>
    <content type="html">&lt;p&gt;I just setup my oldest hardware on the newest hotest server distro ucore-zfs.&#xA;This is a gateway FX6860 manufactured in 2010.&lt;/p&gt;&#xA;&lt;h2 id=&#34;immutable-is-the-future&#34;&gt;Immutable is the future &lt;a href=&#34;#immutable-is-the-future&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;My current boot log shows that I first started daily driving bazzite back in&#xA;August 2024.  I’ve been hapily using it since my arch install was plaugued&#xA;with a crippling display driver error, or something that would lock the display&#xA;for minutes every 30s or so, it became unusable.  I switched because this is&#xA;what I put my son on and it was working great for him.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;waylon@razorcrest:~$ journalctl --list-boots&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;IDX BOOT ID                          FIRST ENTRY                 LAST ENTRY&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;-19 7e6e154d2609407da24fa12814eadbd7 Thu 2024-08-29 16:15:15 CDT Thu 2024-08-29 17:37:25 CDT&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Four months later and I am really loving the immutable distro experience.  My&#xA;base system gets fresh reliable updates, and I barely install anything directly&#xA;on it, a handful of things are snaps or flatpaks from the discover store, but&#xA;my main workflow is now in distrobox.  It has been rock solid reliable, and&#xA;just works.&lt;/p&gt;&#xA;&lt;h2 id=&#34;the-hardware&#34;&gt;The Hardware &lt;a href=&#34;#the-hardware&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;This gem is running a an intel i7-2600 (4) @ 3.80 ghz with 16gb of ram.  I’ve&#xA;maxed out the ram that the motherboard will allow me.  I may have even forgot&#xA;about this limitation and ordered a 2x32gb setup for it and it did nothing.&#xA;That’s now sitting in my new k3s master node.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/36b2d93e-ddb1-4a13-89bd-471cd5e42f14.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;image&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/36b2d93e-ddb1-4a13-89bd-471cd5e42f14.webp&#34; alt=&#34;image&#34;/ data-glightbox=&#34;description: image&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;p&gt;Here’s a B&amp;amp;H photo post of the machine, she is big and heavy but still working.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/75c30c6e-421b-4d99-8a22-1d552ca541fe.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;image&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/75c30c6e-421b-4d99-8a22-1d552ca541fe.webp&#34; alt=&#34;image&#34;/ data-glightbox=&#34;description: image&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;p&gt;I’m a big fan of keeping these old machines running and avoiding the e-waste&#xA;pile, great for running a home lab.  Admittedly this is one is probably on its&#xA;last leg, dell optiplexes are pretty cheap and run circles around this one, so&#xA;this one is become my experimental setup for trying new things like core-os.&lt;/p&gt;&#xA;&lt;h2 id=&#34;get-password-hash&#34;&gt;Get Password Hash &lt;a href=&#34;#get-password-hash&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;We will need to create a password hash for the root user to put into our ignition file.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;podman run -ti --rm quay.io/coreos/mkpasswd --method&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;yescrypt&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Password:&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nv&#34;&gt;$y$j9T$0&lt;/span&gt;ZsoVynV7y0Z7/l6588Ba1&lt;span class=&#34;nv&#34;&gt;$VZT0uCGP0CnYSX&lt;/span&gt;/EArCvYMuo3q.gnyOnk1RO6.HDNDB&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;h2 id=&#34;get-ssh-pub-key&#34;&gt;Get SSH Pub Key &lt;a href=&#34;#get-ssh-pub-key&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;Generate an ssh key using the &lt;code&gt;ssh-keygen&lt;/code&gt; command.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;$ ssh-keygen -t ed25519 -C &lt;span class=&#34;s2&#34;&gt;&amp;#34;waylon@waylonwalker.com&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Generating public/private ed25519 key pair.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Enter file in which to save the key &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;/var/home/core/.ssh/id_ed25519&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt;:&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Enter passphrase &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;empty &lt;span class=&#34;k&#34;&gt;for&lt;/span&gt; no passphrase&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt;:&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Enter same passphrase again:&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Your identification has been saved in /var/home/core/.ssh/id_ed25519&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Your public key has been saved in /var/home/core/.ssh/id_ed25519.pub&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;The key fingerprint is:&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;SHA256:xVJAVreKVILOnxTDxK88RyMwhdDCBMnjMSGU7rsAqwQ waylon@waylonwalker.com&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;The key&lt;span class=&#34;err&#34;&gt;&amp;#39;&lt;/span&gt;s randomart image is:&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;+--&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;ED25519 256&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;--+&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;oo+*oo OBo+ .    &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;|&lt;/span&gt; o* o *.&lt;span class=&#34;o&#34;&gt;==&lt;/span&gt; . .   &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;.. + + oo+o .    &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;|&lt;/span&gt; ..   o.o++.     &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;E      +S&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;..     &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;oo      * .      &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;o..      o       &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;+.               &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;...              &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;+----&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;SHA256&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;-----+&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Now copy your public key into the ignition file from your local machine&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;$ cat ~/.ssh/id_ed25519.pub&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIPY73r4EU9wm/26/rTpx/uvAyInmbQ/k+l04eadSahD0 waylon@waylonwalker.com&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;h2 id=&#34;ucore-autorebasebutane&#34;&gt;ucore-autorebase.butane &lt;a href=&#34;#ucore-autorebasebutane&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;I got my ignition file from&#xA;&lt;a href=&#34;https://github.com/ublue-os/ucore/blob/main/examples/ucore-autorebase.butane&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;ucore/ucore-autorebase&lt;/a&gt;.&#xA;Put my secret values into it and used it.&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://github.com/ublue-os/ucore/blob/main/examples/ucore-autorebase.butane&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;https://github.com/ublue-os/ucore/blob/main/examples/ucore-autorebase.butane&lt;/a&gt;&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;variant: fcos&#xA;version: 1.4.0&#xA;passwd:&#xA;  users:&#xA;    - name: core&#xA;      ssh_authorized_keys:&#xA;        - ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIPY73r4EU9wm/26/rTpx/uvAyInmbQ/k+l04eadSahD0 waylon@waylonwalker.com&#xA;      password_hash: $y$j9T$0ZsoVynV7y0Z7/l6588Ba1$VZT0uCGP0CnYSX/EArCvYMuo3q.gnyOnk1RO6.HDNDB&#xA;storage:&#xA;  directories:&#xA;    - path: /etc/ucore-autorebase&#xA;      mode: 0754&#xA;systemd:&#xA;  units:&#xA;    - name: ucore-unsigned-autorebase.service&#xA;      enabled: true&#xA;      contents: |&#xA;        [Unit]&#xA;        Description=uCore autorebase to unsigned OCI and reboot&#xA;        ConditionPathExists=!/etc/ucore-autorebase/unverified&#xA;        ConditionPathExists=!/etc/ucore-autorebase/signed&#xA;        After=network-online.target&#xA;        Wants=network-online.target&#xA;        [Service]&#xA;        Type=oneshot&#xA;        StandardOutput=journal+console&#xA;        ExecStart=/usr/bin/rpm-ostree rebase --bypass-driver ostree-unverified-registry:ghcr.io/ublue-os/ucore:stable&#xA;        ExecStart=/usr/bin/touch /etc/ucore-autorebase/unverified&#xA;        ExecStart=/usr/bin/systemctl disable ucore-unsigned-autorebase.service&#xA;        ExecStart=/usr/bin/systemctl reboot&#xA;        [Install]&#xA;        WantedBy=multi-user.target&#xA;    - name: ucore-signed-autorebase.service&#xA;      enabled: true&#xA;      contents: |&#xA;        [Unit]&#xA;        Description=uCore autorebase to signed OCI and reboot&#xA;        ConditionPathExists=/etc/ucore-autorebase/unverified&#xA;        ConditionPathExists=!/etc/ucore-autorebase/verified&#xA;        After=network-online.target&#xA;        Wants=network-online.target&#xA;        [Service]&#xA;        Type=oneshot&#xA;        StandardOutput=journal+console&#xA;        ExecStart=/usr/bin/rpm-ostree rebase --bypass-driver ostree-image-signed:docker://ghcr.io/ublue-os/ucore:stable&#xA;        ExecStart=/usr/bin/touch /etc/ucore-autorebase/signed&#xA;        ExecStart=/usr/bin/systemctl disable ucore-signed-autorebase.service&#xA;        ExecStart=/usr/bin/systemctl reboot&#xA;        [Install]&#xA;        WantedBy=multi-user.target butane&#xA;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;h2 id=&#34;creating-an-ignition-file&#34;&gt;Creating an ignition file &lt;a href=&#34;#creating-an-ignition-file&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;podman run --interactive --rm --security-opt &lt;span class=&#34;nv&#34;&gt;label&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;disable &lt;span class=&#34;se&#34;&gt;\&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        --volume &lt;span class=&#34;si&#34;&gt;${&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;PWD&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;}&lt;/span&gt;:/pwd --workdir /pwd quay.io/coreos/butane:release &lt;span class=&#34;se&#34;&gt;\&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        --pretty --strict ucore-autorebase.butane &amp;gt;transpiled_config.ign&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;h2 id=&#34;getting-zfs&#34;&gt;Getting zfs &lt;a href=&#34;#getting-zfs&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;Now this is where I realized I went wrong and wished I would have paid&#xA;attention to the autorebase.butane file, it did not use the zfs flavor ucore.&#xA;Luckily they make it wildly easy to rebase between these base images.&lt;/p&gt;&#xA;&lt;p&gt;I needed to run this to rebase into the zfs flavor.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;/usr/bin/rpm-ostree rebase --bypass-driver ostree-unverified-registry:ghcr.io/ublue-os/ucore:stable-zfs&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;This was the output.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;core@falcon-FX6860:~$ /usr/bin/rpm-ostree rebase --bypass-driver ostree-unverified-registry:ghcr.io/ublue-os/ucore:stable-zfs&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;o&#34;&gt;====&lt;/span&gt; AUTHENTICATING FOR org.projectatomic.rpmostree1.rebase &lt;span class=&#34;o&#34;&gt;====&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Authentication is required to switch to a different base OS&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Authenticating as: CoreOS Admin &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;core&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Password:&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;o&#34;&gt;====&lt;/span&gt; AUTHENTICATION &lt;span class=&#34;nv&#34;&gt;COMPLETE&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;====&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Pulling manifest: ostree-unverified-registry:ghcr.io/ublue-os/ucore:stable-zfs&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Importing: ostree-unverified-registry:ghcr.io/ublue-os/ucore:stable-zfs &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;digest: sha256:8ebae90f6844949044c026d7ba05c035956992b68e13bdcbd9158a37beda571e&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;ostree chunk layers already present: &lt;span class=&#34;m&#34;&gt;51&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;custom layers needed: &lt;span class=&#34;m&#34;&gt;2&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;492.9 MB&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Fetching layer sha256:67f3c0e0e0fe &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;269.7 MB&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt;... &lt;span class=&#34;k&#34;&gt;done&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Fetching layer sha256:25992805e895 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;223.1 MB&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt;... &lt;span class=&#34;k&#34;&gt;done&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Staging deployment... &lt;span class=&#34;k&#34;&gt;done&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Upgraded:&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  cockpit-bridge 330-1.fc41 -&amp;gt; 331-1.fc41&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  cockpit-networkmanager 330-1.fc41 -&amp;gt; 331-1.fc41&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  cockpit-selinux 330-1.fc41 -&amp;gt; 331-1.fc41&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  cockpit-storaged 330-1.fc41 -&amp;gt; 331-1.fc41&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  cockpit-system 330-1.fc41 -&amp;gt; 331-1.fc41&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Added:&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  groff-base-1.23.0-7.fc41.x86_64&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  kmod-zfs-2.2.7-1.fc41.x86_64&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  libnvpair3-2.2.7-1.fc41.x86_64&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  libuutil3-2.2.7-1.fc41.x86_64&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  libzfs5-2.2.7-1.fc41.x86_64&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  libzpool5-2.2.7-1.fc41.x86_64&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  lm_sensors-libs-3.6.0-20.fc41.x86_64&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  lzop-1.04-15.fc41.x86_64&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  mbuffer-20241007-1.fc41.x86_64&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  perl-AutoLoader-5.74-512.fc41.noarch&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  perl-B-1.89-512.fc41.x86_64&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  perl-Capture-Tiny-0.48-21.fc41.noarch&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  perl-Carp-1.54-511.fc41.noarch&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  perl-Class-Struct-0.68-512.fc41.noarch&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  perl-Config-IniFiles-3.000003-14.fc41.noarch&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  perl-Data-Dumper-2.189-512.fc41.x86_64&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  perl-Digest-1.20-511.fc41.noarch&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  perl-Digest-MD5-2.59-5.fc41.x86_64&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  perl-DynaLoader-1.56-512.fc41.x86_64&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  perl-Encode-4:3.21-511.fc41.x86_64&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  perl-Errno-1.38-512.fc41.x86_64&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  perl-Exporter-5.78-511.fc41.noarch&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  perl-Fcntl-1.18-512.fc41.x86_64&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  perl-File-Basename-2.86-512.fc41.noarch&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  perl-File-Path-2.18-511.fc41.noarch&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  perl-File-Temp-1:0.231.100-511.fc41.noarch&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  perl-File-stat-1.14-512.fc41.noarch&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  perl-FileHandle-2.05-512.fc41.noarch&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  perl-Getopt-Long-1:2.58-2.fc41.noarch&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  perl-Getopt-Std-1.14-512.fc41.noarch&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  perl-HTTP-Tiny-0.090-1.fc41.noarch&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  perl-IO-1.55-512.fc41.x86_64&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  perl-IO-Socket-IP-0.43-1.fc41.noarch&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  perl-IO-Socket-SSL-2.089-1.fc41.noarch&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  perl-IO-stringy-2.113-15.fc41.noarch&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  perl-IPC-Open3-1.22-512.fc41.noarch&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  perl-MIME-Base32-1.303-21.fc41.noarch&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  perl-MIME-Base64-3.16-511.fc41.x86_64&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  perl-NDBM_File-1.17-512.fc41.x86_64&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  perl-Net-SSLeay-1.94-7.fc41.x86_64&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  perl-POSIX-2.20-512.fc41.x86_64&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  perl-PathTools-3.91-511.fc41.x86_64&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  perl-Pod-Escapes-1:1.07-511.fc41.noarch&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  perl-Pod-Perldoc-3.28.01-512.fc41.noarch&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  perl-Pod-Simple-1:3.45-511.fc41.noarch&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  perl-Pod-Usage-4:2.03-511.fc41.noarch&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  perl-Scalar-List-Utils-5:1.68-1.fc41.x86_64&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  perl-SelectSaver-1.02-512.fc41.noarch&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  perl-Socket-4:2.038-511.fc41.x86_64&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  perl-Storable-1:3.32-511.fc41.x86_64&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  perl-Symbol-1.09-512.fc41.noarch&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  perl-Sys-Hostname-1.25-512.fc41.x86_64&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  perl-Term-ANSIColor-5.01-512.fc41.noarch&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  perl-Term-Cap-1.18-511.fc41.noarch&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  perl-Text-ParseWords-3.31-511.fc41.noarch&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  perl-Text-Tabs+Wrap-2024.001-511.fc41.noarch&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  perl-Time-Local-2:1.350-511.fc41.noarch&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  perl-URI-5.30-1.fc41.noarch&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  perl-base-2.27-512.fc41.noarch&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  perl-constant-1.33-512.fc41.noarch&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  perl-if-0.61.000-512.fc41.noarch&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  perl-interpreter-4:5.40.0-512.fc41.x86_64&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  perl-libnet-3.15-512.fc41.noarch&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  perl-libs-4:5.40.0-512.fc41.x86_64&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  perl-locale-1.12-512.fc41.noarch&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  perl-mro-1.29-512.fc41.x86_64&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  perl-overload-1.37-512.fc41.noarch&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  perl-overloading-0.02-512.fc41.noarch&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  perl-parent-1:0.242-1.fc41.noarch&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  perl-podlators-1:6.0.2-2.fc41.noarch&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  perl-vars-1.05-512.fc41.noarch&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  pv-1.8.14-2.fc41.x86_64&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  python3-cffi-1.17.0-1.fc41.x86_64&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  python3-ply-3.11-25.fc41.noarch&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  python3-pycparser-2.20-18.fc41.noarch&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  python3-pyzfs-2.2.7-1.fc41.noarch&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  sanoid-2.2.0-1.fc41.ucore2.noarch&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  sysstat-12.7.6-2.fc41.x86_64&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  zfs-2.2.7-1.fc41.x86_64&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  zfs-dracut-2.2.7-1.fc41.noarch&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Changes queued &lt;span class=&#34;k&#34;&gt;for&lt;/span&gt; next boot. Run &lt;span class=&#34;s2&#34;&gt;&amp;#34;systemctl reboot&amp;#34;&lt;/span&gt; to start a reboot&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;For some reason I double checked, and runnign it a second time gave me this.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;core@falcon-FX6860:~$ sudo rpm-ostree rebase ostree-image-signed:docker://ghcr.io/ublue-os/ucore:stable-zfs&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Pulling manifest: ostree-image-signed:docker://ghcr.io/ublue-os/ucore:stable-zfs&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Staging deployment... &lt;span class=&#34;k&#34;&gt;done&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Changes queued &lt;span class=&#34;k&#34;&gt;for&lt;/span&gt; next boot. Run &lt;span class=&#34;s2&#34;&gt;&amp;#34;systemctl reboot&amp;#34;&lt;/span&gt; to start a reboot&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;h2 id=&#34;zfs&#34;&gt;ZFS &lt;a href=&#34;#zfs&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;Once I rebooted I had all of my necessary zfs utilities that I needed.&lt;/p&gt;&#xA;&lt;h2 id=&#34;connecting-nfs&#34;&gt;connecting nfs &lt;a href=&#34;#connecting-nfs&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;The last thing I wanted to do was to mount an nfs share from my master node so&#xA;that they can share a storage backend.  I found that nfs was already in the host and ready to go.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo mkdir /mnt/vault/nfs&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo mount -t nfs &amp;lt;nfs server ip&amp;gt;:/mnt/vault/nfs /mnt/vault/nfs&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Getting a Dev Job in 2025 - YouTube</title>
    <id>https://waylonwalker.com/thought-472/</id>
    <updated>2024-12-27T02:53:55Z</updated>
    <published>2024-12-27T02:53:55Z</published>
    <link href="https://waylonwalker.com/thought-472/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/watch?v=2PiM2e4RtTg</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;2PiM2e4RtTg&#34; title=&#34;Getting a Dev Job in 2025&#34; playlabel=&#34;Play: Getting a Dev Job in 2025&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Theo weighing in on the 2025 job market.  It’s no 2018 out there right now, the ratio of jobs to engineers in the market has flipped big time.  Theo as usual really focuses on community, being in a community, and being a good citizen.  At the end of the video Theo weighs in on his experience hiring, and generally it starts with we need someone to do x does anyone know someone, then goes to a more formal internal post, then more formally asking internally does anyone know someone, then maybe to his community, and if he really still needs the person it &lt;em&gt;might&lt;/em&gt; become an external post.  These days there are so many good engineers on the market that very few good jobs actually get a posting for in his opinion.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 kitze 🚀 on X: &#34;holy fk I thought package.json was bad but TIL ...</title>
    <id>https://waylonwalker.com/thought-471/</id>
    <updated>2024-12-27T02:51:27Z</updated>
    <published>2024-12-27T02:51:27Z</published>
    <link href="https://waylonwalker.com/thought-471/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://x.com/thekitze/status/1872267874842063223?t=zxq6-kA9atVuXJeWntxfWg&amp;s=09</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://x.com/thekitze/status/1872267874842063223?t=zxq6-kA9atVuXJeWntxfWg&amp;amp;s=09&#34; class=&#34;embed-card-link  has-avatar has-avatar-before&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/x.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/x.com.ico&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;External Link&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;X (formerly Twitter) · x.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;kitze hating on  python packaging in new ways.  Python packaging has a lot of quirks that can make it infuriating.  Not once have I thought “you know what this needs, quotes and braces”&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/566ff44b-cace-474d-b1bc-62aaf42f419f.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;image&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/566ff44b-cace-474d-b1bc-62aaf42f419f.webp&#34; alt=&#34;image&#34;/ data-glightbox=&#34;description: image&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Custom Gridfinity Bins For ANYTHING! - YouTube</title>
    <id>https://waylonwalker.com/thought-470/</id>
    <updated>2024-12-26T19:02:29Z</updated>
    <published>2024-12-26T19:02:29Z</published>
    <link href="https://waylonwalker.com/thought-470/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/watch?v=_TtkaIe0ZKU&amp;t=409s</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;_TtkaIe0ZKU&#34; title=&#34;Custom Gridfinity Bins For ANYTHING!&#34; playlabel=&#34;Play: Custom Gridfinity Bins For ANYTHING!&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;This tip of using tinkercad to do boolean operations on an stl of a solid gridfinity bin and an outline is absolute fire 🔥🔥🔥.  This feels like a relatively simple operation, but to do it to a generated stl proves hard to do in most modeling software, at least harder than it needs to be.  Somehow tinkercad got it right and made it a very basic operation to do.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/36826ac6-9e38-4955-b622-4de86900c8b7.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;image&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/36826ac6-9e38-4955-b622-4de86900c8b7.webp&#34; alt=&#34;image&#34;/ data-glightbox=&#34;description: image&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;p&gt;It took me a minute to find the Merge button that Uncle Jessy mentioned, they call it a group in TinkerCAD.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/a22fc486-d627-4e37-8d58-e963919bb8a0.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;image&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/a22fc486-d627-4e37-8d58-e963919bb8a0.webp&#34; alt=&#34;image&#34;/ data-glightbox=&#34;description: image&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Ubuntu Summit 2024 | UMU - A unified tool for easily running y...</title>
    <id>https://waylonwalker.com/thought-469/</id>
    <updated>2024-12-26T16:47:13Z</updated>
    <published>2024-12-26T16:47:13Z</published>
    <link href="https://waylonwalker.com/thought-469/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/watch?v=iuBzGked-JU&amp;t=559s</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;iuBzGked-JU&#34; title=&#34;Ubuntu Summit 2024 | UMU - A unified tool for easily running your games outside of Steam&#34; playlabel=&#34;Play: Ubuntu Summit 2024 | UMU - A unified tool for easily running your games outside of Steam&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Damn Glorious Eggrolls is still making gaming on linux better.  Of course its containerization that drives everything on linux these days.  This is a pretty badass talk.  Umu is already running in steam and bazzite.  Bazzite gamemode uses this to get a gamescope session running.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 4 Tips for Building a Production-Ready FastAPI Backend - YouTube</title>
    <id>https://waylonwalker.com/thought-468/</id>
    <updated>2024-12-26T02:42:17Z</updated>
    <published>2024-12-26T02:42:17Z</published>
    <link href="https://waylonwalker.com/thought-468/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/watch?v=XlnmN4BfCxw</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;XlnmN4BfCxw&#34; title=&#34;How I Actually Build &lt;a href=&#34;/fastapi/&#34; class=&#34;glossary-term&#34; title=&#34;FastAPI is a modern and efficient web framework for Python, built on top of the Starlette web framework, and pydantic for data validation and serialization.&#34;&gt;FastAPI&lt;/a&gt; Backends for Production&#34; playlabel=&#34;Play: How I Actually Build FastAPI Backends for Production&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Great list of 4 tips for running fastapi applications.&lt;/p&gt;&#xA;&lt;h2 id=&#34;keep-routes-small&#34;&gt;Keep routes small &lt;a href=&#34;#keep-routes-small&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;Fat routers with all of the logic built in makes them hard to test, hard to refactor, causes lots of duplication, and makes it hard to reuse the business logic code later in something like a cli application.&lt;/p&gt;&#xA;&lt;h2 id=&#34;deploy-early&#34;&gt;Deploy Early &lt;a href=&#34;#deploy-early&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;I really like this advice!  He reccommends deploying as early as you can get a healthcheck live in your application.  I’ve found too many times developers build something that is really hard, or impossible to deploy, when if they had tried to deploy early they would have spotted some easy to fix issues.  This is less important if you are building out of a template that your team commonly deploys from, but very important with new patterns.&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://youtu.be/XlnmN4BfCxw?si=ks1wvmgDyoQLgrv2&amp;amp;t=1093&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/youtu.be.png&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/youtu.be.png&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;https://youtu.be/XlnmN4BfCxw?si=ks1wvmgDyoQLgrv2&amp;amp;t=1093&lt;/a&gt;&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Building Python tools with a one-shot prompt using uv run and ...</title>
    <id>https://waylonwalker.com/thought-467/</id>
    <updated>2024-12-25T02:26:31Z</updated>
    <published>2024-12-25T02:26:31Z</published>
    <link href="https://waylonwalker.com/thought-467/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://simonwillison.net/2024/Dec/19/one-shot-python-tools/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://simonwillison.net/2024/Dec/19/one-shot-python-tools/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://static.simonwillison.net/static/2024/s3-debug-social-media-card.jpg&#34; alt=&#34;Building Python tools with a one-shot prompt using uv run and Claude Projects — I’ve written a lot about how I’ve been using Claude to build one-shot HTML+JavaScript applications via Claude Artifacts. I recently started using a similar pattern to create one-shot Python utilities, …&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: Building Python tools with a one-shot prompt using uv run and Claude Projects — I’ve written a lot about how I’ve been using Claude to build one-shot HTML+JavaScript applications via Claude Artifacts. I recently started using a similar pattern to create one-shot Python utilities, …&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Building Python tools with a one-shot prompt using uv run and Claude Projects&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;I’ve written a lot about how I’ve been using Claude to build one-shot HTML+JavaScript applications via Claude Artifacts. I recently started using a similar pattern to create one-shot Python uti...&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;Simon Willison’s Weblog · simonwillison.net&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;This is really interesting, the lazy uv scripts are really becoming quite appealing, especially for something like this to just pop out of an llm ready to run.  The article features several examples of these one-shot prompt ideas that I suggest you give a try, and a prompt for creating them.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Status | Depot</title>
    <id>https://waylonwalker.com/thought-466/</id>
    <updated>2024-12-25T02:22:53Z</updated>
    <published>2024-12-25T02:22:53Z</published>
    <link href="https://waylonwalker.com/thought-466/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://status.depot.dev/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://status.depot.dev/&#34; class=&#34;embed-card-link  has-avatar has-avatar-before&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/status.depot.dev.png&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/status.depot.dev.png&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Depot Status&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Latest service status for Depot&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;Depot Status · status.depot.dev&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Depot’s uptime seems to be great.  I definitely hit some issues with it this afternoon 12/24/24 that were not reported.  I wonder if my issues were with the fly integration.  Maybe fly ran out of credits to depot or something.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Deploy to Fly using a Depot builder</title>
    <id>https://waylonwalker.com/thought-465/</id>
    <updated>2024-12-25T02:20:08Z</updated>
    <published>2024-12-25T02:20:08Z</published>
    <link href="https://waylonwalker.com/thought-465/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://depot.dev/blog/how-to-build-with-depot-on-fly</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://depot.dev/blog/how-to-build-with-depot-on-fly&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://depot.dev/images/banner/depot-fly-builder-banner.png&#34; alt=&#34;Deploy to Fly using a Depot builder — Using Fly.io&amp;#39;s new Depot builder, we&amp;#39;ll walk you through how to deploy a TypeScript service globally with speed.&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: Deploy to Fly using a Depot builder — Using Fly.io&amp;#39;s new Depot builder, we&amp;#39;ll walk you through how to deploy a TypeScript service globally with speed.&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Deploy to Fly using a Depot builder&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Using Fly.io&amp;#39;s new Depot builder, we&amp;#39;ll walk you through how to deploy a TypeScript service globally with speed.&#xA;&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;Depot · depot.dev&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Here the integration to depot appears to be opt in using the &lt;code&gt;--depot&lt;/code&gt; flag on &lt;code&gt;fly deploy&lt;/code&gt;.  This must have changed over time though because today it was giving me issues and I had to opt out using &lt;code&gt;fly deploy --depot=&amp;#39;false&amp;#39;&lt;/code&gt;.  Looks like a great service and I just learned about them on their bad day.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Depot</title>
    <id>https://waylonwalker.com/thought-464/</id>
    <updated>2024-12-25T02:17:47Z</updated>
    <published>2024-12-25T02:17:47Z</published>
    <link href="https://waylonwalker.com/thought-464/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://depot.dev/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://depot.dev/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://depot.dev/depot-social.png&#34; alt=&#34;Depot — Exponentially faster builds for everyone.&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: Depot — Exponentially faster builds for everyone.&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Depot&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Exponentially faster builds for everyone.&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;Depot · depot.dev&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Just learned about depot today ironically because it seems to be down and fly is using them under the hood to do the container builds, seems like a really great service for fast builds accross your team.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Cursor + Windsurf Settings to 5x AI&#39;s Output Quality (Works wi...</title>
    <id>https://waylonwalker.com/thought-463/</id>
    <updated>2024-12-24T21:28:08Z</updated>
    <published>2024-12-24T21:28:08Z</published>
    <link href="https://waylonwalker.com/thought-463/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/watch?v=aG-utUqVrb0</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;aG-utUqVrb0&#34; title=&#34;Cursor + Windsurf Settings to 5x AI&amp;#39;s Output Quality (Works with VS Code too)&#34; playlabel=&#34;Play: Cursor + Windsurf Settings to 5x AI&amp;#39;s Output Quality (Works with VS Code too)&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;This was an eye opening video into agentic editing workflows.&lt;/p&gt;&#xA;&lt;h2 id=&#34;setting-rules&#34;&gt;setting rules &lt;a href=&#34;#setting-rules&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;Dfferent ai tools use different rules files, windsurf uses .windsurfrules.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/f75bf439-919f-4c19-8695-176ca8a7d52d.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;image&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/f75bf439-919f-4c19-8695-176ca8a7d52d.webp&#34; alt=&#34;image&#34;/ data-glightbox=&#34;description: image&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;testing-out-rules&#34;&gt;testing out rules &lt;a href=&#34;#testing-out-rules&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;Test out your rules file by having it say something at the beginning of the output to verify that the rules are being applied correctly.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/ebeed79c-435b-4aab-b3dc-c744b144c438.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;image&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/ebeed79c-435b-4aab-b3dc-c744b144c438.webp&#34; alt=&#34;image&#34;/ data-glightbox=&#34;description: image&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;first-line&#34;&gt;First line &lt;a href=&#34;#first-line&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;He suggests to use this key rule for debugging purposes, otherwise you are guessing to what rules if any it is following.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Every time you choose to apply a rule(s), explicitly state the rule(s) in the output.  You can abbreviate the rule description to a single word or phrase.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Dedicated Servers | Intel Servers | AMD Servers - Dedicated Ho...</title>
    <id>https://waylonwalker.com/thought-462/</id>
    <updated>2024-12-24T20:29:13Z</updated>
    <published>2024-12-24T20:29:13Z</published>
    <link href="https://waylonwalker.com/thought-462/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.reliablesite.net/dedicated-servers/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://www.reliablesite.net/dedicated-servers/&#34; class=&#34;embed-card-link  has-avatar has-avatar-before&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/www.reliablesite.net.png&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/www.reliablesite.net.png&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Dedicated Servers | Intel Servers | AMD Servers - Dedicated Hosting&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;reliablesite.net&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Dax talked about this in a recent How about tomorrow podcast &lt;a href=&#34;https://thoughts.waylonwalker.com/post/461&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/thoughts.waylonwalker.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/thoughts.waylonwalker.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;https://thoughts.waylonwalker.com/post/461&lt;/a&gt;.  He is using it as his dev machine, he just ssh’s in and devs on it.  Feels like quite an interesting workflow, their prices seem competitive, but as a cheap ass homelabber I see their prices and think I could grab a used optiplex for the cost of a month or two of these and probably wouldn’t know the difference.  DAX mentions longer compile times so maybe he does notice.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Talking with Typecraft - YouTube</title>
    <id>https://waylonwalker.com/thought-461/</id>
    <updated>2024-12-24T20:24:42Z</updated>
    <published>2024-12-24T20:24:42Z</published>
    <link href="https://waylonwalker.com/thought-461/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/watch?v=qEykeKfAnJQ&amp;t=1068s</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;qEykeKfAnJQ&#34; title=&#34;- YouTube&#34; playlabel=&#34;Play: - YouTube&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;This is a pretty great episode talking shop with typecraft.  They talk setups, cameras, content creation. I found them talking about their linux setups particularly interesting.  Dax talked about his flow from building his own machines to using reliablesite.com.&lt;/p&gt;&#xA;&lt;h2 id=&#34;tmux-default-leader&#34;&gt;tmux default leader &lt;a href=&#34;#tmux-default-leader&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;Dax hates on c-a, both typecraft and dax use c-s, which normally freezes a terminal, we can all agree that is useless.  I use the default c-b, it seems fine for me.&lt;/p&gt;&#xA;&lt;h2 id=&#34;type-crafts-setup&#34;&gt;type crafts setup &lt;a href=&#34;#type-crafts-setup&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;Ubuntu&lt;/li&gt;&#xA;&lt;li&gt;Ghosty&lt;/li&gt;&#xA;&lt;li&gt;Tmux&lt;/li&gt;&#xA;&lt;li&gt;Nvim&lt;/li&gt;&#xA;&lt;li&gt;Ruby&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;h2 id=&#34;selling-coffee-without-a-web-front-end&#34;&gt;Selling coffee without a web front end &lt;a href=&#34;#selling-coffee-without-a-web-front-end&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;Dax talks about terminal.shop and how they originally planned to have a web front end, but after they had so much success they stuck with it.  now they are leaning harder into it and are building out integrations with a bunch of languages and an api, but no front end.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 PEP 723 – Inline script metadata | peps.python.org</title>
    <id>https://waylonwalker.com/thought-460/</id>
    <updated>2024-12-24T15:53:29Z</updated>
    <published>2024-12-24T15:53:29Z</published>
    <link href="https://waylonwalker.com/thought-460/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://peps.python.org/pep-0723/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://peps.python.org/pep-0723/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://peps.python.org/_static/og-image.png&#34; alt=&#34;PEP 723 – Inline script metadata | peps.python.org — This PEP specifies a metadata format that can be embedded in single-file Python scripts to assist launchers, IDEs and other external tools which may need to interact with such scripts.&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: PEP 723 – Inline script metadata | peps.python.org — This PEP specifies a metadata format that can be embedded in single-file Python scripts to assist launchers, IDEs and other external tools which may need to interact with such scripts.&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;PEP 723 – Inline script metadata | peps.python.org&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;This PEP specifies a metadata format that can be embedded in single-file Python scripts to assist launchers, IDEs and other external tools which may need to interact with such scripts.&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;Python Enhancement Proposals (PEPs) · peps.python.org&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;PEP 723 is what is inspiring all of these lazy self installing python scripts, Authored by the author of hatch and pyapp.  This is a really cool thing that uv has picked up and made python packaging just a bit easier.. maybe… dependency resolution still sucks.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Switching from virtualenvwrapper to direnv, Starship, and uv</title>
    <id>https://waylonwalker.com/thought-459/</id>
    <updated>2024-12-24T03:30:57Z</updated>
    <published>2024-12-24T03:30:57Z</published>
    <link href="https://waylonwalker.com/thought-459/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://treyhunner.com/2024/10/switching-from-virtualenvwrapper-to-direnv-starship-and-uv/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://treyhunner.com/2024/10/switching-from-virtualenvwrapper-to-direnv-starship-and-uv/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://www.gravatar.com/avatar/93a988bd85040f58f8417dc4be78c7de?s=500&#34; alt=&#34;Switching from virtualenvwrapper to direnv, Starship, and uv — Earlier this week I considered whether I should finally switch away from virtualenvwrapper to using local .venv managed by direnv. I’ve never …&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: Switching from virtualenvwrapper to direnv, Starship, and uv — Earlier this week I considered whether I should finally switch away from virtualenvwrapper to using local .venv managed by direnv. I’ve never …&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Switching from virtualenvwrapper to direnv, Starship, and uv&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Earlier this week I considered whether I should finally switch away from virtualenvwrapper to using local .venv managed by direnv. I’ve never …&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;treyhunner.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;I’ve kinda fallen out of using direnv now that a lot of my projects use hatch, I generally just hatch shell into them.  I just need to make sure I go through all of them and make my installer uv.  Now I’ve been thinking about making uv my only needed dependency to run a python project and leaning more to something like &lt;code&gt;uv run --with . uvicorn myapp --reload&lt;/code&gt;&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Lazy self-installing Python scripts with uv</title>
    <id>https://waylonwalker.com/thought-458/</id>
    <updated>2024-12-24T03:20:33Z</updated>
    <published>2024-12-24T03:20:33Z</published>
    <link href="https://waylonwalker.com/thought-458/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://treyhunner.com/2024/12/lazy-self-installing-python-scripts-with-uv/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://treyhunner.com/2024/12/lazy-self-installing-python-scripts-with-uv/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://www.gravatar.com/avatar/93a988bd85040f58f8417dc4be78c7de?s=500&#34; alt=&#34;Lazy self-installing Python scripts with uv — I frequently find myself writing my own short command-line scripts in Python that help me with day-to-day tasks. It’s so easy to throw together …&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: Lazy self-installing Python scripts with uv — I frequently find myself writing my own short command-line scripts in Python that help me with day-to-day tasks. It’s so easy to throw together …&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Lazy self-installing Python scripts with uv&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;I frequently find myself writing my own short command-line scripts in Python that help me with day-to-day tasks. It’s so easy to throw together …&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;treyhunner.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;I really like Trey’s steps to making an executable python script with uv&lt;/p&gt;&#xA;&lt;p&gt;his old process seems to be the same with a new shebang&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;ol&gt;&#xA;&lt;li&gt;Add an appropriate shebang line above the first line in the file (e.g. #!/usr/bin/env python3)&lt;/li&gt;&#xA;&lt;li&gt;Aet an executable bit on the file (chmod a+x my_script.py)&lt;/li&gt;&#xA;&lt;li&gt;Place the script in a directory that’s in my shell’s PATH variable (e.g. cp my_script.py ~/bin/my_script)&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;p&gt;And here is the new format the the shebang followed by the metadata comment block defined in PEP 723.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;cp&#34;&gt;#!/usr/bin/env -S uv run --script&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# /// script&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# requires-python = &amp;#34;&amp;gt;=3.12&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# dependencies = [&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;#     &amp;#34;ffmpeg-normalize&amp;#34;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# ]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# ///&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 My approach to running a link blog</title>
    <id>https://waylonwalker.com/thought-457/</id>
    <updated>2024-12-23T01:47:47Z</updated>
    <published>2024-12-23T01:47:47Z</published>
    <link href="https://waylonwalker.com/thought-457/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://simonwillison.net/2024/Dec/22/link-blog/#atom-everything</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://simonwillison.net/2024/Dec/22/link-blog/#atom-everything&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://static.simonwillison.net/static/2024/link-blog-card.jpg&#34; alt=&#34;My approach to running a link blog — I started running a basic link blog on this domain back in November 2003—publishing links (which I called “blogmarks”) with a title, URL, short snippet of commentary and a “via” …&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: My approach to running a link blog — I started running a basic link blog on this domain back in November 2003—publishing links (which I called “blogmarks”) with a title, URL, short snippet of commentary and a “via” …&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;My approach to running a link blog&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;I started running a basic link blog on this domain back in November 2003—publishing links (which I called “blogmarks”) with a title, URL, short snippet of commentary and a “via” …&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;Simon Willison’s Weblog · simonwillison.net&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;I still cannot believe I thought I had such a unique idea with thoughts only to find out shortly thereafter that Simon beat me to the punch by about 20 years!&lt;/p&gt;&#xA;&lt;p&gt;Simon put a lot of work into this &lt;a href=&#34;https://simonwillison.net/2024/Dec/22/link-blog/#thoughts.waylonwalker.com&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/simonwillison.net.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/simonwillison.net.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;post&lt;/a&gt; please check it out.  Its not only filled with tons of little nuggets about blogging, it has just a ton of links to other posts I’m itching to read now.&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://simonwillison.net/2024/Dec/22/link-blog/#thoughts.waylonwalker.com&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/simonwillison.net.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/simonwillison.net.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;https://simonwillison.net/2024/Dec/22/link-blog/#thoughts.waylonwalker.com&lt;/a&gt;&lt;/p&gt;&#xA;&lt;h2 id=&#34;a-linkblog-proves-that-you-read&#34;&gt;a linkblog proves that you read &lt;a href=&#34;#a-linkblog-proves-that-you-read&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;Simon mentions it in the post as well, but one thing about having a link blog does is that it proves that you actually read articles that you share.  This is really more about proving to myself, and reminding myself that anyone else, it’s a good feeling.&lt;/p&gt;&#xA;&lt;h2 id=&#34;trying-to-add-soemthing-extra&#34;&gt;Trying to add soemthing extra &lt;a href=&#34;#trying-to-add-soemthing-extra&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;include names of people, and add tags for common people&lt;/li&gt;&#xA;&lt;li&gt;something extra - the whole point is to bring something to the post without stealing thunder, but rather linkbuilding for the author that put the hard work in.&lt;/li&gt;&#xA;&lt;li&gt;copious amounts of quotes&lt;/li&gt;&#xA;&lt;li&gt;It should bring the author up not put them down&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;h2 id=&#34;a-post-a-day&#34;&gt;A post a day &lt;a href=&#34;#a-post-a-day&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;&lt;em&gt;well .98 posts per day&lt;/em&gt;&lt;/p&gt;&#xA;&lt;p&gt;Simon mentions starting in Nov 2003, which puts that at 7722 days since then.  That is so close to a post a day for 21 years, even though they are often as short as one sentence that is impressive to keep up over time.&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;So far I’ve published 7,607 link blog posts and counting.&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;h2 id=&#34;whats-my-rate&#34;&gt;What’s my rate &lt;a href=&#34;#whats-my-rate&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;I just check and I am at 513 days in with 413 posts (0.8 posts/day).  Not quite up to Simon, but close enough to be proud of.  My only grief is that I didn’t start sooner.&lt;/p&gt;&#xA;&lt;h2 id=&#34;my-stack&#34;&gt;My stack &lt;a href=&#34;#my-stack&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;I have a full post explaining more about how I do mine and the stack behind it here.&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://waylonwalker.com/thoughts/&#34;&gt;https://waylonwalker.com/thoughts/&lt;/a&gt;&lt;/p&gt;&#xA;&lt;h2 id=&#34;see-images-are-hard&#34;&gt;See Images &lt;strong&gt;are&lt;/strong&gt; hard! &lt;a href=&#34;#see-images-are-hard&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;This is one of the main reasons that I built &lt;a href=&#34;https://dropper.waylonwalker.com&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/dropper.waylonwalker.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/dropper.waylonwalker.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;dropper&lt;/a&gt; for myself, and plan to include it in &lt;a href=&#34;https://fokais.com&#34;&gt;fokais&lt;/a&gt; as a product to help others with their blog.  This is definite evidence that I am not the only one with this issue!&lt;/p&gt;&#xA;&lt;h2 id=&#34;ive-made-images-easy-form-myself&#34;&gt;I’ve made images easy form myself &lt;a href=&#34;#ive-made-images-easy-form-myself&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;I’ve tried half a dozen or so easy techniques from obsidian to various github repos and none have really hit me with inspiration to really add screenshots like I do with &lt;a href=&#34;https://dropper.waylonwalker.com&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/dropper.waylonwalker.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/dropper.waylonwalker.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;dropper&lt;/a&gt;.  I write all of my thoughts posts in a chrome extension drop down local first style and when i hit paste it uploads and gives me a markdown image link, it cannot be easier for me.&lt;/p&gt;&#xA;&lt;p&gt;When I store them I compress them and convert them to webp.  I serve them by streaming them out of an s3 bucket with &lt;a href=&#34;/fastapi/&#34; class=&#34;glossary-term&#34; title=&#34;FastAPI is a modern and efficient web framework for Python, built on top of the Starlette web framework, and pydantic for data validation and serialization.&#34;&gt;fastapi&lt;/a&gt; and some very generous cloudflare cache headers, so I should only get a request for that image about once a year.&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;Warning, I built dropper for me, no guarantees that it works forever, foakis will be for more users.&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/2d54112d-b6c0-4f42-bbbb-eeb5fea133bd.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;image&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/2d54112d-b6c0-4f42-bbbb-eeb5fea133bd.webp&#34; alt=&#34;image&#34;/ data-glightbox=&#34;description: image&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;bluesky-does-not-penalize-for-links&#34;&gt;Bluesky does not penalize for links &lt;a href=&#34;#bluesky-does-not-penalize-for-links&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;I am loving bluesky more and more, learning this just gave it another level up.&lt;/p&gt;&#xA;&lt;hr/&gt;&#xA;&lt;h2 id=&#34;series&#34;&gt;Series &lt;a href=&#34;#series&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;I just noticed that Simon has Series on his blog in a very elegant way.  One I need to get back to blogging more, I did not do so good in 2024, and two this is awesome and I want it.&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/ec59349e-cca7-4fa9-a57e-50cc442305db.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;image&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/ec59349e-cca7-4fa9-a57e-50cc442305db.webp&#34; alt=&#34;image&#34;/ data-glightbox=&#34;description: image&#34;&gt;&lt;/a&gt;test&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 How I use Obsidian Templater</title>
    <id>https://waylonwalker.com/thought-456/</id>
    <updated>2024-12-22T17:12:50Z</updated>
    <published>2024-12-22T17:12:50Z</published>
    <link href="https://waylonwalker.com/thought-456/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://thoughts.waylonwalker.com/post/455</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://thoughts.waylonwalker.com/post/455&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img src=&#34;https://shots.wayl.one/shot/?url=https://thoughts.waylonwalker.com/post/455&amp;amp;height=600&amp;amp;width=1200&amp;amp;scaled_width=1200&amp;amp;scaled_height=600&#34; alt=&#34;How I use Obsidian Templater&#xA; — &#xA;&amp;lt;pre&amp;gt;&amp;lt;code&amp;gt;This is a test post.  I just updated the chrome extension for thoughts to take a the thumbnail image on open of the chrome extension so that it is rea...&amp;#34; loading=&amp;#34;lazy&amp;#34;&amp;gt;&#xA;&amp;lt;/div&amp;gt;&#xA;&amp;lt;div class=&amp;#34;embed-card-content&amp;#34;&amp;gt;&#xA;  &amp;lt;div class=&amp;#34;embed-card-title&amp;#34;&amp;gt;&#xA;&amp;lt;/code&amp;gt;&amp;lt;/pre&amp;gt;&#xA;&amp;lt;p&amp;gt;How I use Obsidian Templater&amp;lt;/p&amp;gt;&#xA;&amp;lt;/div&amp;gt;&#xA;      &amp;lt;div class=&#34; embed-card-description glightbox&#34;=&#34;&#34;/ data-glightbox=&#34;description: How I use Obsidian Templater&#xA; — &#xA;&amp;lt;pre&amp;gt;&amp;lt;code&amp;gt;This is a test post.  I just updated the chrome extension for thoughts to take a the thumbnail image on open of the chrome extension so that it is rea...&amp;#34; loading=&amp;#34;lazy&amp;#34;&amp;gt;&#xA;&amp;lt;/div&amp;gt;&#xA;&amp;lt;div class=&amp;#34;embed-card-content&amp;#34;&amp;gt;&#xA;  &amp;lt;div class=&amp;#34;embed-card-title&amp;#34;&amp;gt;&#xA;&amp;lt;/code&amp;gt;&amp;lt;/pre&amp;gt;&#xA;&amp;lt;p&amp;gt;How I use Obsidian Templater&amp;lt;/p&amp;gt;&#xA;&amp;lt;/div&amp;gt;&#xA;      &amp;lt;div class=&#34;&gt;&#xA;&lt;pre&gt;&lt;code&gt;This is a test post.  I just updated the chrome extension for thoughts to take a the thumbnail image on open of the chrome extension so that it is rea...&#xA;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;thoughts.waylonwalker.com&lt;/div&gt;&#xA;    &lt;/a&gt;&lt;/div&gt;&lt;a href=&#34;https://thoughts.waylonwalker.com/post/455&#34; class=&#34;embed-card-link  has-avatar has-avatar-before&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/thoughts.waylonwalker.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/thoughts.waylonwalker.com.ico&#34;&gt;&#xA;  &lt;/a&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 How I use Obsidian Templater</title>
    <id>https://waylonwalker.com/thought-455/</id>
    <updated>2024-12-22T17:08:32Z</updated>
    <published>2024-12-22T17:08:32Z</published>
    <link href="https://waylonwalker.com/thought-455/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://thoughts.waylonwalker.com/post/454</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://thoughts.waylonwalker.com/post/454&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img src=&#34;https://shots.wayl.one/shot/?url=https://thoughts.waylonwalker.com/post/454&amp;amp;height=600&amp;amp;width=1200&amp;amp;scaled_width=1200&amp;amp;scaled_height=600&#34; alt=&#34;How I use Obsidian Templater&#xA; — &#xA;&amp;lt;pre&amp;gt;&amp;lt;code&amp;gt;I really like this idea of keeping a set up contacts in a markdown repo, and being able to wikilink them to different tickets / meetings and what not....&amp;#34; loading=&amp;#34;lazy&amp;#34;&amp;gt;&#xA;&amp;lt;/div&amp;gt;&#xA;&amp;lt;div class=&amp;#34;embed-card-content&amp;#34;&amp;gt;&#xA;  &amp;lt;div class=&amp;#34;embed-card-title&amp;#34;&amp;gt;&#xA;&amp;lt;/code&amp;gt;&amp;lt;/pre&amp;gt;&#xA;&amp;lt;p&amp;gt;How I use Obsidian Templater&amp;lt;/p&amp;gt;&#xA;&amp;lt;/div&amp;gt;&#xA;      &amp;lt;div class=&#34; embed-card-description glightbox&#34;=&#34;&#34;/ data-glightbox=&#34;description: How I use Obsidian Templater&#xA; — &#xA;&amp;lt;pre&amp;gt;&amp;lt;code&amp;gt;I really like this idea of keeping a set up contacts in a markdown repo, and being able to wikilink them to different tickets / meetings and what not....&amp;#34; loading=&amp;#34;lazy&amp;#34;&amp;gt;&#xA;&amp;lt;/div&amp;gt;&#xA;&amp;lt;div class=&amp;#34;embed-card-content&amp;#34;&amp;gt;&#xA;  &amp;lt;div class=&amp;#34;embed-card-title&amp;#34;&amp;gt;&#xA;&amp;lt;/code&amp;gt;&amp;lt;/pre&amp;gt;&#xA;&amp;lt;p&amp;gt;How I use Obsidian Templater&amp;lt;/p&amp;gt;&#xA;&amp;lt;/div&amp;gt;&#xA;      &amp;lt;div class=&#34;&gt;&#xA;&lt;pre&gt;&lt;code&gt;I really like this idea of keeping a set up contacts in a markdown repo, and being able to wikilink them to different tickets / meetings and what not....&#xA;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;thoughts.waylonwalker.com&lt;/div&gt;&#xA;    &lt;/a&gt;&lt;/div&gt;&lt;a href=&#34;https://thoughts.waylonwalker.com/post/454&#34; class=&#34;embed-card-link  has-avatar has-avatar-before&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/thoughts.waylonwalker.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/thoughts.waylonwalker.com.ico&#34;&gt;&#xA;  &lt;/a&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 How I use Obsidian Templater</title>
    <id>https://waylonwalker.com/thought-454/</id>
    <updated>2024-12-22T16:53:28Z</updated>
    <published>2024-12-22T16:53:28Z</published>
    <link href="https://waylonwalker.com/thought-454/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://cassidoo.co/post/obsidian-templater/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://cassidoo.co/post/obsidian-templater/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://cassidoo.co/og-image/obsidian-templater.png&#34; alt=&#34;How I use Obsidian Templater — One of my favorite Obsidian plugins is Templater, which lets you create reusable templates in your notes vault!&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: How I use Obsidian Templater — One of my favorite Obsidian plugins is Templater, which lets you create reusable templates in your notes vault!&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;How I use Obsidian Templater&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;One of my favorite Obsidian plugins is Templater, which lets you create reusable templates in your notes vault!&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;cassidoo.co&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;I really like this idea of keeping a set up contacts in a markdown repo, and being able to wikilink them to different tickets / meetings and what not.  I’m imagining the graph you can build, it feels quite interesting.  Even more relevant as we see things like teams rolling out retention limits to messages.&lt;/p&gt;&#xA;&lt;p&gt;Here is Cassidy’s format, I like it but I’m probably not going to track the birthday of most people I work with, thats just not the relationship I tend to have with work friends.  It might be a midwest or non tech thing, but I am not even aware if any of my co-workers have social media, and I assume that if they did it would not include anything work related but more football and other sports.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/32859bd6-1b9f-4d40-a87c-0b96a5a42084.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;image&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/32859bd6-1b9f-4d40-a87c-0b96a5a42084.webp&#34; alt=&#34;image&#34;/ data-glightbox=&#34;description: image&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 docker context (and an issue to question your sanity) | Pype.dev</title>
    <id>https://waylonwalker.com/thought-453/</id>
    <updated>2024-12-19T17:56:46Z</updated>
    <published>2024-12-19T17:56:46Z</published>
    <link href="https://waylonwalker.com/thought-453/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://pype.dev/docker-context-and-an-issue-to-question-your-sanity</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://pype.dev/docker-context-and-an-issue-to-question-your-sanity&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://cdn.statically.io/gh/pypeaday/pype.dev/main/pages/media/og-02.png&#34; alt=&#34;docker context (and an issue to question your sanity) | Nic Payne — docker contexts are great, would recommend putting them in your prompt though (via starship or something else)... here&amp;#39;s why I like to manage my containers&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: docker context (and an issue to question your sanity) | Nic Payne — docker contexts are great, would recommend putting them in your prompt though (via starship or something else)... here&amp;#39;s why I like to manage my containers&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;docker context (and an issue to question your sanity) | Nic Payne&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;docker contexts are great, would recommend putting them in your prompt though (via starship or something else)... here&amp;#39;s why I like to manage my containers&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;pype.dev&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Dang context can really cause you to pull your hair out.  Context seems so freaking convenient, but I’ve avoided it and just ssh in for these reasons.  Maybe I’ll come around eventually but for now ssh is my friend.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>thoughts 0.0.4</title>
    <id>https://waylonwalker.com/thoughts-0-0-4/</id>
    <updated>2024-12-18T19:04:27Z</updated>
    <published>2024-12-18T19:04:27Z</published>
    <link href="https://waylonwalker.com/thoughts-0-0-4/" rel="alternate" type="text/html"></link>
    <summary type="text">This is such an improvement to the backend of my website it warrants a blog post of celebration. For far too long I&#39;ve been dealing with a tiny ass edit form...</summary>
    <content type="html">&lt;p&gt;This is such an improvement to the backend of my website it warrants a blog&#xA;post of celebration.  For far too long I’ve been dealing with a tiny ass edit&#xA;form on thoughts.  I tend to not edit them, and try to get them right in one&#xA;go.  This is kinda the point of a thought, its a quick post meant to be the&#xA;size of a tweet, but sometimes I’m leaving thoughts on a video or long post and&#xA;want to make sure I have a good save point, but I just keep the thing in draft&#xA;and hope I don’t loose if for far too long.&lt;/p&gt;&#xA;&lt;h2 id=&#34;results&#34;&gt;Results &lt;a href=&#34;#results&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;Let’s see this change in action!!&lt;/p&gt;&#xA;&lt;h3 id=&#34;before&#34;&gt;before &lt;a href=&#34;#before&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h3&gt;&#xA;&lt;p&gt;This is the tiny ass form nested deeply in the flow of the feed.  When I made&#xA;it I naively just swapped out the post itself with the edit form, and swapped&#xA;the post back in after edit.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/fe60b579-18d3-450e-87e2-2f5664f32210.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;screenshot-2024-12-19T00-58-43-976Z.png&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/fe60b579-18d3-450e-87e2-2f5664f32210.webp&#34; alt=&#34;screenshot-2024-12-19T00-58-43-976Z.png&#34;/ data-glightbox=&#34;description: screenshot-2024-12-19T00-58-43-976Z.png&#34;&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;thoughts is built with &lt;a href=&#34;/htmx/&#34; class=&#34;glossary-term&#34; title=&#34;htmx is a frontend javascript library for creating dynamic web applications.&#34;&gt;HTMX&lt;/a&gt; btw so all &lt;a href=&#34;/html/&#34; class=&#34;glossary-term&#34; title=&#34;HTML (HyperText Markup Language) is the standard markup language used to create and design documents on the World Wide Web. It structures web content by...&#34;&gt;html&lt;/a&gt; is rendered in the backend and swapped by htmx client side.&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;&lt;h3 id=&#34;after&#34;&gt;after &lt;a href=&#34;#after&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h3&gt;&#xA;&lt;p&gt;Now the edit is a full page modal with a nice blurry backdrop effect to the&#xA;rest of the content.  This feels pretty similar to making a &lt;code&gt;new post&lt;/code&gt; on&#xA;twitter.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/c560e113-66c1-4532-9eb7-c75eb6d3aaf3.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;screenshot-2024-12-19T00-59-21-503Z.png&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/c560e113-66c1-4532-9eb7-c75eb6d3aaf3.webp&#34; alt=&#34;screenshot-2024-12-19T00-59-21-503Z.png&#34;/ data-glightbox=&#34;description: screenshot-2024-12-19T00-59-21-503Z.png&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h3 id=&#34;how&#34;&gt;How &lt;a href=&#34;#how&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h3&gt;&#xA;&lt;p&gt;How did I do this with htmx?  I had to break out of the mindset my brain was in&#xA;with swapping in place and letting the edit form take over the entire screen.&lt;/p&gt;&#xA;&lt;p&gt;First the empty &lt;code&gt;#modal-container&lt;/code&gt; was added to the top of every page.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;&amp;lt;&lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;div&lt;/span&gt; &lt;span class=&#34;na&#34;&gt;id&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;&amp;#34;modal-container&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;&amp;gt;&amp;lt;/&lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;div&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;&amp;gt;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Then each post that gets added to the page already had an edit button, but now&#xA;the target is set to &lt;code&gt;#modal-container&lt;/code&gt;, and the swap is set to &lt;code&gt;innerHTML&lt;/code&gt; so&#xA;that we keep the &lt;code&gt;#modal-container&lt;/code&gt; in place.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;&amp;lt;&lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;button&lt;/span&gt; &lt;span class=&#34;na&#34;&gt;class&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;&amp;#34;h-8 w-8 p-1 text-center&amp;#34;&lt;/span&gt; &lt;span class=&#34;na&#34;&gt;hx-get&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;&amp;#34;{{ config.root }}/edit-thought/{{ post.id }}&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;na&#34;&gt;hx-target&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;&amp;#34;#modal-container&amp;#34;&lt;/span&gt; &lt;span class=&#34;na&#34;&gt;hx-swap&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;&amp;#34;innerHTML&amp;#34;&lt;/span&gt; &lt;span class=&#34;na&#34;&gt;title&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;&amp;#34;Edit&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;&amp;gt;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    {% include &amp;#39;edit.svg&amp;#39; %}&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;&amp;lt;/&lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;button&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;&amp;gt;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Now the edit post that is returned from the server is turned into a full height&#xA;and width modal with a nice backgrop blur over the content.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;&amp;lt;&lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;div&lt;/span&gt; &lt;span class=&#34;na&#34;&gt;id&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;&amp;#34;modal-container&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;&amp;gt;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;p&#34;&gt;&amp;lt;&lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;div&lt;/span&gt; &lt;span class=&#34;na&#34;&gt;class&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;&amp;#34;fixed inset-0 z-50 overflow-y-auto&amp;#34;&lt;/span&gt; &lt;span class=&#34;na&#34;&gt;aria-labelledby&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;&amp;#34;modal-title&amp;#34;&lt;/span&gt; &lt;span class=&#34;na&#34;&gt;role&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;&amp;#34;dialog&amp;#34;&lt;/span&gt; &lt;span class=&#34;na&#34;&gt;aria-modal&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;&amp;#34;true&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;&amp;gt;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;c&#34;&gt;&amp;lt;!-- Background backdrop --&amp;gt;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;p&#34;&gt;&amp;lt;&lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;div&lt;/span&gt; &lt;span class=&#34;na&#34;&gt;class&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;&amp;#34;fixed inset-0 bg-black/30 backdrop-blur-sm&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;&amp;gt;&amp;lt;/&lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;div&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;&amp;gt;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;c&#34;&gt;&amp;lt;!-- Modal panel --&amp;gt;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;p&#34;&gt;&amp;lt;&lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;div&lt;/span&gt; &lt;span class=&#34;na&#34;&gt;class&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;&amp;#34;flex min-h-screen items-center justify-center p-4&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;&amp;gt;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;            &lt;span class=&#34;p&#34;&gt;&amp;lt;&lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;div&lt;/span&gt; &lt;span class=&#34;na&#34;&gt;class&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;&amp;#34;relative w-full max-w-4xl transform rounded-xl bg-zinc-900 p-6 shadow-2xl transition-all&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;&amp;gt;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;... similar to the original edit form in here&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;            &lt;span class=&#34;p&#34;&gt;&amp;lt;/&lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;div&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;&amp;gt;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;p&#34;&gt;&amp;lt;/&lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;div&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;&amp;gt;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;p&#34;&gt;&amp;lt;/&lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;div&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;&amp;gt;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;&amp;lt;/&lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;div&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;&amp;gt;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;h2 id=&#34;clearing-the-modal&#34;&gt;Clearing the modal &lt;a href=&#34;#clearing-the-modal&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;One notable change to the original edit form is clearing the modal container&#xA;on submit.  It is done with an &lt;code&gt;hx-on::after-request&lt;/code&gt; event and one line of js.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;&amp;lt;&lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;form&lt;/span&gt; &lt;span class=&#34;na&#34;&gt;id&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;&amp;#34;websiteForm&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;      &lt;span class=&#34;na&#34;&gt;hx-patch&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;&amp;#34;{{ config.root }}/post/html/&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;      &lt;span class=&#34;na&#34;&gt;method&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;&amp;#34;POST&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;      &lt;span class=&#34;na&#34;&gt;name&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;&amp;#34;newPost&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;      &lt;span class=&#34;na&#34;&gt;hx-target&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;&amp;#34;#post-{{ post.id }}&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;      &lt;span class=&#34;na&#34;&gt;hx-swap&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;&amp;#34;outerHTML&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;      &lt;span class=&#34;na&#34;&gt;hx-on::after-request&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;&amp;#34;document.getElementById(&amp;#39;modal-container&amp;#39;).innerHTML = &amp;#39;&amp;#39;&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;&amp;gt;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    ```&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Similarly on the Cancel button.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;``` html&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;&amp;lt;&lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;button&lt;/span&gt; &lt;span class=&#34;na&#34;&gt;class&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;&amp;#34;rounded-lg border border-black bg-zinc-950 px-6 py-3 text-lg hover:bg-zinc-900&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;na&#34;&gt;type&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;&amp;#34;button&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;na&#34;&gt;onclick&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;&amp;#34;document.getElementById(&amp;#39;modal-container&amp;#39;).innerHTML = &amp;#39;&amp;#39;&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;&amp;gt;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    Cancel&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;&amp;lt;/&lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;button&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;&amp;gt;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;h2 id=&#34;hotkeys&#34;&gt;Hotkeys &lt;a href=&#34;#hotkeys&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;Now I struggled to get this right with htmx, and it seemed like things were&#xA;getting more complicated by trying to get the buttons to trigger using htmx&#xA;triggered keyboard events, I ended up just using javascript.  Its still in the&#xA;same file, so locality of behavior is barely an issue on this one anyways, and&#xA;the js was just working.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;&amp;lt;&lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;script&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;&amp;gt;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;document&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nx&#34;&gt;addEventListener&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;keydown&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;kd&#34;&gt;function&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;nx&#34;&gt;e&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;k&#34;&gt;if&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;nx&#34;&gt;e&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nx&#34;&gt;key&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;===&lt;/span&gt; &lt;span class=&#34;s1&#34;&gt;&amp;#39;Escape&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;nb&#34;&gt;document&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nx&#34;&gt;getElementById&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;modal-container&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;).&lt;/span&gt;&lt;span class=&#34;nx&#34;&gt;innerHTML&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;s1&#34;&gt;&amp;#39;&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;p&#34;&gt;}&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;k&#34;&gt;if&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;nx&#34;&gt;e&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nx&#34;&gt;key&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;===&lt;/span&gt; &lt;span class=&#34;s1&#34;&gt;&amp;#39;Enter&amp;#39;&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;&amp;amp;&amp;amp;&lt;/span&gt; &lt;span class=&#34;nx&#34;&gt;e&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nx&#34;&gt;ctrlKey&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;nx&#34;&gt;e&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nx&#34;&gt;preventDefault&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;();&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;nx&#34;&gt;htmx&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nx&#34;&gt;trigger&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;#websiteForm&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;s1&#34;&gt;&amp;#39;submit&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;p&#34;&gt;}&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;});&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;&amp;lt;/&lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;script&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;&amp;gt;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;h2 id=&#34;other-small-change&#34;&gt;Other small change &lt;a href=&#34;#other-small-change&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;When the server is returns an empty list of posts the post container would&#xA;change size and cause a layout shift.  Now the empty posts element, while not&#xA;great does not cause layout shift.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;&amp;lt;&lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;ul&lt;/span&gt; &lt;span class=&#34;na&#34;&gt;id&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;&amp;#34;posts&amp;#34;&lt;/span&gt; &lt;span class=&#34;na&#34;&gt;class&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;&amp;#34;min-h-screen&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;&amp;gt;&amp;lt;&lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;li&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;&amp;gt;&lt;/span&gt;No posts&lt;span class=&#34;p&#34;&gt;&amp;lt;/&lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;li&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;&amp;gt;&amp;lt;/&lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;ul&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;&amp;gt;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ ynqa jnv</title>
    <id>https://waylonwalker.com/ynqa-jnv/</id>
    <updated>2024-12-18T18:17:13Z</updated>
    <published>2024-12-18T18:17:13Z</published>
    <link href="https://waylonwalker.com/ynqa-jnv/" rel="alternate" type="text/html"></link>
    <summary type="text">I&#39;m really excited about jnv, an amazing project by ynqa. It&#39;s worth exploring!</summary>
    <content type="html">&lt;p&gt;I’m really excited about &lt;a href=&#34;https://github.com/ynqa/jnv&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;jnv&lt;/a&gt;, an amazing project by &lt;a href=&#34;https://github.com/ynqa&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;ynqa&lt;/a&gt;. It’s worth exploring!&lt;/p&gt;&#xA;&lt;p&gt;Interactive JSON filter using jq&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ Zatfer17 tui-network</title>
    <id>https://waylonwalker.com/zatfer17-tui-network/</id>
    <updated>2024-12-18T18:16:54Z</updated>
    <published>2024-12-18T18:16:54Z</published>
    <link href="https://waylonwalker.com/zatfer17-tui-network/" rel="alternate" type="text/html"></link>
    <summary type="text">tui-network by Zatfer17 is a game-changer in its space. Excited to see how it evolves.</summary>
    <content type="html">&lt;p&gt;&lt;a href=&#34;https://github.com/Zatfer17/tui-network&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;tui-network&lt;/a&gt; by &lt;a href=&#34;https://github.com/Zatfer17&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;Zatfer17&lt;/a&gt; is a game-changer in its space. Excited to see how it evolves.&lt;/p&gt;&#xA;&lt;p&gt;No description available.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ microsoft markitdown</title>
    <id>https://waylonwalker.com/microsoft-markitdown/</id>
    <updated>2024-12-18T18:15:16Z</updated>
    <published>2024-12-18T18:15:16Z</published>
    <link href="https://waylonwalker.com/microsoft-markitdown/" rel="alternate" type="text/html"></link>
    <summary type="text">I came across markitdown from microsoft, and it&#39;s packed with great features and ideas.</summary>
    <content type="html">&lt;p&gt;I came across &lt;a href=&#34;https://github.com/microsoft/markitdown&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;markitdown&lt;/a&gt; from &lt;a href=&#34;https://github.com/microsoft&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;microsoft&lt;/a&gt;, and it’s packed with great features and ideas.&lt;/p&gt;&#xA;&lt;p&gt;Python tool for converting files and office documents to Markdown.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ github gh-skyline</title>
    <id>https://waylonwalker.com/github-gh-skyline/</id>
    <updated>2024-12-18T18:13:52Z</updated>
    <published>2024-12-18T18:13:52Z</published>
    <link href="https://waylonwalker.com/github-gh-skyline/" rel="alternate" type="text/html"></link>
    <summary type="text">gh-skyline by github is a game-changer in its space. Excited to see how it evolves.</summary>
    <content type="html">&lt;p&gt;&lt;a href=&#34;https://github.com/github/gh-skyline&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;gh-skyline&lt;/a&gt; by &lt;a href=&#34;https://github.com/github&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;github&lt;/a&gt; is a game-changer in its space. Excited to see how it evolves.&lt;/p&gt;&#xA;&lt;p&gt;A GitHub CLI extension to generate a 3D model of your GitHub contribution history&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ outerbase studio</title>
    <id>https://waylonwalker.com/outerbase-studio/</id>
    <updated>2024-12-18T18:12:41Z</updated>
    <published>2024-12-18T18:12:41Z</published>
    <link href="https://waylonwalker.com/outerbase-studio/" rel="alternate" type="text/html"></link>
    <summary type="text">I&#39;m really excited about studio, an amazing project by outerbase. It&#39;s worth exploring!</summary>
    <content type="html">&lt;p&gt;I’m really excited about &lt;a href=&#34;https://github.com/outerbase/studio&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;studio&lt;/a&gt;, an amazing project by &lt;a href=&#34;https://github.com/outerbase&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;outerbase&lt;/a&gt;. It’s worth exploring!&lt;/p&gt;&#xA;&lt;p&gt;A lightweight Database GUI in your browser. It supports connecting to Postgres, MySQL, and SQLite.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ cassidoo blahg</title>
    <id>https://waylonwalker.com/cassidoo-blahg/</id>
    <updated>2024-12-18T13:10:46Z</updated>
    <published>2024-12-18T13:10:46Z</published>
    <link href="https://waylonwalker.com/cassidoo-blahg/" rel="alternate" type="text/html"></link>
    <summary type="text">If you&#39;re into interesting projects, don&#39;t miss out on blahg, created by cassidoo.</summary>
    <content type="html">&lt;p&gt;If you’re into interesting projects, don’t miss out on &lt;a href=&#34;https://github.com/cassidoo/blahg&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;blahg&lt;/a&gt;, created by &lt;a href=&#34;https://github.com/cassidoo&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;cassidoo&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Cassidy’s blog template built with Astro and TinaCMS!&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Styling better custom inputs with Dave Rupert - YouTube</title>
    <id>https://waylonwalker.com/thought-451/</id>
    <updated>2024-12-18T02:15:14Z</updated>
    <published>2024-12-18T02:15:14Z</published>
    <link href="https://waylonwalker.com/thought-451/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/watch?v=azUEOy8_GHo</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;azUEOy8_GHo&#34; title=&#34;Styling better custom inputs with Dave Rupert&#34; playlabel=&#34;Play: Styling better custom inputs with Dave Rupert&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Reminder to tune in later, can’t watch now, but saw a link on Dave’s blog.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/ea6d4a9f-9abe-4853-9b5b-97335130d221.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;image&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/ea6d4a9f-9abe-4853-9b5b-97335130d221.webp&#34; alt=&#34;image&#34;/ data-glightbox=&#34;description: image&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 I got the ADHD, too - daverupert.com</title>
    <id>https://waylonwalker.com/thought-450/</id>
    <updated>2024-12-18T02:12:45Z</updated>
    <published>2024-12-18T02:12:45Z</published>
    <link href="https://waylonwalker.com/thought-450/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://daverupert.com/2024/12/adhd/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://daverupert.com/2024/12/adhd/&#34; class=&#34;embed-card-link  has-avatar has-avatar-before&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/daverupert.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/daverupert.com.ico&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;I got the ADHD, too&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;This month I got my official diagnosis for Adult ADHD. It’s fun to share experiences with friends. While ADHD presents some new waters to navigate, it isn’t exactly news to me. Thanks to Dr. Ti...&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;daverupert.com · daverupert.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Cheers to the Unique brains dave.  I can say I am 100% with Dave on all of these, except the clean environment thing, lucky Dave.  If I have enough room to see what I am doing and walk around a mess, I probably wont even notice it.  I’m so hyper focused on what is right in front of me that mess could be a huge pile of cash and i’d never see it.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Damn, I love dropper already</title>
    <id>https://waylonwalker.com/thought-449/</id>
    <updated>2024-12-18T00:42:07Z</updated>
    <published>2024-12-18T00:42:07Z</published>
    <link href="https://waylonwalker.com/thought-449/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://thoughts.waylonwalker.com/post/448</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://thoughts.waylonwalker.com/post/448&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img src=&#34;https://shots.wayl.one/shot/?url=https://thoughts.waylonwalker.com/post/448&amp;amp;height=600&amp;amp;width=1200&amp;amp;scaled_width=1200&amp;amp;scaled_height=600&#34; alt=&#34;How to make your RSS feed pretty&#xA; — &#xA;&amp;lt;pre&amp;gt;&amp;lt;code&amp;gt;I love me some styled rss, it&amp;amp;#39;s how the OG internet was made to be.  You choose what you want to read and when.  There is no middleman aggregator infl...&amp;#34; loading=&amp;#34;lazy&amp;#34;&amp;gt;&#xA;&amp;lt;/div&amp;gt;&#xA;&amp;lt;div class=&amp;#34;embed-card-content&amp;#34;&amp;gt;&#xA;  &amp;lt;div class=&amp;#34;embed-card-title&amp;#34;&amp;gt;&#xA;&amp;lt;/code&amp;gt;&amp;lt;/pre&amp;gt;&#xA;&amp;lt;p&amp;gt;How to make your RSS feed pretty&amp;lt;/p&amp;gt;&#xA;&amp;lt;/div&amp;gt;&#xA;      &amp;lt;div class=&#34; embed-card-description glightbox&#34;=&#34;&#34;/ data-glightbox=&#34;description: How to make your RSS feed pretty&#xA; — &#xA;&amp;lt;pre&amp;gt;&amp;lt;code&amp;gt;I love me some styled rss, it&amp;amp;#39;s how the OG internet was made to be.  You choose what you want to read and when.  There is no middleman aggregator infl...&amp;#34; loading=&amp;#34;lazy&amp;#34;&amp;gt;&#xA;&amp;lt;/div&amp;gt;&#xA;&amp;lt;div class=&amp;#34;embed-card-content&amp;#34;&amp;gt;&#xA;  &amp;lt;div class=&amp;#34;embed-card-title&amp;#34;&amp;gt;&#xA;&amp;lt;/code&amp;gt;&amp;lt;/pre&amp;gt;&#xA;&amp;lt;p&amp;gt;How to make your RSS feed pretty&amp;lt;/p&amp;gt;&#xA;&amp;lt;/div&amp;gt;&#xA;      &amp;lt;div class=&#34;&gt;&#xA;&lt;pre&gt;&lt;code&gt;I love me some styled rss, it&amp;amp;#39;s how the OG internet was made to be.  You choose what you want to read and when.  There is no middleman aggregator infl...&#xA;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;thoughts.waylonwalker.com&lt;/div&gt;&#xA;    &lt;/a&gt;&lt;/div&gt;&lt;a href=&#34;https://thoughts.waylonwalker.com/post/448&#34; class=&#34;embed-card-link  has-avatar has-avatar-before&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/thoughts.waylonwalker.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/thoughts.waylonwalker.com.ico&#34;&gt;&#xA;  &lt;/a&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 How to make your RSS feed pretty</title>
    <id>https://waylonwalker.com/thought-448/</id>
    <updated>2024-12-18T00:38:24Z</updated>
    <published>2024-12-18T00:38:24Z</published>
    <link href="https://waylonwalker.com/thought-448/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://cassidoo.co/post/prettify-rss/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://cassidoo.co/post/prettify-rss/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://cassidoo.co/og-image/prettify-rss.png&#34; alt=&#34;How to make your RSS feed pretty — Life is too short for ugly XML.&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: How to make your RSS feed pretty — Life is too short for ugly XML.&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;How to make your RSS feed pretty&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Life is too short for ugly XML.&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;cassidoo.co&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;I love me some styled rss, it’s how the &lt;a href=&#34;/og/&#34; class=&#34;glossary-term&#34; title=&#34;OG is short for open graph, a set of standard meta tags that are used for social media sharing. This is what tells other websites how to describe and display...&#34;&gt;OG&lt;/a&gt; internet was made to be.  You choose what you want to read and when.  There is no middleman aggregator inflating the reach of things they want you to see or suffocating things against them.  It’s just you and your internet friends.&lt;/p&gt;&#xA;&lt;h2 id=&#34;cassidys-styled-rsshttpscassidoocorssxml&#34;&gt;&lt;a href=&#34;https://cassidoo.co/rss.xml&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/cassidoo.co.png&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/cassidoo.co.png&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;Cassidy’s Styled rss&lt;/a&gt; &lt;a href=&#34;#cassidys-styled-rsshttpscassidoocorssxml&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;Cassidy has a quite lovely and easy to read rss feed, with an open source style sheet, that is part of her open source blog template for astro &lt;a href=&#34;https://github.com/cassidoo/blahg&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;blahg&lt;/a&gt;, love that name by the way!&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/f8a6c448-2a95-47e1-b128-2bd7c3865253.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;image&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/f8a6c448-2a95-47e1-b128-2bd7c3865253.webp&#34; alt=&#34;image&#34;/ data-glightbox=&#34;description: image&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;dave-ruperts-feedhttpsdaverupertcomatomxml&#34;&gt;&lt;a href=&#34;https://daverupert.com/atom.xml&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/daverupert.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/daverupert.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;Dave Rupert’s Feed&lt;/a&gt; &lt;a href=&#34;#dave-ruperts-feedhttpsdaverupertcomatomxml&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;I first learned of styled rss feeds from shoptalkshow.com, specifically from &lt;a href=&#34;daverupert.com&#34;&gt;Dave Rupert&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/1be6c1e1-1645-4387-9e6d-134e001c04cb.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;image&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/1be6c1e1-1645-4387-9e6d-134e001c04cb.webp&#34; alt=&#34;image&#34;/ data-glightbox=&#34;description: image&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;p&gt;Dave uses a pretty bog standard styled rss feed with &lt;a href=&#34;https://github.com/genmon/aboutfeeds/blob/main/tools/pretty-feed-v3.xsl&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;pretty-feed-v3&lt;/a&gt;.  This repo is probably the best place to start if you are looking to style your rss feed.&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://github.com/genmon/aboutfeeds/blob/main/tools/pretty-feed-v3.xsl&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;https://github.com/genmon/aboutfeeds/blob/main/tools/pretty-feed-v3.xsl&lt;/a&gt;&lt;/p&gt;&#xA;&lt;h2 id=&#34;my-rss-feedhttpswaylonwalkercomarchiverssxml&#34;&gt;&lt;a href=&#34;https://waylonwalker.com/archive/rss.xml&#34;&gt;My RSS Feed&lt;/a&gt; &lt;a href=&#34;#my-rss-feedhttpswaylonwalkercomarchiverssxml&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;My feed comes from my static site generator &lt;a href=&#34;markata.dev&#34;&gt;markata&lt;/a&gt;, a plugins all the way down static site generator written in python, made for customizing, lacking just about any and all docs so you are on your own.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/214bd66f-88e1-4907-8e47-51d22b376678.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;image&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/214bd66f-88e1-4907-8e47-51d22b376678.webp&#34; alt=&#34;image&#34;/ data-glightbox=&#34;description: image&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Links rely on color to be distiniquishable</title>
    <id>https://waylonwalker.com/links-rely-on-color-to-be-distiniquishable/</id>
    <updated>2024-12-17T20:25:12Z</updated>
    <published>2024-12-17T20:25:12Z</published>
    <link href="https://waylonwalker.com/links-rely-on-color-to-be-distiniquishable/" rel="alternate" type="text/html"></link>
    <summary type="text">Today i got hit by this accessibility issue on my site. Low contrast links are not distiniquishable. I had not seen this error title before it was new to me,...</summary>
    <content type="html">&lt;p&gt;Today i got hit by this accessibility issue on my site.  Low contrast links are&#xA;not distiniquishable.  I had not seen this error title before it was new to me,&#xA;maybe I have bad memory or maybe it’s new to me.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/24b4e31f-60db-47b8-b67c-07c4d4b6fb71.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;screenshot-2024-12-18T02-25-53-014Z.png&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/24b4e31f-60db-47b8-b67c-07c4d4b6fb71.webp&#34; alt=&#34;screenshot-2024-12-18T02-25-53-014Z.png&#34;/ data-glightbox=&#34;description: screenshot-2024-12-18T02-25-53-014Z.png&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;p&gt;I ended up dropping the background color of the site down a notch as I didn’t&#xA;really care for the semi-dark brown anyways.  I’m liking the near black&#xA;&lt;code&gt;bg-zinc-950&lt;/code&gt; much better now.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/8b4f2087-3f24-4212-ad00-74f294aff114.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;screenshot-2024-12-18T02-45-53-807Z.png&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/8b4f2087-3f24-4212-ad00-74f294aff114.webp&#34; alt=&#34;screenshot-2024-12-18T02-45-53-807Z.png&#34;/ data-glightbox=&#34;description: screenshot-2024-12-18T02-45-53-807Z.png&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;p&gt;Now I got that 100 A11y score in lighthouse.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/17497676-3730-4875-9e10-c6d121ba537a.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;screenshot-2024-12-18T03-02-18-934Z.png&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/17497676-3730-4875-9e10-c6d121ba537a.webp&#34; alt=&#34;screenshot-2024-12-18T03-02-18-934Z.png&#34;/ data-glightbox=&#34;description: screenshot-2024-12-18T03-02-18-934Z.png&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Dropper</title>
    <id>https://waylonwalker.com/thought-447/</id>
    <updated>2024-12-16T22:26:59Z</updated>
    <published>2024-12-16T22:26:59Z</published>
    <link href="https://waylonwalker.com/thought-447/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://dropper.waylonwalker.com/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://dropper.waylonwalker.com/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/static/dropper.png&#34; alt=&#34;Dropper — Dropper is a simple file sharing service.&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: Dropper — Dropper is a simple file sharing service.&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Dropper&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Dropper is a simple file sharing service.&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;Dropper · dropper.waylonwalker.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Dropper is a place for me to drop files for quick posts like this.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/c3a4c39d-c9ab-4e0a-b4c1-b74362877342.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;image&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/c3a4c39d-c9ab-4e0a-b4c1-b74362877342.webp&#34; alt=&#34;image&#34;/ data-glightbox=&#34;description: image&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Add a healthcheck to your FastAPI app | Pype.dev</title>
    <id>https://waylonwalker.com/thought-446/</id>
    <updated>2024-12-16T19:05:50Z</updated>
    <published>2024-12-16T19:05:50Z</published>
    <link href="https://waylonwalker.com/thought-446/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://pype.dev/add-a-healthcheck-to-your-fastapi-app</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://pype.dev/add-a-healthcheck-to-your-fastapi-app&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://cdn.statically.io/gh/pypeaday/pype.dev/main/pages/media/og-02.png&#34; alt=&#34;Add a healthcheck to your FastAPI app | Nic Payne — I&amp;#39;m building a few FastAPI apps to throw in docker and run on my homelab... I wanted to add healthchecks and here&amp;#39;s a simple way to do it Make sure to&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: Add a healthcheck to your FastAPI app | Nic Payne — I&amp;#39;m building a few FastAPI apps to throw in docker and run on my homelab... I wanted to add healthchecks and here&amp;#39;s a simple way to do it Make sure to&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Add a healthcheck to your FastAPI app | Nic Payne&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;I&amp;#39;m building a few FastAPI apps to throw in docker and run on my homelab... I wanted to add healthchecks and here&amp;#39;s a simple way to do it Make sure to&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;pype.dev&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Nice example of adding a healthcheck to &lt;a href=&#34;/fastapi/&#34; class=&#34;glossary-term&#34; title=&#34;FastAPI is a modern and efficient web framework for Python, built on top of the Starlette web framework, and pydantic for data validation and serialization.&#34;&gt;fastapi&lt;/a&gt;, and integrating it with docker.  Don’t forget to include curl in the install, nice touch.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 casey/just: 🤖 Just a command runner</title>
    <id>https://waylonwalker.com/thought-445/</id>
    <updated>2024-12-14T17:04:06Z</updated>
    <published>2024-12-14T17:04:06Z</published>
    <link href="https://waylonwalker.com/thought-445/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://github.com/casey/just?tab=readme-ov-file#constants</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://github.com/casey/just?tab=readme-ov-file#constants&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://opengraph.githubassets.com/f7c3f66d15b96230f1c2947fa455d6b30f9c6971b6277efbfe8a9e7864153b59/casey/just&#34; alt=&#34;GitHub - casey/just: 🤖 Just a command runner — 🤖 Just a command runner. Contribute to casey/just development by creating an account on GitHub.&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: GitHub - casey/just: 🤖 Just a command runner — 🤖 Just a command runner. Contribute to casey/just development by creating an account on GitHub.&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;GitHub - casey/just: 🤖 Just a command runner&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;🤖 Just a command runner. Contribute to casey/just development by creating an account on GitHub.&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;GitHub · github.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;new versions of just now come with color variables already set.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;group&lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;manage&amp;#39;&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;)]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;version:&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;c1&#34;&gt;#!/usr/bin/env bash&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;nv&#34;&gt;version&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;$(&lt;/span&gt;cat version&lt;span class=&#34;k&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;nb&#34;&gt;echo&lt;/span&gt; current version &lt;span class=&#34;o&#34;&gt;{{&lt;/span&gt;BOLD&lt;span class=&#34;o&#34;&gt;}}{{&lt;/span&gt;GREEN&lt;span class=&#34;o&#34;&gt;}}&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;$version&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;{{&lt;/span&gt;NORMAL&lt;span class=&#34;o&#34;&gt;}}&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 pipedream/justfile at main · thechangelog/pipedream</title>
    <id>https://waylonwalker.com/thought-444/</id>
    <updated>2024-12-14T16:54:34Z</updated>
    <published>2024-12-14T16:54:34Z</published>
    <link href="https://waylonwalker.com/thought-444/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://github.com/thechangelog/pipedream/blob/main/justfile</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://github.com/thechangelog/pipedream/blob/main/justfile&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://opengraph.githubassets.com/a8fa9047c60228f690d3fb848ea8232f236c860f28ec4c1e0fdbbef0e684d89a/thechangelog/pipely&#34; alt=&#34;pipely/justfile at main · thechangelog/pipely — I like the idea of having like this 20-line Varnish config that we deploy around the world, and it’s like: Look at our CDN! - thechangelog/pipely&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: pipely/justfile at main · thechangelog/pipely — I like the idea of having like this 20-line Varnish config that we deploy around the world, and it’s like: Look at our CDN! - thechangelog/pipely&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;pipely/justfile at main · thechangelog/pipely&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;I like the idea of having like this 20-line Varnish config that we deploy around the world, and it’s like: Look at our CDN! - thechangelog/pipely&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;GitHub · github.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;I found this nugget in thechangelogs justfile, it lets you add color to your justfile with variables quite easily.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# https://linux.101hacks.com/ps1-examples/prompt-color-using-tput/&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;_BOLD :&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;$(&lt;/span&gt;tput bold&lt;span class=&#34;k&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;_RESET :&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;$(&lt;/span&gt;tput sgr0&lt;span class=&#34;k&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;_BLACK :&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;$(&lt;/span&gt;tput bold&lt;span class=&#34;k&#34;&gt;)$(&lt;/span&gt;tput setaf 0&lt;span class=&#34;k&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;_RED :&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;$(&lt;/span&gt;tput bold&lt;span class=&#34;k&#34;&gt;)$(&lt;/span&gt;tput setaf 1&lt;span class=&#34;k&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;_GREEN :&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;$(&lt;/span&gt;tput bold&lt;span class=&#34;k&#34;&gt;)$(&lt;/span&gt;tput setaf 2&lt;span class=&#34;k&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;_YELLOW :&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;$(&lt;/span&gt;tput bold&lt;span class=&#34;k&#34;&gt;)$(&lt;/span&gt;tput setaf 3&lt;span class=&#34;k&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;_BLUE :&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;$(&lt;/span&gt;tput bold&lt;span class=&#34;k&#34;&gt;)$(&lt;/span&gt;tput setaf 4&lt;span class=&#34;k&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;_MAGENTA :&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;$(&lt;/span&gt;tput bold&lt;span class=&#34;k&#34;&gt;)$(&lt;/span&gt;tput setaf 5&lt;span class=&#34;k&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;_CYAN :&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;$(&lt;/span&gt;tput bold&lt;span class=&#34;k&#34;&gt;)$(&lt;/span&gt;tput setaf 6&lt;span class=&#34;k&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;_WHITE :&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;$(&lt;/span&gt;tput bold&lt;span class=&#34;k&#34;&gt;)$(&lt;/span&gt;tput setaf 7&lt;span class=&#34;k&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;_BLACKB :&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;$(&lt;/span&gt;tput bold&lt;span class=&#34;k&#34;&gt;)$(&lt;/span&gt;tput setab 0&lt;span class=&#34;k&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;_REDB :&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;$(&lt;/span&gt;tput setab 1&lt;span class=&#34;k&#34;&gt;)$(&lt;/span&gt;tput setaf 0&lt;span class=&#34;k&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;_GREENB :&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;$(&lt;/span&gt;tput setab 2&lt;span class=&#34;k&#34;&gt;)$(&lt;/span&gt;tput setaf 0&lt;span class=&#34;k&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;_YELLOWB :&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;$(&lt;/span&gt;tput setab 3&lt;span class=&#34;k&#34;&gt;)$(&lt;/span&gt;tput setaf 0&lt;span class=&#34;k&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;_BLUEB :&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;$(&lt;/span&gt;tput setab 4&lt;span class=&#34;k&#34;&gt;)$(&lt;/span&gt;tput setaf 0&lt;span class=&#34;k&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;_MAGENTAB :&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;$(&lt;/span&gt;tput setab 5&lt;span class=&#34;k&#34;&gt;)$(&lt;/span&gt;tput setaf 0&lt;span class=&#34;k&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;_CYANB :&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;$(&lt;/span&gt;tput setab 6&lt;span class=&#34;k&#34;&gt;)$(&lt;/span&gt;tput setaf 0&lt;span class=&#34;k&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;_WHITEB :&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;$(&lt;/span&gt;tput setab 7&lt;span class=&#34;k&#34;&gt;)$(&lt;/span&gt;tput setaf 0&lt;span class=&#34;k&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Usage&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;echo:&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;nb&#34;&gt;echo&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;{{&lt;/span&gt;_BOLD&lt;span class=&#34;o&#34;&gt;}}{{&lt;/span&gt;_GREEN&lt;span class=&#34;o&#34;&gt;}}&lt;/span&gt;hello there&lt;span class=&#34;o&#34;&gt;{{&lt;/span&gt;_RESET&lt;span class=&#34;o&#34;&gt;}}&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Hurl - Run and Test HTTP Requests</title>
    <id>https://waylonwalker.com/thought-443/</id>
    <updated>2024-12-14T16:41:38Z</updated>
    <published>2024-12-14T16:41:38Z</published>
    <link href="https://waylonwalker.com/thought-443/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://hurl.dev/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://hurl.dev/&#34; class=&#34;embed-card-link  has-avatar has-avatar-before&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/hurl.dev.png&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/hurl.dev.png&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Hurl - Run and Test HTTP Requests&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Hurl, run and test HTTP requests with plain text and curl. Hurl can run fast automated integration tests.&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;hurl.dev&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Hurl was mentioned by &lt;a href=&#34;https://gerhard.io/&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/gerhard.io.png&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/gerhard.io.png&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;@gerhard&lt;/a&gt; on the latest &lt;a href=&#34;https://www.youtube.com/watch?v=mvC7497CJJs&amp;amp;t=3001s&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/www.youtube.com.png&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/www.youtube.com.png&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;changelog and Friends&lt;/a&gt;.  Looks  like a feature rich easy to use testing tool that is tested via what looks like a config file.&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;Hurl is a command line tool that runs HTTP requests defined in a simple plain text format.&#xA;It can chain requests, capture values and evaluate queries on headers and body response. Hurl is very versatile: it can be used for both fetching data and testing HTTP sessions.&#xA;Hurl makes it easy to work with &lt;a href=&#34;/html/&#34; class=&#34;glossary-term&#34; title=&#34;HTML (HyperText Markup Language) is the standard markup language used to create and design documents on the World Wide Web. It structures web content by...&#34;&gt;HTML&lt;/a&gt; content, REST / SOAP / GraphQL APIs, or any other XML / JSON based APIs.&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>urllink</title>
    <id>https://waylonwalker.com/urllink/</id>
    <updated>2024-12-14T11:11:52Z</updated>
    <published>2024-12-14T11:11:52Z</published>
    <link href="https://waylonwalker.com/urllink/" rel="alternate" type="text/html"></link>
    <summary type="text">Today I discovered the function in bash from the ujust tool from ublue.it. Seems like a cool trick, but might not work everywhere.</summary>
    <content type="html">&lt;p&gt;Today I discovered the &lt;code&gt;Urllink&lt;/code&gt; function in bash from the ujust tool from&#xA;&lt;a href=&#34;https://ublue.it&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/ublue.it.png&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/ublue.it.png&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;ublue.it&lt;/a&gt;.  Seems like a cool trick, but might not work&#xA;everywhere.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;########&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;### Special text formating&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;########&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;## Function to generate a clickable link, you can call this using&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# url=$(Urllink &amp;#34;https://ublue.it&amp;#34; &amp;#34;Visit the ublue website&amp;#34;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# echo &amp;#34;${url}&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;function&lt;/span&gt; Urllink &lt;span class=&#34;o&#34;&gt;(){&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;nv&#34;&gt;URL&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;$1&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;nv&#34;&gt;TEXT&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;$2&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;c1&#34;&gt;# Generate a clickable hyperlink&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;nb&#34;&gt;printf&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;\e]8;;%s\e\\%s\e]8;;\e\\&amp;#34;&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;$URL&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;$TEXT&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;${&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;n&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;}&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;sb&#34;&gt;```&lt;/span&gt;j&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 watchfiles</title>
    <id>https://waylonwalker.com/thought-442/</id>
    <updated>2024-12-13T02:08:24Z</updated>
    <published>2024-12-13T02:08:24Z</published>
    <link href="https://waylonwalker.com/thought-442/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://watchfiles.helpmanual.io/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://watchfiles.helpmanual.io/&#34; class=&#34;embed-card-link  has-avatar has-avatar-before&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/watchfiles.helpmanual.io.png&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/watchfiles.helpmanual.io.png&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;watchfiles&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Simple, modern and high performance file watching and code reload in python.&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;watchfiles.helpmanual.io&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Simple, modern and high performance file watching and code reload in python.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ tursodatabase turso</title>
    <id>https://waylonwalker.com/tursodatabase-turso/</id>
    <updated>2024-12-11T16:36:28Z</updated>
    <published>2024-12-11T16:36:28Z</published>
    <link href="https://waylonwalker.com/tursodatabase-turso/" rel="alternate" type="text/html"></link>
    <summary type="text">I&#39;m really excited about turso, an amazing project by tursodatabase. It&#39;s worth exploring!</summary>
    <content type="html">&lt;p&gt;I’m really excited about &lt;a href=&#34;https://github.com/tursodatabase/turso&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;turso&lt;/a&gt;, an amazing project by &lt;a href=&#34;https://github.com/tursodatabase&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;tursodatabase&lt;/a&gt;. It’s worth exploring!&lt;/p&gt;&#xA;&lt;p&gt;Turso Database is a project to build the next evolution of SQLite.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ tursodatabase limbo</title>
    <id>https://waylonwalker.com/tursodatabase-limbo/</id>
    <updated>2024-12-11T16:36:28Z</updated>
    <published>2024-12-11T16:36:28Z</published>
    <link href="https://waylonwalker.com/tursodatabase-limbo/" rel="alternate" type="text/html"></link>
    <summary type="text">limbo by tursodatabase is a game-changer in its space. Excited to see how it evolves.</summary>
    <content type="html">&lt;p&gt;&lt;a href=&#34;https://github.com/tursodatabase/limbo&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;limbo&lt;/a&gt; by &lt;a href=&#34;https://github.com/tursodatabase&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;tursodatabase&lt;/a&gt; is a game-changer in its space. Excited to see how it evolves.&lt;/p&gt;&#xA;&lt;p&gt;Limbo is a work-in-progress, in-process OLTP database management system, compatible with SQLite.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 hostnamectl to easily change hostname | Pype.dev</title>
    <id>https://waylonwalker.com/thought-441/</id>
    <updated>2024-12-06T14:30:41Z</updated>
    <published>2024-12-06T14:30:41Z</published>
    <link href="https://waylonwalker.com/thought-441/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://pype.dev/hostnamectl-to-easily-change-hostname</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://pype.dev/hostnamectl-to-easily-change-hostname&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://cdn.statically.io/gh/pypeaday/pype.dev/main/pages/media/og-02.png&#34; alt=&#34;hostnamectl to easily change hostname | Nic Payne — hostnamectl is apparently a linux utility for easily changing your hostname in a variety of ways I learned there&amp;#39;s transient and static hostnames, so that&amp;amp;&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: hostnamectl to easily change hostname | Nic Payne — hostnamectl is apparently a linux utility for easily changing your hostname in a variety of ways I learned there&amp;#39;s transient and static hostnames, so that&amp;amp;&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;hostnamectl to easily change hostname | Nic Payne&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;hostnamectl is apparently a linux utility for easily changing your hostname in a variety of ways I learned there&amp;#39;s transient and static hostnames, so that&amp;amp;&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;pype.dev&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;For some reason the ublue ecosystem does not prompt you to set your hostname on install and you get a hostname like bazzite showing up.  Looks like this is the fix.&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;hostnamectl –static hostname babyblue-aurora&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Ansible Galaxy - amazon.aws</title>
    <id>https://waylonwalker.com/thought-440/</id>
    <updated>2024-12-05T00:06:23Z</updated>
    <published>2024-12-05T00:06:23Z</published>
    <link href="https://waylonwalker.com/thought-440/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://galaxy.ansible.com/ui/repo/published/amazon/aws/content/module/s3_bucket/#examples</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://galaxy.ansible.com/ui/repo/published/amazon/aws/content/module/s3_bucket/#examples&#34; class=&#34;embed-card-link  has-avatar has-avatar-before&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/galaxy.ansible.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/galaxy.ansible.com.ico&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Ansible Galaxy&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;galaxy.ansible.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Great examples for working with s3 buckets with ansible.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ 45Drives cockpit-identities</title>
    <id>https://waylonwalker.com/45drives-cockpit-identities/</id>
    <updated>2024-12-04T18:07:16Z</updated>
    <published>2024-12-04T18:07:16Z</published>
    <link href="https://waylonwalker.com/45drives-cockpit-identities/" rel="alternate" type="text/html"></link>
    <summary type="text">I came across cockpit-identities from 45Drives, and it&#39;s packed with great features and ideas.</summary>
    <content type="html">&lt;p&gt;I came across &lt;a href=&#34;https://github.com/45Drives/cockpit-identities&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;cockpit-identities&lt;/a&gt; from &lt;a href=&#34;https://github.com/45Drives&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;45Drives&lt;/a&gt;, and it’s packed with great features and ideas.&lt;/p&gt;&#xA;&lt;p&gt;User and group management plugin for Houston UI (Cockpit)&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ 45Drives cockpit-file-sharing</title>
    <id>https://waylonwalker.com/45drives-cockpit-file-sharing/</id>
    <updated>2024-12-04T18:07:13Z</updated>
    <published>2024-12-04T18:07:13Z</published>
    <link href="https://waylonwalker.com/45drives-cockpit-file-sharing/" rel="alternate" type="text/html"></link>
    <summary type="text">cockpit-file-sharing by 45Drives is a game-changer in its space. Excited to see how it evolves.</summary>
    <content type="html">&lt;p&gt;&lt;a href=&#34;https://github.com/45Drives/cockpit-file-sharing&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;cockpit-file-sharing&lt;/a&gt; by &lt;a href=&#34;https://github.com/45Drives&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;45Drives&lt;/a&gt; is a game-changer in its space. Excited to see how it evolves.&lt;/p&gt;&#xA;&lt;p&gt;A Cockpit plugin to easily manage samba and NFS file sharing.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Using OPNsense with Tailscale · Tailscale Docs</title>
    <id>https://waylonwalker.com/thought-439/</id>
    <updated>2024-12-03T17:37:52Z</updated>
    <published>2024-12-03T17:37:52Z</published>
    <link href="https://waylonwalker.com/thought-439/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://tailscale.com/kb/1097/install-opnsense</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://tailscale.com/kb/1097/install-opnsense&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://tailscale.com/files/images/og-image.png&#34; alt=&#34;Using OPNsense with Tailscale · Tailscale Docs — Set up a Tailscale VPN on OPNsense. Get secure communication across your devices without the need for complex configuration.&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: Using OPNsense with Tailscale · Tailscale Docs — Set up a Tailscale VPN on OPNsense. Get secure communication across your devices without the need for complex configuration.&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Using OPNsense with Tailscale · Tailscale Docs&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Set up a Tailscale VPN on OPNsense. Get secure communication across your devices without the need for complex configuration. &lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;Tailscale · tailscale.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;On reboot of my opnsense router it did not tailscale up.  I’m not sure if a key expired or what happened.  The fix was to first enable ssh, then ssh in and run tailscale up.&lt;/p&gt;&#xA;&lt;h2 id=&#34;enable-ssh&#34;&gt;enable ssh &lt;a href=&#34;#enable-ssh&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;In opnsense System &amp;gt; Settings &amp;gt; Administration &amp;gt; Secure Shell &amp;gt; Enable Secure Shell&lt;/p&gt;&#xA;&lt;h2 id=&#34;tailscale-up&#34;&gt;tailscale up &lt;a href=&#34;#tailscale-up&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;ssh &amp;lt;opnsense ip&amp;gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;m&#34;&gt;8&lt;/span&gt; &lt;span class=&#34;c1&#34;&gt;# to select shell&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;tailscale up&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Follow the link to log in.&lt;/p&gt;&#xA;&lt;h2 id=&#34;disable-ssh&#34;&gt;disable ssh &lt;a href=&#34;#disable-ssh&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;now uncheck secure shell to lock down the opnsense machine.&lt;/p&gt;&#xA;&lt;p&gt;In opnsense System &amp;gt; Settings &amp;gt; Administration &amp;gt; Secure Shell &amp;gt; Enable Secure Shell&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>debug cloudflared tunnel</title>
    <id>https://waylonwalker.com/debug-cloudflared-tunnel/</id>
    <updated>2024-12-03T15:36:37Z</updated>
    <published>2024-12-03T15:36:37Z</published>
    <link href="https://waylonwalker.com/debug-cloudflared-tunnel/" rel="alternate" type="text/html"></link>
    <summary type="text">I&#39;ve been debugging a cloudflared tunnel issue in my homelab all day today, and getting really frustrated. My issue ended up being that it was running twice,...</summary>
    <content type="html">&lt;p&gt;I’ve been debugging a cloudflared tunnel issue in my &lt;a href=&#34;/homelab/&#34; class=&#34;glossary-term&#34; title=&#34;A place to self host applications. For me this is primarily self built web applications, and applications for sharing files with my family. Techno Tim has a...&#34;&gt;homelab&lt;/a&gt; all day today, and&#xA;getting really frustrated.  My issue ended up being that it was running twice,&#xA;once without the correct config file and another with it.  I believe that&#xA;cacheing may have compounded the issue.&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;In yesterday’s post I setup a cloudflared tunnel on my ubuntu server to&#xA;expose applications running on the server to the internet.  I’m setting up a&#xA;new server and running cloudflared in its own vm.&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;p&gt;&lt;a href=&#34;/setup-cloudflared-tunnel-on-ubuntu/&#34; class=&#34;wikilink&#34; data-title=&#34;setup cloudflared tunnel on ubuntu&#34; data-description=&#34;I run a cloudflared tunnel on my ubuntu server to expose applications running on the server to the internet. I&amp;#39;m setting up a new server and running...&#34; data-date=&#34;2024-12-02&#34; data-preview=&#34;I run a cloudflared tunnel on my ubuntu server to expose applications running on the server to the internet. I&amp;#39;m setting up a new server and running...&#34;&gt;setup cloudflared tunnel on ubuntu&lt;/a&gt;&lt;/p&gt;&#xA;&lt;h2 id=&#34;check-that-dns-is-pointing-to-the-correct-tunnel&#34;&gt;Check that dns is pointing to the correct tunnel &lt;a href=&#34;#check-that-dns-is-pointing-to-the-correct-tunnel&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;dig subdomain.example.com&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;traceroute subdomain.example.com&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;h2 id=&#34;check-that-the-tunnel-is-running&#34;&gt;Check that the tunnel is running &lt;a href=&#34;#check-that-the-tunnel-is-running&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;export&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;CLOUDFLARED_TUNNEL_ID&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;my-tunnel-id&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;cloudflared tunnel list&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;cloudflared tunnel info &lt;span class=&#34;nv&#34;&gt;$CLOUDFLARED_TUNNEL_ID&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>setup cloudflared tunnel on ubuntu</title>
    <id>https://waylonwalker.com/setup-cloudflared-tunnel-on-ubuntu/</id>
    <updated>2024-12-02T15:43:45Z</updated>
    <published>2024-12-02T15:43:45Z</published>
    <link href="https://waylonwalker.com/setup-cloudflared-tunnel-on-ubuntu/" rel="alternate" type="text/html"></link>
    <summary type="text">I run a cloudflared tunnel on my ubuntu server to expose applications running on the server to the internet. I&#39;m setting up a new server and running...</summary>
    <content type="html">&lt;p&gt;I run a cloudflared tunnel on my ubuntu server to expose applications running&#xA;on the server to the internet.  I’m setting up a new server and running&#xA;cloudflared in its own vm.&lt;/p&gt;&#xA;&lt;h2 id=&#34;get-the-cloudflared-binary&#34;&gt;Get the cloudflared binary &lt;a href=&#34;#get-the-cloudflared-binary&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo wget https://github.com/cloudflare/cloudflared/releases/latest/download/cloudflared-linux-amd64 -O /usr/local/bin/cloudflared&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo chmod +x /usr/local/bin/cloudflared&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;h2 id=&#34;heading&#34;&gt; &lt;a href=&#34;#heading&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;Now setup the config directory.  For the systemd service to work, the config&#xA;file needs to be in /etc/cloudflared.  I like to give my user rights to edit&#xA;the config file without being sudo, we will do that here by creating a group&#xA;&lt;code&gt;cloudflared&lt;/code&gt;, add ourselves to the group, give ownership of &lt;code&gt;/etc/cloudflared&lt;/code&gt;&#xA;to the group, give group write access to the directory, and refresh groups.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo mkdir -p /etc/cloudflared&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo groupadd cloudflared&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo usermod -aG cloudflared &lt;span class=&#34;nv&#34;&gt;$USER&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo chown -R root:cloudflared /etc/cloudflared&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo chmod g+w /etc/cloudflared&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;newgrp cloudflared&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;h2 id=&#34;login&#34;&gt;login &lt;a href=&#34;#login&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;Now we can log into the domain zone with cloudflared.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;cloudflared tunnel login&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;This will give a url, follow it in a browser to log in.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;cloudflared tunnel create &amp;lt;NAME&amp;gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;mv ~/.cloudflared/cert.pem /etc/cloudflared/cert.pem&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;mv ~/.cloudflared/&amp;lt;tunnel-id&amp;gt;.json /etc/cloudflared/&amp;lt;tunnel-id&amp;gt;.json&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;h2 id=&#34;config&#34;&gt;config &lt;a href=&#34;#config&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;Now setup config.  For the systemd service to work, the config file needs to be&#xA;in /etc/cloudflared.  The config that I have provided below will expose&#xA;localhost:8000 to tester.example.com&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;export&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;CLOUDFLARED_TUNNEL_ID&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;$(&lt;/span&gt;ls /etc/cloudflared/*.json &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt; xargs -n &lt;span class=&#34;m&#34;&gt;1&lt;/span&gt; basename &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt; sed &lt;span class=&#34;s1&#34;&gt;&amp;#39;s/\.json$//&amp;#39;&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;mv ~/.cloudflared/&lt;span class=&#34;si&#34;&gt;${&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;CLOUDFLARED_TUNNEL_ID&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;}&lt;/span&gt;.json /etc/cloudflared/&lt;span class=&#34;si&#34;&gt;${&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;CLOUDFLARED_TUNNEL_ID&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;}&lt;/span&gt;.json&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;mv ~/.cloudflared/cert.pem /etc/cloudflared/cert.pem&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;echo&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;tunnel: &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;$(&lt;/span&gt;CLOUDFLARED_TUNNEL_ID&lt;span class=&#34;k&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;credentials-file: /etc/cloudflared/&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;$(&lt;/span&gt;CLOUDFLARED_TUNNEL_ID&lt;span class=&#34;k&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;.json&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;ingress:&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;  - hostname: tester.example.com&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;    service: http://localhost:8000&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;  - service: &amp;#39;http_status:404&amp;#39;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt; &amp;gt;&amp;gt; /etc/cloudflared/config.yaml&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;h2 id=&#34;dns&#34;&gt;dns &lt;a href=&#34;#dns&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;Now to get a dns record for tester.example.com to point to the cloudflared&#xA;tunnel.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;cloudflared tunnel route dns &lt;span class=&#34;k&#34;&gt;$(&lt;/span&gt;CLOUDFLARED_TUNNEL_ID&lt;span class=&#34;k&#34;&gt;)&lt;/span&gt; tester.example.com&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;h2 id=&#34;systemd&#34;&gt;systemd &lt;a href=&#34;#systemd&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;Now install the systemd service.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo cloudflared service install&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo systemctl status cloudflared.service&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# if its not running&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo systemctl start cloudflared.service&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Fitting two hard drives and an SSD in a Dell OptiPlex 7010 SFF</title>
    <id>https://waylonwalker.com/thought-438/</id>
    <updated>2024-11-27T16:53:53Z</updated>
    <published>2024-11-27T16:53:53Z</published>
    <link href="https://waylonwalker.com/thought-438/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://willj.net/posts/fitting-two-hard-drives-and-an-ssd-in-a-dell-optiplex-7010-usff/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://willj.net/posts/fitting-two-hard-drives-and-an-ssd-in-a-dell-optiplex-7010-usff/&#34; class=&#34;embed-card-link  has-avatar has-avatar-before&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/willj.net.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/willj.net.ico&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Fitting two hard drives and an SSD in a Dell OptiPlex 7010 SFF&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;The Dell OptiPlex 7010 SFF officially only has room for one 2.5&amp;#34; hard drive internally, I fitted two 3.25&amp;#34; hard drives and a 2.5&amp;#34; SSD in one.&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;willj.net&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;This guy fit 2 3.5&amp;#34; drives and an sdd in a dell 7050 SFF.  It looks tight, and there it probably not much airflow running in it, but its an impressive project.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 How To Fix An Office Chair Popping Noise? With Root Causes - T...</title>
    <id>https://waylonwalker.com/thought-437/</id>
    <updated>2024-11-25T22:30:19Z</updated>
    <published>2024-11-25T22:30:19Z</published>
    <link href="https://waylonwalker.com/thought-437/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://toergonomics.com/office-chair-popping-noise/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://toergonomics.com/office-chair-popping-noise/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://toergonomics.com/wp-content/uploads/2020/04/a-young-technician-fix-a-black-office-chair-popping-noise.jpg&#34; alt=&#34;How To Fix An Office Chair Popping Noise? With Root Causes — If you hear a popping noise from under your office chair when you move around or when you spin it, it’s time to repair your office chair. Read more.&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: How To Fix An Office Chair Popping Noise? With Root Causes — If you hear a popping noise from under your office chair when you move around or when you spin it, it’s time to repair your office chair. Read more.&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;How To Fix An Office Chair Popping Noise? With Root Causes&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;If you hear a popping noise from under your office chair when you move around or when you spin it, it’s time to repair your office chair. Read more.&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;ToErgonomics · toergonomics.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;I tried this fix on my secretlabs chair, but unfortunately it did nothing for me.  Mine ended up being an issue in the tilt mechanism and not the hydraulic piston.  I greased the crap out of it, it can only help the longevity.  I did notice that the two washers on either side of my bearing were quite worn in.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 If anyone else is having sound clicking with chair : here is t...</title>
    <id>https://waylonwalker.com/thought-436/</id>
    <updated>2024-11-25T22:28:46Z</updated>
    <published>2024-11-25T22:28:46Z</published>
    <link href="https://waylonwalker.com/thought-436/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.reddit.com/r/secretlab/comments/s6ayop/if_else_having_clicking_with/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-reddit&#34;&gt;&#xA;  &lt;a href=&#34;https://www.reddit.com/r/secretlab/comments/s6ayop/if_anyone_else_is_having_sound_clicking_with/&#34; class=&#34;embed-card-link  has-avatar has-avatar-before&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/www.reddit.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/www.reddit.com.ico&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;If anyone else is having sound clicking with chair : here is the document admitting it’s manufacturer defect.&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;If anyone else is having sound clicking with chair : here is the document admitting it’s manufacturer defect.&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;Reddit · reddit.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;This is definitely happening to my secretlabs chair.  I did the fix this morning, its still not perfect, but it’s better now than it has been in a long time.  Mine use to be so bad that it would pop and creak every time I sat down or moved the smallest bit.  It’s now quiet through the mid range of its motion with the occasional pop when I sit down.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Changelog on X: &#34;🗣️@dhh on Kubernetes&#39; migration pitch: “Oh, w...</title>
    <id>https://waylonwalker.com/thought-435/</id>
    <updated>2024-11-25T02:30:44Z</updated>
    <published>2024-11-25T02:30:44Z</published>
    <link href="https://waylonwalker.com/thought-435/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://x.com/changelog/status/1860697708463378497</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://x.com/changelog/status/1860697708463378497&#34; class=&#34;embed-card-link  has-avatar has-avatar-before&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/x.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/x.com.ico&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;External Link&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;X (formerly Twitter) · x.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;switching cloud providers, theres no easy way.  K8s was supposed to get us there, haha, the deep integrations with each vendor just keep locking us in&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 How to make a good first impression in business #dewalt #tools...</title>
    <id>https://waylonwalker.com/thought-434/</id>
    <updated>2024-11-24T20:39:24Z</updated>
    <published>2024-11-24T20:39:24Z</published>
    <link href="https://waylonwalker.com/thought-434/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/shorts/dq0p_APdNME</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;dq0p_APdNME&#34; title=&#34;How to make a good first impression in business #dewalt #tools #smallbusiness&#34; playlabel=&#34;Play: How to make a good first impression in business #dewalt #tools #smallbusiness&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Dang, love this guys branding.  Hooks to get stuff offDaBench, what a freaking cool name.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ Syllo nvtop</title>
    <id>https://waylonwalker.com/syllo-nvtop/</id>
    <updated>2024-11-24T16:26:01Z</updated>
    <published>2024-11-24T16:26:01Z</published>
    <link href="https://waylonwalker.com/syllo-nvtop/" rel="alternate" type="text/html"></link>
    <summary type="text">Just starred nvtop by Syllo. It&#39;s an exciting project with a lot to offer.</summary>
    <content type="html">&lt;p&gt;Just starred &lt;a href=&#34;https://github.com/Syllo/nvtop&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;nvtop&lt;/a&gt; by &lt;a href=&#34;https://github.com/Syllo&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;Syllo&lt;/a&gt;. It’s an exciting project with a lot to offer.&lt;/p&gt;&#xA;&lt;p&gt;GPU &amp;amp; Accelerator process monitoring for AMD, Apple, Huawei, Intel, NVIDIA and Qualcomm&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Inside Argo: Automating the Future - YouTube</title>
    <id>https://waylonwalker.com/thought-433/</id>
    <updated>2024-11-22T02:29:00Z</updated>
    <published>2024-11-22T02:29:00Z</published>
    <link href="https://waylonwalker.com/thought-433/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/watch?v=ox3Gx3eCTCs</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;ox3Gx3eCTCs&#34; title=&#34;Inside Argo: Automating the Future&#34; playlabel=&#34;Play: Inside Argo: Automating the Future&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;This is a really amazing documentary of argocd.  I got into k8s pretty late in the game.  Which is pretty typical for me.  As I went to use k8s for the first time i was using workflows, then cd.  both of these tools had a level of polish that made them seem like they had been there forever and not quite as young as they actually are.&lt;/p&gt;&#xA;&lt;p&gt;I thought it was interesting how they focused on how the name must be two syllables or less, start with a or b, logo needs to be cutesy funny and recognizable seemed interesting, but puts them at the top of lists and makes them look like they’ve been there forever.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ devfile kubectl-debug-ide</title>
    <id>https://waylonwalker.com/devfile-kubectl-debug-ide/</id>
    <updated>2024-11-21T19:39:30Z</updated>
    <published>2024-11-21T19:39:30Z</published>
    <link href="https://waylonwalker.com/devfile-kubectl-debug-ide/" rel="alternate" type="text/html"></link>
    <summary type="text">I&#39;m impressed by kubectl-debug-ide from devfile.</summary>
    <content type="html">&lt;p&gt;I’m impressed by &lt;a href=&#34;https://github.com/devfile/kubectl-debug-ide&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;kubectl-debug-ide&lt;/a&gt; from &lt;a href=&#34;https://github.com/devfile&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;devfile&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;A kubectl plugin to debug Pods from an IDE rather than the CLI&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Introduction - bootc</title>
    <id>https://waylonwalker.com/thought-432/</id>
    <updated>2024-11-21T01:45:34Z</updated>
    <published>2024-11-21T01:45:34Z</published>
    <link href="https://waylonwalker.com/thought-432/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://containers.github.io/bootc/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://containers.github.io/bootc/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;External Link&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;containers.github.io&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;bootc is the underlying technology that enables OS’s like bazzite, and Aurora from the uBlue ecosystem.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Saghen/blink.cmp: Performant, batteries-included completion pl...</title>
    <id>https://waylonwalker.com/thought-431/</id>
    <updated>2024-11-19T14:45:06Z</updated>
    <published>2024-11-19T14:45:06Z</published>
    <link href="https://waylonwalker.com/thought-431/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://github.com/Saghen/blink.cmp</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;/static/https://github.com/Saghen/blink.cmp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;https://github.com/Saghen/blink.cmp&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;/static/https://github.com/Saghen/blink.cmp&#34; alt=&#34;https://github.com/Saghen/blink.cmp&#34;/ data-glightbox=&#34;description: https://github.com/Saghen/blink.cmp&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;p&gt;A new completion plugin that I might give a try.  Readme makes it sound like its built on some fast teck that allows them to handle a lot of items and run more frequently.  The videos look like they don’t have some of the same issues cmp does for me.  Maybe its my configuration, but I’m pretty sure it does not update when you backspace and things like that.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Wes Bos on X: &#34;CSS Anchors: flip a tooltip to the bottom when ...</title>
    <id>https://waylonwalker.com/thought-430/</id>
    <updated>2024-11-19T14:39:36Z</updated>
    <published>2024-11-19T14:39:36Z</published>
    <link href="https://waylonwalker.com/thought-430/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://x.com/wesbos/status/1856724739336859713</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://x.com/wesbos/status/1856724739336859713&#34; class=&#34;embed-card-link  has-avatar has-avatar-before&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/x.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/x.com.ico&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;External Link&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;X (formerly Twitter) · x.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;These css anchors are crazy that you can do this with &lt;a href=&#34;/html/&#34; class=&#34;glossary-term&#34; title=&#34;HTML (HyperText Markup Language) is the standard markup language used to create and design documents on the World Wide Web. It structures web content by...&#34;&gt;html&lt;/a&gt; and not a bunch of js, probably requiring a library or framework.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://x.com/i/status/1856724739336859713&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Open image&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://x.com/i/status/1856724739336859713&#34; alt=&#34;&#34;/ data-glightbox=&#34;description: &#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>price an stl print on slant3d</title>
    <id>https://waylonwalker.com/price-an-stl-print-on-slant3d/</id>
    <updated>2024-11-18T15:29:30Z</updated>
    <published>2024-11-18T15:29:30Z</published>
    <link href="https://waylonwalker.com/price-an-stl-print-on-slant3d/" rel="alternate" type="text/html"></link>
    <summary type="text">I&#39;ve been playing with 3d printing some items through the slant3d api. I&#39;ve been pricing out different prints by running a slice request through their api.</summary>
    <content type="html">&lt;p&gt;I’ve been playing with 3d printing some items through the slant3d api.  I’ve&#xA;been pricing out different prints by running a slice request through their api.&lt;/p&gt;&#xA;&lt;h2 id=&#34;make-a-project&#34;&gt;make a project &lt;a href=&#34;#make-a-project&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;I’ve been using uv for project management. It’s been working well for quick&#xA;projects like this while making it reproducible, I’m still all in on hatch for&#xA;libraries.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;mkdir slantproject&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;cd&lt;/span&gt; slantproject&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;uv init&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;uv venv&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;. ./.venv/bin/activate&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;uv add httpx rich python-dotenv&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;h2 id=&#34;get-an-api-key&#34;&gt;Get an api key &lt;a href=&#34;#get-an-api-key&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;You will need an api key from the slant api, which currently requires a google&#xA;account and a credit card to create.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# .env&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;#  replace with your api key from https://api-fe-two.vercel.app/&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nv&#34;&gt;SLANT_API_KEY&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;sl-**&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;h2 id=&#34;slicing-an-stl-with-teh-slant-api&#34;&gt;slicing an stl with teh slant api &lt;a href=&#34;#slicing-an-stl-with-teh-slant-api&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;Then you can run the python script to price out your print.  I’m not exactly&#xA;sure how this compares to an order, especially when you add in different&#xA;materials.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;kn&#34;&gt;from&lt;/span&gt; &lt;span class=&#34;nn&#34;&gt;dotenv&lt;/span&gt; &lt;span class=&#34;kn&#34;&gt;import&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;load_dotenv&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;kn&#34;&gt;import&lt;/span&gt; &lt;span class=&#34;nn&#34;&gt;httpx&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;kn&#34;&gt;import&lt;/span&gt; &lt;span class=&#34;nn&#34;&gt;os&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;load_dotenv&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;()&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;stl_url&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;s1&#34;&gt;&amp;#39;&amp;#39;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;api_key&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;os&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;environ&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;SLANT_API_KEY&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;api&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;httpx&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;Client&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;base_url&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;https://www.slant3dapi.com/api/slicer&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;res&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;httpx&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;post&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;s2&#34;&gt;&amp;#34;https://www.slant3dapi.com/api/slicer&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;n&#34;&gt;json&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;fileURL&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;stl_url&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;},&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;n&#34;&gt;headers&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;api-key&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;api_key&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;Content-Type&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;application/json&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;},&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;n&#34;&gt;timeout&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;60&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;print&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;res&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;json&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;())&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 statically makes OG images **easy**</title>
    <id>https://waylonwalker.com/thought-429/</id>
    <updated>2024-11-17T21:48:04Z</updated>
    <published>2024-11-17T21:48:04Z</published>
    <link href="https://waylonwalker.com/thought-429/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://cdn.statically.io/og/statically%20makes%20OG%20images%20**</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://cdn.statically.io/og/statically%20makes%20OG%20images%20**easy**&#34; class=&#34;embed-card-link  has-avatar has-avatar-before&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/cdn.statically.io.png&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/cdn.statically.io.png&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;External Link&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;cdn.statically.io&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Staically makes creating &lt;a href=&#34;/og/&#34; class=&#34;glossary-term&#34; title=&#34;OG is short for open graph, a set of standard meta tags that are used for social media sharing. This is what tells other websites how to describe and display...&#34;&gt;OG&lt;/a&gt; images so easy, you can just pop this in your  section with some og tags.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;p&#34;&gt;&amp;lt;&lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;meta&lt;/span&gt; &lt;span class=&#34;na&#34;&gt;name&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;&amp;#34;og:image&amp;#34;&lt;/span&gt; &lt;span class=&#34;na&#34;&gt;name&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;&amp;#34;og:image&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;na&#34;&gt;content&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;&amp;#34;https://cdn.statically.io/og/{{post.title}}&amp;#34;&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;/&amp;gt;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;p&#34;&gt;&amp;lt;&lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;meta&lt;/span&gt; &lt;span class=&#34;na&#34;&gt;name&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;&amp;#34;twitter:image&amp;#34;&lt;/span&gt; &lt;span class=&#34;na&#34;&gt;name&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;&amp;#34;twitter:image&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;na&#34;&gt;content&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;&amp;#34;https://cdn.statically.io/og/{{post.title}}&amp;#34;&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;/&amp;gt;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;p&#34;&gt;&amp;lt;&lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;meta&lt;/span&gt; &lt;span class=&#34;na&#34;&gt;name&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;&amp;#34;og:image:height&amp;#34;&lt;/span&gt; &lt;span class=&#34;na&#34;&gt;content&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;&amp;#34;640&amp;#34;&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;/&amp;gt;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;p&#34;&gt;&amp;lt;&lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;meta&lt;/span&gt; &lt;span class=&#34;na&#34;&gt;name&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;&amp;#34;og:image:width&amp;#34;&lt;/span&gt; &lt;span class=&#34;na&#34;&gt;content&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;&amp;#34;1280&amp;#34;&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;/&amp;gt;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ willmcgugan terminal-tree</title>
    <id>https://waylonwalker.com/willmcgugan-terminal-tree/</id>
    <updated>2024-11-17T17:58:43Z</updated>
    <published>2024-11-17T17:58:43Z</published>
    <link href="https://waylonwalker.com/willmcgugan-terminal-tree/" rel="alternate" type="text/html"></link>
    <summary type="text">Check out terminal-tree by willmcgugan. It&#39;s a well-crafted project with great potential.</summary>
    <content type="html">&lt;p&gt;Check out &lt;a href=&#34;https://github.com/willmcgugan/terminal-tree&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;terminal-tree&lt;/a&gt; by &lt;a href=&#34;https://github.com/willmcgugan&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;willmcgugan&lt;/a&gt;. It’s a well-crafted project with great potential.&lt;/p&gt;&#xA;&lt;p&gt;No description available.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 E576: Error while reading ShaDa file: there is an item at posi...</title>
    <id>https://waylonwalker.com/thought-428/</id>
    <updated>2024-11-16T16:04:27Z</updated>
    <published>2024-11-16T16:04:27Z</published>
    <link href="https://waylonwalker.com/thought-428/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://github.com/neovim/neovim/issues/6875</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://github.com/neovim/neovim/issues/6875&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://opengraph.githubassets.com/30733477464d3aa180e08454ece292f48c3b6f32cfe5254ed22b64b5c7eeafbc/neovim/neovim/issues/6875&#34; alt=&#34;E576: Error while reading ShaDa file: there is an item at position 270498 that must not be there: Missing itemsare for internal uses only · Issue #6875 · neovim/neovim — v0.2.0 Vim 8.0 works well. macOS Sierra 10.12.5 (16F73) iTerm2 v3.0.15 $TERM: screen-256color Actual behaviour When I start neovim by nvim, it prints an error message which is E576: Error while rea...&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: E576: Error while reading ShaDa file: there is an item at position 270498 that must not be there: Missing itemsare for internal uses only · Issue #6875 · neovim/neovim — v0.2.0 Vim 8.0 works well. macOS Sierra 10.12.5 (16F73) iTerm2 v3.0.15 $TERM: screen-256color Actual behaviour When I start neovim by nvim, it prints an error message which is E576: Error while rea...&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;E576: Error while reading ShaDa file: there is an item at position 270498 that must not be there: Missing itemsare for internal uses only · Issue #6875 · neovim/neovim&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;v0.2.0 Vim 8.0 works well. macOS Sierra 10.12.5 (16F73) iTerm2 v3.0.15 $TERM: screen-256color Actual behaviour When I start neovim by nvim, it prints an error message which is E576: Error while rea...&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;GitHub · github.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;I hit an interesting error after updating my nvim plugins today.  I’m sti not even quite sure what a ShaDa file is, but I found min in my nvim state directory, unlike this issue that mentions it being in share.&lt;/p&gt;&#xA;&lt;p&gt;The Error.&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;Error while reading ShaDa file:&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;p&gt;The Fix&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;mv ~/.local/state/nvim/shada/main.shada ~/.local/state/nvim/shada/main.shada.bak&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Production-ready Python Docker Containers with uv</title>
    <id>https://waylonwalker.com/thought-427/</id>
    <updated>2024-11-15T14:34:10Z</updated>
    <published>2024-11-15T14:34:10Z</published>
    <link href="https://waylonwalker.com/thought-427/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://hynek.me/articles/docker-uv/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://hynek.me/articles/docker-uv/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://static.hynek.me/cards/docker-uv.png?c764cb8&#34; alt=&#34;Production-ready Python Docker Containers with uv — Starting with 0.3.0, Astral’s uv brought many great features, including support for cross-platform lock files uv.lock. Together with subsequent fixes, it has become Python’s finest workflow tool for my (non-scientific) use cases. Here’s how I build production-ready containers, as fast as possible.&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: Production-ready Python Docker Containers with uv — Starting with 0.3.0, Astral’s uv brought many great features, including support for cross-platform lock files uv.lock. Together with subsequent fixes, it has become Python’s finest workflow tool for my (non-scientific) use cases. Here’s how I build production-ready containers, as fast as possible.&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Production-ready Python Docker Containers with uv&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Starting with 0.3.0, Astral’s uv brought many great features, including support for cross-platform lock files uv.lock. Together with subsequent fixes, it has become Python’s finest workflow too...&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;Hynek Schlawack · hynek.me&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Hynek has a sick dockerfile setup for using uv in python projects.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ ironcalc IronCalc</title>
    <id>https://waylonwalker.com/ironcalc-ironcalc/</id>
    <updated>2024-11-12T13:31:56Z</updated>
    <published>2024-11-12T13:31:56Z</published>
    <link href="https://waylonwalker.com/ironcalc-ironcalc/" rel="alternate" type="text/html"></link>
    <summary type="text">I&#39;m really excited about IronCalc, an amazing project by ironcalc. It&#39;s worth exploring!</summary>
    <content type="html">&lt;p&gt;I’m really excited about &lt;a href=&#34;https://github.com/ironcalc/IronCalc&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;IronCalc&lt;/a&gt;, an amazing project by &lt;a href=&#34;https://github.com/ironcalc&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;ironcalc&lt;/a&gt;. It’s worth exploring!&lt;/p&gt;&#xA;&lt;p&gt;Main engine of the IronCalc ecosystem&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Proper handling of None in WHERE condition · Issue #109 · fast...</title>
    <id>https://waylonwalker.com/thought-426/</id>
    <updated>2024-11-08T13:36:30Z</updated>
    <published>2024-11-08T13:36:30Z</published>
    <link href="https://waylonwalker.com/thought-426/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://github.com/fastapi/sqlmodel/issues/109#issuecomment-1046223225</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://github.com/fastapi/sqlmodel/issues/109#issuecomment-1046223225&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://opengraph.githubassets.com/4ff8c5e0c53534cd26b8f6dfcad14ae1a8ae0fceb183a0517a84de53aa07b8d5/fastapi/sqlmodel/issues/109&#34; alt=&#34;Proper handling of None in WHERE condition · Issue #109 · fastapi/sqlmodel — First Check I added a very descriptive title to this issue. I used the GitHub search to find a similar issue and didn&amp;#39;t find it. I searched the SQLModel documentation, with the integrated search. I...&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: Proper handling of None in WHERE condition · Issue #109 · fastapi/sqlmodel — First Check I added a very descriptive title to this issue. I used the GitHub search to find a similar issue and didn&amp;#39;t find it. I searched the SQLModel documentation, with the integrated search. I...&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Proper handling of None in WHERE condition · Issue #109 · fastapi/sqlmodel&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;First Check I added a very descriptive title to this issue. I used the GitHub search to find a similar issue and didn&amp;#39;t find it. I searched the SQLModel documentation, with the integrated search. I...&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;GitHub · github.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;SQLModel models ship with an &lt;code&gt;is_&lt;/code&gt;, and &lt;code&gt;is_not&lt;/code&gt; that you can use to compare to None without pesky linters complaining.&lt;/p&gt;&#xA;&lt;p&gt;This comment summed it up quite well.&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;I believe this is concerned entirely with SQLAlchemy, not with SQLModel, and has to do with the required semantics to construct a BinaryExpression object.&#xA;Hero.age == None evaluates to a BinaryExpression object which is eventually used to construct the SQL query that the SQLAlchemy engine issues to your DBMS.&#xA;Hero.age is None evaluates to False immediately, and not a BinaryExpression, which short-circuits the query no matter the value of age in a row.&#xA;From a cursory search, it does not seem that the is operator can be overridden in Python. This could help explain why the only possibility is by using the == operator, which can be overridden.&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;p&gt;so rather than using &lt;code&gt;Team.heros == None&lt;/code&gt; we can use &lt;code&gt;Team.seros.is_(None)&lt;/code&gt; which checks for itentity not equality.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Rugged Storage Box, Parametric and Customizable by bulbasaur0 ...</title>
    <id>https://waylonwalker.com/thought-424/</id>
    <updated>2024-11-06T20:58:54Z</updated>
    <published>2024-11-06T20:58:54Z</published>
    <link href="https://waylonwalker.com/thought-424/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.printables.com/model/637028-rugged-storage-box-parametric-and-customizable</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://www.printables.com/model/637028-rugged-storage-box-parametric-and-customizable&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://media.printables.com/media/prints/637028/images/5907746_fa32cbb7-dff9-4cd2-8e7b-8b2792970d2c_c75eec5e-19a2-4506-a735-ad781334c8ac/thumbs/cover/1200x630/gif/photo-demo-inset.gif&#34; alt=&#34;Rugged Storage Box, Parametric and Customizable by bulbasaur0 | Download free STL model | Printables.com&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: Rugged Storage Box, Parametric and Customizable by bulbasaur0 | Download free STL model | Printables.com&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Rugged Storage Box, Parametric and Customizable by bulbasaur0 | Download free STL model | Printables.com&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;Printables.com · printables.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Non Gridfinity Rugged boxes&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Gridfinity Rugged Storage Box, Parametric and Customizable by ...</title>
    <id>https://waylonwalker.com/thought-423/</id>
    <updated>2024-11-06T20:33:58Z</updated>
    <published>2024-11-06T20:33:58Z</published>
    <link href="https://waylonwalker.com/thought-423/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.printables.com/model/757297-gridfinity-rugged-storage-box-parametric-and-custo/files</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://www.printables.com/model/757297-gridfinity-rugged-storage-box-parametric-and-custo/files&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://media.printables.com/media/prints/757297/images/5907667_2d26369b-2f13-4822-999c-e3bbe4089738_43aaa503-39e2-463d-b7cc-51b3743bd979/thumbs/cover/1200x630/jpg/photo-open-captioned.jpg&#34; alt=&#34;Gridfinity Rugged Storage Box, Parametric and Customizable by bulbasaur0 | Download free STL model | Printables.com&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: Gridfinity Rugged Storage Box, Parametric and Customizable by bulbasaur0 | Download free STL model | Printables.com&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Gridfinity Rugged Storage Box, Parametric and Customizable by bulbasaur0 | Download free STL model | Printables.com&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;Printables.com · printables.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;gridfinity rugged box openscad&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ saghen blink.cmp</title>
    <id>https://waylonwalker.com/saghen-blink-cmp/</id>
    <updated>2024-11-05T13:11:54Z</updated>
    <published>2024-11-05T13:11:54Z</published>
    <link href="https://waylonwalker.com/saghen-blink-cmp/" rel="alternate" type="text/html"></link>
    <summary type="text">If you&#39;re into interesting projects, don&#39;t miss out on blink.cmp, created by saghen.</summary>
    <content type="html">&lt;p&gt;If you’re into interesting projects, don’t miss out on &lt;a href=&#34;https://github.com/saghen/blink.cmp&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;blink.cmp&lt;/a&gt;, created by &lt;a href=&#34;https://github.com/saghen&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;saghen&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Performant, batteries-included completion plugin for Neovim&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Cluster API book</title>
    <id>https://waylonwalker.com/thought-422/</id>
    <updated>2024-11-05T04:17:37Z</updated>
    <published>2024-11-05T04:17:37Z</published>
    <link href="https://waylonwalker.com/thought-422/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://cluster-api.sigs.k8s.io/reference/providers</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://cluster-api.sigs.k8s.io/reference/providers&#34; class=&#34;embed-card-link  has-avatar has-avatar-before&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/cluster-api.sigs.k8s.io.png&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/cluster-api.sigs.k8s.io.png&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Provider List - The Cluster API Book&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;cluster-api.sigs.k8s.io&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Cluster API book&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ k3s-io cluster-api-k3s</title>
    <id>https://waylonwalker.com/k3s-io-cluster-api-k3s/</id>
    <updated>2024-11-05T04:14:53Z</updated>
    <published>2024-11-05T04:14:53Z</published>
    <link href="https://waylonwalker.com/k3s-io-cluster-api-k3s/" rel="alternate" type="text/html"></link>
    <summary type="text">I&#39;m really excited about cluster-api-k3s, an amazing project by k3s-io. It&#39;s worth exploring!</summary>
    <content type="html">&lt;p&gt;I’m really excited about &lt;a href=&#34;https://github.com/k3s-io/cluster-api-k3s&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;cluster-api-k3s&lt;/a&gt;, an amazing project by &lt;a href=&#34;https://github.com/k3s-io&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;k3s-io&lt;/a&gt;. It’s worth exploring!&lt;/p&gt;&#xA;&lt;p&gt;Cluster API k3s&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Gridfinity Generator</title>
    <id>https://waylonwalker.com/thought-421/</id>
    <updated>2024-11-04T16:29:57Z</updated>
    <published>2024-11-04T16:29:57Z</published>
    <link href="https://waylonwalker.com/thought-421/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://gridfinity.perplexinglabs.com/pr/gridfinity-extended/0/0</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://gridfinity.perplexinglabs.com/pr/gridfinity-extended/0/0&#34; class=&#34;embed-card-link  has-avatar has-avatar-before&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/gridfinity.perplexinglabs.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/gridfinity.perplexinglabs.com.ico&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Gridfinity Generator&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;gridfinity.perplexinglabs.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Gridfinity generator uses open scad, so you can make rugged boxes, bins and base plates with form input.  not fully custom fit to things, but you can custom size square bins, hole cut out sides and all.  From what I can tell, no bento box either. so as long as what you are looking for is square this generator has you pretty well covered.  I’m definitely using this for simple bins and rugged boxes.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Framework Portable handheld Case (Beth Deck) by Beth Le | Down...</title>
    <id>https://waylonwalker.com/thought-420/</id>
    <updated>2024-11-01T15:44:26Z</updated>
    <published>2024-11-01T15:44:26Z</published>
    <link href="https://waylonwalker.com/thought-420/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.printables.com/model/1051411-framework-portable-handheld-case-beth-deck</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://www.printables.com/model/1051411-framework-portable-handheld-case-beth-deck&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://media.printables.com/media/prints/1051411/images/8072621_18985dc2-c9e6-4887-bce5-da5930a79af6_00e08a5b-4489-46cf-b9ac-a37c67ebe705/thumbs/cover/1200x630/jpg/pxl_20241109_032139964.jpg&#34; alt=&#34;Framework Portable handheld Case (Beth Deck rev. 1.5) by Beth Le | Download free STL model | Printables.com&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: Framework Portable handheld Case (Beth Deck rev. 1.5) by Beth Le | Download free STL model | Printables.com&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Framework Portable handheld Case (Beth Deck rev. 1.5) by Beth Le | Download free STL model | Printables.com&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;Printables.com · printables.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;The BethDeck is a sick looking DIY steam deck &lt;em&gt;competitor&lt;/em&gt; built on top of the framework 13&amp;#34; mainboard.  No soldering needed, lt with all off the shelf parts.  Controllers appear to be an off the shelf controller with the shell removed and plugged into a usb hub.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://media.printables.com/media/prints/1051411/images/7965723_09c13004-58b9-4868-b078-e3a66073d740_3b514c55-bb6b-4448-a216-842d7de48955/thumbs/inside/1600x1200/jpg/pxl_20240910_005549812.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Open image&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://media.printables.com/media/prints/1051411/images/7965723_09c13004-58b9-4868-b078-e3a66073d740_3b514c55-bb6b-4448-a216-842d7de48955/thumbs/inside/1600x1200/jpg/pxl_20240910_005549812.webp&#34; alt=&#34;&#34;/ data-glightbox=&#34;description: &#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 My Favorite Fingerboard Obstacles &amp; WHY - YouTube</title>
    <id>https://waylonwalker.com/thought-419/</id>
    <updated>2024-10-31T01:27:56Z</updated>
    <published>2024-10-31T01:27:56Z</published>
    <link href="https://waylonwalker.com/thought-419/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/watch?v=fDCmiL3qaL0</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;fDCmiL3qaL0&#34; title=&#34;My Favorite Fingerboard Obstacles &amp;amp; WHY&#34; playlabel=&#34;Play: My Favorite Fingerboard Obstacles &amp;amp; WHY&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;pre&gt;&lt;code&gt;    I really like how Spencer walked through how to make quite a few unique setups with only a few simple obstacles.  It does not take anything fancy to have a cool setup.&#xA;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Document how to provide a negative number as an argument · fas...</title>
    <id>https://waylonwalker.com/thought-418/</id>
    <updated>2024-10-30T01:28:56Z</updated>
    <published>2024-10-30T01:28:56Z</published>
    <link href="https://waylonwalker.com/thought-418/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://github.com/fastapi/typer/discussions/798</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://github.com/fastapi/typer/discussions/798&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://opengraph.githubassets.com/2b48b76b8e15f361c37084d34fa4151bc54fda7ca95e0b320b739bd0f6075316/fastapi/typer/discussions/798&#34; alt=&#34;Document how to provide a negative number as an argument · fastapi typer · Discussion #798 — First Check I added a very descriptive title here. I used the GitHub search to find a similar question and didn&amp;#39;t find it. I searched the Typer documentation, with the integrated search. I already ...&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: Document how to provide a negative number as an argument · fastapi typer · Discussion #798 — First Check I added a very descriptive title here. I used the GitHub search to find a similar question and didn&amp;#39;t find it. I searched the Typer documentation, with the integrated search. I already ...&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Document how to provide a negative number as an argument · fastapi typer · Discussion #798&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;First Check I added a very descriptive title here. I used the GitHub search to find a similar question and didn&amp;#39;t find it. I searched the Typer documentation, with the integrated search. I already ...&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;GitHub · github.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Today I learned that you cannot pass negative integers as values to typer.  in this case &lt;code&gt;context_settings={&amp;#34;ignore_unknown_options&amp;#34;: True}&lt;/code&gt; is required so that the &lt;code&gt;-&lt;/code&gt; does not look like a flag.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# script name: main.py&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;kn&#34;&gt;import&lt;/span&gt; &lt;span class=&#34;nn&#34;&gt;typer&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;app&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;typer&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;Typer&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;()&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nd&#34;&gt;@app.command&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;()&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;def&lt;/span&gt; &lt;span class=&#34;nf&#34;&gt;failing&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;value&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;nb&#34;&gt;float&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;):&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;nb&#34;&gt;print&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;sa&#34;&gt;f&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;value&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;=}&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nd&#34;&gt;@app.command&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;n&#34;&gt;context_settings&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;ignore_unknown_options&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;kc&#34;&gt;True&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;}&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;def&lt;/span&gt; &lt;span class=&#34;nf&#34;&gt;working_good&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;value&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;nb&#34;&gt;float&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;):&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;nb&#34;&gt;print&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;sa&#34;&gt;f&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;value&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;=}&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;if&lt;/span&gt; &lt;span class=&#34;vm&#34;&gt;__name__&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;==&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;__main__&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;n&#34;&gt;app&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;()&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ rommapp romm</title>
    <id>https://waylonwalker.com/rommapp-romm/</id>
    <updated>2024-10-29T16:14:11Z</updated>
    <published>2024-10-29T16:14:11Z</published>
    <link href="https://waylonwalker.com/rommapp-romm/" rel="alternate" type="text/html"></link>
    <summary type="text">rommapp has done a fantastic job with romm. Highly recommend taking a look.</summary>
    <content type="html">&lt;p&gt;&lt;a href=&#34;https://github.com/rommapp&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;rommapp&lt;/a&gt; has done a fantastic job with &lt;a href=&#34;https://github.com/rommapp/romm&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;romm&lt;/a&gt;. Highly recommend taking a look.&lt;/p&gt;&#xA;&lt;p&gt;A beautiful, powerful, &lt;a href=&#34;/self-host/&#34; class=&#34;glossary-term&#34; title=&#34;Self hosting is the act of hosting your own applications and services without using a SAS provider. This is typically done with your own hardware, but there...&#34;&gt;self-hosted&lt;/a&gt; rom manager&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ CZ-NIC pz</title>
    <id>https://waylonwalker.com/cz-nic-pz/</id>
    <updated>2024-10-29T16:12:48Z</updated>
    <published>2024-10-29T16:12:48Z</published>
    <link href="https://waylonwalker.com/cz-nic-pz/" rel="alternate" type="text/html"></link>
    <summary type="text">I came across pz from CZ-NIC, and it&#39;s packed with great features and ideas.</summary>
    <content type="html">&lt;p&gt;I came across &lt;a href=&#34;https://github.com/CZ-NIC/pz&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;pz&lt;/a&gt; from &lt;a href=&#34;https://github.com/CZ-NIC&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;CZ-NIC&lt;/a&gt;, and it’s packed with great features and ideas.&lt;/p&gt;&#xA;&lt;p&gt;Easily handle day to day CLI operation via Python instead of regular Bash programs. 🇺🇦 #supporting&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ Textualize textual-demo</title>
    <id>https://waylonwalker.com/textualize-textual-demo/</id>
    <updated>2024-10-29T16:09:13Z</updated>
    <published>2024-10-29T16:09:13Z</published>
    <link href="https://waylonwalker.com/textualize-textual-demo/" rel="alternate" type="text/html"></link>
    <summary type="text">Looking for inspiration? textual-demo by Textualize.</summary>
    <content type="html">&lt;p&gt;Looking for inspiration? &lt;a href=&#34;https://github.com/Textualize/textual-demo&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;textual-demo&lt;/a&gt; by &lt;a href=&#34;https://github.com/Textualize&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;Textualize&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Quick access to the Textual demo&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ fynnfluegge rocketnotes</title>
    <id>https://waylonwalker.com/fynnfluegge-rocketnotes/</id>
    <updated>2024-10-29T16:04:58Z</updated>
    <published>2024-10-29T16:04:58Z</published>
    <link href="https://waylonwalker.com/fynnfluegge-rocketnotes/" rel="alternate" type="text/html"></link>
    <summary type="text">I&#39;m impressed by rocketnotes from fynnfluegge.</summary>
    <content type="html">&lt;p&gt;I’m impressed by &lt;a href=&#34;https://github.com/fynnfluegge/rocketnotes&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;rocketnotes&lt;/a&gt; from &lt;a href=&#34;https://github.com/fynnfluegge&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;fynnfluegge&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;AI-powered markdown editor - leverage vector embeddings and LLMs with your personal notes - 100% local or in the cloud&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ airtai faststream</title>
    <id>https://waylonwalker.com/airtai-faststream/</id>
    <updated>2024-10-29T15:15:21Z</updated>
    <published>2024-10-29T15:15:21Z</published>
    <link href="https://waylonwalker.com/airtai-faststream/" rel="alternate" type="text/html"></link>
    <summary type="text">faststream by airtai is a game-changer in its space. Excited to see how it evolves.</summary>
    <content type="html">&lt;p&gt;&lt;a href=&#34;https://github.com/airtai/faststream&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;faststream&lt;/a&gt; by &lt;a href=&#34;https://github.com/airtai&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;airtai&lt;/a&gt; is a game-changer in its space. Excited to see how it evolves.&lt;/p&gt;&#xA;&lt;p&gt;FastStream is a powerful and easy-to-use Python framework for building asynchronous services interacting with event streams such as Apache Kafka, RabbitMQ, NATS and Redis.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ ag2ai faststream</title>
    <id>https://waylonwalker.com/ag2ai-faststream/</id>
    <updated>2024-10-29T15:15:21Z</updated>
    <published>2024-10-29T15:15:21Z</published>
    <link href="https://waylonwalker.com/ag2ai-faststream/" rel="alternate" type="text/html"></link>
    <summary type="text">I came across faststream from ag2ai, and it&#39;s packed with great features and ideas.</summary>
    <content type="html">&lt;p&gt;I came across &lt;a href=&#34;https://github.com/ag2ai/faststream&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;faststream&lt;/a&gt; from &lt;a href=&#34;https://github.com/ag2ai&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;ag2ai&lt;/a&gt;, and it’s packed with great features and ideas.&lt;/p&gt;&#xA;&lt;p&gt;FastStream is a powerful and easy-to-use Python framework for building asynchronous services interacting with event streams such as Apache Kafka, RabbitMQ, NATS and Redis.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ usememos memos</title>
    <id>https://waylonwalker.com/usememos-memos/</id>
    <updated>2024-10-29T15:12:46Z</updated>
    <published>2024-10-29T15:12:46Z</published>
    <link href="https://waylonwalker.com/usememos-memos/" rel="alternate" type="text/html"></link>
    <summary type="text">The work on memos by usememos.</summary>
    <content type="html">&lt;p&gt;The work on &lt;a href=&#34;https://github.com/usememos/memos&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;memos&lt;/a&gt; by &lt;a href=&#34;https://github.com/usememos&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;usememos&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;An open-source, lightweight note-taking solution. The pain-less way to create your meaningful notes. Your Notes, Your Way.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ pypeaday learn-kestra</title>
    <id>https://waylonwalker.com/pypeaday-learn-kestra/</id>
    <updated>2024-10-29T15:08:43Z</updated>
    <published>2024-10-29T15:08:43Z</published>
    <link href="https://waylonwalker.com/pypeaday-learn-kestra/" rel="alternate" type="text/html"></link>
    <summary type="text">pypeaday has done a fantastic job with learn-kestra. Highly recommend taking a look.</summary>
    <content type="html">&lt;p&gt;&lt;a href=&#34;https://github.com/pypeaday&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;pypeaday&lt;/a&gt; has done a fantastic job with &lt;a href=&#34;https://github.com/pypeaday/learn-kestra&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;learn-kestra&lt;/a&gt;. Highly recommend taking a look.&lt;/p&gt;&#xA;&lt;p&gt;No description available.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ pypeaday learn-n8n</title>
    <id>https://waylonwalker.com/pypeaday-learn-n8n/</id>
    <updated>2024-10-29T15:08:39Z</updated>
    <published>2024-10-29T15:08:39Z</published>
    <link href="https://waylonwalker.com/pypeaday-learn-n8n/" rel="alternate" type="text/html"></link>
    <summary type="text">pypeaday has done a fantastic job with learn-n8n. Highly recommend taking a look.</summary>
    <content type="html">&lt;p&gt;&lt;a href=&#34;https://github.com/pypeaday&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;pypeaday&lt;/a&gt; has done a fantastic job with &lt;a href=&#34;https://github.com/pypeaday/learn-n8n&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;learn-n8n&lt;/a&gt;. Highly recommend taking a look.&lt;/p&gt;&#xA;&lt;p&gt;No description available.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Aaron Francis on X: &#34;📣 We&#39;re excited to announce Mastering Pos...</title>
    <id>https://waylonwalker.com/thought-417/</id>
    <updated>2024-10-27T02:52:38Z</updated>
    <published>2024-10-27T02:52:38Z</published>
    <link href="https://waylonwalker.com/thought-417/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://x.com/aarondfrancis/status/1833533150674268469</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://x.com/aarondfrancis/status/1833533150674268469&#34; class=&#34;embed-card-link  has-avatar has-avatar-before&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/x.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/x.com.ico&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;External Link&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;X (formerly Twitter) · x.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Aaron Francis is a database master, pumped for thsi dude and all that he is able to accomplish.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Will McGugan on X: &#34;New Version of #Textual released! 😎🤓🦾 The ...</title>
    <id>https://waylonwalker.com/thought-416/</id>
    <updated>2024-10-27T02:51:07Z</updated>
    <published>2024-10-27T02:51:07Z</published>
    <link href="https://waylonwalker.com/thought-416/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://x.com/willmcgugan/status/1849831271289012463</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://x.com/willmcgugan/status/1849831271289012463&#34; class=&#34;embed-card-link  has-avatar has-avatar-before&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/x.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/x.com.ico&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;External Link&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;X (formerly Twitter) · x.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;This new demo of textual is wildly awesome, so many widgets and features being added into the main library.  The themes and animations are on point and far surpass my expectations of a tui.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 ticklemykeys on X: &#34;Porta john got some pink caps https://t.co...</title>
    <id>https://waylonwalker.com/thought-415/</id>
    <updated>2024-10-27T02:20:51Z</updated>
    <published>2024-10-27T02:20:51Z</published>
    <link href="https://waylonwalker.com/thought-415/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://x.com/XTicklemykeys/status/1850361138791195069</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://x.com/XTicklemykeys/status/1850361138791195069&#34; class=&#34;embed-card-link  has-avatar has-avatar-before&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/x.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/x.com.ico&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;External Link&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;X (formerly Twitter) · x.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Loving this 6 pink with blueforward multicolor combo the porta john has going right now.  Also my son printed me a cute black pumpkin.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ joshmedeski sesh</title>
    <id>https://waylonwalker.com/joshmedeski-sesh/</id>
    <updated>2024-10-25T19:20:23Z</updated>
    <published>2024-10-25T19:20:23Z</published>
    <link href="https://waylonwalker.com/joshmedeski-sesh/" rel="alternate" type="text/html"></link>
    <summary type="text">I like joshmedeski&#39;s project sesh.</summary>
    <content type="html">&lt;p&gt;I like &lt;a href=&#34;https://github.com/joshmedeski&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;joshmedeski’s&lt;/a&gt; project &lt;a href=&#34;https://github.com/joshmedeski/sesh&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;sesh&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Smart session manager for the terminal&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ nvzone menu</title>
    <id>https://waylonwalker.com/nvzone-menu/</id>
    <updated>2024-10-20T16:40:43Z</updated>
    <published>2024-10-20T16:40:43Z</published>
    <link href="https://waylonwalker.com/nvzone-menu/" rel="alternate" type="text/html"></link>
    <summary type="text">The work on menu by nvzone.</summary>
    <content type="html">&lt;p&gt;The work on &lt;a href=&#34;https://github.com/nvzone/menu&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;menu&lt;/a&gt; by &lt;a href=&#34;https://github.com/nvzone&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;nvzone&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Menu plugin for neovim ( supports nested menus ) made using volt&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Not a split keyboard, but perhaps a companion to one: the Ploo...</title>
    <id>https://waylonwalker.com/thought-414/</id>
    <updated>2024-10-20T00:02:57Z</updated>
    <published>2024-10-20T00:02:57Z</published>
    <link href="https://waylonwalker.com/thought-414/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.reddit.com/r/ErgoMechKeyboards/comments/1g5phts/not_split_but_a_to/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-reddit&#34;&gt;&#xA;  &lt;a href=&#34;https://www.reddit.com/r/ErgoMechKeyboards/comments/1g5phts/not_a_split_keyboard_but_perhaps_a_companion_to/&#34; class=&#34;embed-card-link  has-avatar has-avatar-before&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/www.reddit.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/www.reddit.com.ico&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Not a split keyboard, but perhaps a companion to one: the Ploopy Trackpad. An open-source trackpad powered by QMK. All design files available for free. Complete assembly instructions. See comments for details.&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Not a split keyboard, but perhaps a companion to one: the Ploopy Trackpad. An open-source trackpad powered by QMK. All design files available for free. Complete assembly instructions. See comments ...&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;Reddit · reddit.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;ploopy just dropped a trackpad that runs qmk.  This sounds so cool.  I’m excited to see some videos on it.  It would be sick to get this incorporated into a porta john running zmk, one bluetooth device to run all the peripherals.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Install a Zulip server — Zulip 9.2 documentation</title>
    <id>https://waylonwalker.com/thought-413/</id>
    <updated>2024-10-16T15:12:47Z</updated>
    <published>2024-10-16T15:12:47Z</published>
    <link href="https://waylonwalker.com/thought-413/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://zulip.readthedocs.io/en/stable/production/install.html</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;/static/https://zulip.readthedocs.io/en/stable/production/install.html&#34; class=&#34;glightbox-link&#34; aria-label=&#34;https://zulip.readthedocs.io/en/stable/production/install.html&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;/static/https://zulip.readthedocs.io/en/stable/production/install.html&#34; alt=&#34;https://zulip.readthedocs.io/en/stable/production/install.html&#34;/ data-glightbox=&#34;description: https://zulip.readthedocs.io/en/stable/production/install.html&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;p&gt;Zulip was just featured on a changelog clip as a &lt;a href=&#34;/self-host/&#34; class=&#34;glossary-term&#34; title=&#34;Self hosting is the act of hosting your own applications and services without using a SAS provider. This is typically done with your own hardware, but there...&#34;&gt;self-hosted&lt;/a&gt; chat offering.  I’m interested to give this a go and see how it compares to matrix.  glancing at it, it looks a lot like slack.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ Exafunction windsurf.nvim</title>
    <id>https://waylonwalker.com/exafunction-windsurf-nvim/</id>
    <updated>2024-10-15T22:07:25Z</updated>
    <published>2024-10-15T22:07:25Z</published>
    <link href="https://waylonwalker.com/exafunction-windsurf-nvim/" rel="alternate" type="text/html"></link>
    <summary type="text">Just starred windsurf.nvim by Exafunction. It&#39;s an exciting project with a lot to offer.</summary>
    <content type="html">&lt;p&gt;Just starred &lt;a href=&#34;https://github.com/Exafunction/windsurf.nvim&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;windsurf.nvim&lt;/a&gt; by &lt;a href=&#34;https://github.com/Exafunction&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;Exafunction&lt;/a&gt;. It’s an exciting project with a lot to offer.&lt;/p&gt;&#xA;&lt;p&gt;A native neovim extension for Codeium&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ Exafunction codeium.nvim</title>
    <id>https://waylonwalker.com/exafunction-codeium-nvim/</id>
    <updated>2024-10-15T22:07:25Z</updated>
    <published>2024-10-15T22:07:25Z</published>
    <link href="https://waylonwalker.com/exafunction-codeium-nvim/" rel="alternate" type="text/html"></link>
    <summary type="text">I&#39;m really excited about codeium.nvim, an amazing project by Exafunction. It&#39;s worth exploring!</summary>
    <content type="html">&lt;p&gt;I’m really excited about &lt;a href=&#34;https://github.com/Exafunction/codeium.nvim&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;codeium.nvim&lt;/a&gt;, an amazing project by &lt;a href=&#34;https://github.com/Exafunction&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;Exafunction&lt;/a&gt;. It’s worth exploring!&lt;/p&gt;&#xA;&lt;p&gt;A native neovim extension for Codeium&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Pin versions of dependencies · Issue #2200 · Kozea/WeasyPrint</title>
    <id>https://waylonwalker.com/thought-412/</id>
    <updated>2024-10-11T13:36:19Z</updated>
    <published>2024-10-11T13:36:19Z</published>
    <link href="https://waylonwalker.com/thought-412/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://github.com/Kozea/WeasyPrint/issues/2200</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://github.com/Kozea/WeasyPrint/issues/2200&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://opengraph.githubassets.com/52ff13e577e4566fde50e9480a0dcaa7d42e48d98c94622c49fdf908ecb6d961/Kozea/WeasyPrint/issues/2200&#34; alt=&#34;Pin versions of dependencies · Issue #2200 · Kozea/WeasyPrint — Stack trace: pdf = HTML(file_obj=html, base_url=&amp;#39;/&amp;#39;).write_pdf() File &amp;#34;/service/venv/lib/python3.9/site-packages/weasyprint/__init__.py&amp;#34;, line 252, in write_pdf self.render(font_config, counter_sty...&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: Pin versions of dependencies · Issue #2200 · Kozea/WeasyPrint — Stack trace: pdf = HTML(file_obj=html, base_url=&amp;#39;/&amp;#39;).write_pdf() File &amp;#34;/service/venv/lib/python3.9/site-packages/weasyprint/__init__.py&amp;#34;, line 252, in write_pdf self.render(font_config, counter_sty...&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Pin versions of dependencies · Issue #2200 · Kozea/WeasyPrint&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Stack trace: pdf = HTML(file_obj=html, base_url=&amp;#39;/&amp;#39;).write_pdf() File &amp;#34;/service/venv/lib/python3.9/site-packages/weasyprint/__init__.py&amp;#34;, line 252, in write_pdf self.render(font_config, counter_sty...&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;GitHub · github.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;weazyprint was throwing me some errors, turns out that it’s currently not compatible with the latest pydyf package.&lt;/p&gt;&#xA;&lt;p&gt;my error&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;ne&#34;&gt;TypeError&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;fm&#34;&gt;__init__&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;()&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;takes&lt;/span&gt; &lt;span class=&#34;mi&#34;&gt;1&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;positional&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;argument&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;but&lt;/span&gt; &lt;span class=&#34;mi&#34;&gt;3&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;were&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;give&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;I fixed it by locking in pydyf at 0.8.0&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;pydyf==0.8.0&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 These are SICK, gonna be using this a lot. (Thanks @evantraver...</title>
    <id>https://waylonwalker.com/thought-411/</id>
    <updated>2024-10-11T01:09:17Z</updated>
    <published>2024-10-11T01:09:17Z</published>
    <link href="https://waylonwalker.com/thought-411/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://github.com/jesseleite/dotfiles/commit/49794006cbc9dc0e743925ec1a7122514d7148be</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://github.com/jesseleite/dotfiles/commit/49794006cbc9dc0e743925ec1a7122514d7148be&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://opengraph.githubassets.com/bd31a4bee1259919d900145e419dcfd6877bf185aeed1d9876984fb32ac8bd04/jesseleite/dotfiles/commit/49794006cbc9dc0e743925ec1a7122514d7148be&#34; alt=&#34;These are SICK, gonna be using this a lot. (Thanks @evantravers 🥰.) · jesseleite/dotfiles@4979400 — My dotfiles 💾. Contribute to jesseleite/dotfiles development by creating an account on GitHub.&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: These are SICK, gonna be using this a lot. (Thanks @evantravers 🥰.) · jesseleite/dotfiles@4979400 — My dotfiles 💾. Contribute to jesseleite/dotfiles development by creating an account on GitHub.&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;These are SICK, gonna be using this a lot. (Thanks @evantravers 🥰.) · jesseleite/dotfiles@4979400&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;My dotfiles 💾. Contribute to jesseleite/dotfiles development by creating an account on GitHub.&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;GitHub · github.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;helix inspired treesitter select outwards and select inwards.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 add helix · WaylonWalker/devtainer@71b9b29</title>
    <id>https://waylonwalker.com/thought-410/</id>
    <updated>2024-10-11T01:05:03Z</updated>
    <published>2024-10-11T01:05:03Z</published>
    <link href="https://waylonwalker.com/thought-410/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://github.com/WaylonWalker/devtainer/commit/71b9b29baf14f3714601d022ca12c3417437395b</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://github.com/WaylonWalker/devtainer/commit/71b9b29baf14f3714601d022ca12c3417437395b&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://opengraph.githubassets.com/fd1687e75f5d7b4f4cbf56811cf735b18459df46b99be7418d115c9ac332f56a/WaylonWalker/devtainer/commit/71b9b29baf14f3714601d022ca12c3417437395b&#34; alt=&#34;add helix · WaylonWalker/devtainer@71b9b29 — 🐳 (dotfiles) My personal development docker container base image - add helix · WaylonWalker/devtainer@71b9b29&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: add helix · WaylonWalker/devtainer@71b9b29 — 🐳 (dotfiles) My personal development docker container base image - add helix · WaylonWalker/devtainer@71b9b29&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;add helix · WaylonWalker/devtainer@71b9b29&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;🐳 (dotfiles) My personal development docker container base image - add helix · WaylonWalker/devtainer@71b9b29&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;GitHub · github.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Helix officially made it in my devtainer.   I am installing the binary right out of the github release with wget and tar.  I can’t use installer because their release format does not match what installer is looking for.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;:&lt;/p&gt;&#xA;&lt;p&gt;I also move the runtime over to /usr/local/share/helix/runtime.&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;:&lt;/p&gt;&#xA;&lt;p&gt;I use /usr/local/bin rather than my home directory as it works better with distrobox.&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 helix-vim/config.toml at master · LGUG2Z/helix-vim</title>
    <id>https://waylonwalker.com/thought-409/</id>
    <updated>2024-10-09T15:37:18Z</updated>
    <published>2024-10-09T15:37:18Z</published>
    <link href="https://waylonwalker.com/thought-409/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://github.com/LGUG2Z/helix-vim/blob/master/config.toml</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;/static/https://github.com/LGUG2Z/helix-vim/blob/master/config.toml&#34; class=&#34;glightbox-link&#34; aria-label=&#34;https://github.com/LGUG2Z/helix-vim/blob/master/config.toml&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;/static/https://github.com/LGUG2Z/helix-vim/blob/master/config.toml&#34; alt=&#34;https://github.com/LGUG2Z/helix-vim/blob/master/config.toml&#34;/ data-glightbox=&#34;description: https://github.com/LGUG2Z/helix-vim/blob/master/config.toml&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;p&gt;Here are some really great keybinds to make helix vim-like.  It feels very antithetical to use this whole sale and forego the helix motion-verb language, but there are some nuggets like G in here that I find useful.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Support regex substitution command · Issue #2232 · helix-edito...</title>
    <id>https://waylonwalker.com/thought-408/</id>
    <updated>2024-10-08T13:39:41Z</updated>
    <published>2024-10-08T13:39:41Z</published>
    <link href="https://waylonwalker.com/thought-408/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://github.com/helix-editor/helix/issues/2232#issuecomment-1250371051</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://github.com/helix-editor/helix/issues/2232#issuecomment-1250371051&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://opengraph.githubassets.com/6070a27597ac258b977bcb6e14aad6075dc9a5bba312a6b515fc74353a5b7731/helix-editor/helix/issues/2232&#34; alt=&#34;Support regex substitution command  · Issue #2232 · helix-editor/helix — Support regex substitution, comparable to vim :s or VSCode search &amp;amp; replace. I propose supporting regex replacements for selection s, files/, and the workspace scopes &amp;lt;space&amp;gt; + /. This could be acc...&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: Support regex substitution command  · Issue #2232 · helix-editor/helix — Support regex substitution, comparable to vim :s or VSCode search &amp;amp; replace. I propose supporting regex replacements for selection s, files/, and the workspace scopes &amp;lt;space&amp;gt; + /. This could be acc...&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Support regex substitution command  · Issue #2232 · helix-editor/helix&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Support regex substitution, comparable to vim :s or VSCode search &amp;amp; replace. I propose supporting regex replacements for selection s, files/, and the workspace scopes &amp;lt;space&amp;gt; + /. This could be acc...&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;GitHub · github.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;helix multicursor has the ability to do what vims &lt;code&gt;:s/hello/world/gc&lt;/code&gt; does by using &lt;code&gt;)&lt;/code&gt; to cycle through cursors, and &lt;code&gt;n&lt;/code&gt; to discard unwanted cursors.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Support regex substitution command · Issue #2232 · helix-edito...</title>
    <id>https://waylonwalker.com/thought-407/</id>
    <updated>2024-10-08T13:36:25Z</updated>
    <published>2024-10-08T13:36:25Z</published>
    <link href="https://waylonwalker.com/thought-407/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://github.com/helix-editor/helix/issues/2232#issuecomment-1228632218</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://github.com/helix-editor/helix/issues/2232#issuecomment-1228632218&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://opengraph.githubassets.com/6070a27597ac258b977bcb6e14aad6075dc9a5bba312a6b515fc74353a5b7731/helix-editor/helix/issues/2232&#34; alt=&#34;Support regex substitution command  · Issue #2232 · helix-editor/helix — Support regex substitution, comparable to vim :s or VSCode search &amp;amp; replace. I propose supporting regex replacements for selection s, files/, and the workspace scopes &amp;lt;space&amp;gt; + /. This could be acc...&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: Support regex substitution command  · Issue #2232 · helix-editor/helix — Support regex substitution, comparable to vim :s or VSCode search &amp;amp; replace. I propose supporting regex replacements for selection s, files/, and the workspace scopes &amp;lt;space&amp;gt; + /. This could be acc...&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Support regex substitution command  · Issue #2232 · helix-editor/helix&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Support regex substitution, comparable to vim :s or VSCode search &amp;amp; replace. I propose supporting regex replacements for selection s, files/, and the workspace scopes &amp;lt;space&amp;gt; + /. This could be acc...&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;GitHub · github.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Here is a really good vim substitute with regex capture groups, saving this one for a rainy day.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;*&lt;/span&gt; Reading 1: This is a title to a link&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;*&lt;/span&gt; Reading 2: This is another title&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;&lt;code&gt;:%s/\v(: )(.+)$/\1\[\2\]\(&lt;/code&gt;&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;*&lt;/span&gt; Reading 1: [This is a title to a link](&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;*&lt;/span&gt; Reading 2: [This is another title](&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Support regex substitution command · Issue #2232 · helix-edito...</title>
    <id>https://waylonwalker.com/thought-406/</id>
    <updated>2024-10-08T13:33:44Z</updated>
    <published>2024-10-08T13:33:44Z</published>
    <link href="https://waylonwalker.com/thought-406/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://github.com/helix-editor/helix/issues/2232#issuecomment-1107644740</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://github.com/helix-editor/helix/issues/2232#issuecomment-1107644740&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://opengraph.githubassets.com/6070a27597ac258b977bcb6e14aad6075dc9a5bba312a6b515fc74353a5b7731/helix-editor/helix/issues/2232&#34; alt=&#34;Support regex substitution command  · Issue #2232 · helix-editor/helix — Support regex substitution, comparable to vim :s or VSCode search &amp;amp; replace. I propose supporting regex replacements for selection s, files/, and the workspace scopes &amp;lt;space&amp;gt; + /. This could be acc...&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: Support regex substitution command  · Issue #2232 · helix-editor/helix — Support regex substitution, comparable to vim :s or VSCode search &amp;amp; replace. I propose supporting regex replacements for selection s, files/, and the workspace scopes &amp;lt;space&amp;gt; + /. This could be acc...&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Support regex substitution command  · Issue #2232 · helix-editor/helix&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Support regex substitution, comparable to vim :s or VSCode search &amp;amp; replace. I propose supporting regex replacements for selection s, files/, and the workspace scopes &amp;lt;space&amp;gt; + /. This could be acc...&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;GitHub · github.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Interesting take on refactoring the whole codebase from your editor.  In this thread the-mikedavis suggests multicursor as a replacement for substitute, and later in the thread takes the side that larger workspace wide edits are outside the scope of helix and he would reach for a refactoring tool like &lt;a href=&#34;https://github.com/facebookincubator/fastmod?tab=readme-ov-file&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;fastmod&lt;/a&gt; to do the job.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ facebookincubator fastmod</title>
    <id>https://waylonwalker.com/facebookincubator-fastmod/</id>
    <updated>2024-10-08T13:16:32Z</updated>
    <published>2024-10-08T13:16:32Z</published>
    <link href="https://waylonwalker.com/facebookincubator-fastmod/" rel="alternate" type="text/html"></link>
    <summary type="text">I like facebookincubator&#39;s project fastmod.</summary>
    <content type="html">&lt;p&gt;I like &lt;a href=&#34;https://github.com/facebookincubator&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;facebookincubator’s&lt;/a&gt; project &lt;a href=&#34;https://github.com/facebookincubator/fastmod&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;fastmod&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;A fast partial replacement for the codemod tool&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Support regex substitution command · Issue #2232 · helix-edito...</title>
    <id>https://waylonwalker.com/thought-405/</id>
    <updated>2024-10-08T13:12:24Z</updated>
    <published>2024-10-08T13:12:24Z</published>
    <link href="https://waylonwalker.com/thought-405/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://github.com/helix-editor/helix/issues/2232</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://github.com/helix-editor/helix/issues/2232&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://opengraph.githubassets.com/6070a27597ac258b977bcb6e14aad6075dc9a5bba312a6b515fc74353a5b7731/helix-editor/helix/issues/2232&#34; alt=&#34;Support regex substitution command  · Issue #2232 · helix-editor/helix — Support regex substitution, comparable to vim :s or VSCode search &amp;amp; replace. I propose supporting regex replacements for selection s, files/, and the workspace scopes &amp;lt;space&amp;gt; + /. This could be acc...&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: Support regex substitution command  · Issue #2232 · helix-editor/helix — Support regex substitution, comparable to vim :s or VSCode search &amp;amp; replace. I propose supporting regex replacements for selection s, files/, and the workspace scopes &amp;lt;space&amp;gt; + /. This could be acc...&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Support regex substitution command  · Issue #2232 · helix-editor/helix&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Support regex substitution, comparable to vim :s or VSCode search &amp;amp; replace. I propose supporting regex replacements for selection s, files/, and the workspace scopes &amp;lt;space&amp;gt; + /. This could be acc...&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;GitHub · github.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;I am a heavy user off substitutions in vim, helix does not substitutions built in, rather it leans on multicursor support.&lt;/p&gt;&#xA;&lt;p&gt;to replace every instance of hello with world in vim&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:%s/hello/world/g&amp;lt;CR&amp;gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;and in helix you would&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;%shello&amp;lt;CR&amp;gt;cworld&amp;lt;ESC&amp;gt;,&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Background Image | Wallpaper · Issue #3059 · helix-editor/helix</title>
    <id>https://waylonwalker.com/thought-404/</id>
    <updated>2024-10-08T13:02:53Z</updated>
    <published>2024-10-08T13:02:53Z</published>
    <link href="https://waylonwalker.com/thought-404/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://github.com/helix-editor/helix/issues/3059</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://github.com/helix-editor/helix/issues/3059&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://opengraph.githubassets.com/50aa0ae7f1ef9a5a82fb25876a3c27bf548b77347c730bc66182681ebc4ea221/helix-editor/helix/issues/3059&#34; alt=&#34;Background Image | Wallpaper · Issue #3059 · helix-editor/helix — Describe your feature request Hey ! It&amp;#39;d be cool to have the ability to set a background-image on supported terminals (like kitty). Like on IntelliJ: Here is an example of what it&amp;#39;d be on helix:&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: Background Image | Wallpaper · Issue #3059 · helix-editor/helix — Describe your feature request Hey ! It&amp;#39;d be cool to have the ability to set a background-image on supported terminals (like kitty). Like on IntelliJ: Here is an example of what it&amp;#39;d be on helix:&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Background Image | Wallpaper · Issue #3059 · helix-editor/helix&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Describe your feature request Hey ! It&amp;#39;d be cool to have the ability to set a background-image on supported terminals (like kitty). Like on IntelliJ: Here is an example of what it&amp;#39;d be on helix:&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;GitHub · github.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;How to make helix themes transparent.  You can make any built-in theme transparent in helix with one line, a few extras and you can make all the pop ups, help menus and status line trransparant as well.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;mkdir -p ~/.config/helix/themes&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;hx&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;&lt;code&gt;:o ~/.config/helix/themes/dracula_transparant.toml&lt;/code&gt;&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c&#34;&gt;# ~/.config/helix/themes/dracula_transparant.toml&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nx&#34;&gt;inherits&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;dracula&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;ui.background&amp;#34;&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt; &lt;span class=&#34;nx&#34;&gt;fg&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;foreground&amp;#34;&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;}&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;ui.menu&amp;#34;&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt; &lt;span class=&#34;nx&#34;&gt;fg&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;white&amp;#34;&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;}&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;ui.popup&amp;#34;&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt; &lt;span class=&#34;nx&#34;&gt;fg&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;white&amp;#34;&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;}&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;ui.window&amp;#34;&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt; &lt;span class=&#34;nx&#34;&gt;fg&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;white&amp;#34;&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;}&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;ui.help&amp;#34;&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt; &lt;span class=&#34;nx&#34;&gt;fg&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;light-gray&amp;#34;&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;}&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;ui.statusline&amp;#34;&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt; &lt;span class=&#34;nx&#34;&gt;fg&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;gray&amp;#34;&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;}&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;ui.statusline.inactive&amp;#34;&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt; &lt;span class=&#34;nx&#34;&gt;fg&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;black&amp;#34;&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;}&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;&lt;code&gt;:config-edit&lt;/code&gt;&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c&#34;&gt;# ~/.config/helix/config.toml&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nx&#34;&gt;theme&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;dracula_transparant&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 help on setting up ruff formatter + ruff + pyright please : r/...</title>
    <id>https://waylonwalker.com/thought-403/</id>
    <updated>2024-10-08T02:25:37Z</updated>
    <published>2024-10-08T02:25:37Z</published>
    <link href="https://waylonwalker.com/thought-403/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.reddit.com/r/HelixEditor/comments/17gglgm/help_setting_ruff_ruff_pyright/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-reddit&#34;&gt;&#xA;  &lt;a href=&#34;https://www.reddit.com/r/HelixEditor/comments/17gglgm/help_on_setting_up_ruff_formatter_ruff_pyright/&#34; class=&#34;embed-card-link  has-avatar has-avatar-before&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/www.reddit.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/www.reddit.com.ico&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;help on setting up ruff formatter + ruff + pyright please&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;help on setting up ruff formatter + ruff + pyright please&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;Reddit · reddit.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;This post shows how to set up multiple LSP’s in helix, the example uses pyright and ruff-lsp for python.&lt;/p&gt;&#xA;&lt;p&gt;Add this to your &lt;code&gt;~/.config/helix/languages.toml&lt;/code&gt;&#xA;a&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;[[&lt;/span&gt;&lt;span class=&#34;nx&#34;&gt;language&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nx&#34;&gt;name&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;python&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nx&#34;&gt;auto-format&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;kc&#34;&gt;true&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nx&#34;&gt;language-servers&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;nx&#34;&gt;name&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;pyright&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;},&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;nx&#34;&gt;name&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;ruff-lsp&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;},&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;nx&#34;&gt;language-server&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nx&#34;&gt;pyright&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nx&#34;&gt;command&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;pyright-langserver&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nx&#34;&gt;args&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;--stdio&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nx&#34;&gt;config&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{}&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;nx&#34;&gt;language-server&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nx&#34;&gt;ruff-lsp&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nx&#34;&gt;command&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;ruff-lsp&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nx&#34;&gt;args&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;[]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nx&#34;&gt;config&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{}&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 configuring pylsp · helix-editor/helix · Discussion #6623</title>
    <id>https://waylonwalker.com/thought-402/</id>
    <updated>2024-10-08T02:23:03Z</updated>
    <published>2024-10-08T02:23:03Z</published>
    <link href="https://waylonwalker.com/thought-402/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://github.com/helix-editor/helix/discussions/6623</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://github.com/helix-editor/helix/discussions/6623&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://opengraph.githubassets.com/1ba4c03690ca8a923b94a9be9e0f2a4bdf547127428cf443bf525cf93b4bb3d6/helix-editor/helix/discussions/6623&#34; alt=&#34;configuring pylsp · helix-editor helix · Discussion #6623 — Hi, I&amp;#39;m trying to make some modifications to the default pylsp settings as I do not strictly follow PEP in my personal projects. I googled some examples but I cannot get them to work, so I am wonde...&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: configuring pylsp · helix-editor helix · Discussion #6623 — Hi, I&amp;#39;m trying to make some modifications to the default pylsp settings as I do not strictly follow PEP in my personal projects. I googled some examples but I cannot get them to work, so I am wonde...&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;configuring pylsp · helix-editor helix · Discussion #6623&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Hi, I&amp;#39;m trying to make some modifications to the default pylsp settings as I do not strictly follow PEP in my personal projects. I googled some examples but I cannot get them to work, so I am wonde...&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;GitHub · github.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;How to set your python formatter to black with helix.  The following snippet lays out how to set the helix editor to auto-format on save with the black formatter.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;[[&lt;/span&gt;&lt;span class=&#34;nx&#34;&gt;language&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nx&#34;&gt;name&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;python&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nx&#34;&gt;language-servers&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;pylsp&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;nx&#34;&gt;language-server&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nx&#34;&gt;pylsp&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nx&#34;&gt;config&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nx&#34;&gt;pylsp&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nx&#34;&gt;plugins&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nx&#34;&gt;pyls_mypy&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nx&#34;&gt;enabled&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;kc&#34;&gt;true&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nx&#34;&gt;plugins&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nx&#34;&gt;pyls_mypy&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nx&#34;&gt;live_mode&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;kc&#34;&gt;true&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nx&#34;&gt;plugins&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nx&#34;&gt;flake8&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nx&#34;&gt;maxLineLength&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;mi&#34;&gt;88&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nx&#34;&gt;plugins&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nx&#34;&gt;pycodestyle&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nx&#34;&gt;maxLineLength&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;mi&#34;&gt;88&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;nx&#34;&gt;language&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nx&#34;&gt;formatter&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nx&#34;&gt;command&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;black&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nx&#34;&gt;args&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;--line-length&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;88&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;--quiet&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;-&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Database Remote-Copy Tool For SQLite (draft)</title>
    <id>https://waylonwalker.com/thought-401/</id>
    <updated>2024-10-05T20:56:49Z</updated>
    <published>2024-10-05T20:56:49Z</published>
    <link href="https://waylonwalker.com/thought-401/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://simonwillison.net/2024/Oct/4/sqlite-rsync/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://simonwillison.net/2024/Oct/4/sqlite-rsync/&#34; class=&#34;embed-card-link  has-avatar has-avatar-before&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/simonwillison.net.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/simonwillison.net.ico&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Database Remote-Copy Tool For SQLite (draft)&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Neat new SQLite utilities often show up in branches of the SQLite repository. Here&amp;#39;s a new one from last month: sqlite3-rsync, providing tools for efficiently creating and updating copies of …&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;Simon Willison’s Weblog · simonwillison.net&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Simon shared a really cool new utility tool for sqlite ispired by rsync.  It checks hashes of each sqlite page and syncs pages.  So if nothing in the database has changed it will only require 0.5% the bandwidth as a copy would.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 ticklemykeys on X: &#34;working on a new model. * seams less visib...</title>
    <id>https://waylonwalker.com/thought-400/</id>
    <updated>2024-10-04T01:49:28Z</updated>
    <published>2024-10-04T01:49:28Z</published>
    <link href="https://waylonwalker.com/thought-400/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://x.com/XTicklemykeys/status/1840104423508312273</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://x.com/XTicklemykeys/status/1840104423508312273&#34; class=&#34;embed-card-link  has-avatar has-avatar-before&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/x.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/x.com.ico&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;External Link&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;X (formerly Twitter) · x.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;porta-john design update, working on moving the seams to line up with an edge to eliminate long noticable seams.  These seams are required because I don’t have a printer big enough to print this in one shot.&lt;/p&gt;&#xA;&lt;p&gt;hotswaps are going in.  I’m getting really excited for hotswaps as they will make keebs more repairable, and users can self change out the switches if they want.  I can also pre-build them ready to go, and drop in switches at the time of order.  I did learn today that these are hyper specific to gateron, damn all these switch manufacturers and their special pinouts.&lt;/p&gt;&#xA;&lt;p&gt;Last thing I gotta make more room for wiring the microcontroller and running wires out to the rows and columns, my first prototype build took waay to long to build.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Elwin Ransom 👽 on X: &#34;Help, I&#39;m being Helix pilled by my own f...</title>
    <id>https://waylonwalker.com/thought-399/</id>
    <updated>2024-10-04T01:42:50Z</updated>
    <published>2024-10-04T01:42:50Z</published>
    <link href="https://waylonwalker.com/thought-399/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://x.com/jesseleite85/status/1841547565575086448</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://x.com/jesseleite85/status/1841547565575086448&#34; class=&#34;embed-card-link  has-avatar has-avatar-before&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/x.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/x.com.ico&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;External Link&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;X (formerly Twitter) · x.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Is Jesse going to get sniped by the helix community?&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 ticklemykeys on X: &#34;New cap of my own design https://t.co/j63q...</title>
    <id>https://waylonwalker.com/thought-398/</id>
    <updated>2024-10-04T01:42:01Z</updated>
    <published>2024-10-04T01:42:01Z</published>
    <link href="https://waylonwalker.com/thought-398/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://x.com/XTicklemykeys/status/1841646323939864871</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://x.com/XTicklemykeys/status/1841646323939864871&#34; class=&#34;embed-card-link  has-avatar has-avatar-before&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/x.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/x.com.ico&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;External Link&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;X (formerly Twitter) · x.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;This low profile design almost made it to 9.  I think blending together the custom brim to make them all one piece really made the final difference here.  The custom brim is two layers thick, only touching on the top layer making it very easy to peel off, but gives better adhesion to the bed, and does not loose one like this print did.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 ticklemykeys on X: &#34;Full size MX caps, printing flawlessly wit...</title>
    <id>https://waylonwalker.com/thought-397/</id>
    <updated>2024-10-04T01:39:38Z</updated>
    <published>2024-10-04T01:39:38Z</published>
    <link href="https://waylonwalker.com/thought-397/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://x.com/XTicklemykeys/status/1841860763960377732</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://x.com/XTicklemykeys/status/1841860763960377732&#34; class=&#34;embed-card-link  has-avatar has-avatar-before&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/x.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/x.com.ico&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;External Link&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;X (formerly Twitter) · x.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;really excited for how these caps of my own design are working out.  Having the extra control is the first time I’ve been able to print more than one at a time without some hacky gcode.  I’ve got a set of nine here that I have printed 4 times without a single failure.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ wyattbubbylee zmk-config-wyatt-3x5</title>
    <id>https://waylonwalker.com/wyattbubbylee-zmk-config-wyatt-3x5/</id>
    <updated>2024-10-03T13:41:32Z</updated>
    <published>2024-10-03T13:41:32Z</published>
    <link href="https://waylonwalker.com/wyattbubbylee-zmk-config-wyatt-3x5/" rel="alternate" type="text/html"></link>
    <summary type="text">The work on zmk-config-wyatt-3x5 by wyattbubbylee.</summary>
    <content type="html">&lt;p&gt;The work on &lt;a href=&#34;https://github.com/wyattbubbylee/zmk-config-wyatt-3x5&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;zmk-config-wyatt-3x5&lt;/a&gt; by &lt;a href=&#34;https://github.com/wyattbubbylee&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;wyattbubbylee&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;wyatt-3x5&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Cherry 8 mm keycap mount</title>
    <id>https://waylonwalker.com/thought-396/</id>
    <updated>2024-10-02T12:58:55Z</updated>
    <published>2024-10-02T12:58:55Z</published>
    <link href="https://waylonwalker.com/thought-396/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://telcontar.net/KBK/Cherry/images/MX/Cherry_mm_mount.svgz</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;/static/https://telcontar.net/KBK/Cherry/images/MX/Cherry_8_mm_mount.svgz&#34; class=&#34;glightbox-link&#34; aria-label=&#34;https://telcontar.net/KBK/Cherry/images/MX/Cherry_8_mm_mount.svgz&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;/static/https://telcontar.net/KBK/Cherry/images/MX/Cherry_8_mm_mount.svgz&#34; alt=&#34;https://telcontar.net/KBK/Cherry/images/MX/Cherry_8_mm_mount.svgz&#34;/ data-glightbox=&#34;description: https://telcontar.net/KBK/Cherry/images/MX/Cherry_8_mm_mount.svgz&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;p&gt;MX keycap stem dimensions.  I used these to create my new caps and all these dimensions worked great.  The one dimension I had issues with was the outer diameter off the cap stem, not shown here.  5.3mm ended up being a good outer diameter for me.  I print them at an angle and the bottom of the stem can get a bit of sag, pressing out on the outer wall of the switch and can actually stick the key.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 distrobox/docs/usage/distrobox-assemble.md at main · 89luca89/...</title>
    <id>https://waylonwalker.com/thought-394/</id>
    <updated>2024-09-30T15:49:25Z</updated>
    <published>2024-09-30T15:49:25Z</published>
    <link href="https://waylonwalker.com/thought-394/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://github.com/89luca89/distrobox/blob/main/docs/usage/distrobox-assemble.md</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;/static/https://github.com/89luca89/distrobox/blob/main/docs/usage/distrobox-assemble.md&#34; class=&#34;glightbox-link&#34; aria-label=&#34;https://github.com/89luca89/distrobox/blob/main/docs/usage/distrobox-assemble.md&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;/static/https://github.com/89luca89/distrobox/blob/main/docs/usage/distrobox-assemble.md&#34; alt=&#34;https://github.com/89luca89/distrobox/blob/main/docs/usage/distrobox-assemble.md&#34;/ data-glightbox=&#34;description: https://github.com/89luca89/distrobox/blob/main/docs/usage/distrobox-assemble.md&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;p&gt;This page is gold.  It lays out all of the distrobox assemble api with some good examples  of how to get access to things like podman and kind from inside of containers.&lt;/p&gt;&#xA;&lt;p&gt;Especially this example.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;[tumbleweed_distrobox]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;na&#34;&gt;image&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;registry.opensuse.org/opensuse/distrobox&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;na&#34;&gt;pull&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;true&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;na&#34;&gt;additional_packages&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;&amp;#34;acpi bash-completion findutils iproute iputils sensors inotify-tools unzip&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;na&#34;&gt;additional_packages&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;&amp;#34;net-tools nmap openssl procps psmisc rsync man tig tmux tree vim htop xclip yt-dlp&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;na&#34;&gt;additional_packages&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;&amp;#34;git git-credential-libsecret&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;na&#34;&gt;additional_packages&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;&amp;#34;patterns-devel-base-devel_basis&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;na&#34;&gt;additional_packages&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;&amp;#34;ShellCheck ansible-lint clang clang-tools codespell ctags desktop-file-utils gcc golang jq python3&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;na&#34;&gt;additional_packages&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;&amp;#34;python3-bashate python3-flake8 python3-mypy python3-pipx python3-pycodestyle python3-pyflakes python3-pylint python3-python-lsp-server python3-rstcheck python3-yapf python3-yamllint rustup shfmt&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;na&#34;&gt;additional_packages&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;&amp;#34;kubernetes-client helm&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;na&#34;&gt;init_hooks&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;GOPATH=&amp;#34;${HOME}/.local/share/system-go&amp;#34; GOBIN=/usr/local/bin go install github.com/golangci/golangci-lint/cmd/golangci-lint@latest;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;na&#34;&gt;init_hooks&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;GOPATH=&amp;#34;${HOME}/.local/share/system-go&amp;#34; GOBIN=/usr/local/bin go install github.com/onsi/ginkgo/v2/ginkgo@latest;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;na&#34;&gt;init_hooks&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;GOPATH=&amp;#34;${HOME}/.local/share/system-go&amp;#34; GOBIN=/usr/local/bin go install golang.org/x/tools/cmd/goimports@latest;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;na&#34;&gt;init_hooks&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;GOPATH=&amp;#34;${HOME}/.local/share/system-go&amp;#34; GOBIN=/usr/local/bin go install golang.org/x/tools/gopls@latest;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;na&#34;&gt;init_hooks&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;GOPATH=&amp;#34;${HOME}/.local/share/system-go&amp;#34; GOBIN=/usr/local/bin go install sigs.k8s.io/kind@latest;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;na&#34;&gt;init_hooks&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;ln -sf /usr/bin/distrobox-host-exec /usr/local/bin/conmon;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;na&#34;&gt;init_hooks&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;ln -sf /usr/bin/distrobox-host-exec /usr/local/bin/crun;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;na&#34;&gt;init_hooks&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;ln -sf /usr/bin/distrobox-host-exec /usr/local/bin/docker;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;na&#34;&gt;init_hooks&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;ln -sf /usr/bin/distrobox-host-exec /usr/local/bin/docker-compose;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;na&#34;&gt;init_hooks&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;ln -sf /usr/bin/distrobox-host-exec /usr/local/bin/flatpak;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;na&#34;&gt;init_hooks&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;ln -sf /usr/bin/distrobox-host-exec /usr/local/bin/podman;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;na&#34;&gt;init_hooks&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;ln -sf /usr/bin/distrobox-host-exec /usr/local/bin/xdg-open;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;na&#34;&gt;exported_apps&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;&amp;#34;htop&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;na&#34;&gt;exported_bins&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;&amp;#34;/usr/bin/htop /usr/bin/git&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;na&#34;&gt;exported_bins_path&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;&amp;#34;~/.local/bin&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Modular Input Device on Wood</title>
    <id>https://waylonwalker.com/shots/portajohn2-on-portajohn1/</id>
    <updated>2024-09-30T08:13:30Z</updated>
    <published>2024-09-30T08:13:30Z</published>
    <link href="https://waylonwalker.com/shots/portajohn2-on-portajohn1/" rel="alternate" type="text/html"></link>
    <summary type="text">Comparing the thickness of the low profile portajohn2 to the portajohn1</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;http://dropper.waylonwalker.com/file/c4f56c25-4528-4c07-b492-85ca73e28f58.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;Two custom keyboards laid on top of each other for a thickness comparison, laying on a light bamboo wood desk top.&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;http://dropper.waylonwalker.com/file/c4f56c25-4528-4c07-b492-85ca73e28f58.webp&#34; alt=&#34;Two custom keyboards laid on top of each other for a thickness comparison, laying on a light bamboo wood desk top.&#34;/ data-glightbox=&#34;description: Two custom keyboards laid on top of each other for a thickness comparison, laying on a light bamboo wood desk top.&#34;&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;Here you can see quite the size difference between the original portajohn1 and the low profile portajohn2.&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 urob/zmk-config: Personal ZMK firmware configuration for vario...</title>
    <id>https://waylonwalker.com/thought-393/</id>
    <updated>2024-09-29T16:50:30Z</updated>
    <published>2024-09-29T16:50:30Z</published>
    <link href="https://waylonwalker.com/thought-393/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://github.com/urob/zmk-config?tab=readme-ov-file</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://github.com/urob/zmk-config?tab=readme-ov-file&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://repository-images.githubusercontent.com/501412238/8901700b-95d0-4121-8141-53ab15a1e41a&#34; alt=&#34;GitHub - urob/zmk-config: Personal ZMK firmware configuration for various boards (34-keys, Glove80, Planck) — Personal ZMK firmware configuration for various boards (34-keys, Glove80, Planck) - urob/zmk-config&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: GitHub - urob/zmk-config: Personal ZMK firmware configuration for various boards (34-keys, Glove80, Planck) — Personal ZMK firmware configuration for various boards (34-keys, Glove80, Planck) - urob/zmk-config&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;GitHub - urob/zmk-config: Personal ZMK firmware configuration for various boards (34-keys, Glove80, Planck)&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Personal ZMK firmware configuration for various boards (34-keys, Glove80, Planck) - urob/zmk-config&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;GitHub · github.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;This is a very well thought out zmk config featuring many macros, numword, and timeless homerow mods. The build system to build locally looks on point, I really need to give that a try!&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 add init hooks and exported bins · WaylonWalker/devtainer@2e4c6da</title>
    <id>https://waylonwalker.com/thought-392/</id>
    <updated>2024-09-28T01:34:08Z</updated>
    <published>2024-09-28T01:34:08Z</published>
    <link href="https://waylonwalker.com/thought-392/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://github.com/WaylonWalker/devtainer/commit/2e4c6da537f5672209d1b3922fad754190aef938#diff-38878343c551520f8af2a3986e5f6085b03df197a56a92abc42a44b200f02...</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://github.com/WaylonWalker/devtainer/commit/2e4c6da537f5672209d1b3922fad754190aef938#diff-38878343c551520f8af2a3986e5f6085b03df197a56a92abc42a44b200f0264aR19&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://opengraph.githubassets.com/6b12b2c44f61b6aae41530a61e77341635725a79e7c39eb6c5c4f15082d4c174/WaylonWalker/devtainer/commit/2e4c6da537f5672209d1b3922fad754190aef938&#34; alt=&#34;add init hooks and exported bins · WaylonWalker/devtainer@2e4c6da — 🐳 (dotfiles) My personal development docker container base image - add init hooks and exported bins · WaylonWalker/devtainer@2e4c6da&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: add init hooks and exported bins · WaylonWalker/devtainer@2e4c6da — 🐳 (dotfiles) My personal development docker container base image - add init hooks and exported bins · WaylonWalker/devtainer@2e4c6da&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;add init hooks and exported bins · WaylonWalker/devtainer@2e4c6da&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;🐳 (dotfiles) My personal development docker container base image - add init hooks and exported bins · WaylonWalker/devtainer@2e4c6da&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;GitHub · github.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Today I learned that you can use init_hooks to access host machine commands from inside a distrobox container.  This is super handy for things that you cannot get to from inside the container and need ran outside (docker, podman, flatpak, xdg-open).&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nv&#34;&gt;init_hooks&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;ln -sf /usr/bin/distrobox-host-exec /usr/local/bin/podman&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ manyfold3d manyfold</title>
    <id>https://waylonwalker.com/manyfold3d-manyfold/</id>
    <updated>2024-09-27T16:15:53Z</updated>
    <published>2024-09-27T16:15:53Z</published>
    <link href="https://waylonwalker.com/manyfold3d-manyfold/" rel="alternate" type="text/html"></link>
    <summary type="text">I&#39;m really excited about manyfold, an amazing project by manyfold3d. It&#39;s worth exploring!</summary>
    <content type="html">&lt;p&gt;I’m really excited about &lt;a href=&#34;https://github.com/manyfold3d/manyfold&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;manyfold&lt;/a&gt;, an amazing project by &lt;a href=&#34;https://github.com/manyfold3d&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;manyfold3d&lt;/a&gt;. It’s worth exploring!&lt;/p&gt;&#xA;&lt;p&gt;A &lt;a href=&#34;/self-host/&#34; class=&#34;glossary-term&#34; title=&#34;Self hosting is the act of hosting your own applications and services without using a SAS provider. This is typically done with your own hardware, but there...&#34;&gt;self-hosted&lt;/a&gt; digital asset manager for 3d print files.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Taildrop · Tailscale Docs</title>
    <id>https://waylonwalker.com/thought-391/</id>
    <updated>2024-09-24T13:19:09Z</updated>
    <published>2024-09-24T13:19:09Z</published>
    <link href="https://waylonwalker.com/thought-391/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://tailscale.com/kb/1106/taildrop?tab=linux</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://tailscale.com/kb/1106/taildrop?tab=linux&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://tailscale.com/files/images/og-image.png&#34; alt=&#34;Taildrop · Tailscale Docs — Send files between your personal devices on a Tailscale network.&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: Taildrop · Tailscale Docs — Send files between your personal devices on a Tailscale network.&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Taildrop · Tailscale Docs&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Send files between your personal devices on a Tailscale network.&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;Tailscale · tailscale.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Tailscale comes with a feature called taildrop that lets you &lt;em&gt;easily&lt;/em&gt; share files between machines on your tailnet.  If you have tailscale on ios/android it shows up as a share target when you try to share something, and you can pick the machine to share with.&lt;/p&gt;&#xA;&lt;p&gt;What was not obvious to me was how to receive the file on linux.  The linux tailscale service does not automatically receive the file, which can be kinda nice that you can put it where you want, but was not obvious to me at first.  Use this command to receive files.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo tailscale file get .&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ valberg django-admin-tui</title>
    <id>https://waylonwalker.com/valberg-django-admin-tui/</id>
    <updated>2024-09-23T16:50:12Z</updated>
    <published>2024-09-23T16:50:12Z</published>
    <link href="https://waylonwalker.com/valberg-django-admin-tui/" rel="alternate" type="text/html"></link>
    <summary type="text">I&#39;m really excited about django-admin-tui, an amazing project by valberg. It&#39;s worth exploring!</summary>
    <content type="html">&lt;p&gt;I’m really excited about &lt;a href=&#34;https://github.com/valberg/django-admin-tui&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;django-admin-tui&lt;/a&gt;, an amazing project by &lt;a href=&#34;https://github.com/valberg&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;valberg&lt;/a&gt;. It’s worth exploring!&lt;/p&gt;&#xA;&lt;p&gt;Django Admin in the terminal!&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 triliu/Heawood42: Files for the Heawood42 ortholinear split ke...</title>
    <id>https://waylonwalker.com/thought-390/</id>
    <updated>2024-09-18T22:57:30Z</updated>
    <published>2024-09-18T22:57:30Z</published>
    <link href="https://waylonwalker.com/thought-390/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://github.com/triliu/Heawood42</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://github.com/triliu/Heawood42&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://opengraph.githubassets.com/4a025709b0f7f6e1cab008d0006cb024705ae5e977265d052b0eace5e97d576c/triliu/Heawood42&#34; alt=&#34;GitHub - triliu/Heawood42: Files for the Heawood42 ortholinear split keyboard — Files for the Heawood42 ortholinear split keyboard - triliu/Heawood42&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: GitHub - triliu/Heawood42: Files for the Heawood42 ortholinear split keyboard — Files for the Heawood42 ortholinear split keyboard - triliu/Heawood42&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;GitHub - triliu/Heawood42: Files for the Heawood42 ortholinear split keyboard&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Files for the Heawood42 ortholinear split keyboard - triliu/Heawood42&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;GitHub · github.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;The Heawood42 is an interesting diodeless keyboard that is not direct wired. According to the repo this is the only keyboard to be diodeless and not direct wired.  It does this through the use of a graph.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ triliu Heawood42</title>
    <id>https://waylonwalker.com/triliu-heawood42/</id>
    <updated>2024-09-18T22:55:53Z</updated>
    <published>2024-09-18T22:55:53Z</published>
    <link href="https://waylonwalker.com/triliu-heawood42/" rel="alternate" type="text/html"></link>
    <summary type="text">I came across Heawood42 from triliu, and it&#39;s packed with great features and ideas.</summary>
    <content type="html">&lt;p&gt;I came across &lt;a href=&#34;https://github.com/triliu/Heawood42&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;Heawood42&lt;/a&gt; from &lt;a href=&#34;https://github.com/triliu&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;triliu&lt;/a&gt;, and it’s packed with great features and ideas.&lt;/p&gt;&#xA;&lt;p&gt;Files for the Heawood42 ortholinear split keyboard&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Leveret v2 &amp; lever keycaps</title>
    <id>https://waylonwalker.com/thought-389/</id>
    <updated>2024-09-16T23:53:23Z</updated>
    <published>2024-09-16T23:53:23Z</published>
    <link href="https://waylonwalker.com/thought-389/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://kbd.news/Leveret-v2-lever-keycaps-2380.html</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;/static/https://kbd.news/Leveret-v2-lever-keycaps-2380.html&#34; class=&#34;glightbox-link&#34; aria-label=&#34;https://kbd.news/Leveret-v2-lever-keycaps-2380.html&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;/static/https://kbd.news/Leveret-v2-lever-keycaps-2380.html&#34; alt=&#34;https://kbd.news/Leveret-v2-lever-keycaps-2380.html&#34;/ data-glightbox=&#34;description: https://kbd.news/Leveret-v2-lever-keycaps-2380.html&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;p&gt;This is a wild key cap that uses a lever to convert horizontal key presses to vertically press the switch down.  The leveret v2 uses two of these on thumbs, one to press outward, and what appears to be one straight forward which feels like it would have to be a wrist motion, but who am I to judge without having it in person.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>k3s config after first install</title>
    <id>https://waylonwalker.com/k3s-config-after-first-install/</id>
    <updated>2024-09-15T16:57:41Z</updated>
    <published>2024-09-15T16:57:41Z</published>
    <link href="https://waylonwalker.com/k3s-config-after-first-install/" rel="alternate" type="text/html"></link>
    <summary type="text">After first setting up a new k3s instance your kubeconfig file will be located in /etc/rancher/k3s/k3s.yaml.</summary>
    <content type="html">&lt;p&gt;After first setting up a new k3s instance your kubeconfig file will be located&#xA;in /etc/rancher/k3s/k3s.yaml.&lt;/p&gt;&#xA;&lt;p&gt;You cans use it from here by setting $KUBECONFIG to that file.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;export&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;KUBECONFIG&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;/etc/rancher/k3s/k3s.yaml&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Or you can copy it to &lt;code&gt;~/.kube/config&lt;/code&gt;&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;cp /etc/rancher/k3s/k3s.yaml ~/.kube/config&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;If you have installed k3s on a remote server and need the config on your local&#xA;machine then you will need to modify the server address to reflect the remote&#xA;server.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;scp user@&amp;lt;server-ip&amp;gt;:/etc/rancher/k3s/k3s.yaml ~/.kube/config&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;div class=&#34;admonition warning&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Warning&lt;/p&gt;&#xA;&lt;p&gt;only do this if you don’t already have a ~/.kube/config file, otherwise copy&#xA;it to a new file and set your $KUBECONFIG env variable to use it.&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Now you will need to open that file and change the server address, making sure&#xA;to keep the port number.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nt&#34;&gt;apiVersion&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;l&#34;&gt;v1&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nt&#34;&gt;clusters&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;- &lt;span class=&#34;nt&#34;&gt;cluster&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;      &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;certificate-authority-data&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;cp&#34;&gt;****&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;      &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;server&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;l&#34;&gt;https://&amp;lt;server-ip&amp;gt;:6443&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;    &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;name&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;l&#34;&gt;default&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Alternatives to Using Pure Black (#000000) for Text and Backgr...</title>
    <id>https://waylonwalker.com/thought-388/</id>
    <updated>2024-09-13T15:47:25Z</updated>
    <published>2024-09-13T15:47:25Z</published>
    <link href="https://waylonwalker.com/thought-388/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://uxplanet.org/alternatives-to-using-pure-black-000000-for-text-and-backgrounds-54ef0e733cdb</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://uxplanet.org/alternatives-to-using-pure-black-000000-for-text-and-backgrounds-54ef0e733cdb&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://miro.medium.com/v2/resize:fit:1200/1*ppiltdEbTjYa3KJ4zHFb9g.png&#34; alt=&#34;Alternatives to Using Pure Black (#000000) for Text and Backgrounds — In order to achieve maximum contrast in design, interface designers often use a combination of pure black and white colors, which helps…&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: Alternatives to Using Pure Black (#000000) for Text and Backgrounds — In order to achieve maximum contrast in design, interface designers often use a combination of pure black and white colors, which helps…&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Alternatives to Using Pure Black (#000000) for Text and Backgrounds&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;In order to achieve maximum contrast in design, interface designers often use a combination of pure black and white colors, which helps…&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;Medium · uxplanet.org&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;A nice set of blacks to use in web design. Subtle variants off of black or white like this can really make your design look nice and modern.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Wes Bos on X: &#34;Are you using position: absolute; to overlap el...</title>
    <id>https://waylonwalker.com/thought-387/</id>
    <updated>2024-09-13T15:43:03Z</updated>
    <published>2024-09-13T15:43:03Z</published>
    <link href="https://waylonwalker.com/thought-387/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://x.com/wesbos/status/1834242925401694490</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://x.com/wesbos/status/1834242925401694490&#34; class=&#34;embed-card-link  has-avatar has-avatar-before&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/x.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/x.com.ico&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;External Link&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;X (formerly Twitter) · x.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;This is a pretty incredible use of css grid to overlay items overtop of each other without needing to resort to &lt;code&gt;position: absolute&lt;/code&gt; and the side effects that it brings.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nc&#34;&gt;wrap&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  &lt;span class=&#34;k&#34;&gt;display&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;grid&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  &lt;span class=&#34;err&#34;&gt;&amp;amp;&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;gt;&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;*&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;{&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;k&#34;&gt;grid-row&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;mi&#34;&gt;1&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;k&#34;&gt;grid-column&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;mi&#34;&gt;1&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  &lt;span class=&#34;p&#34;&gt;}&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;err&#34;&gt;}&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Buttery icons</title>
    <id>https://waylonwalker.com/thought-386/</id>
    <updated>2024-09-07T21:04:18Z</updated>
    <published>2024-09-07T21:04:18Z</published>
    <link href="https://waylonwalker.com/thought-386/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.buttery.so/icons</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://www.buttery.so/icons&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://www.buttery.so/opengraph-image.png?e89682da2c73e61f&#34; alt=&#34;Buttery.so — Buttery smooth, minimal icons for interfaces.&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: Buttery.so — Buttery smooth, minimal icons for interfaces.&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Buttery.so&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Buttery smooth, minimal icons for interfaces.&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;buttery.so&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Some sick looking icons no attribution needed.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ pifi-org pifi-openwrt-raspberry-pi</title>
    <id>https://waylonwalker.com/pifi-org-pifi-openwrt-raspberry-pi/</id>
    <updated>2024-09-07T18:05:56Z</updated>
    <published>2024-09-07T18:05:56Z</published>
    <link href="https://waylonwalker.com/pifi-org-pifi-openwrt-raspberry-pi/" rel="alternate" type="text/html"></link>
    <summary type="text">I&#39;m impressed by pifi-openwrt-raspberry-pi from pifi-org.</summary>
    <content type="html">&lt;p&gt;I’m impressed by &lt;a href=&#34;https://github.com/pifi-org/pifi-openwrt-raspberry-pi&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;pifi-openwrt-raspberry-pi&lt;/a&gt; from &lt;a href=&#34;https://github.com/pifi-org&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;pifi-org&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Firmware Files for Raspberry Pi (PiFI)&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Trying-n8n</title>
    <id>https://waylonwalker.com/trying-n8n/</id>
    <updated>2024-09-03T11:24:00Z</updated>
    <published>2024-09-03T11:24:00Z</published>
    <link href="https://waylonwalker.com/trying-n8n/" rel="alternate" type="text/html"></link>
    <summary type="text">Today I gave n8n a try using podman, their docs gave me docker commands, but it ran fine on my machine using podman.</summary>
    <content type="html">&lt;p&gt;Today I gave n8n a try using podman, their docs gave me docker commands, but it&#xA;ran fine on my machine using podman.&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;podman volume create n8n_data&#xA;podman run -it --rm --name n8n -p 5678:5678 -v n8n_data:/home/node/.n8n docker.n8n.io/n8nio/n8n&#xA;&lt;/code&gt;&lt;/pre&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 NOT - LTT Screwdriver - Fancy by Erer2001 | Download free STL ...</title>
    <id>https://waylonwalker.com/thought-385/</id>
    <updated>2024-08-27T02:13:03Z</updated>
    <published>2024-08-27T02:13:03Z</published>
    <link href="https://waylonwalker.com/thought-385/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.printables.com/model/580045/files</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://www.printables.com/model/580045/files&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://media.printables.com/media/prints/580045/images/4699107_5f1a8c51-18fe-4cdd-8d90-0bce23a057a4_6fd472f2-21fd-4bd4-9eb9-9b6f82d2ee46/thumbs/cover/1200x630/jpg/poster_fancy.jpg&#34; alt=&#34;NOT - LTT Screwdriver - Fancy by Erer2001 | Download free STL model | Printables.com&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: NOT - LTT Screwdriver - Fancy by Erer2001 | Download free STL model | Printables.com&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;NOT - LTT Screwdriver - Fancy by Erer2001 | Download free STL model | Printables.com&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;Printables.com · printables.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Someone has created a knock off of the ltt screwdriver and made it printable, and it works really well.  I have one printed with 6 different bitholders.  I popped some labels on them in bambu studio as I printed to mark them for metric/inch and so on.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/a10f10c7-973a-4dde-bd92-ef37b596fb85.png&#34; class=&#34;glightbox-link&#34; aria-label=&#34;screenshot-2025-08-02T01-43-02-980Z.png&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/a10f10c7-973a-4dde-bd92-ef37b596fb85.png&#34; alt=&#34;screenshot-2025-08-02T01-43-02-980Z.png&#34;/ data-glightbox=&#34;description: screenshot-2025-08-02T01-43-02-980Z.png&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;p&gt;I’ve had mine for about a year now, and I use it quite often.  I used to be a dedicated screwdriver kind of guy, but as life has changed I’m not working out of a shop with tools at reach as much, I’m grabbing a couple of items and heading to a job in the house or a neighbors house.  It’s not 30s to grab just the right dedicated screwdriver anymore.  Also having some setup with hex and torx is a game changer.  It’s also super handy that you can just pop the bits right into a drill or impact.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/778afc97-eaff-4524-97b1-a54c76af2e8d.png&#34; class=&#34;glightbox-link&#34; aria-label=&#34;screenshot-2025-08-02T01-43-17-610Z.png&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/778afc97-eaff-4524-97b1-a54c76af2e8d.png&#34; alt=&#34;screenshot-2025-08-02T01-43-17-610Z.png&#34;/ data-glightbox=&#34;description: screenshot-2025-08-02T01-43-17-610Z.png&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;p&gt;Highly recommended print.  Sorry for not buying the real deal Linux, I got kids to feed here.  I owe you a t-shirt order or something.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/c09f9f15-e9af-405c-b1bc-41c9759156ce.png&#34; class=&#34;glightbox-link&#34; aria-label=&#34;screenshot-2025-08-02T01-43-36-796Z.png&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/c09f9f15-e9af-405c-b1bc-41c9759156ce.png&#34; alt=&#34;screenshot-2025-08-02T01-43-36-796Z.png&#34;/ data-glightbox=&#34;description: screenshot-2025-08-02T01-43-36-796Z.png&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Installing Python - uv</title>
    <id>https://waylonwalker.com/thought-384/</id>
    <updated>2024-08-23T14:55:10Z</updated>
    <published>2024-08-23T14:55:10Z</published>
    <link href="https://waylonwalker.com/thought-384/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://docs.astral.sh/uv/guides/install-python/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://docs.astral.sh/uv/guides/install-python/&#34; class=&#34;embed-card-link  has-avatar has-avatar-before&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/docs.astral.sh.png&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/docs.astral.sh.png&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Installing and managing Python | uv&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;A guide to using uv to install Python, including requesting specific versions, automatic installation, viewing installed versions, and more.&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;docs.astral.sh&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;&lt;code&gt;uv&lt;/code&gt; now can install python for you.  &lt;code&gt;uv&lt;/code&gt; is inspired by rust’s cargo, an all in one fast package and installation manager. &lt;code&gt;uv&lt;/code&gt; is so fast and becoming feature complete, it’s really changing the python packaging ecosystem.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;uv python install&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;uv python install 3.12&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;uv python list&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ tjdevries kickstart.css</title>
    <id>https://waylonwalker.com/tjdevries-kickstart-css/</id>
    <updated>2024-08-21T12:59:49Z</updated>
    <published>2024-08-21T12:59:49Z</published>
    <link href="https://waylonwalker.com/tjdevries-kickstart-css/" rel="alternate" type="text/html"></link>
    <summary type="text">I recently discovered kickstart.css by tjdevries, and it&#39;s truly impressive.</summary>
    <content type="html">&lt;p&gt;I recently discovered &lt;a href=&#34;https://github.com/tjdevries/kickstart.css&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;kickstart.css&lt;/a&gt; by &lt;a href=&#34;https://github.com/tjdevries&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;tjdevries&lt;/a&gt;, and it’s truly impressive.&lt;/p&gt;&#xA;&lt;p&gt;Kickstart.nvim alternative written in pure CSS. Requires failwind.nvim&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Switching Configs in Neovim • Michael Uloth</title>
    <id>https://waylonwalker.com/thought-383/</id>
    <updated>2024-08-21T12:57:56Z</updated>
    <published>2024-08-21T12:57:56Z</published>
    <link href="https://waylonwalker.com/thought-383/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://michaeluloth.com/neovim-switch-configs/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://michaeluloth.com/neovim-switch-configs/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://res.cloudinary.com/ooloth/image/upload/c_fill,w_1200,h_630/v1694064460/mu/ratchet-set.jpg&#34; alt=&#34;Switching configs in Neovim — How to maintain multiple Neovim configurations and switch between them&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: Switching configs in Neovim — How to maintain multiple Neovim configurations and switch between them&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Switching configs in Neovim&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;How to maintain multiple Neovim configurations and switch between them&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;Michael Uloth · michaeluloth.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Switching between nvim configs can be really easy to do since they implemented the &lt;code&gt;NVIM_APPNAME&lt;/code&gt; Environment Variable.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nv&#34;&gt;NVIM_APPNAME&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;nvim-lazyvim nvim&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Now config will be loaded from &lt;code&gt;~/.config/nvim-lazyvim&lt;/code&gt;&lt;/p&gt;&#xA;&lt;p&gt;Michael lays out some aliases in the full article.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;alias&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;v&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;nvim&amp;#39;&lt;/span&gt; &lt;span class=&#34;c1&#34;&gt;# default Neovim config&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;alias&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;vz&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;NVIM_APPNAME=nvim-lazyvim nvim&amp;#39;&lt;/span&gt; &lt;span class=&#34;c1&#34;&gt;# LazyVim&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;alias&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;vc&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;NVIM_APPNAME=nvim-nvchad nvim&amp;#39;&lt;/span&gt; &lt;span class=&#34;c1&#34;&gt;# NvChad&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;alias&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;vk&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;NVIM_APPNAME=nvim-kickstart nvim&amp;#39;&lt;/span&gt; &lt;span class=&#34;c1&#34;&gt;# Kickstart&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;alias&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;va&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;NVIM_APPNAME=nvim-astrovim nvim&amp;#39;&lt;/span&gt; &lt;span class=&#34;c1&#34;&gt;# AstroVim&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;alias&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;vl&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;NVIM_APPNAME=nvim-lunarvim nvim&amp;#39;&lt;/span&gt; &lt;span class=&#34;c1&#34;&gt;# LunarVim&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Print in place nuts with cura</title>
    <id>https://waylonwalker.com/print-in-place-nuts-with-cura/</id>
    <updated>2024-08-12T08:54:00Z</updated>
    <published>2024-08-12T08:54:00Z</published>
    <link href="https://waylonwalker.com/print-in-place-nuts-with-cura/" rel="alternate" type="text/html"></link>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ infused-kim kb_zmk_ps2_mouse_trackpoint_driver</title>
    <id>https://waylonwalker.com/infused-kim-kb_zmk_ps2_mouse_trackpoint_driver/</id>
    <updated>2024-08-12T03:41:28Z</updated>
    <published>2024-08-12T03:41:28Z</published>
    <link href="https://waylonwalker.com/infused-kim-kb_zmk_ps2_mouse_trackpoint_driver/" rel="alternate" type="text/html"></link>
    <summary type="text">infused-kim has done a fantastic job with kb_ps2_trackpoint_driver. Highly recommend taking a look.</summary>
    <content type="html">&lt;p&gt;&lt;a href=&#34;https://github.com/infused-kim&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;infused-kim&lt;/a&gt; has done a fantastic job with &lt;a href=&#34;https://github.com/infused-kim/kb_zmk_ps2_mouse_trackpoint_driver&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;kb_zmk_ps2_mouse_trackpoint_driver&lt;/a&gt;. Highly recommend taking a look.&lt;/p&gt;&#xA;&lt;p&gt;A PS/2 mouse &amp;amp; trackpoint driver module for keyboards running the zmk firmware&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ tjdevries failwind.nvim</title>
    <id>https://waylonwalker.com/tjdevries-failwind-nvim/</id>
    <updated>2024-08-07T18:06:05Z</updated>
    <published>2024-08-07T18:06:05Z</published>
    <link href="https://waylonwalker.com/tjdevries-failwind-nvim/" rel="alternate" type="text/html"></link>
    <summary type="text">I recently discovered failwind.nvim by tjdevries, and it&#39;s truly impressive.</summary>
    <content type="html">&lt;p&gt;I recently discovered &lt;a href=&#34;https://github.com/tjdevries/failwind.nvim&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;failwind.nvim&lt;/a&gt; by &lt;a href=&#34;https://github.com/tjdevries&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;tjdevries&lt;/a&gt;, and it’s truly impressive.&lt;/p&gt;&#xA;&lt;p&gt;KEKW&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>New-caps-for-porta-john</title>
    <id>https://waylonwalker.com/new-caps-for-porta-john/</id>
    <updated>2024-08-05T19:06:00Z</updated>
    <published>2024-08-05T19:06:00Z</published>
    <link href="https://waylonwalker.com/new-caps-for-porta-john/" rel="alternate" type="text/html"></link>
    <summary type="text">Today I dropped some new caps in the porta-john. I need to do a bunch of posts on zmk and my journey building the porta-john, I&#39;ve been rocking it for at...</summary>
    <content type="html">&lt;p&gt;Today I dropped some new caps in the porta-john.  I need to do a bunch of&#xA;posts on zmk and my journey building the porta-john, I’ve been rocking it for&#xA;at least two weeks now pretty solid and I am absolutely loving it.  More on&#xA;that later.&lt;/p&gt;&#xA;&lt;h2 id=&#34;klp-lame-keycaps&#34;&gt;KLP-Lame-Keycaps &lt;a href=&#34;#klp-lame-keycaps&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;The model of the caps are&#xA;&lt;a href=&#34;https://github.com/braindefender/KLP-Lame-Keycaps&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;KLP-Lame&lt;/a&gt; by&#xA;&lt;a href=&#34;https://github.com/braindefender&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;braindefender&lt;/a&gt; , they are super rounded and&#xA;smooth.  They look really good on camera and feel good to the finders.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/46c218f4-911c-4083-8ec1-8fe6ae11eb0a.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;new-caps-for-porta-john-20240805193001765.webp&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/46c218f4-911c-4083-8ec1-8fe6ae11eb0a.webp&#34; alt=&#34;new-caps-for-porta-john-20240805193001765.webp&#34;/ data-glightbox=&#34;description: new-caps-for-porta-john-20240805193001765.webp&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;p&gt;I printed these at home on my ender3 s1 pro with a black and purple silk&#xA;filliment.  I printed all 42 at once using a &lt;a href=&#34;/knock-and-sweep/&#34; class=&#34;wikilink&#34; data-title=&#34;Printing 42 keys at once&#34; data-description=&#34;I&amp;#39;m working on creating some gcode to create a whole set of key caps in one print, it is getting tedious to print them one at a time, and my past experience...&#34; data-date=&#34;2024-08-03&#34; data-preview=&#34;I&amp;#39;m working on creating some gcode to create a whole set of key caps in one print, it is getting tedious to print them one at a time, and my past experience...&#34;&gt;Printing 42 keys at once&lt;/a&gt; technique.&#xA;They do have just a bit of a rough texture that you can feel on your figertips.&#xA;I printed these on super quality .12mm layer height, while my last set was&#xA;printed on draft quality .32mm layer height.  They look crazy different in&#xA;print quality with the lines of the new caps barely showing, the feel isn’t&#xA;nearly as drastic.&lt;/p&gt;&#xA;&lt;h2 id=&#34;the-result&#34;&gt;The Result &lt;a href=&#34;#the-result&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;Check out the final shots as I set up the porta-john with these sweet caps.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/7d2ab237-26dc-42b9-9594-9ee044755bbc.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;new-caps-for-porta-john-20240805190712987.webp&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/7d2ab237-26dc-42b9-9594-9ee044755bbc.webp&#34; alt=&#34;new-caps-for-porta-john-20240805190712987.webp&#34;/ data-glightbox=&#34;description: new-caps-for-porta-john-20240805190712987.webp&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;p&gt;And here they are all set up.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/903ae2e9-411c-4686-bd28-fa0de8571360.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;new-caps-for-porta-john-20240805190716762.webp&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/903ae2e9-411c-4686-bd28-fa0de8571360.webp&#34; alt=&#34;new-caps-for-porta-john-20240805190716762.webp&#34;/ data-glightbox=&#34;description: new-caps-for-porta-john-20240805190716762.webp&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;full-disclosure&#34;&gt;Full Disclosure &lt;a href=&#34;#full-disclosure&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;I am building out a keyboard business, so if you are interested in getting some&#xA;of these caps for yourself or an entire board custom made to your liking hit me&#xA;up.  If you’re not quite ready, I would be stoked if you keep in touch by&#xA;sigining up for the email newsletter&#xA;&lt;a href=&#34;https://ticklemykeys.com&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/ticklemykeys.com.png&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/ticklemykeys.com.png&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;https://ticklemykeys.com&lt;/a&gt;.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Keyboard Build Log | Halfwit’s Dev Blog</title>
    <id>https://waylonwalker.com/thought-382/</id>
    <updated>2024-08-05T13:39:15Z</updated>
    <published>2024-08-05T13:39:15Z</published>
    <link href="https://waylonwalker.com/thought-382/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://halfwit.github.io/2017/05/08/keyboardblog.html</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;/static/https://halfwit.github.io/2017/05/08/keyboardblog.html&#34; class=&#34;glightbox-link&#34; aria-label=&#34;https://halfwit.github.io/2017/05/08/keyboardblog.html&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;/static/https://halfwit.github.io/2017/05/08/keyboardblog.html&#34; alt=&#34;https://halfwit.github.io/2017/05/08/keyboardblog.html&#34;/ data-glightbox=&#34;description: https://halfwit.github.io/2017/05/08/keyboardblog.html&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;p&gt;This is the coolest scrappy build, no printer or modeling required, no fancy tools, just straight chisel and claw hammer in soft pine.  Im here for it, create the thing that you want to create.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Vim-gq</title>
    <id>https://waylonwalker.com/vim-gq/</id>
    <updated>2024-08-05T12:22:00Z</updated>
    <published>2024-08-05T12:22:00Z</published>
    <link href="https://waylonwalker.com/vim-gq/" rel="alternate" type="text/html"></link>
    <summary type="text">Vim has a handy feature to format text with . You can use it in visual mode, give it a motion, or if you give it it will format the current line. I use this...</summary>
    <content type="html">&lt;p&gt;Vim has a handy feature to format text with &lt;code&gt;gq&lt;/code&gt;.  You can use it in visual&#xA;mode, give it a motion, or if you give it &lt;code&gt;gqq&lt;/code&gt; it will format the current line.&#xA;I use this quite often while writing in markdown, I do not use softwraps in vim,&#xA;so &lt;code&gt;gqq&lt;/code&gt; quickly formats my current line into a paragraph.    Once I have done&#xA;this for a single line one time I typically switch to the motion for around&#xA;paragraph &lt;code&gt;gqap&lt;/code&gt; to format the whole paragraph and not just the current line.&lt;/p&gt;&#xA;&lt;h2 id=&#34;before-formatting&#34;&gt;before formatting &lt;a href=&#34;#before-formatting&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/01c19159-c0b5-4920-b73c-774284b09940.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;vim-gq-20240805122634078.webp&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/01c19159-c0b5-4920-b73c-774284b09940.webp&#34; alt=&#34;vim-gq-20240805122634078.webp&#34;/ data-glightbox=&#34;description: vim-gq-20240805122634078.webp&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;after-formattting&#34;&gt;after formattting &lt;a href=&#34;#after-formattting&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/e068e445-43e0-4e27-ac30-ac11e9cb9088.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;vim-gq-20240805122700026.webp&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/e068e445-43e0-4e27-ac30-ac11e9cb9088.webp&#34; alt=&#34;vim-gq-20240805122700026.webp&#34;/ data-glightbox=&#34;description: vim-gq-20240805122700026.webp&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Slug</title>
    <id>https://waylonwalker.com/slug/</id>
    <updated>2024-08-05T11:45:00Z</updated>
    <published>2024-08-05T11:45:00Z</published>
    <link href="https://waylonwalker.com/slug/" rel="alternate" type="text/html"></link>
    <summary type="text">A slug is the part of the url that comes after the domain. Commonly matches the file name of a markdown file many blogging systems. These are typically human...</summary>
    <content type="html">&lt;p&gt;A slug is the part of the url that comes after the domain.  Commonly matches the file name of a markdown file many blogging systems.  These are typically human readable, unique identifiers for pages within the site.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Obsidian-new-file</title>
    <id>https://waylonwalker.com/obsidian-new-file/</id>
    <updated>2024-08-05T11:44:00Z</updated>
    <published>2024-08-05T11:44:00Z</published>
    <link href="https://waylonwalker.com/obsidian-new-file/" rel="alternate" type="text/html"></link>
    <summary type="text">Wikilinks are a core concept within obsidian to link to documents by slug wrapped in double square brackets. These are commonly used within wiki site...</summary>
    <content type="html">&lt;p&gt;Wikilinks are a core concept within obsidian to link to documents by &lt;a href=&#34;/slug/&#34; class=&#34;wikilink&#34; data-title=&#34;Slug&#34; data-description=&#34;A slug is the part of the url that comes after the domain. Commonly matches the file name of a markdown file many blogging systems. These are typically human...&#34; data-date=&#34;2024-08-05&#34; data-preview=&#34;A slug is the part of the url that comes after the domain. Commonly matches the file name of a markdown file many blogging systems. These are typically human...&#34;&gt;Slug&lt;/a&gt; wrapped in double square brackets.  These are commonly used within wiki site generators.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;[[slug]]&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Obsidian gives you a keybinding &lt;code&gt;alt+enter&lt;/code&gt; to go to that file, but if it does not exist it will create the file for you in the root of the project.  It’s a nice way to quickly make new documents.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>blogging in 2024</title>
    <id>https://waylonwalker.com/blogging-in-2024/</id>
    <updated>2024-08-05T10:02:09Z</updated>
    <published>2024-08-05T10:02:09Z</published>
    <link href="https://waylonwalker.com/blogging-in-2024/" rel="alternate" type="text/html"></link>
    <summary type="text">Over the past years couple of years blog traffic has been tanking, for some time I thought it might have just been me, but then i heard it from Dave Rupert...</summary>
    <content type="html">&lt;p&gt;Over the past years couple of years blog traffic has been tanking, for some&#xA;time I thought it might have just been me, but then i heard it from Dave Rupert&#xA;on Shop Talk show, and it made sense.  LLMs and AI is slowly killing the&#xA;internet as we know it.&lt;/p&gt;&#xA;&lt;h2 id=&#34;my-metrics&#34;&gt;My metrics &lt;a href=&#34;#my-metrics&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;I dug into my emails from the google search console team and found two results&#xA;nearly one year apart.  Impressions are only 60% of its value a year ago while&#xA;clicks are only 35% of where they were a year ago.  I’m getting less&#xA;impressions and even less clicks.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/2706f990-f2fa-4ccb-a7a9-142ee20686c7.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;blogging-in-2024-20240805080104035.webp&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/2706f990-f2fa-4ccb-a7a9-142ee20686c7.webp&#34; alt=&#34;blogging-in-2024-20240805080104035.webp&#34;/ data-glightbox=&#34;description: blogging-in-2024-20240805080104035.webp&#34;&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;May 2023&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/cd708a26-27d2-4a33-9f22-b0cb0dd54fc5.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;blogging-in-2024-20240805080137554.webp&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/cd708a26-27d2-4a33-9f22-b0cb0dd54fc5.webp&#34; alt=&#34;blogging-in-2024-20240805080137554.webp&#34;/ data-glightbox=&#34;description: blogging-in-2024-20240805080137554.webp&#34;&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;June 2024&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;suspicions&#34;&gt;Suspicions &lt;a href=&#34;#suspicions&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;What I think is happening is a large portion of users are getting their answers&#xA;from ChatGPT, Copilot, and llms like this.  A lot of my posts have been filling&#xA;gaps in the internet, notes for myself when I struggle to integrate x in y&#xA;because there was a gap of how to do so in the docs and stack overflow. Some&#xA;small fraction of users have moved on to duck duck go and other non global&#xA;warming search engines with AI in their results.&lt;/p&gt;&#xA;&lt;p&gt;Clicks are down even further, than impressions.  I can’t tell for sure but my&#xA;gut feeling is that people are using the AI generated results.  I know I use&#xA;them quite often, but listening to Justin and Autumn at the end of the latest&#xA;ship it podcast &lt;a href=&#34;https://changelog.com/shipit/115&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/changelog.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/changelog.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;https://changelog.com/shipit/115&lt;/a&gt;, they both claim that they get&#xA;no benefits from it and don’t know anyone who does.  In fact Justin has taken&#xA;the most ethical approach to move to duck duck go since it doesn’t kill the&#xA;earth with each search by injecting AI results.  Personally I do find it quite&#xA;helpful, sometimes the answer is there, or an idea that triggers me to think of&#xA;the idea.&lt;/p&gt;&#xA;&lt;h2 id=&#34;ok-blogging-is-dead-why-keep-going&#34;&gt;Ok blogging is dead why keep going &lt;a href=&#34;#ok-blogging-is-dead-why-keep-going&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;Just as always blogging has been for me. It’s a great place to write down your&#xA;thoughts for later reference, and to help cement them into your brain.  Beyond&#xA;getting famous and clicks blogging is useful to you first and foremost, that&#xA;should be the number one reason.&lt;/p&gt;&#xA;&lt;h2 id=&#34;how-do-we-keep-the-internet-of-old&#34;&gt;How do we keep the internet of old &lt;a href=&#34;#how-do-we-keep-the-internet-of-old&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;RSS feed readers is a great way to keep creators that you like and want to&#xA;support in your feed regardless of what the higher powers of search and social&#xA;media think of them.  This year I built my own [[reader]], and I use it every&#xA;single day to read articles out of my own custom curated feed.&lt;/p&gt;&#xA;&lt;p&gt;I have also created &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;Thoughts&lt;/a&gt; to help share and lift up creators that make&#xA;good posts.  I have a crome extension that allows me to create a blog post tied&#xA;to a link right within chrome.  I use this several times per day to save some&#xA;pages for later with a small note.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Hotkey to open link under at the text cursor position while ty...</title>
    <id>https://waylonwalker.com/thought-381/</id>
    <updated>2024-08-05T01:46:22Z</updated>
    <published>2024-08-05T01:46:22Z</published>
    <link href="https://waylonwalker.com/thought-381/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://forum.obsidian.md/t/hotkey-to-open-link-under-at-the-text-cursor-position-while-typing-in-edit-mode/8144</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://forum.obsidian.md/t/hotkey-to-open-link-under-at-the-text-cursor-position-while-typing-in-edit-mode/8144&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://forum.obsidian.md/uploads/default/original/3X/b/a/ba1a1301f580d34a881803aa5ed8cf7ff3cdf0ef.png&#34; alt=&#34;Hotkey to open link under at the text cursor position while typing in edit mode — I find myself not wanting to leave the keyboard for navigation and think a keyboard-only shortcut that could open a link at the text cursor position is at would be really handy for this case.&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: Hotkey to open link under at the text cursor position while typing in edit mode — I find myself not wanting to leave the keyboard for navigation and think a keyboard-only shortcut that could open a link at the text cursor position is at would be really handy for this case.&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Hotkey to open link under at the text cursor position while typing in edit mode&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;I find myself not wanting to leave the keyboard for navigation and think a keyboard-only shortcut that could open a link at the text cursor position is at would be really handy for this case.&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;Obsidian Forum · forum.obsidian.md&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Obsidian has a go to definition like feature, the keybind is alt+enter, I would have never guessed this one.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Obsidian-go-to-definition</title>
    <id>https://waylonwalker.com/obsidian-go-to-definition/</id>
    <updated>2024-08-04T20:35:00Z</updated>
    <published>2024-08-04T20:35:00Z</published>
    <link href="https://waylonwalker.com/obsidian-go-to-definition/" rel="alternate" type="text/html"></link>
    <summary type="text">It was not obvious to me, but if you have a wikilink such as trying-obsidian, you can jump to the file in obsidian, just like you can with lsp go to...</summary>
    <content type="html">&lt;p&gt;It was not obvious to me, but if you have a wikilink such as &lt;a href=&#34;/trying-obsidian/&#34; class=&#34;wikilink&#34; data-title=&#34;Trying Obsidian&#34; data-description=&#34;I am giving obsidian a try, this is a test post to learn the flow. Something that has been really hard for me for a long time is images, I don&amp;#39;t include a...&#34; data-date=&#34;2024-07-31&#34; data-preview=&#34;I am giving obsidian a try, this is a test post to learn the flow. Something that has been really hard for me for a long time is images, I don&amp;#39;t include a...&#34;&gt;Trying Obsidian&lt;/a&gt;, you can jump to the file in obsidian, just like you can with lsp go to definition, the keybinding is alt + enter.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ braindefender KLP-Lame-Keycaps</title>
    <id>https://waylonwalker.com/braindefender-klp-lame-keycaps/</id>
    <updated>2024-08-02T20:33:32Z</updated>
    <published>2024-08-02T20:33:32Z</published>
    <link href="https://waylonwalker.com/braindefender-klp-lame-keycaps/" rel="alternate" type="text/html"></link>
    <summary type="text">The work on KLP-Lame-Keycaps by braindefender.</summary>
    <content type="html">&lt;p&gt;The work on &lt;a href=&#34;https://github.com/braindefender/KLP-Lame-Keycaps&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;KLP-Lame-Keycaps&lt;/a&gt; by &lt;a href=&#34;https://github.com/braindefender&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;braindefender&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Sculpted and curved keycaps for Kailh Choc and MX switches&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Make your own luck (do this to stand out in a crowded industry...</title>
    <id>https://waylonwalker.com/thought-379/</id>
    <updated>2024-08-02T13:08:44Z</updated>
    <published>2024-08-02T13:08:44Z</published>
    <link href="https://waylonwalker.com/thought-379/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/watch?v=YKeVeG6h4AA</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;YKeVeG6h4AA&#34; title=&#34;Make your own luck (do this to stand out in a crowded industry, filmed at @RenderATL)&#34; playlabel=&#34;Play: Make your own luck (do this to stand out in a crowded industry, filmed at @RenderATL)&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Very inspiring video Jason, these people faced adversity and crushed it.  The market is so hard right now, its not easy to get a job, move around, and recover from a layoff.  Everyone in this video just showed that you can make it in this industry right now, you just have to be willing to work harder than the rest.  The bar is raising, a lot of great people are already putting in hard work to make it.&lt;/p&gt;&#xA;&lt;p&gt;Community is Key,  Theo mentioned that a lot of the companies he works with don’t even post openings, they go to their community first and are often filling spots through lower risk community hires.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 I Invented Airless Cornhole Bags - YouTube</title>
    <id>https://waylonwalker.com/thought-378/</id>
    <updated>2024-08-01T12:34:12Z</updated>
    <published>2024-08-01T12:34:12Z</published>
    <link href="https://waylonwalker.com/thought-378/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/shorts/lLNfJb3OG9Y</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;lLNfJb3OG9Y&#34; title=&#34;I Invented Airless Cornhole Bags&#34; playlabel=&#34;Play: I Invented Airless Cornhole Bags&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;This is such a cool 3d printed cornhole game.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 The Tank - YouTube</title>
    <id>https://waylonwalker.com/thought-377/</id>
    <updated>2024-08-01T12:31:52Z</updated>
    <published>2024-08-01T12:31:52Z</published>
    <link href="https://waylonwalker.com/thought-377/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/shorts/6Wo4brRqkz0</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;6Wo4brRqkz0&#34; title=&#34;The Tank&#34; playlabel=&#34;Play: The Tank&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Thor always comes in hard with fire takes in his shorts.   Especially if you are early in our career take this in.  If you dont yet have kids, but plan to, double take this in.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Obsidian Using Templater Like Copier</title>
    <id>https://waylonwalker.com/obsidian-using-templater-like-copier/</id>
    <updated>2024-07-31T13:34:00Z</updated>
    <published>2024-07-31T13:34:00Z</published>
    <link href="https://waylonwalker.com/obsidian-using-templater-like-copier/" rel="alternate" type="text/html"></link>
    <summary type="text">I&#39;ve long used copier to create all of my posts for my blog, and it works really well for my workflow. I think of a title, call a template, and give it a...</summary>
    <content type="html">&lt;p&gt;I’ve long used copier to create all of my posts for my blog, and it works&#xA;really well for my workflow.  I think of a title, call a template, and give it&#xA;a title.  out of the box obsidian did not seem to work this way.  It seems like&#xA;it wants me to right click a file tree and make a new file using the tree, this&#xA;is not my jam.&lt;/p&gt;&#xA;&lt;p&gt;Here is what I came up with to replace my til template.&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;---&#xA;date: &amp;lt;% tp.file.creation_date() %&amp;gt;&#xA;templateKey: til&#xA;title: &amp;lt;%*&#xA;  const originalFileName = await tp.system.prompt(&amp;#34;Enter file name&amp;#34;);&#xA;  const toTitleCase = str =&amp;gt; str.replace(&#xA;    /\w\S*/g,&#xA;    txt =&amp;gt; txt.charAt(0).toUpperCase() + txt.substr(1).toLowerCase()&#xA;  );&#xA;  const title = toTitleCase(originalFileName);&#xA;  tR += title + &amp;#39;\n&amp;#39;; // Add the title to the template result&#xA;-%&amp;gt;&#xA;published: true&#xA;tags:&#xA;  -&#xA;---&#xA;&amp;lt;%*&#xA;const fileName = originalFileName.toLowerCase().replace(/\s+/g, &amp;#39;-&amp;#39;);&#xA;const newFilePath = `pages/til/${fileName}`;&#xA;await tp.file.move(newFilePath);&#xA;-%&amp;gt;&#xA;&#xA;&amp;lt;% tp.file.cursor() %&amp;gt;&#xA;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;code&gt;tR&lt;/code&gt; is a return value, and it gets placed directly into the place it is in the file&lt;/li&gt;&#xA;&lt;li&gt;&lt;code&gt;to.file.cursor()&lt;/code&gt; creates a tab-index point so I can tab into the content&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Trying Obsidian</title>
    <id>https://waylonwalker.com/trying-obsidian/</id>
    <updated>2024-07-31T00:00:00Z</updated>
    <published>2024-07-31T00:00:00Z</published>
    <link href="https://waylonwalker.com/trying-obsidian/" rel="alternate" type="text/html"></link>
    <summary type="text">I am giving obsidian a try, this is a test post to learn the flow. Something that has been really hard for me for a long time is images, I don&#39;t include a...</summary>
    <content type="html">&lt;p&gt;I am giving obsidian a try, this is a test post to learn the flow.  Something&#xA;that has been really hard for me for a long time is images, I don’t include a&#xA;lot of images just because it takes so much longer just to get the post out.  I&#xA;store them in a separate repo, I need to resize and compress them for the web&#xA;so they aren’t so big.&lt;/p&gt;&#xA;&lt;h2 id=&#34;images-are-easy&#34;&gt;Images are easy &lt;a href=&#34;#images-are-easy&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;This is my current wallpaper.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/fe97308b-00f8-4860-be80-6869fa45d05a.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;trying-obsidian-20240731135759007.webp&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/fe97308b-00f8-4860-be80-6869fa45d05a.webp&#34; alt=&#34;trying-obsidian-20240731135759007.webp&#34;/ data-glightbox=&#34;description: trying-obsidian-20240731135759007.webp&#34;&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;I took he screenshot and just pasted it in.&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;&lt;p&gt;I have more about my process in this post about &lt;a href=&#34;/obsidian-image-converter/&#34; class=&#34;wikilink&#34; data-title=&#34;Obsidian Image Converter&#34; data-description=&#34;I&amp;#39;m giving obsidian a go as an editor for my blog and one of the main things I want to fix in my workflow is the ability to quickly drop in images. on first...&#34; data-date=&#34;2024-07-30&#34; data-preview=&#34;I&amp;#39;m giving obsidian a go as an editor for my blog and one of the main things I want to fix in my workflow is the ability to quickly drop in images. on first...&#34;&gt;Obsidian Image Converter&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;h2 id=&#34;its-still-just-markdown&#34;&gt;It’s still just markdown &lt;a href=&#34;#its-still-just-markdown&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;I don’t know why it took me so long to understand this but obsidian is just&#xA;markdown files.  I pretty much just plugged in my existing blog and it picked&#xA;up all the tags and was ready to run.  I now get some nice visualizations to&#xA;help me identify posts that were not ever tagged or maybe left unfinished.&lt;/p&gt;&#xA;&lt;h2 id=&#34;it-leans-hard-on-wikilinks&#34;&gt;It leans hard on wikilinks &lt;a href=&#34;#it-leans-hard-on-wikilinks&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;I just finished moving my backend over to md-it-python, which comes with some&#xA;good wiliklink support. I even make a &lt;a href=&#34;/sick-wikilink-hover/&#34; class=&#34;wikilink&#34; data-title=&#34;sick wikilink hover&#34; data-description=&#34;Today I set up some sick wikilink hover effects using tailwind see a-case-for-tailwindcss. When you hover over them they show an image preview of the link...&#34; data-date=&#34;2024-05-30&#34; data-preview=&#34;Today I set up some sick wikilink hover effects using tailwind see a-case-for-tailwindcss. When you hover over them they show an image preview of the link...&#34;&gt;sick wikilink hover&lt;/a&gt; feature that&#xA;previews wikilinks on hover.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/fe12e8ca-fdfd-41de-adcb-dc14155324c3.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;trying-obsidian-20240804194656515.webp&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/fe12e8ca-fdfd-41de-adcb-dc14155324c3.webp&#34; alt=&#34;trying-obsidian-20240804194656515.webp&#34;/ data-glightbox=&#34;description: trying-obsidian-20240804194656515.webp&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;p&gt;Inside of obsidian when you start a wikilink it starts searching for posts to&#xA;link.  I get this feature in using the marksman lsp, and it’s nice to see that&#xA;it works pretty similarly, but with much less setup and configuration.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/4e0883a8-2430-49bf-99f3-2ce4df9516f5.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;trying-obsidian-20240804194934445.webp&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/4e0883a8-2430-49bf-99f3-2ce4df9516f5.webp&#34; alt=&#34;trying-obsidian-20240804194934445.webp&#34;/ data-glightbox=&#34;description: trying-obsidian-20240804194934445.webp&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;creating-new-files&#34;&gt;creating new files &lt;a href=&#34;#creating-new-files&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;The same keybinding that will take you to a new fill will create a &lt;a href=&#34;/obsidian-new-file/&#34; class=&#34;wikilink&#34; data-title=&#34;Obsidian-new-file&#34; data-description=&#34;Wikilinks are a core concept within obsidian to link to documents by slug wrapped in double square brackets. These are commonly used within wiki site...&#34; data-date=&#34;2024-08-05&#34; data-preview=&#34;Wikilinks are a core concept within obsidian to link to documents by slug wrapped in double square brackets. These are commonly used within wiki site...&#34;&gt;Obsidian-new-file&lt;/a&gt; in the root directory of your project.  This is very handy to create a bunch of new links and files quickly.  This feature does not work the greatest for my blog currently as it does not create them from a template, and I use templates to start all of my posts. see &lt;a href=&#34;/obsidian-using-templater-like-copier/&#34; class=&#34;wikilink&#34; data-title=&#34;Obsidian Using Templater Like Copier&#34; data-description=&#34;I&amp;#39;ve long used copier to create all of my posts for my blog, and it works really well for my workflow. I think of a title, call a template, and give it a...&#34; data-date=&#34;2024-07-31&#34; data-preview=&#34;I&amp;#39;ve long used copier to create all of my posts for my blog, and it works really well for my workflow. I think of a title, call a template, and give it a...&#34;&gt;Obsidian Using Templater Like Copier&lt;/a&gt;.  I am now seeing why these plugins push so much automation into the templating system by directory.&lt;/p&gt;&#xA;&lt;h2 id=&#34;new-keybindings&#34;&gt;New keybindings &lt;a href=&#34;#new-keybindings&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;Until I really got myself in and working I didn’t realize all of the vim&#xA;features that I would really need, &lt;a href=&#34;/obsidian-go-to-definition/&#34; class=&#34;wikilink&#34; data-title=&#34;Obsidian-go-to-definition&#34; data-description=&#34;It was not obvious to me, but if you have a wikilink such as trying-obsidian, you can jump to the file in obsidian, just like you can with lsp go to...&#34; data-date=&#34;2024-08-04&#34; data-preview=&#34;It was not obvious to me, but if you have a wikilink such as trying-obsidian, you can jump to the file in obsidian, just like you can with lsp go to...&#34;&gt;Obsidian-go-to-definition&lt;/a&gt; was one of the&#xA;very first ones.  Obsidian has a feature to take you to the note under the&#xA;cursor by pressing alt+enter, but that was not obvious at first.&lt;/p&gt;&#xA;&lt;h2 id=&#34;renaming-posts&#34;&gt;Renaming posts &lt;a href=&#34;#renaming-posts&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;Obsidian makes it so easy to rename a post, and it renames the file for you&#xA;without leaving the editor, needing to close the file or anything.  You can&#xA;just go to the top of the file and change the name without needing to find it&#xA;in a file tree or anything.  Its a very nice and clean feature.&lt;/p&gt;&#xA;&lt;h2 id=&#34;i-miss-my-gqap&#34;&gt;I miss my gqap &lt;a href=&#34;#i-miss-my-gqap&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;There are still some vim features like &lt;a href=&#34;/vim-gq/&#34; class=&#34;wikilink&#34; data-title=&#34;Vim-gq&#34; data-description=&#34;Vim has a handy feature to format text with . You can use it in visual mode, give it a motion, or if you give it it will format the current line. I use this...&#34; data-date=&#34;2024-08-05&#34; data-preview=&#34;Vim has a handy feature to format text with . You can use it in visual mode, give it a motion, or if you give it it will format the current line. I use this...&#34;&gt;Vim-gq&lt;/a&gt; that I use constantly to reflow&#xA;long lines into readable paragraphs no matter where I open them that I cannot&#xA;find a way to do in obsidian, and I miss it. ## Recent Posts.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;ok, so vim mode inside of obsidian really does work, and it does this, its&#xA;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt;just less obvious because of obsidians softwraps in the editor.  And I&#xA;don’t think it works on indented lines like these, in this note.&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;&lt;h2 id=&#34;missing-seemless-publish&#34;&gt;missing seemless publish &lt;a href=&#34;#missing-seemless-publish&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;I run pre-commit on my posts to clean up the whitespace and line endings.&#xA;Generally this does not do much, but aparantly obsidian is clashing with my&#xA;setup, and not running pre-commit correctly so I need to leave my editor to&#xA;publish a post.&lt;/p&gt;&#xA;&lt;p&gt;With neovim I have a hotkey to commit verbosely with fugitive, &lt;code&gt;gic&lt;/code&gt;, and to&#xA;push &lt;code&gt;gpp&lt;/code&gt;, and I use this all the time as I am writing.&lt;/p&gt;&#xA;&lt;h2 id=&#34;recent-posts&#34;&gt;Recent Posts &lt;a href=&#34;#recent-posts&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;Using obsidian I edited  over 260 posts just this week!  Some whole sections&#xA;like my gratitute posts were kinda sitting completely untagged and I fixed that&#xA;up.&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/weeknote-0/&#34; class=&#34;wikilink&#34; data-title=&#34;Weeknote 0&#34; data-description=&#34;Inspired by Simon Willison I&amp;#39;m starting a weeknotes retrospective post to recap the week. The theme this week has been learning and setting up obsidian to...&#34; data-date=&#34;2024-08-04&#34; data-preview=&#34;Inspired by Simon Willison I&amp;#39;m starting a weeknotes retrospective post to recap the week. The theme this week has been learning and setting up obsidian to...&#34;&gt;Weeknote 0&lt;/a&gt; (Modified: 2024-08-04 20:47:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/obsidian-go-to-definition/&#34; class=&#34;wikilink&#34; data-title=&#34;Obsidian-go-to-definition&#34; data-description=&#34;It was not obvious to me, but if you have a wikilink such as trying-obsidian, you can jump to the file in obsidian, just like you can with lsp go to...&#34; data-date=&#34;2024-08-04&#34; data-preview=&#34;It was not obvious to me, but if you have a wikilink such as trying-obsidian, you can jump to the file in obsidian, just like you can with lsp go to...&#34;&gt;Obsidian-go-to-definition&lt;/a&gt; (Modified: 2024-08-04 20:44:09)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/trying-obsidian/&#34; class=&#34;wikilink&#34; data-title=&#34;Trying Obsidian&#34; data-description=&#34;I am giving obsidian a try, this is a test post to learn the flow. Something that has been really hard for me for a long time is images, I don&amp;#39;t include a...&#34; data-date=&#34;2024-07-31&#34; data-preview=&#34;I am giving obsidian a try, this is a test post to learn the flow. Something that has been really hard for me for a long time is images, I don&amp;#39;t include a...&#34;&gt;Trying Obsidian&lt;/a&gt; (Modified: 2024-08-04 20:40:48)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/knock-and-sweep/&#34; class=&#34;wikilink&#34; data-title=&#34;Printing 42 keys at once&#34; data-description=&#34;I&amp;#39;m working on creating some gcode to create a whole set of key caps in one print, it is getting tedious to print them one at a time, and my past experience...&#34; data-date=&#34;2024-08-03&#34; data-preview=&#34;I&amp;#39;m working on creating some gcode to create a whole set of key caps in one print, it is getting tedious to print them one at a time, and my past experience...&#34;&gt;Printing 42 keys at once&lt;/a&gt; (Modified: 2024-08-03 21:44:57)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/blogging-in-2024/&#34; class=&#34;wikilink&#34; data-title=&#34;blogging in 2024&#34; data-description=&#34;Over the past years couple of years blog traffic has been tanking, for some time I thought it might have just been me, but then i heard it from Dave Rupert...&#34; data-date=&#34;2024-08-05&#34; data-preview=&#34;Over the past years couple of years blog traffic has been tanking, for some time I thought it might have just been me, but then i heard it from Dave Rupert...&#34;&gt;blogging in 2024&lt;/a&gt; (Modified: 2024-08-03 21:43:28)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/pandas-pattern/&#34; class=&#34;wikilink&#34; data-title=&#34;My favorite pandas pattern&#34; data-description=&#34;I work with a lot of transactional timeseries data that includes categories. I often want to create timeseries plots with each category as its own line. This...&#34; data-date=&#34;2018-03-01&#34; data-preview=&#34;I work with a lot of transactional timeseries data that includes categories. I often want to create timeseries plots with each category as its own line. This...&#34;&gt;My favorite pandas pattern&lt;/a&gt; (Modified: 2024-08-03 21:43:28)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/python-tips/&#34; class=&#34;wikilink&#34; data-title=&#34;Python Tips&#34; data-description=&#34;** func(** locals().update(d)&#34; data-date=&#34;2019-01-21&#34; data-preview=&#34;** func(** locals().update(d)&#34;&gt;Python Tips&lt;/a&gt; (Modified: 2024-08-03 21:43:28)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/productive-one-on-one/&#34; class=&#34;wikilink&#34; data-title=&#34;Productive one on one&#34; data-date=&#34;2020-02-24&#34; data-preview=&#34;Inspired by https://m.soundcloud.com/front-end-happy-hour/episode-095-shot-for-shot-one-on-ones&#34;&gt;Productive one on one&lt;/a&gt; (Modified: 2024-08-03 21:42:14)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/kedro-basics/&#34; class=&#34;wikilink&#34; data-title=&#34;Kedro Basics&#34; data-description=&#34;In my upcoming free kedro course, you can learn how to start building pipelines in 5 days.&#34; data-date=&#34;2020-08-08&#34; data-preview=&#34;In my upcoming free kedro course, you can learn how to start building pipelines in 5 days.&#34;&gt;Kedro Basics&lt;/a&gt; (Modified: 2024-08-03 21:41:58)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/passion/&#34; class=&#34;wikilink&#34; data-title=&#34;Follow Your Passion&#34; data-description=&#34;none&#34; data-date=&#34;2019-01-01&#34; data-preview=&#34;none&#34;&gt;Follow Your Passion&lt;/a&gt; (Modified: 2024-08-03 21:41:48)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/thank-you/&#34; class=&#34;wikilink&#34; data-title=&#34;Thanks For Subscribing&#34; data-description=&#34;You&amp;#39;re awesome! Thanks for subscribing to my newsletter.&#34; data-date=&#34;2020-05-20&#34; data-preview=&#34;You&amp;#39;re awesome! Thanks for subscribing to my newsletter.&#34;&gt;Thanks For Subscribing&lt;/a&gt; (Modified: 2024-08-03 21:41:17)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/animal-well-keyboard/&#34; class=&#34;wikilink&#34; data-title=&#34;animal well keyboard&#34; data-description=&#34;Animal well does not let you remap keys, and really doesn&amp;#39;t even inform you that it is keyboard compatible. I had to play around and discover the keymap,...&#34; data-date=&#34;2024-07-04&#34; data-preview=&#34;Animal well does not let you remap keys, and really doesn&amp;#39;t even inform you that it is keyboard compatible. I had to play around and discover the keymap,...&#34;&gt;animal well keyboard&lt;/a&gt; (Modified: 2024-08-03 21:41:07)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/automate-your-deploys/&#34; class=&#34;wikilink&#34; data-title=&#34;automate your deploys&#34; data-date=&#34;2020-02-07&#34;&gt;automate your deploys&lt;/a&gt; (Modified: 2024-08-03 21:40:36)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/expand-one-line-links/&#34; class=&#34;wikilink&#34; data-title=&#34;Expand One Line Links&#34; data-description=&#34;I wanted a super simple way to cross-link blog posts that require as little effort as possible, yet still looks good in vanilla markdown in GitHub. I have...&#34; data-date=&#34;2020-11-18&#34; data-preview=&#34;I wanted a super simple way to cross-link blog posts that require as little effort as possible, yet still looks good in vanilla markdown in GitHub. I have...&#34;&gt;Expand One Line Links&lt;/a&gt; (Modified: 2024-08-03 21:39:48)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/journey/&#34; class=&#34;wikilink&#34; data-title=&#34;It&amp;#39;s not all about winning&#34; data-description=&#34;This is my story into data science.&#34; data-date=&#34;2019-02-02&#34; data-preview=&#34;This is my story into data science.&#34;&gt;It&amp;#39;s not all about winning&lt;/a&gt; (Modified: 2024-08-03 21:39:36)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/2018-retrospective/&#34; class=&#34;wikilink&#34; data-title=&#34;2018 Retrospective&#34; data-description=&#34;2018 was a year of many ups and downs, and learning to deal with a whole new set of problems professionally and at home. In 2018 I logged in to my first...&#34; data-date=&#34;2019-01-05&#34; data-preview=&#34;2018 was a year of many ups and downs, and learning to deal with a whole new set of problems professionally and at home. In 2018 I logged in to my first...&#34;&gt;2018 Retrospective&lt;/a&gt; (Modified: 2024-08-03 21:39:25)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/goals-2019/&#34; class=&#34;wikilink&#34; data-title=&#34;2019 goals&#34; data-description=&#34;2019 goals&#34; data-date=&#34;2019-01-12&#34; data-preview=&#34;2019 goals&#34;&gt;2019 goals&lt;/a&gt; (Modified: 2024-08-03 21:39:11)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/debugging-python/&#34; class=&#34;wikilink&#34; data-title=&#34;Debugging Python&#34; data-description=&#34;Debugging Python&#34; data-date=&#34;2019-10-01&#34; data-preview=&#34;Debugging Python&#34;&gt;Debugging Python&lt;/a&gt; (Modified: 2024-08-03 21:38:11)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gatsby-rss-feed/&#34; class=&#34;wikilink&#34; data-title=&#34;RSS feed for your Gatsby Site&#34; data-description=&#34;Add an rss feed to your Gatsby Site&#34; data-date=&#34;2020-01-21&#34; data-preview=&#34;Add an rss feed to your Gatsby Site&#34;&gt;RSS feed for your Gatsby Site&lt;/a&gt; (Modified: 2024-08-03 21:38:01)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/pyspark/&#34; class=&#34;wikilink&#34; data-title=&#34;Pyspark&#34; data-description=&#34;I have been using pyspark since March 2019, here are my thoughts.&#34; data-date=&#34;2019-09-22&#34; data-preview=&#34;I have been using pyspark since March 2019, here are my thoughts.&#34;&gt;Pyspark&lt;/a&gt; (Modified: 2024-08-03 21:37:51)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/packages-to-investigate/&#34; class=&#34;wikilink&#34; data-title=&#34;📝 Packages to Investigate Notes&#34; data-description=&#34;Tabnine&#34; data-date=&#34;2019-10-14&#34; data-preview=&#34;Tabnine&#34;&gt;📝 Packages to Investigate Notes&lt;/a&gt; (Modified: 2024-08-03 21:37:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/git-diff-branches/&#34; class=&#34;wikilink&#34; data-title=&#34;Today I learned `git diff feature..main`&#34; data-description=&#34;Sometimes we get a little happy and mistakenly commit something that we just cant figure out. This is a good way to figure out what the heck has changed on the current branch compared to any other branch.&#34; data-date=&#34;2020-03-03&#34;&gt;Today I learned &lt;code&gt;git diff feature..main&lt;/code&gt;&lt;/a&gt; (Modified: 2024-08-03 21:37:33)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/practice-your-craft/&#34; class=&#34;wikilink&#34; data-title=&#34;Practice your craft&#34; data-date=&#34;2020-03-04&#34; data-preview=&#34;Show up For Practice # how I practice # What Works for You #&#34;&gt;Practice your craft&lt;/a&gt; (Modified: 2024-08-03 21:37:23)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/mentorship-vs-sponsorship/&#34; class=&#34;wikilink&#34; data-title=&#34;Mentorship Vs Sponsorship&#34; data-description=&#34;https://www.hanselminutes.com/784/doing-open-source-with-brian-douglas&#34; data-date=&#34;2021-04-17&#34; data-preview=&#34;https://www.hanselminutes.com/784/doing-open-source-with-brian-douglas&#34;&gt;Mentorship Vs Sponsorship&lt;/a&gt; (Modified: 2024-08-03 21:37:17)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gatsby-scripts-with-onload/&#34; class=&#34;wikilink&#34; data-title=&#34;Gatsby Scripts with onload&#34; data-description=&#34;This might be useful&#34; data-date=&#34;2020-05-22&#34; data-preview=&#34;This might be useful&#34;&gt;Gatsby Scripts with onload&lt;/a&gt; (Modified: 2024-08-03 21:37:06)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/long-variable-names-are-good/&#34; class=&#34;wikilink&#34; data-title=&#34;Long variable names are good&#34; data-description=&#34;🏷️ Long variable names are a good thing. Self documenting code is more important than poorly documented code. Simply adding a few characters to your...&#34; data-date=&#34;2020-02-24&#34; data-preview=&#34;🏷️ Long variable names are a good thing. Self documenting code is more important than poorly documented code. Simply adding a few characters to your...&#34;&gt;Long variable names are good&lt;/a&gt; (Modified: 2024-08-03 21:36:51)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/kedro-dependency-management/&#34; class=&#34;wikilink&#34; data-title=&#34;Kedro Dependency Management&#34; data-description=&#34;https://kedro.readthedocs.io/en/stable/04_project_dependencies.html?highlight=install&#34; data-date=&#34;2021-01-19&#34; data-preview=&#34;https://kedro.readthedocs.io/en/stable/04_project_dependencies.html?highlight=install&#34;&gt;Kedro Dependency Management&lt;/a&gt; (Modified: 2024-08-03 21:36:12)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/vim-notes/&#34; class=&#34;wikilink&#34; data-title=&#34;Vim Notes&#34; data-description=&#34;norcalli/neovim-plugin&#34; data-date=&#34;2018-02-01&#34; data-preview=&#34;norcalli/neovim-plugin&#34;&gt;Vim Notes&lt;/a&gt; (Modified: 2024-08-03 21:35:59)&lt;/li&gt;&#xA;&lt;li&gt;[[stories-10-10-2020-10-21-2020]] (Modified: 2024-08-03 21:34:59)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/new-machine-tpio/&#34; class=&#34;wikilink&#34; data-title=&#34;New Machine for developing Tests with TestProject.io&#34; data-description=&#34;Today I setup a new machine on Digital Ocean to use with TestProject.io, Here are my installation notes.&#34; data-date=&#34;2020-07-25&#34; data-preview=&#34;Today I setup a new machine on Digital Ocean to use with TestProject.io, Here are my installation notes.&#34;&gt;New Machine for developing Tests with TestProject.io&lt;/a&gt; (Modified: 2024-08-03 21:34:49)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/find-kedro-release/&#34; class=&#34;wikilink&#34; data-title=&#34;📢 Announcing find-kedro&#34; data-description=&#34;kedro is an amazing project that allows for super-fast prototyping of data pipelines, yet yielding production-ready pipelines. find-kedro enhances this experience by adding a pytest-like node discovery eliminating the need to bubble up pipelines through modules.&#34; data-date=&#34;2020-05-04&#34; data-preview=&#34;kedro is an amazing project that allows for super-fast prototyping of data pipelines, yet yielding production-ready pipelines. find-kedro enhances this experience by adding a pytest-like node...&#34;&gt;📢 Announcing find-kedro&lt;/a&gt; (Modified: 2024-08-03 21:34:35)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/serverless-things-to-investigate/&#34; class=&#34;wikilink&#34; data-title=&#34;Serverless things to investigate&#34; data-description=&#34;Free - only one step is free - can take rss to social&#34; data-date=&#34;2020-02-10&#34; data-preview=&#34;Free - only one step is free - can take rss to social&#34;&gt;Serverless things to investigate&lt;/a&gt; (Modified: 2024-08-03 21:34:24)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/cmd-exe-tips/&#34; class=&#34;wikilink&#34; data-title=&#34;cmd.exe tips&#34; data-description=&#34;cmd.exe tips&#34; data-date=&#34;2020-01-23&#34; data-preview=&#34;cmd.exe tips&#34;&gt;cmd.exe tips&lt;/a&gt; (Modified: 2024-08-03 21:34:12)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/last-n-git-files/&#34; class=&#34;wikilink&#34; data-title=&#34;List the latest files to change in a git repo&#34; data-date=&#34;2020-10-08&#34; data-preview=&#34;while read file; do echo $(git log --pretty=format:%ad -n 1 --date=raw -- $file) $file; done &amp;lt; &amp;lt;(git ls-tree -r --name-only HEAD | grep static/stories) | sort -r | head -n 3 | cut -d &amp;amp;#34; &amp;amp;#34; -f 3&#34;&gt;List the latest files to change in a git repo&lt;/a&gt; (Modified: 2024-08-03 21:33:57)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/maintianing-multiple-git-remotes/&#34; class=&#34;wikilink&#34; data-title=&#34;Maintianing multiple git remotes&#34; data-date=&#34;2020-05-07&#34; data-preview=&#34;git remote -v git remote add gitlab &amp;lt;url&amp;gt; git push gitlab main&#34;&gt;Maintianing multiple git remotes&lt;/a&gt; (Modified: 2024-08-03 21:33:49)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/fix-git-commit-author/&#34; class=&#34;wikilink&#34; data-title=&#34;Fix git commit author&#34; data-description=&#34;I was 20 commits into a hackoberfest PR when I suddenly realized they they all had my work email on them instead of my personal email 😱.&#34; data-date=&#34;2020-10-17&#34; data-preview=&#34;I was 20 commits into a hackoberfest PR when I suddenly realized they they all had my work email on them instead of my personal email 😱.&#34;&gt;Fix git commit author&lt;/a&gt; (Modified: 2024-08-03 21:33:41)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/reasons-to-kedro-notes/&#34; class=&#34;wikilink&#34; data-title=&#34;Reasons to Kedro&#34; data-description=&#34;collaboration - Sharable catalog - small nodes over monolithic notebooks - catalog - easily load anything without needing to run - No need to write...&#34; data-date=&#34;2020-10-31&#34; data-preview=&#34;collaboration - Sharable catalog - small nodes over monolithic notebooks - catalog - easily load anything without needing to run - No need to write...&#34;&gt;Reasons to Kedro&lt;/a&gt; (Modified: 2024-08-03 21:33:32)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/out-of-space/&#34; class=&#34;wikilink&#34; data-title=&#34;Out of Space&#34; data-description=&#34;Out of Space! How to remove 65 conda environments in one command.&#34; data-date=&#34;2020-02-01&#34; data-preview=&#34;Out of Space! How to remove 65 conda environments in one command.&#34;&gt;Out of Space&lt;/a&gt; (Modified: 2024-08-03 21:33:10)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/adding-google-fonts-to-a-gatsbyjs-site/&#34; class=&#34;wikilink&#34; data-title=&#34;Adding google fonts to a gatsbyjs site&#34; data-description=&#34;https://stackoverflow.com/questions/47488440/how-do-i-add-google-fonts-to-a-gatsby-site&#34; data-date=&#34;2020-05-17&#34; data-preview=&#34;https://stackoverflow.com/questions/47488440/how-do-i-add-google-fonts-to-a-gatsby-site&#34;&gt;Adding google fonts to a gatsbyjs site&lt;/a&gt; (Modified: 2024-08-03 21:32:57)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/strip-trailing-whitespace/&#34; class=&#34;wikilink&#34; data-title=&#34;Strip Trailing Whitespace from Git projects&#34; data-description=&#34;A common linting error thrown by various linters is for trailing whitespace. I most often use flake8. I generally have pre-commit hooks setup to strip this,...&#34; data-date=&#34;2020-09-30&#34; data-preview=&#34;A common linting error thrown by various linters is for trailing whitespace. I most often use flake8. I generally have pre-commit hooks setup to strip this,...&#34;&gt;Strip Trailing Whitespace from Git projects&lt;/a&gt; (Modified: 2024-08-03 21:32:44)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/happy/&#34; class=&#34;wikilink&#34; data-title=&#34;Do More of What Brings You Joy&#34; data-description=&#34;happiness in the workplace&#34; data-date=&#34;2019-01-01&#34; data-preview=&#34;happiness in the workplace&#34;&gt;Do More of What Brings You Joy&lt;/a&gt; (Modified: 2024-08-03 21:31:48)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/brainstorming-kedro-hooks/&#34; class=&#34;wikilink&#34; data-title=&#34;Brainstorming Kedro Hooks&#34; data-description=&#34;This post is a 🧠 branstorming work in progress. I will likely use it as a storage location/brain dump of hook ideas.&#34; data-date=&#34;2020-05-22&#34; data-preview=&#34;This post is a 🧠 branstorming work in progress. I will likely use it as a storage location/brain dump of hook ideas.&#34;&gt;Brainstorming Kedro Hooks&lt;/a&gt; (Modified: 2024-08-03 21:31:37)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/kedro-preflight/&#34; class=&#34;wikilink&#34; data-title=&#34;📝 Kedro Preflight Notes&#34; data-description=&#34;run checks before running the pipeline&#34; data-date=&#34;2020-05-09&#34; data-preview=&#34;run checks before running the pipeline&#34;&gt;📝 Kedro Preflight Notes&lt;/a&gt; (Modified: 2024-08-03 21:31:06)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/should-i-switch-to-zeit-now/&#34; class=&#34;wikilink&#34; data-title=&#34;Should I switch to Zeit Now&#34; data-description=&#34;Should I switch to Zeit Now. Netlify build times are starting to creep in.&#34; data-date=&#34;2020-02-06&#34; data-preview=&#34;Should I switch to Zeit Now. Netlify build times are starting to creep in.&#34;&gt;Should I switch to Zeit Now&lt;/a&gt; (Modified: 2024-08-03 21:30:50)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/kedro-catalog/&#34; class=&#34;wikilink&#34; data-title=&#34;Kedro Catalog&#34; data-description=&#34;I am exploring a kedro catalog meta data hook&#34; data-date=&#34;2020-07-24&#34; data-preview=&#34;I am exploring a kedro catalog meta data hook&#34;&gt;Kedro Catalog&lt;/a&gt; (Modified: 2024-08-03 21:30:35)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/python-deepwatch/&#34; class=&#34;wikilink&#34; data-title=&#34;python-deepwatch&#34; data-description=&#34;Is it possible to deep watch a single python function for changes?&#34; data-date=&#34;2020-04-27&#34; data-preview=&#34;Is it possible to deep watch a single python function for changes?&#34;&gt;python-deepwatch&lt;/a&gt; (Modified: 2024-08-03 21:30:20)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/career-day-wapello-2021/&#34; class=&#34;wikilink&#34; data-title=&#34;Career Day Wapello 2021&#34; data-description=&#34;_&#34; data-date=&#34;2021-03-25&#34; data-preview=&#34;_&#34;&gt;Career Day Wapello 2021&lt;/a&gt; (Modified: 2024-08-01 15:44:43)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/obsidian-image-converter/&#34; class=&#34;wikilink&#34; data-title=&#34;Obsidian Image Converter&#34; data-description=&#34;I&amp;#39;m giving obsidian a go as an editor for my blog and one of the main things I want to fix in my workflow is the ability to quickly drop in images. on first...&#34; data-date=&#34;2024-07-30&#34; data-preview=&#34;I&amp;#39;m giving obsidian a go as an editor for my blog and one of the main things I want to fix in my workflow is the ability to quickly drop in images. on first...&#34;&gt;Obsidian Image Converter&lt;/a&gt; (Modified: 2024-08-01 15:40:11)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/obsidian-using-templater-like-copier/&#34; class=&#34;wikilink&#34; data-title=&#34;Obsidian Using Templater Like Copier&#34; data-description=&#34;I&amp;#39;ve long used copier to create all of my posts for my blog, and it works really well for my workflow. I think of a title, call a template, and give it a...&#34; data-date=&#34;2024-07-31&#34; data-preview=&#34;I&amp;#39;ve long used copier to create all of my posts for my blog, and it works really well for my workflow. I think of a title, call a template, and give it a...&#34;&gt;Obsidian Using Templater Like Copier&lt;/a&gt; (Modified: 2024-08-01 15:39:49)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-199/&#34; class=&#34;wikilink&#34;&gt;Gratitude 199&lt;/a&gt; (Modified: 2024-08-01 12:47:18)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude/&#34; class=&#34;wikilink&#34;&gt;gratitude&lt;/a&gt; (Modified: 2024-08-01 11:26:34)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-97/&#34; class=&#34;wikilink&#34;&gt;Gratitude 096&lt;/a&gt; (Modified: 2024-08-01 10:17:01)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-147/&#34; class=&#34;wikilink&#34;&gt;Gratitude 147&lt;/a&gt; (Modified: 2024-08-01 10:16:15)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-007/&#34; class=&#34;wikilink&#34;&gt;Gratitude 007&lt;/a&gt; (Modified: 2024-08-01 10:15:59)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/good-morning/&#34; class=&#34;wikilink&#34;&gt;Good Morning&lt;/a&gt; (Modified: 2024-08-01 10:15:48)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-005/&#34; class=&#34;wikilink&#34;&gt;Gratitude 005&lt;/a&gt; (Modified: 2024-08-01 10:15:33)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-003/&#34; class=&#34;wikilink&#34;&gt;Gratitude 003&lt;/a&gt; (Modified: 2024-08-01 10:15:11)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-004/&#34; class=&#34;wikilink&#34;&gt;Gratitude 004&lt;/a&gt; (Modified: 2024-08-01 10:14:59)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-001/&#34; class=&#34;wikilink&#34;&gt;Gratitude 001&lt;/a&gt; (Modified: 2024-08-01 10:14:50)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-008/&#34; class=&#34;wikilink&#34;&gt;Gratitude 008&lt;/a&gt; (Modified: 2024-08-01 10:14:38)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-002/&#34; class=&#34;wikilink&#34;&gt;Gratitude 002&lt;/a&gt; (Modified: 2024-08-01 10:14:26)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-006/&#34; class=&#34;wikilink&#34;&gt;Gratitude 006&lt;/a&gt; (Modified: 2024-08-01 10:14:09)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-093/&#34; class=&#34;wikilink&#34;&gt;Gratitude 093&lt;/a&gt; (Modified: 2024-08-01 10:12:37)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-081/&#34; class=&#34;wikilink&#34;&gt;Gratitude 081&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-082/&#34; class=&#34;wikilink&#34;&gt;Gratitude 082&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-083/&#34; class=&#34;wikilink&#34;&gt;Gratitude 083&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-084/&#34; class=&#34;wikilink&#34;&gt;Gratitude 084&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-085/&#34; class=&#34;wikilink&#34;&gt;Gratitude 085&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-086/&#34; class=&#34;wikilink&#34;&gt;Gratitude 086&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-087/&#34; class=&#34;wikilink&#34;&gt;Gratitude 087&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-088/&#34; class=&#34;wikilink&#34;&gt;Gratitude 088&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-089/&#34; class=&#34;wikilink&#34;&gt;Gratitude 089&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-090/&#34; class=&#34;wikilink&#34;&gt;Gratitude 090&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-103/&#34; class=&#34;wikilink&#34;&gt;Gratitude 103&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-104/&#34; class=&#34;wikilink&#34;&gt;Gratitude 104&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/the-good-old-days/&#34; class=&#34;wikilink&#34;&gt;The Good Old Days&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-050/&#34; class=&#34;wikilink&#34;&gt;Gratitude 049&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-051/&#34; class=&#34;wikilink&#34;&gt;Gratitude 051&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-052/&#34; class=&#34;wikilink&#34;&gt;Gratitude 052&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-053/&#34; class=&#34;wikilink&#34;&gt;Gratitude 053&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-054/&#34; class=&#34;wikilink&#34;&gt;Gratitude 054&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-055/&#34; class=&#34;wikilink&#34;&gt;Gratitude 055&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-056/&#34; class=&#34;wikilink&#34;&gt;Gratitude 056&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-057/&#34; class=&#34;wikilink&#34;&gt;Gratitude 057&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-058/&#34; class=&#34;wikilink&#34;&gt;Gratitude 058&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-059/&#34; class=&#34;wikilink&#34;&gt;Gratitude 059&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-060/&#34; class=&#34;wikilink&#34;&gt;Gratitude 060&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-061/&#34; class=&#34;wikilink&#34;&gt;Gratitude 061&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-062/&#34; class=&#34;wikilink&#34;&gt;Gratitude 062&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-063/&#34; class=&#34;wikilink&#34;&gt;Gratitude 063&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-064/&#34; class=&#34;wikilink&#34;&gt;Gratitude 64&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-065/&#34; class=&#34;wikilink&#34;&gt;Gratitude 065&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-066/&#34; class=&#34;wikilink&#34;&gt;Gratitude 066&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-067/&#34; class=&#34;wikilink&#34;&gt;Gratitude 067&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-068/&#34; class=&#34;wikilink&#34;&gt;Gratitude 068&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-069/&#34; class=&#34;wikilink&#34;&gt;Gratitude 069&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-070/&#34; class=&#34;wikilink&#34;&gt;Gratitude 070&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-071/&#34; class=&#34;wikilink&#34;&gt;Gratitude 071&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-072/&#34; class=&#34;wikilink&#34;&gt;Gratitude 072&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-073/&#34; class=&#34;wikilink&#34;&gt;gratitude 073&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-074/&#34; class=&#34;wikilink&#34;&gt;Gratitude 074&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-075/&#34; class=&#34;wikilink&#34;&gt;Gratitude 075&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-076/&#34; class=&#34;wikilink&#34;&gt;Gratitude 076&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-077/&#34; class=&#34;wikilink&#34;&gt;Gratitude 077&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-078/&#34; class=&#34;wikilink&#34;&gt;Gratitude 078&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-079/&#34; class=&#34;wikilink&#34;&gt;Gratitude 079&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-080/&#34; class=&#34;wikilink&#34;&gt;Gratitude 080&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-023/&#34; class=&#34;wikilink&#34;&gt;Gratitude 023&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-024/&#34; class=&#34;wikilink&#34;&gt;Gratitude 024&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-025/&#34; class=&#34;wikilink&#34;&gt;Gratitude 025&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-026/&#34; class=&#34;wikilink&#34;&gt;Gratitude 026&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-027/&#34; class=&#34;wikilink&#34;&gt;Gratitude 027&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-028/&#34; class=&#34;wikilink&#34;&gt;Gratitude 028&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-029/&#34; class=&#34;wikilink&#34;&gt;Gratitude 029&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-030/&#34; class=&#34;wikilink&#34;&gt;Gratitude 030&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-031/&#34; class=&#34;wikilink&#34;&gt;Gratitude 031&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-032/&#34; class=&#34;wikilink&#34;&gt;Gratitude 032&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-033/&#34; class=&#34;wikilink&#34;&gt;Gratitude 033&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-034/&#34; class=&#34;wikilink&#34;&gt;Gratitude 034&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-035/&#34; class=&#34;wikilink&#34;&gt;Gratitude 035&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-036/&#34; class=&#34;wikilink&#34;&gt;Gratitude 036&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-037/&#34; class=&#34;wikilink&#34;&gt;Gratitude 037&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-039/&#34; class=&#34;wikilink&#34;&gt;Gratitude 039&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-040/&#34; class=&#34;wikilink&#34;&gt;Gratitude 0040&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-041/&#34; class=&#34;wikilink&#34;&gt;Gratitude 0040&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-042/&#34; class=&#34;wikilink&#34;&gt;Gratitude 042&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-043/&#34; class=&#34;wikilink&#34;&gt;Gratitude 043&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-044/&#34; class=&#34;wikilink&#34;&gt;Gratitude 044&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-045/&#34; class=&#34;wikilink&#34;&gt;Gratitude 045&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-046/&#34; class=&#34;wikilink&#34;&gt;Gratitude 046&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-047/&#34; class=&#34;wikilink&#34;&gt;Gratitude 047&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-048/&#34; class=&#34;wikilink&#34;&gt;Gratitude 048&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-049/&#34; class=&#34;wikilink&#34;&gt;Gratitude 049&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-190/&#34; class=&#34;wikilink&#34;&gt;Gratitude 190&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-191/&#34; class=&#34;wikilink&#34;&gt;Gratitude 191&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-192/&#34; class=&#34;wikilink&#34;&gt;Gratitude 192&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-193/&#34; class=&#34;wikilink&#34;&gt;Gratitude 193&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-194/&#34; class=&#34;wikilink&#34;&gt;Gratitude 194&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-195/&#34; class=&#34;wikilink&#34;&gt;Gratitude 195&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-196/&#34; class=&#34;wikilink&#34;&gt;Gratitude 196&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-197/&#34; class=&#34;wikilink&#34;&gt;Gratitude 197&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-198/&#34; class=&#34;wikilink&#34;&gt;Gratitude 198&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-91/&#34; class=&#34;wikilink&#34;&gt;Gratitude 91&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-98/&#34; class=&#34;wikilink&#34;&gt;Gratitude 098&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-99/&#34; class=&#34;wikilink&#34;&gt;Gratitude 099&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-009/&#34; class=&#34;wikilink&#34;&gt;Gratitude 009&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-010/&#34; class=&#34;wikilink&#34;&gt;Gratitude 010&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-011/&#34; class=&#34;wikilink&#34;&gt;Gratitude 011&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-012/&#34; class=&#34;wikilink&#34;&gt;Gratitude 012&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-013/&#34; class=&#34;wikilink&#34;&gt;Gratitude 013&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-014/&#34; class=&#34;wikilink&#34;&gt;Gratitude 014&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-015/&#34; class=&#34;wikilink&#34;&gt;Gratitude 015&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-016/&#34; class=&#34;wikilink&#34;&gt;Gratitude 016&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-017/&#34; class=&#34;wikilink&#34;&gt;Gratitude 017&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-018/&#34; class=&#34;wikilink&#34;&gt;Gratitude 018&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-019/&#34; class=&#34;wikilink&#34;&gt;Gratitude 019&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-020/&#34; class=&#34;wikilink&#34;&gt;Gratitude 020&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-021/&#34; class=&#34;wikilink&#34;&gt;Gratitude 022&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-022/&#34; class=&#34;wikilink&#34;&gt;Gratitude 022&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-160/&#34; class=&#34;wikilink&#34;&gt;Gratitude 160&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-161/&#34; class=&#34;wikilink&#34;&gt;Gratitude 161&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-162/&#34; class=&#34;wikilink&#34;&gt;Gratitude 162&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-163/&#34; class=&#34;wikilink&#34;&gt;Gratitude 163&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-164/&#34; class=&#34;wikilink&#34;&gt;Gratitude 164&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-165/&#34; class=&#34;wikilink&#34;&gt;Gratitude 165&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-166/&#34; class=&#34;wikilink&#34;&gt;Gratitude 166&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-167/&#34; class=&#34;wikilink&#34;&gt;Gratitude 167&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-168/&#34; class=&#34;wikilink&#34;&gt;Gratitude 168&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-169/&#34; class=&#34;wikilink&#34;&gt;Gratitude 169&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-170/&#34; class=&#34;wikilink&#34;&gt;Gratitude 170&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-171/&#34; class=&#34;wikilink&#34;&gt;Gratitude 171&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-172/&#34; class=&#34;wikilink&#34;&gt;Gratitude 172&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-173/&#34; class=&#34;wikilink&#34;&gt;Gratitude 173&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-174/&#34; class=&#34;wikilink&#34;&gt;Gratitude 174&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-175/&#34; class=&#34;wikilink&#34;&gt;Gratitude 175&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-176/&#34; class=&#34;wikilink&#34;&gt;Gratitude 176&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-177/&#34; class=&#34;wikilink&#34;&gt;Gratitude 177&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-178/&#34; class=&#34;wikilink&#34;&gt;Gratitude 178&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-179/&#34; class=&#34;wikilink&#34;&gt;Gratitude 178&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-180/&#34; class=&#34;wikilink&#34;&gt;Gratitude 180&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-181/&#34; class=&#34;wikilink&#34;&gt;Gratitude 181&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-182/&#34; class=&#34;wikilink&#34;&gt;Gratitude 182&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-183/&#34; class=&#34;wikilink&#34;&gt;Gratitude 183&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-184/&#34; class=&#34;wikilink&#34;&gt;Gratitude 184&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-185/&#34; class=&#34;wikilink&#34;&gt;Gratitude 185&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-186/&#34; class=&#34;wikilink&#34;&gt;Gratitude 186&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-187/&#34; class=&#34;wikilink&#34;&gt;Gratitude 187&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-188/&#34; class=&#34;wikilink&#34;&gt;Gratitude 188&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-189/&#34; class=&#34;wikilink&#34;&gt;Gratitude 189&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-127/&#34; class=&#34;wikilink&#34;&gt;Gratitude 127&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-128/&#34; class=&#34;wikilink&#34;&gt;Gratitude 128&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-129/&#34; class=&#34;wikilink&#34;&gt;Gratitude 129&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-130/&#34; class=&#34;wikilink&#34;&gt;Gratitude 130&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-131/&#34; class=&#34;wikilink&#34;&gt;Gratitude 131&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-132/&#34; class=&#34;wikilink&#34;&gt;Gratitude 132&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-133/&#34; class=&#34;wikilink&#34;&gt;Gratitude 133&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-134/&#34; class=&#34;wikilink&#34;&gt;Gratitude 134&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-135/&#34; class=&#34;wikilink&#34;&gt;Gratitude 135&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-136/&#34; class=&#34;wikilink&#34;&gt;Gratitude 136&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-137/&#34; class=&#34;wikilink&#34;&gt;Gratitude 137&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-138/&#34; class=&#34;wikilink&#34;&gt;Gratitude 138&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-139/&#34; class=&#34;wikilink&#34;&gt;Gratitude 139&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-140/&#34; class=&#34;wikilink&#34;&gt;Gratitude 140&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-141/&#34; class=&#34;wikilink&#34;&gt;Gratitude 141&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-142/&#34; class=&#34;wikilink&#34;&gt;Gratitude 142&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-143/&#34; class=&#34;wikilink&#34;&gt;Gratitude 143&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-144/&#34; class=&#34;wikilink&#34;&gt;Gratitude 144&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-146/&#34; class=&#34;wikilink&#34;&gt;Gratitude 146&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-148/&#34; class=&#34;wikilink&#34;&gt;Gratitude 148&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-149/&#34; class=&#34;wikilink&#34;&gt;Gratitude 149&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-150/&#34; class=&#34;wikilink&#34;&gt;Gratitude 150&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-151/&#34; class=&#34;wikilink&#34;&gt;Gratitude 151&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-152/&#34; class=&#34;wikilink&#34;&gt;Gratitude 152&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-153/&#34; class=&#34;wikilink&#34;&gt;Gratitude 153&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-154/&#34; class=&#34;wikilink&#34;&gt;Gratitude 154&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-155/&#34; class=&#34;wikilink&#34;&gt;Gratitude 155&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-156/&#34; class=&#34;wikilink&#34;&gt;Gratitude 156&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-157/&#34; class=&#34;wikilink&#34;&gt;Gratitude 157&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-158/&#34; class=&#34;wikilink&#34;&gt;Gratitude 158&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-159/&#34; class=&#34;wikilink&#34;&gt;Gratitude 159&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-095/&#34; class=&#34;wikilink&#34;&gt;Gratitude 095&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-096/&#34; class=&#34;wikilink&#34;&gt;Gratitude 097&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-100/&#34; class=&#34;wikilink&#34;&gt;Gratitude 100&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-101/&#34; class=&#34;wikilink&#34;&gt;Gratitude 101&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-102/&#34; class=&#34;wikilink&#34;&gt;Gratitude 102&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-105/&#34; class=&#34;wikilink&#34;&gt;Gratitude 105&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-106/&#34; class=&#34;wikilink&#34;&gt;Gratitude 106&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-107/&#34; class=&#34;wikilink&#34;&gt;Gratitude 107&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-108/&#34; class=&#34;wikilink&#34;&gt;Gratitude 108&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-109/&#34; class=&#34;wikilink&#34;&gt;Gratitude 109&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-110/&#34; class=&#34;wikilink&#34;&gt;Gratitude 110&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-111/&#34; class=&#34;wikilink&#34;&gt;Gratitude 111&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-112/&#34; class=&#34;wikilink&#34;&gt;Gratitude 112&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-113/&#34; class=&#34;wikilink&#34;&gt;Gratitude 113&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-114/&#34; class=&#34;wikilink&#34;&gt;Gratitude 114&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-115/&#34; class=&#34;wikilink&#34;&gt;Gratitude 115&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-116/&#34; class=&#34;wikilink&#34;&gt;Gratitude 116&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-117/&#34; class=&#34;wikilink&#34;&gt;Gratitude 117&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-118/&#34; class=&#34;wikilink&#34;&gt;Gratitude 118&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-119/&#34; class=&#34;wikilink&#34;&gt;Gratitude 119&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-120/&#34; class=&#34;wikilink&#34;&gt;Gratitude 120&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-121/&#34; class=&#34;wikilink&#34;&gt;Gratitude 121&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-122/&#34; class=&#34;wikilink&#34;&gt;Gratitude 122&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-123/&#34; class=&#34;wikilink&#34;&gt;Gratitude 123&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-124/&#34; class=&#34;wikilink&#34;&gt;Gratitude 124&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-125/&#34; class=&#34;wikilink&#34;&gt;Gratitude 125&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-126/&#34; class=&#34;wikilink&#34;&gt;Gratitude 126&lt;/a&gt; (Modified: 2024-08-01 07:16:40)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/gratitude-093-1/&#34; class=&#34;wikilink&#34;&gt;Gratitude 094&lt;/a&gt; (Modified: 2024-07-31 18:27:43)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/markata-supports-jinja-plugins-0-5-0-dev2/&#34; class=&#34;wikilink&#34; data-title=&#34;Markata Supports Jinja Plugins 0.5.0.dev2&#34; data-description=&#34;Markata now allows you to create jinja extensions that will be loaded right in with nothing more than a .&#34; data-date=&#34;2022-10-11&#34; data-preview=&#34;Markata now allows you to create jinja extensions that will be loaded right in with nothing more than a .&#34;&gt;Markata Supports Jinja Plugins 0.5.0.dev2&lt;/a&gt; (Modified: 2024-07-31 13:41:57)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/markata-telescope-picker/&#34; class=&#34;wikilink&#34; data-title=&#34;Markata Filters as Telescope Pickers in Neovim&#34; data-description=&#34;I often pop into my blog from neovim with the intent to look at just a single series of posts, , , or just see todays posts. Markata has a great way of...&#34; data-date=&#34;2022-01-23&#34; data-preview=&#34;I often pop into my blog from neovim with the intent to look at just a single series of posts, , , or just see todays posts. Markata has a great way of...&#34;&gt;Markata Filters as Telescope Pickers in Neovim&lt;/a&gt; (Modified: 2024-07-31 13:41:57)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/pyohio-cfp/&#34; class=&#34;wikilink&#34; data-title=&#34;PyOhio CFP&amp;#39;s&#34; data-description=&#34;Here are some CFP&amp;#39;s that I used for PyOhio 2022.&#34; data-date=&#34;2022-04-12&#34; data-preview=&#34;Here are some CFP&amp;#39;s that I used for PyOhio 2022.&#34;&gt;PyOhio CFP&amp;#39;s&lt;/a&gt; (Modified: 2024-07-31 13:41:57)&lt;/li&gt;&#xA;&lt;li&gt;[[reader]] (Modified: 2024-07-31 13:41:57)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/ubuntu/&#34; class=&#34;wikilink&#34; data-title=&#34;Copy and Paste on Linux&#34; data-description=&#34;These are the notes that I used as I set up my first ever ubuntu desktop.&#34; data-date=&#34;2021-06-25&#34; data-preview=&#34;These are the notes that I used as I set up my first ever ubuntu desktop.&#34;&gt;Copy and Paste on Linux&lt;/a&gt; (Modified: 2024-07-31 13:41:57)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/uses/&#34; class=&#34;wikilink&#34; data-title=&#34;Uses&#34; data-description=&#34;This is a listing of all the things that I use on a daily basis to build data pipelines, lead my team, and build this website.&#34; data-date=&#34;2021-11-20&#34; data-preview=&#34;This is a listing of all the things that I use on a daily basis to build data pipelines, lead my team, and build this website.&#34;&gt;Uses&lt;/a&gt; (Modified: 2024-07-31 13:41:57)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/upcoming-streams/&#34; class=&#34;wikilink&#34; data-title=&#34;Upcoming Stream&#34; data-description=&#34;!!! Caution I&amp;#39;m no longer streaming As much as I would really love to make streaming work, its really hard for my family situation to make large blocks of...&#34; data-date=&#34;2021-06-08&#34; data-preview=&#34;!!! Caution I&amp;#39;m no longer streaming As much as I would really love to make streaming work, its really hard for my family situation to make large blocks of...&#34;&gt;Upcoming Stream&lt;/a&gt; (Modified: 2024-07-31 13:41:57)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/from-markdown-to-blog-with-markata/&#34; class=&#34;wikilink&#34; data-title=&#34;From Markdown to Blog with Markata | lightning talk | python web conf 2022&#34; data-description=&#34;Markata is a great python framework that allows you to go from markdown to a full website very quickly. You can get up and running with nothing more than...&#34; data-date=&#34;2022-08-31&#34; data-preview=&#34;Markata is a great python framework that allows you to go from markdown to a full website very quickly. You can get up and running with nothing more than...&#34;&gt;From Markdown to Blog with Markata | lightning talk | python web conf 2022&lt;/a&gt; (Modified: 2024-07-31 13:41:57)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/lookatme-slides/&#34; class=&#34;wikilink&#34; data-title=&#34;How I Present Markdown Slides from the Terminal&#34; data-description=&#34;I love the freedom of writing in markdown. It allows me to write content from the comfort of my editor with very little focus on page style. It turns out...&#34; data-date=&#34;2022-03-21&#34; data-preview=&#34;I love the freedom of writing in markdown. It allows me to write content from the comfort of my editor with very little focus on page style. It turns out...&#34;&gt;How I Present Markdown Slides from the Terminal&lt;/a&gt; (Modified: 2024-07-31 13:41:57)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/markata-0-3-0/&#34; class=&#34;wikilink&#34; data-title=&#34;markata 0.3.0 is 15-20% faster&#34; data-date=&#34;2022-08-21&#34; data-preview=&#34;a sprinter edging out his opponent by Dall-e It’s about time to release Markata 0.3.0. I’ve had 8 pre-releases since the last release, but more importantly it has about 3 months of updates. Many of...&#34;&gt;markata 0.3.0 is 15-20% faster&lt;/a&gt; (Modified: 2024-07-31 13:41:57)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/markata-configure-head/&#34; class=&#34;wikilink&#34; data-title=&#34;markata extend &amp;lt;head&amp;gt; in configuration&#34; data-date=&#34;2022-09-11&#34; data-preview=&#34;A long needed feature of markata has been the ability to really configure out templates with configuration rather. It’s been long that you needed that if you really want to change the style, meta...&#34;&gt;markata extend &amp;lt;head&amp;gt; in configuration&lt;/a&gt; (Modified: 2024-07-31 13:41:57)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/markata-github-pages/&#34; class=&#34;wikilink&#34; data-title=&#34;Markata GitHub Pages&#34; data-description=&#34;hugo puts it in the base url https://gohugo.io/getting-started/configuration/#baseurl * mkdocs uses a special cli build command...&#34; data-date=&#34;2022-10-19&#34; data-preview=&#34;hugo puts it in the base url https://gohugo.io/getting-started/configuration/#baseurl * mkdocs uses a special cli build command...&#34;&gt;Markata GitHub Pages&lt;/a&gt; (Modified: 2024-07-31 13:41:57)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/markata-now-uses-hatch/&#34; class=&#34;wikilink&#34; data-title=&#34;Markata now uses hatch&#34; data-description=&#34;Markata now uses hatch as its build backend, and version bumping tool. , and are completely gone.&#34; data-date=&#34;2022-10-08&#34; data-preview=&#34;Markata now uses hatch as its build backend, and version bumping tool. , and are completely gone.&#34;&gt;Markata now uses hatch&lt;/a&gt; (Modified: 2024-07-31 13:41:57)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/htmx-on-my-blog/&#34; class=&#34;wikilink&#34; data-title=&#34;I&amp;#39;ve added htmx to my blog&#34; data-description=&#34;I&amp;#39;ve added htmx to my blog. It&amp;#39;s extra bloatware that I long avoided, but it&amp;#39;s so damn convenient.&#34; data-date=&#34;2024-06-15&#34; data-preview=&#34;I&amp;#39;ve added htmx to my blog. It&amp;#39;s extra bloatware that I long avoided, but it&amp;#39;s so damn convenient.&#34;&gt;I&amp;#39;ve added htmx to my blog&lt;/a&gt; (Modified: 2024-07-31 13:41:57)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/keyboard-driven-vscode/&#34; class=&#34;wikilink&#34; data-title=&#34;Keyboard Driven VSCode&#34; data-description=&#34;Reimagining my tmux configuration inside of vscode.&#34; data-date=&#34;2019-07-07&#34; data-preview=&#34;Reimagining my tmux configuration inside of vscode.&#34;&gt;Keyboard Driven VSCode&lt;/a&gt; (Modified: 2024-07-31 13:41:57)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/markata-todoui-live-replay-4-6-2022/&#34; class=&#34;wikilink&#34; data-title=&#34;LIVE-REPLAY - Python dev | Markata todoui | 4/6/2022&#34; data-description=&#34;https://youtu.be/-42A5210HYo&#34; data-date=&#34;2022-05-12&#34; data-preview=&#34;https://youtu.be/-42A5210HYo&#34;&gt;LIVE-REPLAY - Python dev | Markata todoui | 4/6/2022&lt;/a&gt; (Modified: 2024-07-31 13:41:57)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/markata/&#34; class=&#34;wikilink&#34; data-title=&#34;markata&#34; data-description=&#34;This post is a work in progress.&#34; data-date=&#34;2024-05-30&#34; data-preview=&#34;This post is a work in progress.&#34;&gt;markata&lt;/a&gt; (Modified: 2024-07-31 13:41:57)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/packages-i-maintain/&#34; class=&#34;wikilink&#34; data-title=&#34;Packages I Maintain&#34; data-description=&#34;I open sourced the static site framework that I use to build my-blog among other side projects. It&amp;#39;s a plugins all the way down static site generator, that...&#34; data-date=&#34;2022-08-30&#34; data-preview=&#34;I open sourced the static site framework that I use to build my-blog among other side projects. It&amp;#39;s a plugins all the way down static site generator, that...&#34;&gt;Packages I Maintain&lt;/a&gt; (Modified: 2024-07-31 13:41:57)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/pipx-examples/&#34; class=&#34;wikilink&#34; data-title=&#34;pipx examples&#34; data-date=&#34;2022-01-07&#34; data-preview=&#34;count lines of code # pipx run pygount markata pipx run pygount markata --format=summary pipx run pygount markata --suffix=cfg,py,yml&#34;&gt;pipx examples&lt;/a&gt; (Modified: 2024-07-31 13:41:57)&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Obsidian Image Converter</title>
    <id>https://waylonwalker.com/obsidian-image-converter/</id>
    <updated>2024-07-30T21:09:35Z</updated>
    <published>2024-07-30T21:09:35Z</published>
    <link href="https://waylonwalker.com/obsidian-image-converter/" rel="alternate" type="text/html"></link>
    <summary type="text">I&#39;m giving obsidian a go as an editor for my blog and one of the main things I want to fix in my workflow is the ability to quickly drop in images. on first...</summary>
    <content type="html">&lt;p&gt;I’m giving obsidian a go as an editor for my blog and one of the main things I&#xA;want to fix in my workflow is the ability to quickly drop in images.  on first&#xA;look through the community plugins I found Image Converter.  I set it up to&#xA;convert to webp and drop them in a &lt;a href=&#34;/glossary/git/&#34; class=&#34;glossary-term&#34; title=&#34;Git is a version control system for tracking changes in source code during software development. In the beginning there were many, some were licensed. As...&#34;&gt;git&lt;/a&gt; submodule.  I may make it something&#xA;other than a git repo in the future, but I’ve learned that adding images to my&#xA;blog repo quickly makes it heavy and hard to clone on other machines.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/626d85b1-5588-45c4-a4f4-c372dc7c8ff3.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;obsidian-image-converter-20240731211310793.webp&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/626d85b1-5588-45c4-a4f4-c372dc7c8ff3.webp&#34; alt=&#34;obsidian-image-converter-20240731211310793.webp&#34;/ data-glightbox=&#34;description: obsidian-image-converter-20240731211310793.webp&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;p&gt;Once the images are there they are pushed and deployed as their own site to&#xA;cloudflare pages.  I made a quick edit to my &lt;a href=&#34;/sick-wikilink-hover/&#34; class=&#34;wikilink&#34; data-title=&#34;sick wikilink hover&#34; data-description=&#34;Today I set up some sick wikilink hover effects using tailwind see a-case-for-tailwindcss. When you hover over them they show an image preview of the link...&#34; data-date=&#34;2024-05-30&#34; data-preview=&#34;Today I set up some sick wikilink hover effects using tailwind see a-case-for-tailwindcss. When you hover over them they show an image preview of the link...&#34;&gt;sick wikilink hover&lt;/a&gt; plugin for&#xA;my blog.  if it sees a wikilink ending in webp, convert the domain over to&#xA;obsidian-assets.waylonwalker.com, and clean up the remaining &lt;code&gt;&amp;#34;!  &amp;#34;&lt;/code&gt; that the&#xA;python md-it library leaves behind.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;after first try I needed to increase the width from 600 to 1400, the image in this post was unreadable.&#xA;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;This is part of me getting set up and &lt;a href=&#34;/trying-obsidian/&#34; class=&#34;wikilink&#34; data-title=&#34;Trying Obsidian&#34; data-description=&#34;I am giving obsidian a try, this is a test post to learn the flow. Something that has been really hard for me for a long time is images, I don&amp;#39;t include a...&#34; data-date=&#34;2024-07-31&#34; data-preview=&#34;I am giving obsidian a try, this is a test post to learn the flow. Something that has been really hard for me for a long time is images, I don&amp;#39;t include a...&#34;&gt;Trying Obsidian&lt;/a&gt;&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 How Fly.io uses Docker (without Docker) - YouTube</title>
    <id>https://waylonwalker.com/thought-374/</id>
    <updated>2024-07-27T01:14:21Z</updated>
    <published>2024-07-27T01:14:21Z</published>
    <link href="https://waylonwalker.com/thought-374/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/watch?v=7iypMRKniPU&amp;t=3s</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;7iypMRKniPU&#34; title=&#34;How Fly.io uses Docker (without Docker)&#34; playlabel=&#34;Play: How Fly.io uses Docker (without Docker)&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Docker no Docker, what!!!&lt;/p&gt;&#xA;&lt;p&gt;So fly.io uses Dockerfiles to deploy your app, but no docker.  They use containerd to download your docker images into firecracker microvms to run your app.  Firecracker is the same tech that runs aws lambda functions.&lt;/p&gt;&#xA;&lt;p&gt;Fascinating short post on the beans under the hood at fly.io and how they scale your app globally.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Ultimate Modular Macro Keyboard &#34;Kibly&#34; : r/MechanicalKeyboards</title>
    <id>https://waylonwalker.com/thought-373/</id>
    <updated>2024-07-26T22:32:43Z</updated>
    <published>2024-07-26T22:32:43Z</published>
    <link href="https://waylonwalker.com/thought-373/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.reddit.com/r/MechanicalKeyboards/comments/1dyf0d8/ultimate_macro_kibly/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-reddit&#34;&gt;&#xA;  &lt;a href=&#34;https://www.reddit.com/r/MechanicalKeyboards/comments/1dyf0d8/ultimate_modular_macro_keyboard_kibly/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://preview.redd.it/n9h52bg90cbd1.jpeg?auto=webp&amp;amp;s=f378c96ef81d7688ef82969538e31127b2e3638b&#34; alt=&#34;Ultimate Modular Macro Keyboard &amp;#34;Kibly&amp;#34; — Ultimate Modular Macro Keyboard &amp;#34;Kibly&amp;#34;&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: Ultimate Modular Macro Keyboard &amp;#34;Kibly&amp;#34; — Ultimate Modular Macro Keyboard &amp;#34;Kibly&amp;#34;&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Ultimate Modular Macro Keyboard &amp;#34;Kibly&amp;#34;&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Ultimate Modular Macro Keyboard &amp;#34;Kibly&amp;#34;&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;Reddit · reddit.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;This is a pretty sick design, touch screen macropad, trackball, ring, and knobs for days.  I just want to play with it and see what I can make it do.&lt;/p&gt;&#xA;&lt;p&gt;As I’m typing I think I just realized that its modular, each rectangle is it’s own section!&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 This is Goodbye? - YouTube</title>
    <id>https://waylonwalker.com/thought-372/</id>
    <updated>2024-07-26T19:03:00Z</updated>
    <published>2024-07-26T19:03:00Z</published>
    <link href="https://waylonwalker.com/thought-372/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/watch?v=YfwlM-fw-aw</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;YfwlM-fw-aw&#34; title=&#34;This is Goodbye?&#34; playlabel=&#34;Play: This is Goodbye?&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Damn Johnny is always such a positive vibe, just getting steamrolled by this braille shit.  WTF are these brand sleeping on.  Happy to hear that Andy and Brian are supporting him well.&lt;/p&gt;&#xA;&lt;p&gt;Also kinds shows what shoes are good when he goes to buy shoes cause no one will send him any and he goes with Etnies.&lt;/p&gt;&#xA;&lt;p&gt;Johnny keep it going!&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 he&#39;s back again</title>
    <id>https://waylonwalker.com/thought-369/</id>
    <updated>2024-07-25T23:09:50Z</updated>
    <published>2024-07-25T23:09:50Z</published>
    <link href="https://waylonwalker.com/thought-369/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://thoughts.waylonwalker.com/post/368</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://thoughts.waylonwalker.com/post/368&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img src=&#34;https://shots.wayl.one/shot/?url=https://thoughts.waylonwalker.com/post/368&amp;amp;height=600&amp;amp;width=1200&amp;amp;scaled_width=1200&amp;amp;scaled_height=600&#34; alt=&#34;im back again &#xA; — &#xA;&amp;lt;pre&amp;gt;&amp;lt;code&amp;gt;yooooooooo its me...&amp;#34; loading=&amp;#34;lazy&amp;#34;&amp;gt;&#xA;&amp;lt;/div&amp;gt;&#xA;&amp;lt;div class=&amp;#34;embed-card-content&amp;#34;&amp;gt;&#xA;  &amp;lt;div class=&amp;#34;embed-card-title&amp;#34;&amp;gt;&#xA;&amp;lt;/code&amp;gt;&amp;lt;/pre&amp;gt;&#xA;&amp;lt;p&amp;gt;im back again&amp;lt;/p&amp;gt;&#xA;&amp;lt;/div&amp;gt;&#xA;      &amp;lt;div class=&#34; embed-card-description glightbox&#34;=&#34;&#34;/ data-glightbox=&#34;description: im back again &#xA; — &#xA;&amp;lt;pre&amp;gt;&amp;lt;code&amp;gt;yooooooooo its me...&amp;#34; loading=&amp;#34;lazy&amp;#34;&amp;gt;&#xA;&amp;lt;/div&amp;gt;&#xA;&amp;lt;div class=&amp;#34;embed-card-content&amp;#34;&amp;gt;&#xA;  &amp;lt;div class=&amp;#34;embed-card-title&amp;#34;&amp;gt;&#xA;&amp;lt;/code&amp;gt;&amp;lt;/pre&amp;gt;&#xA;&amp;lt;p&amp;gt;im back again&amp;lt;/p&amp;gt;&#xA;&amp;lt;/div&amp;gt;&#xA;      &amp;lt;div class=&#34;&gt;&#xA;&lt;pre&gt;&lt;code&gt;yooooooooo its me...&#xA;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;thoughts.waylonwalker.com&lt;/div&gt;&#xA;    &lt;/a&gt;&lt;/div&gt;&lt;a href=&#34;https://thoughts.waylonwalker.com/post/368&#34; class=&#34;embed-card-link  has-avatar has-avatar-before&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/thoughts.waylonwalker.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/thoughts.waylonwalker.com.ico&#34;&gt;&#xA;  &lt;/a&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Note-taking with Zettelkasten - An Introduction - YouTube</title>
    <id>https://waylonwalker.com/thought-361/</id>
    <updated>2024-07-25T23:06:28Z</updated>
    <published>2024-07-25T23:06:28Z</published>
    <link href="https://waylonwalker.com/thought-361/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/watch?v=o1NJYnZCfmY</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;o1NJYnZCfmY&#34; title=&#34;Note-taking with Zettelkasten - An Introduction&#34; playlabel=&#34;Play: Note-taking with Zettelkasten - An Introduction&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Niklas Luhmann created the Zettelkasten method of notetaking, He was the Da Vinci of writing, holding a high standard that we can take inspiration from even today in this digital era.&lt;/p&gt;&#xA;&lt;p&gt;As many times as I have seem the Zettelkasten covered, I never knew that it roughly translated to little cards in a box.&lt;/p&gt;&#xA;&lt;h2 id=&#34;four-principles&#34;&gt;Four Principles &lt;a href=&#34;#four-principles&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;Mischa lays out four principles of Zettelkasten.&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;Atomic - &lt;em&gt;each card conains one idea&lt;/em&gt;&lt;/li&gt;&#xA;&lt;li&gt;Link - &lt;em&gt;cards are linked together&lt;/em&gt;&lt;/li&gt;&#xA;&lt;li&gt;Structure - &lt;em&gt;comes from the links&lt;/em&gt;&lt;/li&gt;&#xA;&lt;li&gt;Own Words - &lt;em&gt;You write the note in your own words&lt;/em&gt;&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;My blog, tils, and thoughts make up my own zettelkasten.  I am not going to say that mine is a perfect representation of his method, but the components are here.  rather than building books, my thoughts and tils build up to blog posts.   The rate of blog posts I write definitely changes with the seasons of life, as seasons change it becomes a bigger or smaller part of the season.&lt;/p&gt;&#xA;&lt;p&gt;I really like Mischa’s most important note to Write in your own words, this is what really promotes learning, and proves to yourself that you can form a thought around the topic.  Up until recently I’ve wrote everything, but lately I’ve taken to copy pasting some quotes into my thoughts posts, but I think this is fine, because generally its used to build on the narrative and give me a place to talk about the linked post.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 add quick-tap-ms and require-prior-idle-ms · WaylonWalker/zmk-...</title>
    <id>https://waylonwalker.com/thought-360/</id>
    <updated>2024-07-25T13:40:14Z</updated>
    <published>2024-07-25T13:40:14Z</published>
    <link href="https://waylonwalker.com/thought-360/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://github.com/WaylonWalker/zmk-config-42block/commit/cb2cda4cf7b3776995dbc2e8608b60670a2cf8b2</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://github.com/WaylonWalker/zmk-config-42block/commit/cb2cda4cf7b3776995dbc2e8608b60670a2cf8b2&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://opengraph.githubassets.com/cc60401e4af0cb25f811f9cb4f9325edbc78ade433ecfe21b5f9871e0fd01770/WaylonWalker/zmk-config-42block/commit/cb2cda4cf7b3776995dbc2e8608b60670a2cf8b2&#34; alt=&#34;add quick-tap-ms and require-prior-idle-ms · WaylonWalker/zmk-config-42block@cb2cda4 — Contribute to WaylonWalker/zmk-config-42block development by creating an account on GitHub.&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: add quick-tap-ms and require-prior-idle-ms · WaylonWalker/zmk-config-42block@cb2cda4 — Contribute to WaylonWalker/zmk-config-42block development by creating an account on GitHub.&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;add quick-tap-ms and require-prior-idle-ms · WaylonWalker/zmk-config-42block@cb2cda4&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Contribute to WaylonWalker/zmk-config-42block development by creating an account on GitHub.&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;GitHub · github.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Even after switching to my hm and ht behaviors I am running into some issues where sometimes I am still accidentally hitting mods(&amp;amp;hm) and layers(&amp;amp;ht) while typing and it’s been getting frustrating.  My main issue has been on &amp;amp;ht, they are configured the same so I suspect that my pinkies just move a bit slower over the keys than my pointer/middle finger.&lt;/p&gt;&#xA;&lt;p&gt;I just added &lt;code&gt;quick-tap-ms&lt;/code&gt; and &lt;code&gt;require-prior-idle-ms&lt;/code&gt; to my &amp;amp;hm and &amp;amp;ht behaviors, and a few intentionally sloppy passes through monkeytype seem to show that its working well.  A few days of trying this will tell whether it was a good fix or if I have maybe gone too far the other way.&lt;/p&gt;&#xA;&lt;p&gt;The end goal here is to be able to roll over keys faster without worrying about hitting other layers or mods.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>convert mp4 for twitter with ffmpeg</title>
    <id>https://waylonwalker.com/convert-mp4-for-twitter-with-ffmpeg/</id>
    <updated>2024-07-25T12:51:29Z</updated>
    <published>2024-07-25T12:51:29Z</published>
    <link href="https://waylonwalker.com/convert-mp4-for-twitter-with-ffmpeg/" rel="alternate" type="text/html"></link>
    <summary type="text">I&#39;ve had a couple of uploads to twitter fail recently and has been a pain. I tried some online converters for convenience, but none of them worked. I reached...</summary>
    <content type="html">&lt;p&gt;I’ve had a couple of uploads to twitter fail recently and has been a pain.  I&#xA;tried some online converters for convenience, but none of them worked.  I&#xA;reached out to chatgpt and found succeess with this ffmpeg command.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;ffmpeg -i input.mp4 &lt;span class=&#34;se&#34;&gt;\&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  -vf &lt;span class=&#34;s2&#34;&gt;&amp;#34;scale=trunc(oh*a/2)*2:min(720\,trunc(ih*a/2)*2)&amp;#34;&lt;/span&gt; &lt;span class=&#34;se&#34;&gt;\&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  -c:v libx264 -profile:v high -level:v 4.1 &lt;span class=&#34;se&#34;&gt;\&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  -b:v 3500k -maxrate 3500k -bufsize 7000k &lt;span class=&#34;se&#34;&gt;\&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  -pix_fmt yuv420p &lt;span class=&#34;se&#34;&gt;\&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  -c:a aac -b:a 128k -ar &lt;span class=&#34;m&#34;&gt;44100&lt;/span&gt; &lt;span class=&#34;se&#34;&gt;\&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  -movflags +faststart &lt;span class=&#34;se&#34;&gt;\&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  output.mp4&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Tickle My Keys</title>
    <id>https://waylonwalker.com/thought-359/</id>
    <updated>2024-07-24T18:02:41Z</updated>
    <published>2024-07-24T18:02:41Z</published>
    <link href="https://waylonwalker.com/thought-359/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://ticklemykeys.com/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://ticklemykeys.com/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://ticklemykeys.com/banner-logo-on-gray-1280x.webp&#34; alt=&#34;Tickle My Keys — Keyboards so good your fingers will be begging to tickle these keys.&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: Tickle My Keys — Keyboards so good your fingers will be begging to tickle these keys.&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Tickle My Keys&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Keyboards so good your fingers will be begging to tickle these keys.&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;ticklemykeys.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;I’ve been working on something, I’m gong to combine my mechanical engineering skills with my love of great keyboards and start a custom keyboard shop for building custom keyboards for exactly what people need with an emphasis on portability.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Git Fork vs Git Clone (Animated) - YouTube</title>
    <id>https://waylonwalker.com/thought-358/</id>
    <updated>2024-07-24T17:59:00Z</updated>
    <published>2024-07-24T17:59:00Z</published>
    <link href="https://waylonwalker.com/thought-358/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/watch?v=rxh6MhK6Tbs</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;rxh6MhK6Tbs&#34; title=&#34;&lt;a href=&#34;/glossary/git/&#34; class=&#34;glossary-term&#34; title=&#34;Git is a version control system for tracking changes in source code during software development. In the beginning there were many, some were licensed. As...&#34;&gt;Git&lt;/a&gt; Fork vs Git Clone&#34; playlabel=&#34;Play: Git Fork vs Git Clone&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Damn Prime covers this so well from all angles.  Can’t overstate the importance of that last step.  Look at the issues, and raise an issue if there is not one before putting in a bunch of hard work.  Make sure that the maintainers are open for your changes and no one else is already working on it.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ BurntSushi jiff</title>
    <id>https://waylonwalker.com/burntsushi-jiff/</id>
    <updated>2024-07-24T03:15:31Z</updated>
    <published>2024-07-24T03:15:31Z</published>
    <link href="https://waylonwalker.com/burntsushi-jiff/" rel="alternate" type="text/html"></link>
    <summary type="text">Looking for inspiration? jiff by BurntSushi.</summary>
    <content type="html">&lt;p&gt;Looking for inspiration? &lt;a href=&#34;https://github.com/BurntSushi/jiff&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;jiff&lt;/a&gt; by &lt;a href=&#34;https://github.com/BurntSushi&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;BurntSushi&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;A datetime library for Rust that encourages you to jump into the pit of success.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ asg017 sqlite-jiff</title>
    <id>https://waylonwalker.com/asg017-sqlite-jiff/</id>
    <updated>2024-07-24T03:15:27Z</updated>
    <published>2024-07-24T03:15:27Z</published>
    <link href="https://waylonwalker.com/asg017-sqlite-jiff/" rel="alternate" type="text/html"></link>
    <summary type="text">I&#39;m really excited about sqlite-jiff, an amazing project by asg017. It&#39;s worth exploring!</summary>
    <content type="html">&lt;p&gt;I’m really excited about &lt;a href=&#34;https://github.com/asg017/sqlite-jiff&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;sqlite-jiff&lt;/a&gt;, an amazing project by &lt;a href=&#34;https://github.com/asg017&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;asg017&lt;/a&gt;. It’s worth exploring!&lt;/p&gt;&#xA;&lt;p&gt;No description available.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Sqlite-jiff</title>
    <id>https://waylonwalker.com/thought-357/</id>
    <updated>2024-07-24T03:12:14Z</updated>
    <published>2024-07-24T03:12:14Z</published>
    <link href="https://waylonwalker.com/thought-357/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://simonwillison.net/2024/Jul/23/sqlite-jiff/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://simonwillison.net/2024/Jul/23/sqlite-jiff/&#34; class=&#34;embed-card-link  has-avatar has-avatar-before&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/simonwillison.net.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/simonwillison.net.ico&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;sqlite-jiff&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;I linked to the brand new Jiff datetime library yesterday. Alex Garcia has already used it for an experimental SQLite extension providing a timezone-aware jiff_duration() function - a useful new …&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;Simon Willison’s Weblog · simonwillison.net&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Sqlite is getting rust extensions now, and datetimes make it totally worth if if they work well and and fast, two things that don’t always go together in datetime libraries&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 There’s a TUI for that with Nick Janetakis (Changelog &amp; Friend...</title>
    <id>https://waylonwalker.com/thought-356/</id>
    <updated>2024-07-24T02:47:39Z</updated>
    <published>2024-07-24T02:47:39Z</published>
    <link href="https://waylonwalker.com/thought-356/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://changelog.com/friends/53</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://changelog.com/friends/53&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://snap.fly.dev/friends/53/img&#34; alt=&#34;There’s a TUI for that with Nick Janetakis (Changelog &amp;amp; Friends #53) — Nick Janetakis is back and this time we&amp;#39;re talking about TUIs (text-based user interfaces) — some we&amp;#39;ve tried and some we plan to try. All are collected from Justin Garrison&amp;#39;s Awesome TUIs repo on GitHub. This episode is &amp;#34;AI free.&amp;#34;&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: There’s a TUI for that with Nick Janetakis (Changelog &amp;amp; Friends #53) — Nick Janetakis is back and this time we&amp;#39;re talking about TUIs (text-based user interfaces) — some we&amp;#39;ve tried and some we plan to try. All are collected from Justin Garrison&amp;#39;s Awesome TUIs repo on GitHub. This episode is &amp;#34;AI free.&amp;#34;&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;There’s a TUI for that with Nick Janetakis (Changelog &amp;amp; Friends #53)&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Nick Janetakis is back and this time we&amp;#39;re talking about TUIs (text-based user interfaces) — some we&amp;#39;ve tried and some we plan to try. All are collected from Justin Garrison&amp;#39;s Awesome TUIs repo o...&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;Changelog · changelog.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;50 minutes into this episode they start a discussion on seo, and naming posts.  They give Jerod the task of googling for tmux and see how high up the ranking they find Nick, expecting a number one post, and he cant even get to Nick.&lt;/p&gt;&#xA;&lt;p&gt;The problem?  Jerod is such a beginner he doesn’t even know what to search, he starts with a long query about getting started with tmux, but all of Nick’s videos are why you should use advanced features of tmux, but Jerod has yet to discover that these exist.&lt;/p&gt;&#xA;&lt;p&gt;As experts we often come up wtih a post title for the exact thing that we are trying to teach someone how to do, but yet, they haven’t discussed that they need that feature yet, they just want the getting started guide, or tell me why I should start using tmux.  Not why sessions are better than windows, and tabs suck all together.&lt;/p&gt;&#xA;&lt;p&gt;Definitely an eye opening conversation listening to two experts sit in shock as the beginner just gets dropped big tech articles, and Nick Jani-freakin-takis doesn’t even hit the query page after page.&lt;/p&gt;&#xA;&lt;p&gt;Also hats off to Nick for keeping a 2014 machine alive, I got you beat by a few years on my 2011 free give away machine, but I stopped daily driving that two years ago, and its purely a &lt;a href=&#34;/homelab/&#34; class=&#34;glossary-term&#34; title=&#34;A place to self host applications. For me this is primarily self built web applications, and applications for sharing files with my family. Techno Tim has a...&#34;&gt;homelab&lt;/a&gt; now.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 The Verge on X: &#34;Stress testing a snack-proof keyboard https:/...</title>
    <id>https://waylonwalker.com/thought-355/</id>
    <updated>2024-07-23T14:24:08Z</updated>
    <published>2024-07-23T14:24:08Z</published>
    <link href="https://waylonwalker.com/thought-355/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://x.com/verge/status/984764889754456065</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://x.com/verge/status/984764889754456065&#34; class=&#34;embed-card-link  has-avatar has-avatar-before&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/x.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/x.com.ico&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;External Link&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;X (formerly Twitter) · x.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;This is a wild keyboard test.  This is exactly what I want to see from ticklemykeys.com.  I want to make ergomechanical boards that you can use and abuse.  I want you to not be afraid to take them with you or to eat a nutrigrain bar in the same room (cough 2015 mac).  And If something does go out, I want users to be able to repair it themsleves, key caps, switches, batteries, and microcontrollers should be replacible parts they can get at a good cost from the shop if they have paid for a board.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 all lt keys to hl · WaylonWalker/zmk-config-42block@ce25356</title>
    <id>https://waylonwalker.com/thought-354/</id>
    <updated>2024-07-22T13:42:46Z</updated>
    <published>2024-07-22T13:42:46Z</published>
    <link href="https://waylonwalker.com/thought-354/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://github.com/WaylonWalker/zmk-config-42block/commit/ce25356e88eb2439182201700314133de719457e</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://github.com/WaylonWalker/zmk-config-42block/commit/ce25356e88eb2439182201700314133de719457e&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://opengraph.githubassets.com/f8d4d1570b5f3dd9b06dd7712c0b6dcc434f739808b8118d2808edc7185c7744/WaylonWalker/zmk-config-42block/commit/ce25356e88eb2439182201700314133de719457e&#34; alt=&#34;all lt keys to hl · WaylonWalker/zmk-config-42block@ce25356 — Contribute to WaylonWalker/zmk-config-42block development by creating an account on GitHub.&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: all lt keys to hl · WaylonWalker/zmk-config-42block@ce25356 — Contribute to WaylonWalker/zmk-config-42block development by creating an account on GitHub.&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;all lt keys to hl · WaylonWalker/zmk-config-42block@ce25356&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Contribute to WaylonWalker/zmk-config-42block development by creating an account on GitHub.&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;GitHub · github.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Today I swapped out all of my keys that are used dual purpose for letters and layers to homerow layers.  This prevents goofy things happening when rolling, and prefers-tap makes it so that keys that are rolled over get hit as letters instead of as layers.  This was one of my biggest hurdles jumping into zmk,  lt as a homerow key just does not behave the same as the ht/hm behaviors with tap-preferred set.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition seealso&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Seealso&lt;/p&gt;&#xA;&lt;p&gt;See previous commit where I added the hl &lt;a href=&#34;https://github.com/WaylonWalker/zmk-config-42block/commit/9522c859cdf024a2c2b73931c130ddc907c09ffc&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;https://github.com/WaylonWalker/zmk-config-42block/commit/9522c859cdf024a2c2b73931c130ddc907c09ffc&lt;/a&gt;&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;nl&#34;&gt;hl&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;homerow_layer&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;            &lt;span class=&#34;n&#34;&gt;compatible&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;s&#34;&gt;&amp;#34;zmk,behavior-hold-tap&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;            &lt;span class=&#34;n&#34;&gt;label&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;s&#34;&gt;&amp;#34;HOMEROW_LAYER&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;            &lt;span class=&#34;n&#34;&gt;bindings&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;&amp;lt;&amp;amp;&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;mo&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;&amp;gt;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;&amp;lt;&amp;amp;&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;kp&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;&amp;gt;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;            &lt;span class=&#34;cp&#34;&gt;#binding-cells = &amp;lt;2&amp;gt;;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;            &lt;span class=&#34;n&#34;&gt;tapping&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;-&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;term&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;-&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;ms&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;&amp;lt;&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;150&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;&amp;gt;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;            &lt;span class=&#34;n&#34;&gt;flavor&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;s&#34;&gt;&amp;#34;tap-preferred&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;p&#34;&gt;};&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ Infisical infisical</title>
    <id>https://waylonwalker.com/infisical-infisical/</id>
    <updated>2024-07-21T15:01:16Z</updated>
    <published>2024-07-21T15:01:16Z</published>
    <link href="https://waylonwalker.com/infisical-infisical/" rel="alternate" type="text/html"></link>
    <summary type="text">I like Infisical&#39;s project infisical.</summary>
    <content type="html">&lt;p&gt;I like &lt;a href=&#34;https://github.com/Infisical&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;Infisical’s&lt;/a&gt; project &lt;a href=&#34;https://github.com/Infisical/infisical&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;infisical&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;♾ Infisical is the open-source secret management platform: Sync secrets across your team/infrastructure, prevent secret leaks, and manage internal PKI&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 /Tips-for-Being-Happier--Healthier--More-Productive</title>
    <id>https://waylonwalker.com/thought-353/</id>
    <updated>2024-07-20T18:02:22Z</updated>
    <published>2024-07-20T18:02:22Z</published>
    <link href="https://waylonwalker.com/thought-353/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://podcasters.spotify.com/pod/show/garyvee/episodes/Tips-for-Being-Happier--Healthier--More-Productive-e2m4184</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://podcasters.spotify.com/pod/show/garyvee/episodes/Tips-for-Being-Happier--Healthier--More-Productive-e2m4184&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img src=&#34;https://d3t3ozftmdmh3i.cloudfront.net/staging/podcast_uploaded_nologo400/2454369/2454369-1740850353410-0cbc4ddd1c276.jpg&#34; alt=&#34;Tips for Being Happier, Healthier, More Productive by The GaryVee Audio Experience — Today&amp;#39;s podcast episode is an interview I did on the Happier with Gretchen Rubin Podcast with Gretchen Rubin and Elizabeth Craft. We discuss balancing ambition, tenacity, humility, and patience. I introduce my new children&amp;#39;s book Meet Me In The Middle, that&amp;#39;s part of the VeeFriends project, aimed at teaching kids valuable life virtues. Lastly, I also share an exercise that can help you feel better through deep breathing and perspective shifts. Hope you enjoy!&#xA;&amp;lt;p&amp;gt;Check out my new kids book:&#xA;garyvee.com/vfbook&amp;#34; loading=“lazy”&amp;gt;&#xA;&amp;lt;/div&amp;gt;&#xA;&amp;lt;div class=&#34; embed-card-content glightbox&#34;=&#34;&#34;/ data-glightbox=&#34;description: Tips for Being Happier, Healthier, More Productive by The GaryVee Audio Experience — Today&amp;#39;s podcast episode is an interview I did on the Happier with Gretchen Rubin Podcast with Gretchen Rubin and Elizabeth Craft. We discuss balancing ambition, tenacity, humility, and patience. I introduce my new children&amp;#39;s book Meet Me In The Middle, that&amp;#39;s part of the VeeFriends project, aimed at teaching kids valuable life virtues. Lastly, I also share an exercise that can help you feel better through deep breathing and perspective shifts. Hope you enjoy!&#xA;&amp;lt;p&amp;gt;Check out my new kids book:&#xA;garyvee.com/vfbook&amp;#34; loading=“lazy”&amp;gt;&#xA;&amp;lt;/div&amp;gt;&#xA;&amp;lt;div class=&#34;&gt;&#xA;&lt;div class=&#34;embed-card-title&#34;&gt;Tips for Being Happier, Healthier, More Productive by The GaryVee Audio Experience&lt;/div&gt;&#xA;&lt;div class=&#34;embed-card-description&#34;&gt;Today&amp;#39;s podcast episode is an interview I did on the Happier with Gretchen Rubin Podcast with Gretchen Rubin and Elizabeth Craft. We discuss balancing ambition, tenacity, humility, and patience. I …&lt;/div&gt;&#xA;&lt;div class=&#34;embed-card-meta&#34;&gt;Spotify for Creators · podcasters.spotify.com&lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;/a&gt;&lt;p&gt;&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Deep breath, the deepest you can take in&lt;/p&gt;&#xA;&lt;p&gt;Smile, a real fukin smile not some pansy bullshit&lt;/p&gt;&#xA;&lt;p&gt;Say I’m not going to give a shit about this when I’m 90&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ evantravers zmk-config</title>
    <id>https://waylonwalker.com/evantravers-zmk-config/</id>
    <updated>2024-07-19T16:34:03Z</updated>
    <published>2024-07-19T16:34:03Z</published>
    <link href="https://waylonwalker.com/evantravers-zmk-config/" rel="alternate" type="text/html"></link>
    <summary type="text">I came across zmk-config from evantravers, and it&#39;s packed with great features and ideas.</summary>
    <content type="html">&lt;p&gt;I came across &lt;a href=&#34;https://github.com/evantravers/zmk-config&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;zmk-config&lt;/a&gt; from &lt;a href=&#34;https://github.com/evantravers&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;evantravers&lt;/a&gt;, and it’s packed with great features and ideas.&lt;/p&gt;&#xA;&lt;p&gt;No description available.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Can&#39;t use System update - invalid signature when validating AS...</title>
    <id>https://waylonwalker.com/thought-352/</id>
    <updated>2024-07-18T02:00:01Z</updated>
    <published>2024-07-18T02:00:01Z</published>
    <link href="https://waylonwalker.com/thought-352/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://github.com/ublue-os/bazzite/issues/1316</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://github.com/ublue-os/bazzite/issues/1316&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://opengraph.githubassets.com/ef394092e0de3c7e1a81c26c4e6b59d99d429c1ecd805ec9f762fff8a08c37c8/ublue-os/bazzite/issues/1316&#34; alt=&#34;Can&amp;#39;t use System update - invalid signature when validating ASN.1 encoded signature · Issue #1316 · ublue-os/bazzite — Describe the bug Hello, I installed the nvidia KDE version of bazzite just 2 days ago. Today I wanted to update to the most recent release, but unfortunately, I keep getting the following error: Pu...&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: Can&amp;#39;t use System update - invalid signature when validating ASN.1 encoded signature · Issue #1316 · ublue-os/bazzite — Describe the bug Hello, I installed the nvidia KDE version of bazzite just 2 days ago. Today I wanted to update to the most recent release, but unfortunately, I keep getting the following error: Pu...&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Can&amp;#39;t use System update - invalid signature when validating ASN.1 encoded signature · Issue #1316 · ublue-os/bazzite&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Describe the bug Hello, I installed the nvidia KDE version of bazzite just 2 days ago. Today I wanted to update to the most recent release, but unfortunately, I keep getting the following error: Pu...&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;GitHub · github.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;This fixed my bazzite update issues after the signing key was rotated recently.  This team is killing it with such a great user experience.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;curl -sL https://fix.universal-blue.org/ &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt; sudo bash &#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ Textualize transcendent-textual</title>
    <id>https://waylonwalker.com/textualize-transcendent-textual/</id>
    <updated>2024-07-17T20:57:23Z</updated>
    <published>2024-07-17T20:57:23Z</published>
    <link href="https://waylonwalker.com/textualize-transcendent-textual/" rel="alternate" type="text/html"></link>
    <summary type="text">I like Textualize&#39;s project transcendent-textual.</summary>
    <content type="html">&lt;p&gt;I like &lt;a href=&#34;https://github.com/Textualize&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;Textualize’s&lt;/a&gt; project &lt;a href=&#34;https://github.com/Textualize/transcendent-textual&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;transcendent-textual&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Textual apps and libraries&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Update Kconfig.shield rec by bravekarma · WaylonWalker/zmk-con...</title>
    <id>https://waylonwalker.com/thought-351/</id>
    <updated>2024-07-17T00:08:56Z</updated>
    <published>2024-07-17T00:08:56Z</published>
    <link href="https://waylonwalker.com/thought-351/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://github.com/WaylonWalker/zmk-config-ninepad/commit/8b76b76e2f094453aaf7ffe51bb405ce3a25a611</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://github.com/WaylonWalker/zmk-config-ninepad/commit/8b76b76e2f094453aaf7ffe51bb405ce3a25a611&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://opengraph.githubassets.com/6bc1d5167f7db2df873e37de253699e40afcf3b3547256f448b056f4a06b3c68/WaylonWalker/zmk-config-ninepad/commit/8b76b76e2f094453aaf7ffe51bb405ce3a25a611&#34; alt=&#34;Update Kconfig.shield rec by bravekarma · WaylonWalker/zmk-config-ninepad@8b76b76 — zmk configuration for ninpad keyboard. Contribute to WaylonWalker/zmk-config-ninepad development by creating an account on GitHub.&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: Update Kconfig.shield rec by bravekarma · WaylonWalker/zmk-config-ninepad@8b76b76 — zmk configuration for ninpad keyboard. Contribute to WaylonWalker/zmk-config-ninepad development by creating an account on GitHub.&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Update Kconfig.shield rec by bravekarma · WaylonWalker/zmk-config-ninepad@8b76b76&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;zmk configuration for ninpad keyboard. Contribute to WaylonWalker/zmk-config-ninepad development by creating an account on GitHub.&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;GitHub · github.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;This one space killed my whole config and held me back from learning zmk.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 DragonFruit</title>
    <id>https://waylonwalker.com/thought-350/</id>
    <updated>2024-07-15T17:14:20Z</updated>
    <published>2024-07-15T17:14:20Z</published>
    <link href="https://waylonwalker.com/thought-350/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://kbd.news/DragonFruit-2178.html</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;/static/https://kbd.news/DragonFruit-2178.html&#34; class=&#34;glightbox-link&#34; aria-label=&#34;https://kbd.news/DragonFruit-2178.html&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;/static/https://kbd.news/DragonFruit-2178.html&#34; alt=&#34;https://kbd.news/DragonFruit-2178.html&#34;/ data-glightbox=&#34;description: https://kbd.news/DragonFruit-2178.html&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;p&gt;The trackball spinner looks sick here.  I can imagine using that spinner like a scroll wheel.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 NEC M-System</title>
    <id>https://waylonwalker.com/thought-349/</id>
    <updated>2024-07-15T17:11:38Z</updated>
    <published>2024-07-15T17:11:38Z</published>
    <link href="https://waylonwalker.com/thought-349/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://kbd.news/NEC-M-System-1729.html</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;/static/https://kbd.news/NEC-M-System-1729.html&#34; class=&#34;glightbox-link&#34; aria-label=&#34;https://kbd.news/NEC-M-System-1729.html&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;/static/https://kbd.news/NEC-M-System-1729.html&#34; alt=&#34;https://kbd.news/NEC-M-System-1729.html&#34;/ data-glightbox=&#34;description: https://kbd.news/NEC-M-System-1729.html&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;p&gt;They had split ergo boards back in 1983??? WTF who the heck keeps these row stagger boards going.  This board looks like endgame material, If this thing was more normal, it’d kill a whole section of the ergo mechanical keyboard industry for good reason.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Red Herring - Solenoid Edition sound test - YouTube</title>
    <id>https://waylonwalker.com/thought-348/</id>
    <updated>2024-07-15T17:09:18Z</updated>
    <published>2024-07-15T17:09:18Z</published>
    <link href="https://waylonwalker.com/thought-348/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/watch?v=n52y4MOQAjw&amp;t=40s</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;n52y4MOQAjw&#34; title=&#34;Red Herring - Solenoid Edition sound test&#34; playlabel=&#34;Play: Red Herring - Solenoid Edition sound test&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;This keyboard layout looks weird af the mix of column staggar and row stagger is wild.  Not sure if its genius or an abomination.&lt;/p&gt;&#xA;&lt;p&gt;That solenoid though is absolutely wild though,  I kinda want one TBH.&lt;/p&gt;&#xA;&lt;p&gt;and the clear plate with the diodes laid out on it in a herringbone pattern is a very nice touch.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Laying some wire in PortaJohn 1</title>
    <id>https://waylonwalker.com/shots/portajohn1-wiring/</id>
    <updated>2024-07-13T11:03:27Z</updated>
    <published>2024-07-13T11:03:27Z</published>
    <link href="https://waylonwalker.com/shots/portajohn1-wiring/" rel="alternate" type="text/html"></link>
    <summary type="text">Close-up view of a barebones custom mechanical keyboard plate and PCB.</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;http://dropper.waylonwalker.com/file/8eda5039-3ce5-4929-b104-cff9ee30255d.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;A custom black keypad with multiple switches resting on a wooden surface.&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;http://dropper.waylonwalker.com/file/8eda5039-3ce5-4929-b104-cff9ee30255d.webp&#34; alt=&#34;A custom black keypad with multiple switches resting on a wooden surface.&#34;/ data-glightbox=&#34;description: A custom black keypad with multiple switches resting on a wooden surface.&#34;&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;Close-up view of a barebones custom mechanical keyboard plate and PCB.&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Laying down the first test print of a portajohn on a laptop</title>
    <id>https://waylonwalker.com/shots/portajohn-first-test/</id>
    <updated>2024-07-13T10:54:02Z</updated>
    <published>2024-07-13T10:54:02Z</published>
    <link href="https://waylonwalker.com/shots/portajohn-first-test/" rel="alternate" type="text/html"></link>
    <summary type="text">A setup featuring an open laptop running Ubuntu next to a detached, custom mechanical keyboard.</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;http://dropper.waylonwalker.com/file/6b27b8d3-c1d4-4d73-8148-b9b675c8c16d.webp&#34; class=&#34;glightbox-link&#34; aria-label=&#34;A laptop displaying Ubuntu next to a custom, black, right half of a segmented mechanical keyboard case.&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;http://dropper.waylonwalker.com/file/6b27b8d3-c1d4-4d73-8148-b9b675c8c16d.webp&#34; alt=&#34;A laptop displaying Ubuntu next to a custom, black, right half of a segmented mechanical keyboard case.&#34;/ data-glightbox=&#34;description: A laptop displaying Ubuntu next to a custom, black, right half of a segmented mechanical keyboard case.&#34;&gt;&lt;/a&gt;&#xA;&lt;figcaption&gt;&lt;p&gt;A setup featuring an open laptop running Ubuntu next to a detached, custom mechanical keyboard.&lt;/p&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Text cursor bug in my Chrome browser that causes the blinking ...</title>
    <id>https://waylonwalker.com/thought-347/</id>
    <updated>2024-07-12T14:16:32Z</updated>
    <published>2024-07-12T14:16:32Z</published>
    <link href="https://waylonwalker.com/thought-347/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://stackoverflow.com/questions/75886276/text-cursor-bug-in-my-chrome-browser-that-causes-the-blinking-cursor-to-appear-e</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://stackoverflow.com/questions/75886276/text-cursor-bug-in-my-chrome-browser-that-causes-the-blinking-cursor-to-appear-e&#34; class=&#34;embed-card-link  has-avatar has-avatar-before&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/stackoverflow.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/stackoverflow.com.ico&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;External Link&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;stackoverflow.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;today I learned that there is an accessibility feature in chrome that allows you to place a text cursor anywhere on the page.  I had accidentally done this and it drove me mad that it was there.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>animal well codes</title>
    <id>https://waylonwalker.com/animal-well-codes/</id>
    <updated>2024-07-11T20:05:36Z</updated>
    <published>2024-07-11T20:05:36Z</published>
    <link href="https://waylonwalker.com/animal-well-codes/" rel="alternate" type="text/html"></link>
    <summary type="text">_ ul d dl l dl ur ul</summary>
    <content type="html">&lt;h2 id=&#34;fish-room&#34;&gt;fish room &lt;a href=&#34;#fish-room&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;&lt;em&gt;fish bubbles&lt;/em&gt;&#xA;ul d dl l dl ur ul&lt;/p&gt;&#xA;&lt;p&gt;&lt;em&gt;jellyfish&lt;/em&gt;&#xA;d l d l d l u r&lt;/p&gt;&#xA;&lt;h2 id=&#34;egg-room&#34;&gt;egg room &lt;a href=&#34;#egg-room&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;bar dir&lt;/p&gt;&#xA;&lt;p&gt;&lt;em&gt;given bar codes&lt;/em&gt;&#xA;top r&#xA;mid dr&#xA;bot dl&lt;/p&gt;&#xA;&lt;p&gt;&lt;em&gt;calculated bar codes&lt;/em&gt;&#xA;num dir&lt;/p&gt;&#xA;&lt;p&gt;1 r&#xA;2 dr&#xA;3 d&#xA;4 dl&#xA;5 l&#xA;6 ul&#xA;7 u&#xA;8 ur&lt;/p&gt;&#xA;&lt;p&gt;&lt;em&gt;bar code direction&lt;/em&gt;&#xA;num bar&#xA;1 top&#xA;2 mid&#xA;3 top mid&#xA;4 bot&#xA;5 top bot&#xA;6 mid bot&#xA;7 top mid bot&#xA;8 empty&lt;/p&gt;&#xA;&lt;p&gt;&lt;em&gt;egg room decode&lt;/em&gt;&#xA;6 3 &lt;em&gt;3 6 3 1 3&lt;/em&gt; 4&#xA;2 4 3 &lt;em&gt;2 8&lt;/em&gt; 3 5 8 _&#xA;3 5 7 5_ __ 5 2 5 6 3 1 3&#xA;&lt;em&gt;3 1 3 6 4&lt;/em&gt; 4 6 4 2 4 6 8&#xA;6 4 8 7 &lt;em&gt;3 7 6&lt;/em&gt; 5 7 6 __&lt;/p&gt;&#xA;&lt;p&gt;&lt;em&gt;egg room decode dir&lt;/em&gt;&#xA;ul dd __ dd ul dd rr dd __ dl&#xA;dr dl dd __ dr ur__ dd ll ur __&#xA;dd ll uu ll __ ____ ll dr ll ul dd rr dd&#xA;__ dd rr dd ul dl __ dl ul dl dr dl ul ur&#xA;ul dl ur uu __ dd uu ul __ ll uu ul ____&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 python is simultaneously at the top and the bottom of the tier...</title>
    <id>https://waylonwalker.com/thought-346/</id>
    <updated>2024-07-11T13:41:04Z</updated>
    <published>2024-07-11T13:41:04Z</published>
    <link href="https://waylonwalker.com/thought-346/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/watch?t=326&amp;v=2fopl7-2wT0</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;2fopl7-2wT0&#34; title=&#34;Use Java For Everything&#34; playlabel=&#34;Play: Use Java For Everything&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Hard to argue this take, happy to see that its at the top.  With it being such an old language its amazing that it still holds this position, and not surprising that it has warts, and thing that have turn users off from wanting anything to do with it.&lt;/p&gt;&#xA;&lt;p&gt;timestamped in the link&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Command Line Interface Guidelines</title>
    <id>https://waylonwalker.com/thought-345/</id>
    <updated>2024-07-11T12:57:45Z</updated>
    <published>2024-07-11T12:57:45Z</published>
    <link href="https://waylonwalker.com/thought-345/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://clig.dev/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://clig.dev/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://clig.dev/CLIG-social-card.jpg&#34; alt=&#34;Command Line Interface Guidelines — An open-source guide to help you write better command-line programs, taking traditional UNIX principles and updating them for the modern day.&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: Command Line Interface Guidelines — An open-source guide to help you write better command-line programs, taking traditional UNIX principles and updating them for the modern day.&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Command Line Interface Guidelines&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;An open-source guide to help you write better command-line programs, taking traditional UNIX principles and updating them for the modern day.&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;clig.dev&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;This is a pretty sick set of guidelines to help you write better cli programs, I’m definitely coming back to reading this one more in depth later.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Render-blocking on purpose</title>
    <id>https://waylonwalker.com/thought-344/</id>
    <updated>2024-07-11T12:55:28Z</updated>
    <published>2024-07-11T12:55:28Z</published>
    <link href="https://waylonwalker.com/thought-344/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://fullystacked.net/render-blocking-on-purpose/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://fullystacked.net/render-blocking-on-purpose/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;External Link&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;fullystacked.net&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;You can explicitly make a script render blocking, nothing will be rendered until this js is ready.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;&amp;lt;&lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;script&lt;/span&gt; &lt;span class=&#34;na&#34;&gt;blocking&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;&amp;#34;render&amp;#34;&lt;/span&gt; &#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;na&#34;&gt;src&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;&amp;#34;important.js&amp;#34;&lt;/span&gt; &#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;na&#34;&gt;defer&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;&amp;gt;&amp;lt;/&lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;script&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;&amp;gt;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Remove Background Web - a Hugging Face Space by Xenova</title>
    <id>https://waylonwalker.com/thought-343/</id>
    <updated>2024-07-11T12:50:22Z</updated>
    <published>2024-07-11T12:50:22Z</published>
    <link href="https://waylonwalker.com/thought-343/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://huggingface.co/spaces/Xenova/remove-background-web</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://huggingface.co/spaces/Xenova/remove-background-web&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://cdn-thumbnails.huggingface.co/social-thumbnails/spaces/Xenova/remove-background-web.png&#34; alt=&#34;Remove Background Web - a Hugging Face Space by Xenova — In-browser background removal&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: Remove Background Web - a Hugging Face Space by Xenova — In-browser background removal&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Remove Background Web - a Hugging Face Space by Xenova&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;In-browser background removal&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;huggingface.co&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;I’ve long been a user of remove.bg, and I just discovered that you can run this transformer right within your browser with no api limits.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ volfpeter fasthx</title>
    <id>https://waylonwalker.com/volfpeter-fasthx/</id>
    <updated>2024-07-10T12:55:17Z</updated>
    <published>2024-07-10T12:55:17Z</published>
    <link href="https://waylonwalker.com/volfpeter-fasthx/" rel="alternate" type="text/html"></link>
    <summary type="text">Check out volfpeter and their project fasthx.</summary>
    <content type="html">&lt;p&gt;Check out &lt;a href=&#34;https://github.com/volfpeter&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;volfpeter&lt;/a&gt; and their project &lt;a href=&#34;https://github.com/volfpeter/fasthx&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;fasthx&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;/fastapi/&#34; class=&#34;glossary-term&#34; title=&#34;FastAPI is a modern and efficient web framework for Python, built on top of the Starlette web framework, and pydantic for data validation and serialization.&#34;&gt;FastAPI&lt;/a&gt; server-side rendering with built-in &lt;a href=&#34;/htmx/&#34; class=&#34;glossary-term&#34; title=&#34;htmx is a frontend javascript library for creating dynamic web applications.&#34;&gt;HTMX&lt;/a&gt; support.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 FastHX</title>
    <id>https://waylonwalker.com/thought-342/</id>
    <updated>2024-07-10T12:53:15Z</updated>
    <published>2024-07-10T12:53:15Z</published>
    <link href="https://waylonwalker.com/thought-342/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://volfpeter.github.io/fasthx/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://volfpeter.github.io/fasthx/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;FastHX - FastHX&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;volfpeter.github.io&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Very interesting approach to &lt;a href=&#34;/htmx/&#34; class=&#34;glossary-term&#34; title=&#34;htmx is a frontend javascript library for creating dynamic web applications.&#34;&gt;htmx&lt;/a&gt; and fast api.  It uses separate decorators for returning template partials and json that can be stacked to include both options on a single route.  The templates are explicitly set in the decorator.  Separate decorators are used for full page and partial pages.  I don’t see an example of full and partial pages being combined.  I think the demo app must be behaving in a spa like fashion where it does not get all of the data when it calls index and index will ask for user-list.&lt;/p&gt;&#xA;&lt;p&gt;Definitely going to keep my eye on this project and ponder on it.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;kn&#34;&gt;from&lt;/span&gt; &lt;span class=&#34;nn&#34;&gt;fastapi&lt;/span&gt; &lt;span class=&#34;kn&#34;&gt;import&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;FastAPI&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;kn&#34;&gt;from&lt;/span&gt; &lt;span class=&#34;nn&#34;&gt;fastapi.templating&lt;/span&gt; &lt;span class=&#34;kn&#34;&gt;import&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;Jinja2Templates&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;kn&#34;&gt;from&lt;/span&gt; &lt;span class=&#34;nn&#34;&gt;fasthx&lt;/span&gt; &lt;span class=&#34;kn&#34;&gt;import&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;Jinja&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;kn&#34;&gt;from&lt;/span&gt; &lt;span class=&#34;nn&#34;&gt;pydantic&lt;/span&gt; &lt;span class=&#34;kn&#34;&gt;import&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;BaseModel&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# Pydantic model of the data the example API is using.&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;class&lt;/span&gt; &lt;span class=&#34;nc&#34;&gt;User&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;BaseModel&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;):&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;n&#34;&gt;first_name&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;nb&#34;&gt;str&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;n&#34;&gt;last_name&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;nb&#34;&gt;str&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# Create the app.&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;app&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;FastAPI&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;()&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# Create a FastAPI Jinja2Templates instance and use it to create a&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# FastHX Jinja instance that will serve as your decorator.&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;jinja&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;Jinja&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;Jinja2Templates&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;templates&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;))&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nd&#34;&gt;@app.get&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;/&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nd&#34;&gt;@jinja.page&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;index.html&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;def&lt;/span&gt; &lt;span class=&#34;nf&#34;&gt;index&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;()&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;-&amp;gt;&lt;/span&gt; &lt;span class=&#34;kc&#34;&gt;None&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;o&#34;&gt;...&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nd&#34;&gt;@app.get&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;/user-list&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nd&#34;&gt;@jinja.hx&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;user-list.html&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;async&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;def&lt;/span&gt; &lt;span class=&#34;nf&#34;&gt;htmx_or_data&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;()&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;-&amp;gt;&lt;/span&gt; &lt;span class=&#34;nb&#34;&gt;list&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;User&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]:&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;k&#34;&gt;return&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;n&#34;&gt;User&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;first_name&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;John&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;last_name&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;Lennon&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;),&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;n&#34;&gt;User&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;first_name&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;Paul&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;last_name&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;McCartney&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;),&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;n&#34;&gt;User&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;first_name&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;George&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;last_name&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;Harrison&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;),&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;n&#34;&gt;User&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;first_name&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;Ringo&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;last_name&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;Starr&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;),&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;p&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nd&#34;&gt;@app.get&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;/admin-list&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nd&#34;&gt;@jinja.hx&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;user-list.html&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;no_data&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;kc&#34;&gt;True&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;def&lt;/span&gt; &lt;span class=&#34;nf&#34;&gt;htmx_only&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;()&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;-&amp;gt;&lt;/span&gt; &lt;span class=&#34;nb&#34;&gt;list&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;User&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]:&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;k&#34;&gt;return&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;User&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;first_name&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;Billy&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;last_name&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;Shears&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 FastHX</title>
    <id>https://waylonwalker.com/thought-341/</id>
    <updated>2024-07-10T12:53:15Z</updated>
    <published>2024-07-10T12:53:15Z</published>
    <link href="https://waylonwalker.com/thought-341/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://volfpeter.github.io/fasthx/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://volfpeter.github.io/fasthx/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;FastHX - FastHX&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;volfpeter.github.io&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Very interesting approach to &lt;a href=&#34;/htmx/&#34; class=&#34;glossary-term&#34; title=&#34;htmx is a frontend javascript library for creating dynamic web applications.&#34;&gt;htmx&lt;/a&gt; and fast api.  It uses separate decorators for returning template partials and json that can be stacked to include both options on a single route.  The templates are explicitly set in the decorator.  Separate decorators are used for full page and partial pages.  I don’t see an example of full and partial pages being combined.  I think the demo app must be behaving in a spa like fashion where it does not get all of the data when it calls index and index will ask for user-list.&lt;/p&gt;&#xA;&lt;p&gt;Definitely going to keep my eye on this project and ponder on it.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;kn&#34;&gt;from&lt;/span&gt; &lt;span class=&#34;nn&#34;&gt;fastapi&lt;/span&gt; &lt;span class=&#34;kn&#34;&gt;import&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;FastAPI&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;kn&#34;&gt;from&lt;/span&gt; &lt;span class=&#34;nn&#34;&gt;fastapi.templating&lt;/span&gt; &lt;span class=&#34;kn&#34;&gt;import&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;Jinja2Templates&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;kn&#34;&gt;from&lt;/span&gt; &lt;span class=&#34;nn&#34;&gt;fasthx&lt;/span&gt; &lt;span class=&#34;kn&#34;&gt;import&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;Jinja&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;kn&#34;&gt;from&lt;/span&gt; &lt;span class=&#34;nn&#34;&gt;pydantic&lt;/span&gt; &lt;span class=&#34;kn&#34;&gt;import&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;BaseModel&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# Pydantic model of the data the example API is using.&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;class&lt;/span&gt; &lt;span class=&#34;nc&#34;&gt;User&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;BaseModel&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;):&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;n&#34;&gt;first_name&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;nb&#34;&gt;str&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;n&#34;&gt;last_name&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;nb&#34;&gt;str&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# Create the app.&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;app&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;FastAPI&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;()&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# Create a FastAPI Jinja2Templates instance and use it to create a&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# FastHX Jinja instance that will serve as your decorator.&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;jinja&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;Jinja&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;Jinja2Templates&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;templates&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;))&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nd&#34;&gt;@app.get&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;/&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nd&#34;&gt;@jinja.page&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;index.html&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;def&lt;/span&gt; &lt;span class=&#34;nf&#34;&gt;index&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;()&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;-&amp;gt;&lt;/span&gt; &lt;span class=&#34;kc&#34;&gt;None&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;o&#34;&gt;...&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nd&#34;&gt;@app.get&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;/user-list&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nd&#34;&gt;@jinja.hx&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;user-list.html&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;async&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;def&lt;/span&gt; &lt;span class=&#34;nf&#34;&gt;htmx_or_data&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;()&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;-&amp;gt;&lt;/span&gt; &lt;span class=&#34;nb&#34;&gt;list&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;User&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]:&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;k&#34;&gt;return&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;n&#34;&gt;User&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;first_name&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;John&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;last_name&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;Lennon&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;),&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;n&#34;&gt;User&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;first_name&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;Paul&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;last_name&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;McCartney&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;),&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;n&#34;&gt;User&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;first_name&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;George&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;last_name&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;Harrison&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;),&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;n&#34;&gt;User&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;first_name&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;Ringo&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;last_name&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;Starr&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;),&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;p&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nd&#34;&gt;@app.get&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;/admin-list&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nd&#34;&gt;@jinja.hx&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;user-list.html&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;no_data&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;kc&#34;&gt;True&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;def&lt;/span&gt; &lt;span class=&#34;nf&#34;&gt;htmx_only&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;()&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;-&amp;gt;&lt;/span&gt; &lt;span class=&#34;nb&#34;&gt;list&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;User&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]:&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;k&#34;&gt;return&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;User&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;first_name&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;Billy&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;last_name&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;Shears&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Pinout and Schematic - nice!nano</title>
    <id>https://waylonwalker.com/thought-340/</id>
    <updated>2024-07-10T12:40:26Z</updated>
    <published>2024-07-10T12:40:26Z</published>
    <link href="https://waylonwalker.com/thought-340/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://nicekeyboards.com/docs/nice-nano/pinout-schematic/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://nicekeyboards.com/docs/nice-nano/pinout-schematic/&#34; class=&#34;embed-card-link  has-avatar has-avatar-before&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/nicekeyboards.com.png&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/nicekeyboards.com.png&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Pinout and Schematic - nice!nano&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Pinout and schematic for the nice!nano&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;nicekeyboards.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Pinout for nice!nano boards.   Note that P0.15 means gpio port 0 pin 15, they can be referenced in zmk when setting column and row pins.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;cp&#34;&gt;#include&lt;/span&gt; &lt;span class=&#34;cpf&#34;&gt;&amp;lt;dt-bindings/zmk/matrix_transform.h&amp;gt;&lt;/span&gt;&lt;span class=&#34;cp&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;o&#34;&gt;/&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;n&#34;&gt;chosen&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;n&#34;&gt;zmk&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;kscan&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;&amp;amp;&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;default_kscan&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;n&#34;&gt;zmk&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;matrix_transform&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;&amp;amp;&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;default_transform&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;o&#34;&gt;/&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;delete&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;-&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;property&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;/&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;zephyr&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;console&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;o&#34;&gt;/&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;delete&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;-&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;property&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;/&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;zephyr&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;shell&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;-&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;uart&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;p&#34;&gt;};&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;nl&#34;&gt;default_kscan&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;kscan&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;n&#34;&gt;compatible&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;s&#34;&gt;&amp;#34;zmk,kscan-gpio-matrix&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;n&#34;&gt;label&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;s&#34;&gt;&amp;#34;default_kscan&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;n&#34;&gt;diode&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;-&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;direction&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;s&#34;&gt;&amp;#34;col2row&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;n&#34;&gt;col&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;-&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;gpios&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;            &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;&amp;lt;&amp;amp;&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;gpio0&lt;/span&gt; &lt;span class=&#34;mi&#34;&gt;31&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;GPIO_ACTIVE_HIGH&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;&amp;gt;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;            &lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;&amp;lt;&amp;amp;&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;gpio0&lt;/span&gt; &lt;span class=&#34;mi&#34;&gt;29&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;GPIO_ACTIVE_HIGH&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;&amp;gt;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;            &lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;&amp;lt;&amp;amp;&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;gpio0&lt;/span&gt; &lt;span class=&#34;mi&#34;&gt;2&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;GPIO_ACTIVE_HIGH&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;&amp;gt;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;            &lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;n&#34;&gt;row&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;-&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;gpios&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;            &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;&amp;lt;&amp;amp;&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;gpio1&lt;/span&gt; &lt;span class=&#34;mi&#34;&gt;15&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;GPIO_ACTIVE_HIGH&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;|&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;GPIO_PULL_DOWN&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;&amp;gt;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;            &lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;&amp;lt;&amp;amp;&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;gpio1&lt;/span&gt; &lt;span class=&#34;mi&#34;&gt;13&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;GPIO_ACTIVE_HIGH&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;|&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;GPIO_PULL_DOWN&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;&amp;gt;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;            &lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;&amp;lt;&amp;amp;&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;gpio1&lt;/span&gt; &lt;span class=&#34;mi&#34;&gt;11&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;GPIO_ACTIVE_HIGH&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;|&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;GPIO_PULL_DOWN&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;&amp;gt;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;            &lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;p&#34;&gt;};&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;nl&#34;&gt;default_transform&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;matrix_transform&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;n&#34;&gt;compatible&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;s&#34;&gt;&amp;#34;zmk,matrix-transform&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;n&#34;&gt;columns&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;&amp;lt;&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;3&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;&amp;gt;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;n&#34;&gt;rows&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;&amp;lt;&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;3&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;&amp;gt;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;n&#34;&gt;map&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;&amp;lt;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;            &lt;span class=&#34;nf&#34;&gt;RC&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;0&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;0&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt; &lt;span class=&#34;nf&#34;&gt;RC&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;0&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;1&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt; &lt;span class=&#34;nf&#34;&gt;RC&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;0&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;2&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;            &lt;span class=&#34;nf&#34;&gt;RC&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;1&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;0&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt; &lt;span class=&#34;nf&#34;&gt;RC&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;1&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;1&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt; &lt;span class=&#34;nf&#34;&gt;RC&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;1&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;2&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;            &lt;span class=&#34;nf&#34;&gt;RC&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;2&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;0&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt; &lt;span class=&#34;nf&#34;&gt;RC&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;2&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;1&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt; &lt;span class=&#34;nf&#34;&gt;RC&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;2&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;2&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;o&#34;&gt;&amp;gt;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;p&#34;&gt;};&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;};&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ typecraft-dev shmux</title>
    <id>https://waylonwalker.com/typecraft-dev-shmux/</id>
    <updated>2024-07-09T20:35:41Z</updated>
    <published>2024-07-09T20:35:41Z</published>
    <link href="https://waylonwalker.com/typecraft-dev-shmux/" rel="alternate" type="text/html"></link>
    <summary type="text">I&#39;m impressed by shmux from typecraft-dev.</summary>
    <content type="html">&lt;p&gt;I’m impressed by &lt;a href=&#34;https://github.com/typecraft-dev/shmux&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;shmux&lt;/a&gt; from &lt;a href=&#34;https://github.com/typecraft-dev&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;typecraft-dev&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;the shell-script tmux management you didn’t know you needed. baby&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ iximiuz awesome-container-tinkering</title>
    <id>https://waylonwalker.com/iximiuz-awesome-container-tinkering/</id>
    <updated>2024-07-09T00:59:29Z</updated>
    <published>2024-07-09T00:59:29Z</published>
    <link href="https://waylonwalker.com/iximiuz-awesome-container-tinkering/" rel="alternate" type="text/html"></link>
    <summary type="text">I like iximiuz&#39;s project awesome-container-tinkering.</summary>
    <content type="html">&lt;p&gt;I like &lt;a href=&#34;https://github.com/iximiuz&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;iximiuz’s&lt;/a&gt; project &lt;a href=&#34;https://github.com/iximiuz/awesome-container-tinkering&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;awesome-container-tinkering&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;List of awesome tools to tinker with containers.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 linux - What is stored in /dev/pts files and can we open them?...</title>
    <id>https://waylonwalker.com/thought-339/</id>
    <updated>2024-07-07T01:08:38Z</updated>
    <published>2024-07-07T01:08:38Z</published>
    <link href="https://waylonwalker.com/thought-339/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://unix.stackexchange.com/questions/93531/what-is-stored-in-dev-pts-files-and-can-we-open-them</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://unix.stackexchange.com/questions/93531/what-is-stored-in-dev-pts-files-and-can-we-open-them&#34; class=&#34;embed-card-link  has-avatar has-avatar-before&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/unix.stackexchange.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/unix.stackexchange.com.ico&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;External Link&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;unix.stackexchange.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;today I learned that /dev/pts is a pseudo-tty.  It amazes me how much linux is still built around things like hardware terminals.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 svenstaro/miniserve: 🌟 For when you really just want to serve ...</title>
    <id>https://waylonwalker.com/thought-338/</id>
    <updated>2024-07-06T21:55:59Z</updated>
    <published>2024-07-06T21:55:59Z</published>
    <link href="https://waylonwalker.com/thought-338/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://github.com/svenstaro/miniserve</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://github.com/svenstaro/miniserve&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://repository-images.githubusercontent.com/131135585/9cf09f00-614a-11e9-8676-f2a20b52cd4b&#34; alt=&#34;GitHub - svenstaro/miniserve: 🌟 For when you really just want to serve some files over HTTP right now! — 🌟 For when you really just want to serve some files over HTTP right now! - svenstaro/miniserve&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: GitHub - svenstaro/miniserve: 🌟 For when you really just want to serve some files over HTTP right now! — 🌟 For when you really just want to serve some files over HTTP right now! - svenstaro/miniserve&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;GitHub - svenstaro/miniserve: 🌟 For when you really just want to serve some files over HTTP right now!&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;🌟 For when you really just want to serve some files over HTTP right now! - svenstaro/miniserve&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;GitHub · github.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;miniserve is a sweet http server, replacement for &lt;code&gt;python -m http.server&lt;/code&gt;.  It’s fast, runs off a small binary, but why would I want to use it over something that already exists on most machines, because it includes a bunch of features like qr codes, pretty themes, and uploads.  I’ve used &lt;code&gt;python -m http.server&lt;/code&gt; many times to transfer files from one machine to another in a pinch, like at a family members house.  But what if they have an android, windows, or something not easy to get a python repl running on, you can run miniserve and upload from their device rather than hosting from their device.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ svenstaro miniserve</title>
    <id>https://waylonwalker.com/svenstaro-miniserve/</id>
    <updated>2024-07-06T21:47:02Z</updated>
    <published>2024-07-06T21:47:02Z</published>
    <link href="https://waylonwalker.com/svenstaro-miniserve/" rel="alternate" type="text/html"></link>
    <summary type="text">Looking for inspiration? miniserve by svenstaro.</summary>
    <content type="html">&lt;p&gt;Looking for inspiration? &lt;a href=&#34;https://github.com/svenstaro/miniserve&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;miniserve&lt;/a&gt; by &lt;a href=&#34;https://github.com/svenstaro&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;svenstaro&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;🌟 For when you really just want to serve some files over HTTP right now!&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 pacman/Tips and tricks - ArchWiki</title>
    <id>https://waylonwalker.com/thought-337/</id>
    <updated>2024-07-06T16:52:09Z</updated>
    <published>2024-07-06T16:52:09Z</published>
    <link href="https://waylonwalker.com/thought-337/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://wiki.archlinux.org/title/pacman/Tips_tricks</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://wiki.archlinux.org/title/pacman/Tips_and_tricks&#34; class=&#34;embed-card-link  has-avatar has-avatar-before&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/wiki.archlinux.org.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/wiki.archlinux.org.ico&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;pacman/Tips and tricks - ArchWiki&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;wiki.archlinux.org&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;The arch wiki is always full of good content, and pacman tips and tricks does not disappoint.  Today I discovered this command to remove orphaned dependencies on my system.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;pacman -Qdtq &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt; pacman -Rns -&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Inside 22,734 Steam games | daniel.haxx.se</title>
    <id>https://waylonwalker.com/thought-336/</id>
    <updated>2024-07-06T16:48:21Z</updated>
    <published>2024-07-06T16:48:21Z</published>
    <link href="https://waylonwalker.com/thought-336/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://daniel.haxx.se/blog/2024/06/20/inside-22734-steam-games/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://daniel.haxx.se/blog/2024/06/20/inside-22734-steam-games/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://daniel.haxx.se/blog/wp-content/uploads/2016/09/GTA-end-credits-libcurl-1200x658.jpg&#34; alt=&#34;Inside 22,734 Steam games — About a year ago I blogged about games that use curl. In that post I listed a bunch of well-known titles I knew use curl and there was a list of 136 additional games giving credit to curl. Kind of amazing that over one hundred games decided to use curl! At the time, lots of … Continue reading Inside 22,734 Steam games →&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: Inside 22,734 Steam games — About a year ago I blogged about games that use curl. In that post I listed a bunch of well-known titles I knew use curl and there was a list of 136 additional games giving credit to curl. Kind of amazing that over one hundred games decided to use curl! At the time, lots of … Continue reading Inside 22,734 Steam games →&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Inside 22,734 Steam games&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;About a year ago I blogged about games that use curl. In that post I listed a bunch of well-known titles I knew use curl and there was a list of 136 additional games giving credit to curl. Kind of ...&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;daniel.haxx.se · daniel.haxx.se&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Interesting to see that curl is used in so many places.  I often think of things like games being so windows centric and curl being so linux centric I don’t even think of these things crossing paths as much as they do.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 wcurl is here | daniel.haxx.se</title>
    <id>https://waylonwalker.com/thought-335/</id>
    <updated>2024-07-06T16:46:19Z</updated>
    <published>2024-07-06T16:46:19Z</published>
    <link href="https://waylonwalker.com/thought-335/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://daniel.haxx.se/blog/2024/07/03/wcurl-is-here/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://daniel.haxx.se/blog/2024/07/03/wcurl-is-here/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://daniel.haxx.se/blog/wp-content/uploads/2019/04/tools-1209764_1280-1200x800.jpg&#34; alt=&#34;wcurl is here — Users tell us that remembering what curl options to use when they just want to download the contents of a URL is hard. This is one often repeated reason why some users reach for wget instead of curl on the command line. It downloads the data from the URL without you needing to provide any … Continue reading wcurl is here →&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: wcurl is here — Users tell us that remembering what curl options to use when they just want to download the contents of a URL is hard. This is one often repeated reason why some users reach for wget instead of curl on the command line. It downloads the data from the URL without you needing to provide any … Continue reading wcurl is here →&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;wcurl is here&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Users tell us that remembering what curl options to use when they just want to download the contents of a URL is hard. This is one often repeated reason why some users reach for wget instead of cur...&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;daniel.haxx.se · daniel.haxx.se&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;interesting, seems like such a simple way to completely remove the need of a whole other cli.  No offense to anyone working on wget, but generally I use it out of lazyness or something wierd is happening and I am looking for a second opinion.  Cool to know that wcurl exists and will start shipping with curl.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>arch remove orphaned packages</title>
    <id>https://waylonwalker.com/arch-remove-orphaned-packages/</id>
    <updated>2024-07-06T11:34:31Z</updated>
    <published>2024-07-06T11:34:31Z</published>
    <link href="https://waylonwalker.com/arch-remove-orphaned-packages/" rel="alternate" type="text/html"></link>
    <content type="text">&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>k8s kustomize diff</title>
    <id>https://waylonwalker.com/kubebernetes-kustomize-diff/</id>
    <updated>2024-07-06T09:42:42Z</updated>
    <published>2024-07-06T09:42:42Z</published>
    <link href="https://waylonwalker.com/kubebernetes-kustomize-diff/" rel="alternate" type="text/html"></link>
    <summary type="text">I&#39;ve started leaning in on kubernetes kustomize to customize my manifests per deployment per environment. Today I learned that it comes with a diff command.</summary>
    <content type="html">&lt;p&gt;I’ve started leaning in on kubernetes kustomize to customize my manifests per&#xA;deployment per environment.  Today I learned that it comes with a diff command.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;kubectl diff -k k8s/overlays/local&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;You can enable color diffs by using an external diff provider like colordiff.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;export&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;KUBECTL_EXTERNAL_DIFF&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;colordiff -N -u&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;You might need to install colordiff if you don’t already have it.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo pacman -S colordiff&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo apt install colordiff&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Now I can try out kustomize changes and see the change with kustomize diff.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>animal well keyboard</title>
    <id>https://waylonwalker.com/animal-well-keyboard/</id>
    <updated>2024-07-04T21:58:41Z</updated>
    <published>2024-07-04T21:58:41Z</published>
    <link href="https://waylonwalker.com/animal-well-keyboard/" rel="alternate" type="text/html"></link>
    <summary type="text">Animal well does not let you remap keys, and really doesn&#39;t even inform you that it is keyboard compatible. I had to play around and discover the keymap,...</summary>
    <content type="html">&lt;p&gt;Animal well does not let you remap keys, and really doesn’t even inform you&#xA;that it is keyboard compatible.  I had to play around and discover the keymap,&#xA;which can be a bit tricky on a 40% board.  This is what I found.&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;wasd - move&lt;/li&gt;&#xA;&lt;li&gt;space - jump / a&lt;/li&gt;&#xA;&lt;li&gt;enter - interact / b&lt;/li&gt;&#xA;&lt;li&gt;x - throw&lt;/li&gt;&#xA;&lt;li&gt;c - inventory&lt;/li&gt;&#xA;&lt;li&gt;1 - left item / rb&lt;/li&gt;&#xA;&lt;li&gt;2 - open item menu / triangle&lt;/li&gt;&#xA;&lt;li&gt;3 - right item / lb&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ Phil997 pydantic-sqlite</title>
    <id>https://waylonwalker.com/phil997-pydantic-sqlite/</id>
    <updated>2024-07-04T21:57:43Z</updated>
    <published>2024-07-04T21:57:43Z</published>
    <link href="https://waylonwalker.com/phil997-pydantic-sqlite/" rel="alternate" type="text/html"></link>
    <summary type="text">I recently discovered pydantic-sqlite by Phil997, and it&#39;s truly impressive.</summary>
    <content type="html">&lt;p&gt;I recently discovered &lt;a href=&#34;https://github.com/Phil997/pydantic-sqlite&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;pydantic-sqlite&lt;/a&gt; by &lt;a href=&#34;https://github.com/Phil997&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;Phil997&lt;/a&gt;, and it’s truly impressive.&lt;/p&gt;&#xA;&lt;p&gt;Simple package for storing pydantic BaseModels in an in-memory SQLite database.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Email Address Obfuscation · Cloudflare Web Application Firewal...</title>
    <id>https://waylonwalker.com/thought-334/</id>
    <updated>2024-07-04T15:18:11Z</updated>
    <published>2024-07-04T15:18:11Z</published>
    <link href="https://waylonwalker.com/thought-334/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://developers.cloudflare.com/waf/tools/scrape-shield/email-address-obfuscation/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://developers.cloudflare.com/waf/tools/scrape-shield/email-address-obfuscation/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://developers.cloudflare.com/core-services-preview.png&#34; alt=&#34;Email Address Obfuscation — Hide email addresses from bots while keeping them visible to visitors.&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: Email Address Obfuscation — Hide email addresses from bots while keeping them visible to visitors.&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Email Address Obfuscation&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Hide email addresses from bots while keeping them visible to visitors.&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;Cloudflare Docs · developers.cloudflare.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;I recently started seeing email-decode.min.js show up on my blog posts, and I wondered what the heck ?  I didn’t put it there.  Turns out that cloudflare put it there from pages to safely serve email addresses for me.&lt;/p&gt;&#xA;&lt;p&gt;inspecting the page without js running we can see that the mailto email is swapped out for &lt;em&gt;email protected&lt;/em&gt;.  Neat feature.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;❯ curl --silent https://waylonwalker.com/diskcache-as-debounce/ &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt; grep email&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&amp;lt;a &lt;span class=&#34;nv&#34;&gt;class&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;decoration-pink-500 hover:decoration-pink-300 hover:text-pink-100&amp;#34;&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;href&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;/cdn-cgi/l/email-protection#a4ccc1c8c8cbe4d3c5ddc8cbcad3c5c8cfc1d68ac7cbc9&amp;#34;&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;rel&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;me&amp;#34;&lt;/span&gt;&amp;gt;&amp;lt;span &lt;span class=&#34;nv&#34;&gt;class&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;__cf_email__&amp;#34;&lt;/span&gt; data-cfemail&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;630b060f0f0c2314021a0f0c0d14020f0806114d000c0e&amp;#34;&lt;/span&gt;&amp;gt;&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;email&lt;span class=&#34;p&#34;&gt;&amp;amp;&lt;/span&gt;&lt;span class=&#34;c1&#34;&gt;#160;protected]&amp;lt;/span&amp;gt;&amp;lt;/a&amp;gt;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&amp;lt;script data-cfasync&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;false&amp;#34;&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;src&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;/cdn-cgi/scripts/5c5dd728/cloudflare-static/email-decode.min.js&amp;#34;&lt;/span&gt;&amp;gt;&amp;lt;/script&amp;gt;&amp;lt;/body&amp;gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Looking deeper into this article it looks like this feature comes from Scrape Shield and enabling Email Address Obfuscation.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Background Tasks - FastAPI</title>
    <id>https://waylonwalker.com/thought-333/</id>
    <updated>2024-07-03T16:17:45Z</updated>
    <published>2024-07-03T16:17:45Z</published>
    <link href="https://waylonwalker.com/thought-333/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://fastapi.tiangolo.com/tutorial/background-tasks/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://fastapi.tiangolo.com/tutorial/background-tasks/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://fastapi.tiangolo.com/assets/images/social/tutorial/background-tasks.png&#34; alt=&#34;Background Tasks - FastAPI — FastAPI framework, high performance, easy to learn, fast to code, ready for production&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: Background Tasks - FastAPI — FastAPI framework, high performance, easy to learn, fast to code, ready for production&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Background Tasks - FastAPI&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;FastAPI framework, high performance, easy to learn, fast to code, ready for production&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;fastapi.tiangolo.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;&lt;a href=&#34;/fastapi/&#34; class=&#34;glossary-term&#34; title=&#34;FastAPI is a modern and efficient web framework for Python, built on top of the Starlette web framework, and pydantic for data validation and serialization.&#34;&gt;fastapi&lt;/a&gt; comes with a concept of background tasks which are functions that can be ran in the background after a function has been ran.  This is handy for longer running functions that may take some time and you want to have fast response times.&lt;/p&gt;&#xA;&lt;p&gt;Here is an example from the docs&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;kn&#34;&gt;from&lt;/span&gt; &lt;span class=&#34;nn&#34;&gt;fastapi&lt;/span&gt; &lt;span class=&#34;kn&#34;&gt;import&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;BackgroundTasks&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;FastAPI&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;app&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;FastAPI&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;()&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;def&lt;/span&gt; &lt;span class=&#34;nf&#34;&gt;write_notification&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;email&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;nb&#34;&gt;str&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;message&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;):&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;k&#34;&gt;with&lt;/span&gt; &lt;span class=&#34;nb&#34;&gt;open&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;log.txt&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;mode&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;w&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;as&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;email_file&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;n&#34;&gt;content&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;sa&#34;&gt;f&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;notification for &lt;/span&gt;&lt;span class=&#34;si&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;email&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;}&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;: &lt;/span&gt;&lt;span class=&#34;si&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;message&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;}&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;n&#34;&gt;email_file&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;write&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;content&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nd&#34;&gt;@app.post&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;/send-notification/&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;{email}&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;async&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;def&lt;/span&gt; &lt;span class=&#34;nf&#34;&gt;send_notification&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;email&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;nb&#34;&gt;str&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;background_tasks&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;BackgroundTasks&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;):&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;n&#34;&gt;background_tasks&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;add_task&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;write_notification&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;email&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;message&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;some notification&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;k&#34;&gt;return&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;message&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;Notification sent in the background&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;}&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 markdown-it-pyrs · PyPI</title>
    <id>https://waylonwalker.com/thought-332/</id>
    <updated>2024-07-03T13:56:30Z</updated>
    <published>2024-07-03T13:56:30Z</published>
    <link href="https://waylonwalker.com/thought-332/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://pypi.org/project/markdown-it-pyrs/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://pypi.org/project/markdown-it-pyrs/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://pypi.org/static/images/twitter.abaf4b19.webp&#34; alt=&#34;markdown-it-pyrs — A Python interface for markdown-it.rs, using Rust for blazingly fast Markdown parsing ⚡️&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: markdown-it-pyrs — A Python interface for markdown-it.rs, using Rust for blazingly fast Markdown parsing ⚡️&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;markdown-it-pyrs&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;A Python interface for markdown-it.rs, using Rust for blazingly fast Markdown parsing ⚡️&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;PyPI · pypi.org&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;markdown it py running in rust claims to be 20x faster.  I’ll definitely look into this if markdown it py is ever a bottleneck in my performance.  At first glance it appears that plugins are written in rust not python, and there is no admonition plugin, so I’ll keep my eye on it for now, but I can’t use it.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 DiskCache API Reference — DiskCache 5.6.1 documentation</title>
    <id>https://waylonwalker.com/thought-331/</id>
    <updated>2024-07-03T13:35:12Z</updated>
    <published>2024-07-03T13:35:12Z</published>
    <link href="https://waylonwalker.com/thought-331/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://grantjenks.com/docs/diskcache/api.html#diskcache.Cache.peekitem</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;/static/https://grantjenks.com/docs/diskcache/api.html#diskcache.Cache.peekitem&#34; class=&#34;glightbox-link&#34; aria-label=&#34;https://grantjenks.com/docs/diskcache/api.html#diskcache.Cache.peekitem&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;/static/https://grantjenks.com/docs/diskcache/api.html#diskcache.Cache.peekitem&#34; alt=&#34;https://grantjenks.com/docs/diskcache/api.html#diskcache.Cache.peekitem&#34;/ data-glightbox=&#34;description: https://grantjenks.com/docs/diskcache/api.html#diskcache.Cache.peekitem&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;p&gt;diskcache has a peekitem method that allows you to lookup the expire_time of a cached item without changing it.  I recently used this to implement debounce for &lt;a href=&#34;/fastapi/&#34; class=&#34;glossary-term&#34; title=&#34;FastAPI is a modern and efficient web framework for Python, built on top of the Starlette web framework, and pydantic for data validation and serialization.&#34;&gt;fastapi&lt;/a&gt; background tasks with multiple workers running.  since all the workers I care about are on the same machine, but running in different processes diskcache was a great option.  All workers have access to the same disk, but not the same variables in memory.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Kustomize: The Best Way to Manage Your Kubernetes Configs - Yo...</title>
    <id>https://waylonwalker.com/thought-330/</id>
    <updated>2024-07-03T13:31:47Z</updated>
    <published>2024-07-03T13:31:47Z</published>
    <link href="https://waylonwalker.com/thought-330/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/watch?v=spCdNeNCuFU&amp;t=247s</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;spCdNeNCuFU&#34; title=&#34;Kustomize: The Best Way to Manage Your Kubernetes Configs&#34; playlabel=&#34;Play: Kustomize: The Best Way to Manage Your Kubernetes Configs&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Great intro into kustomize.  This helped me get started with kustomize.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>diskcache as debounce</title>
    <id>https://waylonwalker.com/diskcache-as-debounce/</id>
    <updated>2024-07-03T11:14:11Z</updated>
    <published>2024-07-03T11:14:11Z</published>
    <link href="https://waylonwalker.com/diskcache-as-debounce/" rel="alternate" type="text/html"></link>
    <summary type="text">I&#39;ve been using fastapi more and more lately and one feature I just started using is background tasks thoughts-333.</summary>
    <content type="html">&lt;p&gt;I’ve been using &lt;a href=&#34;/fastapi/&#34; class=&#34;glossary-term&#34; title=&#34;FastAPI is a modern and efficient web framework for Python, built on top of the Starlette web framework, and pydantic for data validation and serialization.&#34;&gt;fastapi&lt;/a&gt; more and more lately and one feature I just started&#xA;using is background tasks [[ thoughts-333 ]].&lt;/p&gt;&#xA;&lt;div class=&#34;admonition seealso&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Seealso&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;basic diskcache example &amp;lt;a href=&amp;#34;/python-diskcache/&amp;#34; class=&amp;#34;wikilink&amp;#34; data-title=&amp;#34;How I setup a sqlite cache in python&amp;#34; data-description=&amp;#34;When I need to cache some data between runs or share a cache accross multiple processes my go to library in python is . It&amp;amp;#39;s built on sqlite with just enough...&amp;#34; data-date=&amp;#34;2022-03-29&amp;#34;&amp;gt;How I setup a sqlite cache in python&amp;lt;/a&amp;gt;&#xA;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;/div&gt;&#xA;&lt;h2 id=&#34;one-background-task-per-db-entry&#34;&gt;One Background Task per db entry &lt;a href=&#34;#one-background-task-per-db-entry&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;I am using it for longer running tasks and I don’t want to give users the&#xA;ability to spam these long running tasks with many duplicates running at the&#xA;same time. And each fastapi worker will be running in a different process so I&#xA;cannot keep track of work in memory, I have to do it in a distributed fashion.&#xA;Since they are all running on the same machine with access to the same disk,&#xA;diskcache is a good choice&lt;/p&gt;&#xA;&lt;h2 id=&#34;what-i-need&#34;&gt;What I need &lt;a href=&#34;#what-i-need&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;check if a job is running&lt;/li&gt;&#xA;&lt;li&gt;automatically expire jobs&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;h2 id=&#34;less-infrastructure-complexity&#34;&gt;Less infrastructure complexity &lt;a href=&#34;#less-infrastructure-complexity&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;My brain first went to thinking I needed another service like redis running&#xA;alongside fastapi for this, then it hit me that I can use diskcache.&lt;/p&gt;&#xA;&lt;h2 id=&#34;how-i-used-diskcache&#34;&gt;How I used diskcache &lt;a href=&#34;#how-i-used-diskcache&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;Here is how I used diskcache to debounce taking screenshots for a unique shot&#xA;every 60 seconds.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;kn&#34;&gt;from&lt;/span&gt; &lt;span class=&#34;nn&#34;&gt;diskcache&lt;/span&gt; &lt;span class=&#34;kn&#34;&gt;import&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;Cache&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;jobs_cache&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;Cache&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;jobs-cache&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nd&#34;&gt;@shots_router.get&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;/shot/&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;{shot_id}&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;responses&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;200&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;content&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;image/webp&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{}}}})&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nd&#34;&gt;@shots_router.get&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;/shot/&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;{shot_id}&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;/&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;responses&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;200&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;content&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;image/webp&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{}}}})&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;async&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;def&lt;/span&gt; &lt;span class=&#34;nf&#34;&gt;get_shot_by_id&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;n&#34;&gt;background_tasks&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;BackgroundTasks&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;n&#34;&gt;request&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;Request&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;n&#34;&gt;shot_id&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;nb&#34;&gt;int&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;):&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;n&#34;&gt;shot&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;Shot&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;get&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;shot_id&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;c1&#34;&gt;# check if the shot exists and return it or continue to create it.&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;n&#34;&gt;is_running&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;jobs_cache&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;get&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;shot_id&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;k&#34;&gt;if&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;is_running&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;n&#34;&gt;expire_time&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;datetime&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;fromtimestamp&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;jobs_cache&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;peekitem&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;expire_time&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;kc&#34;&gt;True&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)[&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;1&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;])&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;-&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;datetime&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;now&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;()&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;n&#34;&gt;console&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;print&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;[red]Already running store_shot: &amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;shot_id&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;n&#34;&gt;console&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;print&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;sa&#34;&gt;f&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;[red]Can retry in &lt;/span&gt;&lt;span class=&#34;si&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;expire_time&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;seconds&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;}&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;s&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;k&#34;&gt;else&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;n&#34;&gt;jobs_cache&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;set&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;shot_id&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;kc&#34;&gt;True&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;mi&#34;&gt;60&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;n&#34;&gt;background_tasks&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;add_task&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;            &lt;span class=&#34;n&#34;&gt;store_shot&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;            &lt;span class=&#34;n&#34;&gt;shot_id&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;shot_id&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ Doomlab7 homelab-diagrams</title>
    <id>https://waylonwalker.com/doomlab7-homelab-diagrams/</id>
    <updated>2024-07-02T13:17:32Z</updated>
    <published>2024-07-02T13:17:32Z</published>
    <link href="https://waylonwalker.com/doomlab7-homelab-diagrams/" rel="alternate" type="text/html"></link>
    <summary type="text">I&#39;m really excited about homelab-diagrams, an amazing project by Doomlab7. It&#39;s worth exploring!</summary>
    <content type="html">&lt;p&gt;I’m really excited about &lt;a href=&#34;https://github.com/Doomlab7/homelab-diagrams&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;homelab-diagrams&lt;/a&gt;, an amazing project by &lt;a href=&#34;https://github.com/Doomlab7&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;Doomlab7&lt;/a&gt;. It’s worth exploring!&lt;/p&gt;&#xA;&lt;p&gt;A repository to house diagrams for my &lt;a href=&#34;/homelab/&#34; class=&#34;glossary-term&#34; title=&#34;A place to self host applications. For me this is primarily self built web applications, and applications for sharing files with my family. Techno Tim has a...&#34;&gt;homelab&lt;/a&gt;&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ pypeaday learn-pdm</title>
    <id>https://waylonwalker.com/pypeaday-learn-pdm/</id>
    <updated>2024-07-02T13:17:29Z</updated>
    <published>2024-07-02T13:17:29Z</published>
    <link href="https://waylonwalker.com/pypeaday-learn-pdm/" rel="alternate" type="text/html"></link>
    <summary type="text">learn-pdm by pypeaday is a game-changer in its space. Excited to see how it evolves.</summary>
    <content type="html">&lt;p&gt;&lt;a href=&#34;https://github.com/pypeaday/learn-pdm&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;learn-pdm&lt;/a&gt; by &lt;a href=&#34;https://github.com/pypeaday&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;pypeaday&lt;/a&gt; is a game-changer in its space. Excited to see how it evolves.&lt;/p&gt;&#xA;&lt;p&gt;A repository for learning and playing with the pdm package manager/system for python&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ wyattbubbylee zmk-config-fourpad</title>
    <id>https://waylonwalker.com/wyattbubbylee-zmk-config-fourpad/</id>
    <updated>2024-07-02T13:17:21Z</updated>
    <published>2024-07-02T13:17:21Z</published>
    <link href="https://waylonwalker.com/wyattbubbylee-zmk-config-fourpad/" rel="alternate" type="text/html"></link>
    <summary type="text">If you&#39;re into interesting projects, don&#39;t miss out on zmk-config-fourpad, created by wyattbubbylee.</summary>
    <content type="html">&lt;p&gt;If you’re into interesting projects, don’t miss out on &lt;a href=&#34;https://github.com/wyattbubbylee/zmk-config-fourpad&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;zmk-config-fourpad&lt;/a&gt;, created by &lt;a href=&#34;https://github.com/wyattbubbylee&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;wyattbubbylee&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;my fourpad keybord&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>kind cluster</title>
    <id>https://waylonwalker.com/kind-cluster/</id>
    <updated>2024-07-02T08:01:20Z</updated>
    <published>2024-07-02T08:01:20Z</published>
    <link href="https://waylonwalker.com/kind-cluster/" rel="alternate" type="text/html"></link>
    <summary type="text">kind is a very useful tool to quickly standup and teardown kubernetes clusters. I use it to run clusters locally. Generally they are short lived clusters for...</summary>
    <content type="html">&lt;p&gt;&lt;a href=&#34;https://kind.sigs.k8s.io/&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/kind.sigs.k8s.io.png&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/kind.sigs.k8s.io.png&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;kind&lt;/a&gt;{.hoverlink} is a very useful tool to quickly standup and&#xA;teardown kubernetes clusters.  I use it to run clusters locally.  Generally&#xA;they are short lived clusters for trying, testing, and learning about&#xA;kubernetes.&lt;/p&gt;&#xA;&lt;p&gt;Kind is Kubernetes in Docker, its very fast to get a new cluster up and&#xA;running.  Other than checking a box in docker desktop it is the easiest way&#xA;currently to get a cluster up and running.  I’ve used docker desktop for k8s&#xA;before I really developed on k8s and it was buggy at the time and sometimes&#xA;started and sometimes didn’t, when it didnt I had no idea how to fix it.  I’d&#xA;suggest kind as the best option to get a cluster up and running locally.&lt;/p&gt;&#xA;&lt;h2 id=&#34;not-production&#34;&gt;Not Production &lt;a href=&#34;#not-production&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;If you are looking for a production ready cluster this is not it.  I really&#xA;like &lt;a href=&#34;https://k3s.io/&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/k3s.io.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/k3s.io.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;k3s&lt;/a&gt;{.hoverlink}.  At the time that I chose k3s it was&#xA;the most lightweight option that easily supported multi-node clusters.&lt;/p&gt;&#xA;&lt;h2 id=&#34;starting-a-kind-cluster&#34;&gt;Starting a kind cluster &lt;a href=&#34;#starting-a-kind-cluster&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;The first step, and maybe only one that you need is to create a cluster and&#xA;give it a name.  This command will edit your $KUBECONFIG file, and set the kind&#xA;cluster as your default cluster to interact with.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;kind create cluster --name &amp;lt;CLUSTER_NAME&amp;gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;h2 id=&#34;using-podmanhttpspodmanio-as-a-backend&#34;&gt;Using &lt;a href=&#34;https://podman.io/&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/podman.io.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/podman.io.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;podman&lt;/a&gt; as a backend &lt;a href=&#34;#using-podmanhttpspodmanio-as-a-backend&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;I use podman as my docker engine, kind works with docker and podman, but docker&#xA;by default, in order to switch to podman you need to set an environment&#xA;variable.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;export&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;KIND_EXPERIMENTAL_PROVIDER&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;podman&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;This will tell kind to use podman as the backend provider instead of docker.&lt;/p&gt;&#xA;&lt;h2 id=&#34;loading-images&#34;&gt;Loading images &lt;a href=&#34;#loading-images&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;If your images are not publically available from a registry, you can load them&#xA;in kind using the &lt;code&gt;kind load docker-image&lt;/code&gt; command.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;kind load docker-image &lt;span class=&#34;nv&#34;&gt;$REPOSITORY&lt;/span&gt;:&lt;span class=&#34;nv&#34;&gt;$TAG&lt;/span&gt; --name &amp;lt;CLUSTER_NAME&amp;gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt; the CLUSTER_NAME is the name that you gave kind when you started the kind cluster.&#xA;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;/div&gt;&#xA;&lt;h2 id=&#34;argocd&#34;&gt;Argocd &lt;a href=&#34;#argocd&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;Argocd is a great way to setup gitops workflows in kubernetes.  compared to&#xA;just hand-rolling kubectl apply, argo holds the state and is able to not only&#xA;apply new and change, but cleanup removed things.&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;/kind-cluster-with-argo/&#34; class=&#34;wikilink&#34; data-title=&#34;setting up a kind cluster with argocd installed&#34; data-description=&#34;Kind (Kubernetes in Docker) is a tool that makes it easy to create and tear down local clusters quickly. I like to use it to test out new workflows.&#34; data-date=&#34;2024-04-04&#34; data-preview=&#34;Kind (Kubernetes in Docker) is a tool that makes it easy to create and tear down local clusters quickly. I like to use it to test out new workflows.&#34;&gt;setting up a kind cluster with argocd installed&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;You can stand up argocd in kind for learning argo or getting a nice visual.&#xA;But often when I use kind its overkill.  The cluster is not long lived, I don’t&#xA;care if things are not cleaned up, and I want to quickly apply changes without&#xA;a commit and push to a &lt;a href=&#34;/glossary/git/&#34; class=&#34;glossary-term&#34; title=&#34;Git is a version control system for tracking changes in source code during software development. In the beginning there were many, some were licensed. As...&#34;&gt;git&lt;/a&gt; repo.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Install sealed-secreats via manifest</title>
    <id>https://waylonwalker.com/install-sealed-secreats-via-manifest/</id>
    <updated>2024-07-02T07:54:01Z</updated>
    <published>2024-07-02T07:54:01Z</published>
    <link href="https://waylonwalker.com/install-sealed-secreats-via-manifest/" rel="alternate" type="text/html"></link>
    <summary type="text">Yesterday I realized that I have overlooked the default installation method of the sealed secrets controller for kubernetes-kubeseal this whole time an...</summary>
    <content type="html">&lt;p&gt;Yesterday I realized that I have overlooked the default installation method of&#xA;the sealed secrets controller for &lt;a href=&#34;/kubernetes-kubeseal/&#34; class=&#34;wikilink&#34; data-title=&#34;kubernetes kubeseal&#34; data-description=&#34;In my homelab kubernetes cluster I am using kubeseal to encrypt secrets. I have been using it successfully for a few months now wtih great success. It allows...&#34; data-date=&#34;2024-03-27&#34; data-preview=&#34;In my homelab kubernetes cluster I am using kubeseal to encrypt secrets. I have been using it successfully for a few months now wtih great success. It allows...&#34;&gt;kubernetes kubeseal&lt;/a&gt; this whole time an&#xA;jumped straight to the helm section.  I spun up a quick &lt;a href=&#34;/kind-cluster/&#34; class=&#34;wikilink&#34; data-title=&#34;kind cluster&#34; data-description=&#34;kind is a very useful tool to quickly standup and teardown kubernetes clusters. I use it to run clusters locally. Generally they are short lived clusters for...&#34; data-date=&#34;2024-07-02&#34; data-preview=&#34;kind is a very useful tool to quickly standup and teardown kubernetes clusters. I use it to run clusters locally. Generally they are short lived clusters for...&#34;&gt;kind cluster&lt;/a&gt; and&#xA;had it up quickly.  I can’t say this is any better or worse than helm as I have&#xA;never needed to customize the install.  According to the docs you can customize&#xA;it with [[ kustomize ]] or helm.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# option if you don&amp;#39;t have a cluster try with kind&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;kind create cluster&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;curl -L https://github.com/bitnami-labs/sealed-secrets/releases/download/v0.27.0/controller.yaml &amp;gt; controller.yaml&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;kubectl apply -f controller.yaml&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ rothgar bashScheduler</title>
    <id>https://waylonwalker.com/rothgar-bashscheduler/</id>
    <updated>2024-07-01T16:06:43Z</updated>
    <published>2024-07-01T16:06:43Z</published>
    <link href="https://waylonwalker.com/rothgar-bashscheduler/" rel="alternate" type="text/html"></link>
    <summary type="text">I like rothgar&#39;s project bashScheduler.</summary>
    <content type="html">&lt;p&gt;I like &lt;a href=&#34;https://github.com/rothgar&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;rothgar’s&lt;/a&gt; project &lt;a href=&#34;https://github.com/rothgar/bashScheduler&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;bashScheduler&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Kubernetes scheduler written in less than 100 lines of bash 😬 😆&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Alternatives · joric/nrfmicro Wiki</title>
    <id>https://waylonwalker.com/thought-329/</id>
    <updated>2024-07-01T14:48:16Z</updated>
    <published>2024-07-01T14:48:16Z</published>
    <link href="https://waylonwalker.com/thought-329/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://github.com/joric/nrfmicro/wiki/Alternatives</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://github.com/joric/nrfmicro/wiki/Alternatives&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://repository-images.githubusercontent.com/172212364/25ae5300-bf28-11ea-9777-6692355edc9e&#34; alt=&#34;Alternatives — A Pro Micro alternative for wireless keyboards. Contribute to joric/nrfmicro development by creating an account on GitHub.&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: Alternatives — A Pro Micro alternative for wireless keyboards. Contribute to joric/nrfmicro development by creating an account on GitHub.&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Alternatives&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;A Pro Micro alternative for wireless keyboards. Contribute to joric/nrfmicro development by creating an account on GitHub.&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;GitHub · github.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Huge list of micro controllers tried and used in keeb builds.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ joric nrfmicro</title>
    <id>https://waylonwalker.com/joric-nrfmicro/</id>
    <updated>2024-07-01T14:44:42Z</updated>
    <published>2024-07-01T14:44:42Z</published>
    <link href="https://waylonwalker.com/joric-nrfmicro/" rel="alternate" type="text/html"></link>
    <summary type="text">I&#39;m impressed by nrfmicro from joric.</summary>
    <content type="html">&lt;p&gt;I’m impressed by &lt;a href=&#34;https://github.com/joric/nrfmicro&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;nrfmicro&lt;/a&gt; from &lt;a href=&#34;https://github.com/joric&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;joric&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;A Pro Micro alternative for wireless keyboards&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Waylon Walker - handwired macropads on X: &#34;First bit of hand w...</title>
    <id>https://waylonwalker.com/thought-328/</id>
    <updated>2024-07-01T02:02:31Z</updated>
    <published>2024-07-01T02:02:31Z</published>
    <link href="https://waylonwalker.com/thought-328/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://x.com/_WaylonWalker/status/1807594004453667134</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://x.com/_WaylonWalker/status/1807594004453667134&#34; class=&#34;embed-card-link  has-avatar has-avatar-before&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/x.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/x.com.ico&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;External Link&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;X (formerly Twitter) · x.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Not gonna lie, kinda pumped about this one.  I manually did one, jotted down the coordinates, opened the gcode in vim, added markers between setup/teardown and print. then added the wipe, the copy pasted the print+wipe section a bunch of times.&lt;/p&gt;&#xA;&lt;p&gt;My printer tends to run a bit better on single prints than printing a dozen at once as it has less issues with retract start and stop.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Find And Replace one eyed kirby</title>
    <id>https://waylonwalker.com/thought-327/</id>
    <updated>2024-06-30T17:30:38Z</updated>
    <published>2024-06-30T17:30:38Z</published>
    <link href="https://waylonwalker.com/thought-327/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/shorts/v2a6Nv7RSd0</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;v2a6Nv7RSd0&#34; title=&#34;Find And Replace&#34; playlabel=&#34;Play: Find And Replace&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;another great use and demo of the one eyed fighting kirby&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 PolyFill Vulnerability is WILD - YouTube</title>
    <id>https://waylonwalker.com/thought-326/</id>
    <updated>2024-06-28T19:48:03Z</updated>
    <published>2024-06-28T19:48:03Z</published>
    <link href="https://waylonwalker.com/thought-326/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/watch?si=6NK4iCu1b1rCDo7a&amp;t=555&amp;v=mmlHQyMOK7Y&amp;feature=youtu.be</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;/static/https://www.youtube.com/watch?si=6NK4iCu1b1rCDo7a&amp;amp;t=555&amp;amp;v=mmlHQyMOK7Y&amp;amp;feature=youtu.be&#34; class=&#34;glightbox-link&#34; aria-label=&#34;https://www.youtube.com/watch?si=6NK4iCu1b1rCDo7a&amp;amp;amp;t=555&amp;amp;amp;v=mmlHQyMOK7Y&amp;amp;amp;feature=youtu.be&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;/static/https://www.youtube.com/watch?si=6NK4iCu1b1rCDo7a&amp;amp;t=555&amp;amp;v=mmlHQyMOK7Y&amp;amp;feature=youtu.be&#34; alt=&#34;https://www.youtube.com/watch?si=6NK4iCu1b1rCDo7a&amp;amp;t=555&amp;amp;v=mmlHQyMOK7Y&amp;amp;feature=youtu.be&#34;/ data-glightbox=&#34;description: https://www.youtube.com/watch?si=6NK4iCu1b1rCDo7a&amp;amp;t=555&amp;amp;v=mmlHQyMOK7Y&amp;amp;feature=youtu.be&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;p&gt;Damn, supply chain vector attacks are wild. Random guy in Primes stream was getting $40k offers to buy their open source project while in university and they have never made anything from it.  What a social engineering attack this is.  It would be so easy to make it look like a good deal and that the package was going to a good new owner who has real resources to maintain it.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Found: OverlayKey X – Thomas Baart&#39;s Microblog</title>
    <id>https://waylonwalker.com/thought-325/</id>
    <updated>2024-06-28T18:35:52Z</updated>
    <published>2024-06-28T18:35:52Z</published>
    <link href="https://waylonwalker.com/thought-325/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://micro.thomasbaart.nl/2024/06/12/overlaykey-x/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://micro.thomasbaart.nl/2024/06/12/overlaykey-x/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://micro.thomasbaart.nl/wp-content/uploads/2024/06/D2209563-F35F-4C72-8134-94BE6D247251-1024x771.jpeg&#34; alt=&#34;Found: OverlayKey X — Designed by @yfuku_, a keyboard to place on top of your laptop.&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: Found: OverlayKey X — Designed by @yfuku_, a keyboard to place on top of your laptop.&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Found: OverlayKey X&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Designed by @yfuku_, a keyboard to place on top of your laptop.&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;Thomas Baart&amp;#39;s Microblog · micro.thomasbaart.nl&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;This is almost exactly what I have been thinking about building for quite awhile.  I am going to give it a good try with a few $$ in filiment some cheap switches a microcontroller and go pretty bare bones, maybe open wiring on the bottom.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Queueing – An interactive study of queueing strategies – Encor...</title>
    <id>https://waylonwalker.com/thought-324/</id>
    <updated>2024-06-28T16:19:37Z</updated>
    <published>2024-06-28T16:19:37Z</published>
    <link href="https://waylonwalker.com/thought-324/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://encore.dev/blog/queueing</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://encore.dev/blog/queueing&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://encore.dev/assets/blog/card/queueing_cover.png&#34; alt=&#34;Queueing – An interactive study of queueing strategies – Encore Blog — In this blog, we go on an interactive journey to understand common queueing strategies for handling HTTP requests.&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: Queueing – An interactive study of queueing strategies – Encore Blog — In this blog, we go on an interactive journey to understand common queueing strategies for handling HTTP requests.&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Queueing – An interactive study of queueing strategies – Encore Blog&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;In this blog, we go on an interactive journey to understand common queueing strategies for handling HTTP requests.&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;Encore — Open Source Backend Framework for robust distributed systems · encore.dev&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Absolutely sick post.   This is top tier animated blog posts.  This posts demos how different queuing systems work with fantastic interactive demos.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 One Script Tag Just Pwn&#39;d Over 100,000 Websites - YouTube</title>
    <id>https://waylonwalker.com/thought-323/</id>
    <updated>2024-06-28T16:08:20Z</updated>
    <published>2024-06-28T16:08:20Z</published>
    <link href="https://waylonwalker.com/thought-323/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/watch?v=ILvNG1STUZU&amp;t=286s</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;ILvNG1STUZU&#34; title=&#34;One Script Tag Just Pwn&amp;#39;d Over 100,000 Websites&#34; playlabel=&#34;Play: One Script Tag Just Pwn&amp;#39;d Over 100,000 Websites&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Supply chain attacks are so big these days engineers definitely need to take these into consideration.  It’s wild that such a simple attack vector hit some really big applications.  This particular vector is so easy to avoid. You are already hosting web content, just curl the file and &lt;a href=&#34;/self-host/&#34; class=&#34;glossary-term&#34; title=&#34;Self hosting is the act of hosting your own applications and services without using a SAS provider. This is typically done with your own hardware, but there...&#34;&gt;self host&lt;/a&gt; the script, then you own it.  That eliminates this attack vector all together, but doesn’t completely remove supply chain attacks, the js file can still hit external apis internally.&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;What I see has happened in this case is that the owner of the domain polyfill.io changed. so anyone who directly linked to them got a malware injected script used.&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;p&gt;I can only imagine the number of applicatons that are not even being maintained anymore getting hit by this.  TLDR, if you are taking something to production, where you are goind to deploy it and let it run, host the js yourself.  these cdns are great for prototyping, but tread with caution.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Don&#39;t Cheat Yourself - YouTube</title>
    <id>https://waylonwalker.com/thought-322/</id>
    <updated>2024-06-28T16:01:00Z</updated>
    <published>2024-06-28T16:01:00Z</published>
    <link href="https://waylonwalker.com/thought-322/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/shorts/NMQuGlQ0XHQ</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://www.youtube.com/shorts/NMQuGlQ0XHQ&#34; class=&#34;embed-card-link  has-avatar has-avatar-before&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/www.youtube.com.png&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/www.youtube.com.png&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;- YouTube&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Enjoy the videos and music you love, upload original content, and share it all with friends, family, and the world on YouTube.&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;youtube.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Well spoken prime. Co-pilot is a fantastic tool for templating, boilerplate, or just getting something done that is just outside your knowledge or care to know.  Bit if you really want to learn something, you need to use your hands.  Reading the solution only gives you the happy path.  This does not give you that path that most people would take, and completely misses debugging.  If you are very new and learning it’s unlikely that you can write large blocks of code without running a test or a script to try it.  Taking these shortcuts will hinder your ability to do it yourself.&lt;/p&gt;&#xA;&lt;p&gt;If I were to devils advocate here, copilot is still not the greatest at the big picture, you still have to drive, and tell it I want to use python, &lt;a href=&#34;/fastapi/&#34; class=&#34;glossary-term&#34; title=&#34;FastAPI is a modern and efficient web framework for Python, built on top of the Starlette web framework, and pydantic for data validation and serialization.&#34;&gt;fastapi&lt;/a&gt;, I want to load settings from .env.  taking these shortcuts can help you move quick and get the big picture.  This is especially helpful for someone who might know one language or framework and is trying a different one, but at some point you need to do the work and learn if you are going to be effective.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 PyAnnotate: Auto-generate PEP-484 annotations</title>
    <id>https://waylonwalker.com/thought-321/</id>
    <updated>2024-06-26T21:37:14Z</updated>
    <published>2024-06-26T21:37:14Z</published>
    <link href="https://waylonwalker.com/thought-321/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://github.com/dropbox/pyannotate</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://github.com/dropbox/pyannotate&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://opengraph.githubassets.com/ab56c6b9cbda16e3233acced437d35654ca1d36f4ef76d935a811c896cff793e/dropbox/pyannotate&#34; alt=&#34;GitHub - dropbox/pyannotate: Auto-generate PEP-484 annotations — Auto-generate PEP-484 annotations. Contribute to dropbox/pyannotate development by creating an account on GitHub.&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: GitHub - dropbox/pyannotate: Auto-generate PEP-484 annotations — Auto-generate PEP-484 annotations. Contribute to dropbox/pyannotate development by creating an account on GitHub.&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;GitHub - dropbox/pyannotate: Auto-generate PEP-484 annotations&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Auto-generate PEP-484 annotations. Contribute to dropbox/pyannotate development by creating an account on GitHub.&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;GitHub · github.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;pyannotate is a tool that uses runtime types to suggest type annotations to use.  Test runners such as pytest can be used to generate the types.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 qmk_firmware/docs/features/programmable_button.md at master · ...</title>
    <id>https://waylonwalker.com/thought-320/</id>
    <updated>2024-06-26T01:19:41Z</updated>
    <published>2024-06-26T01:19:41Z</published>
    <link href="https://waylonwalker.com/thought-320/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://github.com/qmk/qmk_button.md</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;/static/https://github.com/qmk/qmk_firmware/blob/master/docs/features/programmable_button.md&#34; class=&#34;glightbox-link&#34; aria-label=&#34;https://github.com/qmk/qmk_firmware/blob/master/docs/features/programmable_button.md&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;/static/https://github.com/qmk/qmk_firmware/blob/master/docs/features/programmable_button.md&#34; alt=&#34;https://github.com/qmk/qmk_firmware/blob/master/docs/features/programmable_button.md&#34;/ data-glightbox=&#34;description: https://github.com/qmk/qmk_firmware/blob/master/docs/features/programmable_button.md&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;p&gt;Interesting, linux supports 32 programmable buttons, special buttons that do nothing that hotkey programs like xbindkeys can pick up and run things, seems like it would be very intersting to use on a macro pad.  You could easily do dynamic and complex tasks without clashing that keybinding with something else.&lt;/p&gt;&#xA;&lt;p&gt;I’m going to look into this for my next obs setup.  No matter what I try to do with the hyper key it always tends to do odd things depending on the application I am in.  typically its tmux, and it starts trying to do something I don’t want it to.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 tusharsadhwani/yen: Create virtual environments for any Python...</title>
    <id>https://waylonwalker.com/thought-319/</id>
    <updated>2024-06-26T01:13:09Z</updated>
    <published>2024-06-26T01:13:09Z</published>
    <link href="https://waylonwalker.com/thought-319/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://github.com/tusharsadhwani/yen</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://github.com/tusharsadhwani/yen&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://opengraph.githubassets.com/aa11a691eb831d7388d2300beb9048270c3e1e350ead4fb0e3de703c6a1fb40e/tusharsadhwani/yen&#34; alt=&#34;GitHub - tusharsadhwani/yen: The last Python environment manager you&amp;#39;ll ever need. — The last Python environment manager you&amp;#39;ll ever need. - tusharsadhwani/yen&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: GitHub - tusharsadhwani/yen: The last Python environment manager you&amp;#39;ll ever need. — The last Python environment manager you&amp;#39;ll ever need. - tusharsadhwani/yen&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;GitHub - tusharsadhwani/yen: The last Python environment manager you&amp;#39;ll ever need.&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;The last Python environment manager you&amp;#39;ll ever need. - tusharsadhwani/yen&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;GitHub · github.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;Create virtual environments for any Python version, without needing Python installed.&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Where DOESN’T curl run with curl BDFL Daniel Stenberg (Changel...</title>
    <id>https://waylonwalker.com/thought-318/</id>
    <updated>2024-06-25T23:39:38Z</updated>
    <published>2024-06-25T23:39:38Z</published>
    <link href="https://waylonwalker.com/thought-318/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://changelog.com/friends/49</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://changelog.com/friends/49&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://snap.fly.dev/friends/49/img&#34; alt=&#34;Where DOESN’T curl run with curl BDFL Daniel Stenberg (Changelog &amp;amp; Friends #49) — Daniel Stenberg shares his guiding principles for BDFL&amp;#39;ing curl, gives us his perspective on the state of the internet, talks financial independence, ensuring curl won&amp;#39;t be the next XZ &amp;amp; more!&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: Where DOESN’T curl run with curl BDFL Daniel Stenberg (Changelog &amp;amp; Friends #49) — Daniel Stenberg shares his guiding principles for BDFL&amp;#39;ing curl, gives us his perspective on the state of the internet, talks financial independence, ensuring curl won&amp;#39;t be the next XZ &amp;amp; more!&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Where DOESN’T curl run with curl BDFL Daniel Stenberg (Changelog &amp;amp; Friends #49)&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Daniel Stenberg shares his guiding principles for BDFL&amp;#39;ing curl, gives us his perspective on the state of the internet, talks financial independence, ensuring curl won&amp;#39;t be the next XZ &amp;amp; more!&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;Changelog · changelog.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Love how Daniel just brushed off the number of netflix tv installs as small beans for curl installs.  overall great episode on open source, owning a major component to technology with such a small team.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>playerctl fixes arch media keys</title>
    <id>https://waylonwalker.com/playerctl-fixes-arch/</id>
    <updated>2024-06-25T18:23:41Z</updated>
    <published>2024-06-25T18:23:41Z</published>
    <link href="https://waylonwalker.com/playerctl-fixes-arch/" rel="alternate" type="text/html"></link>
    <summary type="text">I&#39;ve long had issues with my qmk keyboard media keys on my arch install, I always thought it was on the keyboard end. Today I learned that playerctl fixes this.</summary>
    <content type="html">&lt;p&gt;I’ve long had issues with my qmk keyboard media keys on my arch install, I&#xA;always thought it was on the keyboard end.  Today I learned that playerctl&#xA;fixes this.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;paru -S playerctl&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Once it is installed all of my media keys started working right away.&lt;/p&gt;&#xA;&lt;p&gt;I played around with it a bit more and came up with a way to display the&#xA;current playing title in my notifictations.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;notify-send &lt;span class=&#34;s2&#34;&gt;&amp;#34;`playerctl metadata --format &amp;#39;{{lc(status)}}:{{artist}}-{{album}}-{{title}}&amp;#39;`&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Keyboard Mounting Styles — Keyboard University</title>
    <id>https://waylonwalker.com/thought-317/</id>
    <updated>2024-06-24T17:19:17Z</updated>
    <published>2024-06-24T17:19:17Z</published>
    <link href="https://waylonwalker.com/thought-317/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.keyboard.university/200-courses/keyboard-mounting-styles-4lpp7</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://www.keyboard.university/200-courses/keyboard-mounting-styles-4lpp7&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;External Link&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;keyboard.university&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Great keyboard design guide for all the different mounting options that are normal for keyboards with pros and cons of each.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Welcome to RSS Club - daverupert.com</title>
    <id>https://waylonwalker.com/thought-316/</id>
    <updated>2024-06-24T17:12:16Z</updated>
    <published>2024-06-24T17:12:16Z</published>
    <link href="https://waylonwalker.com/thought-316/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://daverupert.com/2018/01/welcome-to-rss-club/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://daverupert.com/2018/01/welcome-to-rss-club/&#34; class=&#34;embed-card-link  has-avatar has-avatar-before&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/daverupert.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/daverupert.com.ico&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Welcome to RSS Club&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Congratulations on joining a secret society! If you’re reading this, that means my message has been transmitted successfully. This post is only available to you, Reader, through the ancient peer-...&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;daverupert.com · daverupert.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Super cool idea, kinda breaking the rules by talking about it here, but Its a cool idea to throw out posts to the core audience.  Apparently its been around for quite while Dave started in 2018.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Releases · stackrox/kube-linter</title>
    <id>https://waylonwalker.com/thought-315/</id>
    <updated>2024-06-24T17:09:37Z</updated>
    <published>2024-06-24T17:09:37Z</published>
    <link href="https://waylonwalker.com/thought-315/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://github.com/stackrox/kube-linter</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://github.com/stackrox/kube-linter&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://opengraph.githubassets.com/c6871f4cf92592cf384d79e91962e83eb4ab46beef780e802b572a76abbfb666/stackrox/kube-linter&#34; alt=&#34;GitHub - stackrox/kube-linter: KubeLinter is a static analysis tool that checks Kubernetes YAML files and Helm charts to ensure the applications represented in them adhere to best practices. — KubeLinter is a static analysis tool that checks Kubernetes YAML files and Helm charts to ensure the applications represented in them adhere to best practices. - stackrox/kube-linter&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: GitHub - stackrox/kube-linter: KubeLinter is a static analysis tool that checks Kubernetes YAML files and Helm charts to ensure the applications represented in them adhere to best practices. — KubeLinter is a static analysis tool that checks Kubernetes YAML files and Helm charts to ensure the applications represented in them adhere to best practices. - stackrox/kube-linter&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;GitHub - stackrox/kube-linter: KubeLinter is a static analysis tool that checks Kubernetes YAML files and Helm charts to ensure the applications represented in them adhere to best practices.&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;KubeLinter is a static analysis tool that checks Kubernetes YAML files and Helm charts to ensure the applications represented in them adhere to best practices. - stackrox/kube-linter&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;GitHub · github.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;A linter for linting kubernetes manifests and help charts.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Keycodes Overview | QMK Firmware</title>
    <id>https://waylonwalker.com/thought-314/</id>
    <updated>2024-06-24T17:06:23Z</updated>
    <published>2024-06-24T17:06:23Z</published>
    <link href="https://waylonwalker.com/thought-314/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://docs.qmk.fm/keycodes</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://docs.qmk.fm/keycodes&#34; class=&#34;embed-card-link  has-avatar has-avatar-before&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/docs.qmk.fm.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/docs.qmk.fm.ico&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Keycodes Overview | QMK Firmware&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Documentation for QMK Firmware&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;docs.qmk.fm&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Full reference to all of the qmk keycode list. Handy reference to refer to all of the keycodes that qmk has.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 How to Build a Handwired Keyboard - YouTube</title>
    <id>https://waylonwalker.com/thought-313/</id>
    <updated>2024-06-24T17:03:52Z</updated>
    <published>2024-06-24T17:03:52Z</published>
    <link href="https://waylonwalker.com/thought-313/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/watch?v=hjml-K-pV4E</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;hjml-K-pV4E&#34; title=&#34;How to Build a Handwired Keyboard&#34; playlabel=&#34;Play: How to Build a Handwired Keyboard&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Fantastic guide to building handwried keyboards.  I used this guide to build my first hand-wired macro pad.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ jzhang38 TinyLlama</title>
    <id>https://waylonwalker.com/jzhang38-tinyllama/</id>
    <updated>2024-06-23T20:18:31Z</updated>
    <published>2024-06-23T20:18:31Z</published>
    <link href="https://waylonwalker.com/jzhang38-tinyllama/" rel="alternate" type="text/html"></link>
    <summary type="text">Just starred TinyLlama by jzhang38. It&#39;s an exciting project with a lot to offer.</summary>
    <content type="html">&lt;p&gt;Just starred &lt;a href=&#34;https://github.com/jzhang38/TinyLlama&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;TinyLlama&lt;/a&gt; by &lt;a href=&#34;https://github.com/jzhang38&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;jzhang38&lt;/a&gt;. It’s an exciting project with a lot to offer.&lt;/p&gt;&#xA;&lt;p&gt;The TinyLlama project is an open endeavor to pretrain a 1.1B Llama model on 3 trillion tokens.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ tusharsadhwani packaged</title>
    <id>https://waylonwalker.com/tusharsadhwani-packaged/</id>
    <updated>2024-06-18T02:43:40Z</updated>
    <published>2024-06-18T02:43:40Z</published>
    <link href="https://waylonwalker.com/tusharsadhwani-packaged/" rel="alternate" type="text/html"></link>
    <summary type="text">Just starred packaged by tusharsadhwani. It&#39;s an exciting project with a lot to offer.</summary>
    <content type="html">&lt;p&gt;Just starred &lt;a href=&#34;https://github.com/tusharsadhwani/packaged&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;packaged&lt;/a&gt; by &lt;a href=&#34;https://github.com/tusharsadhwani&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;tusharsadhwani&lt;/a&gt;. It’s an exciting project with a lot to offer.&lt;/p&gt;&#xA;&lt;p&gt;The easiest way to ship python applications.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Adam Wathan, Creator of TailwindCSS - YouTube</title>
    <id>https://waylonwalker.com/thought-312/</id>
    <updated>2024-06-16T22:09:17Z</updated>
    <published>2024-06-16T22:09:17Z</published>
    <link href="https://waylonwalker.com/thought-312/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/watch?v=FhJfm-kzopc&amp;t=2578s</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;FhJfm-kzopc&#34; title=&#34;Adam Wathan, Creator of TailwindCSS&#34; playlabel=&#34;Play: Adam Wathan, Creator of TailwindCSS&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Two inspirational people in one podcast, its cool to see how adam thinks about code, css, webdev, and building businesses.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Episode #323 Best practices for Docker in production - [Talk P...</title>
    <id>https://waylonwalker.com/thought-311/</id>
    <updated>2024-06-16T00:55:12Z</updated>
    <published>2024-06-16T00:55:12Z</published>
    <link href="https://waylonwalker.com/thought-311/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://talkpython.fm/episodes/show/323/best-practices-for-docker-in-production</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://talkpython.fm/episodes/show/323/best-practices-for-docker-in-production&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://cdn-podcast.talkpython.fm/episodes/youtube_image/yDend6I9nwE/best-practices-for-docker-in-production.jpg?v=1&#34; alt=&#34;Best practices for Docker in production — You&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: Best practices for Docker in production — You&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Best practices for Docker in production&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;You&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;talkpython.fm&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Great listen for anyone interested in productionizing python code with docker.  Itamar brings up some&lt;/p&gt;&#xA;&lt;p&gt;Don’t trust base images for security, upgrade your packages.  Vulnerabilties become published and solved giving the bad guys istructions how to wreck your day and these fixes wont come to your docker application for up to two weeks due to image build tatency.&lt;/p&gt;&#xA;&lt;p&gt;For job based containers pre-compile your pyc for faster startup.&lt;/p&gt;&#xA;&lt;p&gt;Alpine linux is probably not what you want for python.  Many packages such as postgres ship pre-copiled binaries that work for most linux distributions wich use glibc, but alpine uses musl so the binaries will be incompatable requiring you to need to install a bunch of build dependencies.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Why You Should Build Your Homelab Now - YouTube</title>
    <id>https://waylonwalker.com/thought-310/</id>
    <updated>2024-06-14T22:58:22Z</updated>
    <published>2024-06-14T22:58:22Z</published>
    <link href="https://waylonwalker.com/thought-310/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/watch?v=tmw7oYG3vMU</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;tmw7oYG3vMU&#34; title=&#34;Why You Should Build Your &lt;a href=&#34;/homelab/&#34; class=&#34;glossary-term&#34; title=&#34;A place to self host applications. For me this is primarily self built web applications, and applications for sharing files with my family. Techno Tim has a...&#34;&gt;Homelab&lt;/a&gt; Now&#34; playlabel=&#34;Play: Why You Should Build Your Homelab Now&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Homelabbers have been some of the best co-workers I have ever had.  Typically have a get shit done, If there’s a way I will find it kind of mentality.  If you are struggling to get a job in tech right now its tough.  Starting a homelab on a pc you pull out of the trash is a good way to get some experience that you can talk about in interview questions.&lt;/p&gt;&#xA;&lt;p&gt;Linked video has some great points!&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 podman requries qemu-system on ubuntu</title>
    <id>https://waylonwalker.com/thought-309/</id>
    <updated>2024-06-12T19:29:18Z</updated>
    <published>2024-06-12T19:29:18Z</published>
    <link href="https://waylonwalker.com/thought-309/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://askubuntu.com/questions/1490805/how-do-i-install-qemu-on-ubuntu-23-10</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://askubuntu.com/questions/1490805/how-do-i-install-qemu-on-ubuntu-23-10&#34; class=&#34;embed-card-link  has-avatar has-avatar-before&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/askubuntu.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/askubuntu.com.ico&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;External Link&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;askubuntu.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;podman requires qemu-system on&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;❯ podman machine init&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Looking up Podman Machine image at quay.io/podman/machine-os:5.1 to create VM&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Extracting compressed file: podman-machine-default-amd64.qcow2: &lt;span class=&#34;k&#34;&gt;done&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Error: exec: &lt;span class=&#34;s2&#34;&gt;&amp;#34;qemu-img&amp;#34;&lt;/span&gt;: executable file not found in &lt;span class=&#34;nv&#34;&gt;$PATH&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;The fix to this for me was to install qemu-system before podman machine init.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo apt update&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo apt install qemu-system&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Customize and apply backgrounds fast | SVG Backgrounds</title>
    <id>https://waylonwalker.com/thought-308/</id>
    <updated>2024-06-12T16:09:25Z</updated>
    <published>2024-06-12T16:09:25Z</published>
    <link href="https://waylonwalker.com/thought-308/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.svgbackgrounds.com/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://www.svgbackgrounds.com/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://www.svgbackgrounds.com/img/svg-backgrounds-preview.png&#34; alt=&#34;SVG Backgrounds, icons, and other website graphics — 👉 Copy-and-paste backgrounds, patterns, icons, and other website graphics directly into projects. All customizable, tiny in file size, and licensed for multi-use.&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: SVG Backgrounds, icons, and other website graphics — 👉 Copy-and-paste backgrounds, patterns, icons, and other website graphics directly into projects. All customizable, tiny in file size, and licensed for multi-use.&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;SVG Backgrounds, icons, and other website graphics&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;👉 Copy-and-paste backgrounds, patterns, icons, and other website graphics directly into projects. All customizable, tiny in file size, and licensed for multi-use.&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;SVG Backgrounds · svgbackgrounds.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;svgbackgrounds is a really awesome resource for svg things recently featured on &lt;a href=&#34;https://shoptalkshow.com/618/&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/shoptalkshow.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/shoptalkshow.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;https://shoptalkshow.com/618/&lt;/a&gt;&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 darrenburns/posting: Test your HTTP API using a powerful and m...</title>
    <id>https://waylonwalker.com/thought-307/</id>
    <updated>2024-06-12T14:30:36Z</updated>
    <published>2024-06-12T14:30:36Z</published>
    <link href="https://waylonwalker.com/thought-307/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://github.com/darrenburns/posting</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://github.com/darrenburns/posting&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://repository-images.githubusercontent.com/806285077/4a45adf3-877e-4898-99f3-11f8f8150286&#34; alt=&#34;GitHub - darrenburns/posting: The modern API client that lives in your terminal. — The modern API client that lives in your terminal. - darrenburns/posting&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: GitHub - darrenburns/posting: The modern API client that lives in your terminal. — The modern API client that lives in your terminal. - darrenburns/posting&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;GitHub - darrenburns/posting: The modern API client that lives in your terminal.&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;The modern API client that lives in your terminal. - darrenburns/posting&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;GitHub · github.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Currently Posting is a super early postman like tui (terminal user interface).  It looks so good.  Darren is really getting into a groove, and textual is getting to a place that is allowing him to really make these beautiful.&lt;/p&gt;&#xA;&lt;p&gt;I am so impressed with the progress that he has made so early, it looks so close to postman in the freaking terminal, and the ui is so good.  He already has think like jump that give you a way to around the ui like easymotion plugins.  Theres themes and a command line, oh man its so good. star it.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ Dataherald dataherald</title>
    <id>https://waylonwalker.com/dataherald-dataherald/</id>
    <updated>2024-06-12T02:22:27Z</updated>
    <published>2024-06-12T02:22:27Z</published>
    <link href="https://waylonwalker.com/dataherald-dataherald/" rel="alternate" type="text/html"></link>
    <summary type="text">Looking for inspiration? dataherald by Dataherald.</summary>
    <content type="html">&lt;p&gt;Looking for inspiration? &lt;a href=&#34;https://github.com/Dataherald/dataherald&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;dataherald&lt;/a&gt; by &lt;a href=&#34;https://github.com/Dataherald&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;Dataherald&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Interact with your SQL database, Natural Language to SQL using LLMs&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ orbitinghail sqlsync</title>
    <id>https://waylonwalker.com/orbitinghail-sqlsync/</id>
    <updated>2024-06-11T12:38:23Z</updated>
    <published>2024-06-11T12:38:23Z</published>
    <link href="https://waylonwalker.com/orbitinghail-sqlsync/" rel="alternate" type="text/html"></link>
    <summary type="text">Check out sqlsync by orbitinghail. It&#39;s a well-crafted project with great potential.</summary>
    <content type="html">&lt;p&gt;Check out &lt;a href=&#34;https://github.com/orbitinghail/sqlsync&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;sqlsync&lt;/a&gt; by &lt;a href=&#34;https://github.com/orbitinghail&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;orbitinghail&lt;/a&gt;. It’s a well-crafted project with great potential.&lt;/p&gt;&#xA;&lt;p&gt;SQLSync is a collaborative offline-first wrapper around SQLite. It is designed to synchronize web application state between users, devices, and the edge.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Blogmarks that use markdown</title>
    <id>https://waylonwalker.com/thought-306/</id>
    <updated>2024-06-10T02:47:52Z</updated>
    <published>2024-06-10T02:47:52Z</published>
    <link href="https://waylonwalker.com/thought-306/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://simonwillison.net/2024/Apr/25/blogmarks-that-use-markdown/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://simonwillison.net/2024/Apr/25/blogmarks-that-use-markdown/&#34; class=&#34;embed-card-link  has-avatar has-avatar-before&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/simonwillison.net.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/simonwillison.net.ico&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Blogmarks that use markdown&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;I needed to attach a correction to an older blogmark (my 20-year old name for short-form links with commentary on my blog) today - but the commentary field has always …&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;Simon Willison’s Weblog · simonwillison.net&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Oh I kinda like the name blogmark, as opposed to thoughts like I have chose for the same thing.  Aparantly Simon beat me to the punch by 20 years on this one.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 A Link Blog in the Year 2024</title>
    <id>https://waylonwalker.com/thought-305/</id>
    <updated>2024-06-10T02:44:35Z</updated>
    <published>2024-06-10T02:44:35Z</published>
    <link href="https://waylonwalker.com/thought-305/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://simonwillison.net/2024/Jun/9/a-link-blog-in-the-year-2024/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://simonwillison.net/2024/Jun/9/a-link-blog-in-the-year-2024/&#34; class=&#34;embed-card-link  has-avatar has-avatar-before&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/simonwillison.net.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/simonwillison.net.ico&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;A Link Blog in the Year 2024&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Kellan Elliott-McCrea has started a new link blog: Like many people I’ve been dealing with the collapses of the various systems I relied on for information over the previous decades. …&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;Simon Willison’s Weblog · simonwillison.net&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;THIS! is the same reasons that I built &lt;a href=&#34;https://thoughts.waylonwalker.com&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/thoughts.waylonwalker.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/thoughts.waylonwalker.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;thoughts&lt;/a&gt;{.hoverlink}.  Simon has bee a big inspiration along the way.  He defintely changed the format of my posts as I watched him build out his quote posts.&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;Link blogging is a pleasantly low-pressure way of writing online. Found something interesting? Post a link to it, with a sentence or two about why it’s worth checking out.&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;p&gt;Ditto! just make a post.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 A Link Blog in the Year 2024 | Kellan Elliott-McCrea: Blog</title>
    <id>https://waylonwalker.com/thought-304/</id>
    <updated>2024-06-10T02:40:20Z</updated>
    <published>2024-06-10T02:40:20Z</published>
    <link href="https://waylonwalker.com/thought-304/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://laughingmeme.org//2024/06/08/a-link-blog-in-2024.html</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;/static/https://laughingmeme.org//2024/06/08/a-link-blog-in-2024.html&#34; class=&#34;glightbox-link&#34; aria-label=&#34;https://laughingmeme.org//2024/06/08/a-link-blog-in-2024.html&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;/static/https://laughingmeme.org//2024/06/08/a-link-blog-in-2024.html&#34; alt=&#34;https://laughingmeme.org//2024/06/08/a-link-blog-in-2024.html&#34;/ data-glightbox=&#34;description: https://laughingmeme.org//2024/06/08/a-link-blog-in-2024.html&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;p&gt;Kellan brings some interesting thoughts on where the internet is headed in 2024.  Interestingly I see myself headed in a similar direction.  Feeling like I know just enough to say fuck it and build my own platform for me to me me, from &lt;a href=&#34;https://thoughts.waylonwalker.com&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/thoughts.waylonwalker.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/thoughts.waylonwalker.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;thoughts&lt;/a&gt;{.hoverlink} where I link and make thoughts on posts like this, to &lt;a href=&#34;https://reader.waylonwalker.com&#34;&gt;reader&lt;/a&gt;{.hoverlink} which is my rss reader replacement that I wanted in 2013 when it was &lt;a href=&#34;https://killedbygoogle.com/&#34; class=&#34;hoverlink  has-avatar has-avatar-before&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/killedbygoogle.com.png&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/killedbygoogle.com.png&#34;&gt;killedbygoogle&lt;/a&gt;&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;And particular with the collapse of the social spaces many of us grew up with, I feel called back to earlier forms of the Internet, like blogs, and in particular, starting a link blog.&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;p&gt;Ai has really had quite the two sided effect since chatgpt launched and set the world ablaze.  Suddenly you can get any answer you want as a custom fit blog post for free without effort, thus killing the traffic to any of these sites.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 How to Configure DNS over TLS (DoT) Using Unbound DNS in OPNsense</title>
    <id>https://waylonwalker.com/thought-303/</id>
    <updated>2024-06-09T15:40:11Z</updated>
    <published>2024-06-09T15:40:11Z</published>
    <link href="https://waylonwalker.com/thought-303/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://homenetworkguy.com/how-to/configure-dns-over-tls-unbound-opnsense/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://homenetworkguy.com/how-to/configure-dns-over-tls-unbound-opnsense/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://homenetworkguy.com/images/how-to/configure-dns-over-tls-unbound-opnsense/padlock-428549_640.jpg&#34; alt=&#34;How to Configure DNS over TLS (DoT) Using Unbound DNS in OPNsense — Going beyond the basics of home networking&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: How to Configure DNS over TLS (DoT) Using Unbound DNS in OPNsense — Going beyond the basics of home networking&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;How to Configure DNS over TLS (DoT) Using Unbound DNS in OPNsense&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Going beyond the basics of home networking&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;homenetworkguy.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Setting up DNS overTLS in opnsense has made my dns just a bit more secure and reliable.  I recently had an outage of half the internet within my house.  This also hit some of my friends and not some.  It did not hit my mobile network.  What seems to have happened is a dns issue with my isp not resolving some domains.  This setup corrected my issue and I was back online more securely.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;I did try to setup the family resolver and found it was blocking some sites I am ok with.  I decided to drop back to the vanilla resolver and let other services within opnsense control blocking where I can caontrol the whitelist myself.&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 argoproj/argo-events: Event-driven Automation Framework for Ku...</title>
    <id>https://waylonwalker.com/thought-302/</id>
    <updated>2024-06-09T14:30:26Z</updated>
    <published>2024-06-09T14:30:26Z</published>
    <link href="https://waylonwalker.com/thought-302/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://github.com/argoproj/argo-events?tab=readme-ov-file</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://github.com/argoproj/argo-events?tab=readme-ov-file&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://opengraph.githubassets.com/0c4aca7c70378e44b0d32cc1f676a6f3f80ef9a21a1cfd78cae20d020fe44ddd/argoproj/argo-events&#34; alt=&#34;GitHub - argoproj/argo-events: Event-driven Automation Framework for Kubernetes — Event-driven Automation Framework for Kubernetes. Contribute to argoproj/argo-events development by creating an account on GitHub.&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: GitHub - argoproj/argo-events: Event-driven Automation Framework for Kubernetes — Event-driven Automation Framework for Kubernetes. Contribute to argoproj/argo-events development by creating an account on GitHub.&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;GitHub - argoproj/argo-events: Event-driven Automation Framework for Kubernetes&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Event-driven Automation Framework for Kubernetes. Contribute to argoproj/argo-events development by creating an account on GitHub.&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;GitHub · github.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Argo events is an event driven automation framework for kubernetes that can create kubernetes objects among other things based on events.  I’ve been using native kubernetes cronjobs to kick off jobs based on a cron trigger.&lt;/p&gt;&#xA;&lt;p&gt;For instance I am running reader.waylonwalker.com every hour, to rebuild the site and re-deploy it.  It takes about two minutes to fetch every rss feed, so this is a nice application of a job compared to a web server fetching the feeds live.  Now my posts may be up to an hour stale but they load fast.&lt;/p&gt;&#xA;&lt;p&gt;Argo events takes event drien architecture to the next level allowing to be triggered by many more things, and do many more things than creating a cron job.  I’m definitely thinking about dropping this in my &lt;a href=&#34;/homelab/&#34; class=&#34;glossary-term&#34; title=&#34;A place to self host applications. For me this is primarily self built web applications, and applications for sharing files with my family. Techno Tim has a...&#34;&gt;homelab&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>What I&#39;m learning in 2024</title>
    <id>https://waylonwalker.com/learning-2024/</id>
    <updated>2024-06-09T10:06:30Z</updated>
    <published>2024-06-09T10:06:30Z</published>
    <link href="https://waylonwalker.com/learning-2024/" rel="alternate" type="text/html"></link>
    <summary type="text">2024 has been a learning fueled year, Diving deep into things I never would have previously thought I would. It&#39;s been a bit of a mix of the 🔥hot twitter...</summary>
    <content type="html">&lt;p&gt;2024 has been a learning fueled year, Diving deep into things I never would&#xA;have previously thought I would.  It’s been a bit of a mix of the 🔥hot twitter&#xA;trends, and exactly what tech twitter tells you not to do.  It just goes to&#xA;show community is great, the tech community is filled with strong opinions, but&#xA;you need to think about what really makes sense for you, your career and your&#xA;customers (or lack there of).&lt;/p&gt;&#xA;&lt;h2 id=&#34;tech&#34;&gt;tech &lt;a href=&#34;#tech&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;k8s&lt;/li&gt;&#xA;&lt;li&gt;tailwind&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/fastapi/&#34; class=&#34;glossary-term&#34; title=&#34;FastAPI is a modern and efficient web framework for Python, built on top of the Starlette web framework, and pydantic for data validation and serialization.&#34;&gt;fastapi&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/htmx/&#34; class=&#34;glossary-term&#34; title=&#34;htmx is a frontend javascript library for creating dynamic web applications.&#34;&gt;htmx&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;jinja&lt;/li&gt;&#xA;&lt;li&gt;opnsense&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;h2 id=&#34;successful-one-day-builds&#34;&gt;successful one day builds &lt;a href=&#34;#successful-one-day-builds&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;play-outside&lt;/li&gt;&#xA;&lt;li&gt;reader&lt;/li&gt;&#xA;&lt;li&gt;thoughts&lt;/li&gt;&#xA;&lt;li&gt;thoughts chrome-extension&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;h2 id=&#34;kubernetes&#34;&gt;Kubernetes &lt;a href=&#34;#kubernetes&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;Damn did I sleep on k8s for way took long.  This is like exactly what I’ve&#xA;needed for a lot of things.  It’s a perect example of what happens when you&#xA;listen to the tech community tell you.&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;/looking-for-a-heroku-replacement/&#34; class=&#34;wikilink&#34; data-title=&#34;Looking for a Heroku replacement, What I found was shocking!&#34; data-description=&#34;Your browser does not support the audio element.&#34; data-date=&#34;2023-12-04&#34; data-preview=&#34;Your browser does not support the audio element.&#34;&gt;Looking for a Heroku replacement, What I found was shocking!&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;I started looking for something to make my &lt;a href=&#34;/homelab/&#34; class=&#34;glossary-term&#34; title=&#34;A place to self host applications. For me this is primarily self built web applications, and applications for sharing files with my family. Techno Tim has a...&#34;&gt;homelab&lt;/a&gt; deployments easier at home.&#xA;Previously I needed to ssh into my server and fuss around with docker compose.&#xA;This just did not feel right for me to go into production and fiddle with it&#xA;like this.&lt;/p&gt;&#xA;&lt;p&gt;In my search I keep seeing kubernetes crop up as the best solution.  I held off&#xA;for a long time, until I finally decided to give it a go.  I’m not sure if I&#xA;got lucky or what but my first few applications that I migrated in went&#xA;smooth as could be.&lt;/p&gt;&#xA;&lt;p&gt;I chose to run k3s as this seemed like the lowest power consumption, easiest to&#xA;manage, and still allowed me to run multiple nodes.  At this point I was unsure&#xA;if I would use multiple nodes, but I did not want to take away the option out&#xA;of the gate.&lt;/p&gt;&#xA;&lt;p&gt;I wrote a follow up article on my experience 6 monthts in.&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;/kubernetes-6-months-in/&#34; class=&#34;wikilink&#34; data-title=&#34;kubernetes 6 months in&#34; data-description=&#34;I stumbled into kubernetes December 2023 when I was looking for a better way to self host applications. I was looking for something that didn&amp;#39;t require...&#34; data-date=&#34;2024-03-26&#34; data-preview=&#34;I stumbled into kubernetes December 2023 when I was looking for a better way to self host applications. I was looking for something that didn&amp;#39;t require...&#34;&gt;kubernetes 6 months in&lt;/a&gt;&lt;/p&gt;&#xA;&lt;h2 id=&#34;tailwind&#34;&gt;tailwind &lt;a href=&#34;#tailwind&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;Again I wrote off tailwind for a long time.  This time tech twitter really&#xA;likes it and tells me I should use it, but I already know css and I just don’t&#xA;see the point of needing to use a framework.&lt;/p&gt;&#xA;&lt;p&gt;It wasn’t until thePrimeagen roughly said all css classes are shitty, everyone&#xA;writes shitty css classes, and you might as well use the same shitty css&#xA;classes everywhere that it really hit me, and I gave it a shot.&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;/a-case-for-tailwindcss/&#34; class=&#34;wikilink&#34; data-title=&#34;A Case For Tailwindcss&#34; data-description=&#34;I was watching @theprimeagen recently and I think he sold me on using tailwindcss. The thing about tailwind is that it is not a big component library, it&amp;#39;s a...&#34; data-date=&#34;2023-09-10&#34; data-preview=&#34;I was watching @theprimeagen recently and I think he sold me on using tailwindcss. The thing about tailwind is that it is not a big component library, it&amp;#39;s a...&#34;&gt;A Case For Tailwindcss&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;What I really found was that having a designer lay out all of the rhythm,&#xA;spacing, and colors for you is really powerful.&lt;/p&gt;&#xA;&lt;p class=&#34;text-indigo-500 text-lg&#34;&gt;I now have this site fully styled with tailwind, and even use md-it-attrs that&#xA;allow me to pop extra classes right in markdown and style posts like&#xA;[this]&lt;/p&gt;&#xA;&lt;h2 id=&#34;fastapi&#34;&gt;fastapi &lt;a href=&#34;#fastapi&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;I’ve been using fast api for a little while now but using it more and more in&#xA;2024.  It has a lot of really great ideas with dependency management, and&#xA;pydantic for moving data in and out of routes.&lt;/p&gt;&#xA;&lt;p&gt;Here are some of the posts I’ve made about fastapi, theres defitely more to&#xA;come here, I have some Ideas that I am honing down around meeting users where&#xA;they are so that routes return the appropriate content type based on their&#xA;explicitly requested content type or assumed by user agent.&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;/fastapi-static-content/&#34; class=&#34;wikilink&#34; data-title=&#34;how to host static content with fastapi&#34; data-description=&#34;I wanted to host some static files through fastapi. Typical use cases for this might be some static web content like html/css/js. It could also be images or...&#34; data-date=&#34;2023-10-04&#34; data-preview=&#34;I wanted to host some static files through fastapi. Typical use cases for this might be some static web content like html/css/js. It could also be images or...&#34;&gt;how to host static content with fastapi&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;[[ fastapi-jinja-url-for-with-query-params ]]&lt;/p&gt;&#xA;&lt;h2 id=&#34;htmx&#34;&gt;htmx &lt;a href=&#34;#htmx&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;I have posts about htmx going back to &lt;a href=&#34;/htmx-get/&#34; class=&#34;wikilink&#34; data-title=&#34;Ease into htmx with htmx-get&#34; data-description=&#34;I recently attended python web conf 2022 and after seeing some incredible presentations on it I am excited to give htmx a try.&#34; data-date=&#34;2022-03-25&#34; data-preview=&#34;I recently attended python web conf 2022 and after seeing some incredible presentations on it I am excited to give htmx a try.&#34;&gt;Ease into htmx with htmx-get&lt;/a&gt; on 3/25/2022.  I’ve been&#xA;interested for awhile, but just didn’t really have the platform to use it till&#xA;recently.  My public content has been all static built content for a long time,&#xA;but now I am building applications for myself that are server rendered such as&#xA;&lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;Thoughts&lt;/a&gt; and &lt;a href=&#34;/odb-play-outside/&#34; class=&#34;wikilink&#34; data-title=&#34;One Day Build - Play Outside&#34; data-description=&#34;Inspired by Adam Savage and his One Day builds on youtube. I often build things, and want to make them generally useful for others and over configure out of...&#34; data-date=&#34;2024-04-10&#34; data-preview=&#34;Inspired by Adam Savage and his One Day builds on youtube. I often build things, and want to make them generally useful for others and over configure out of...&#34;&gt;One Day Build - Play Outside&lt;/a&gt;.  I’ve had more use cases&#xA;for using htmx.&lt;/p&gt;&#xA;&lt;p&gt;The last pre-release of markata from 6/15/2022 now supports feed partials.&#xA;This gives me a really easy way to pop things like recent posts on the bottom&#xA;of every single page.  I’m sure I can do this with jinja, but htmx makes it&#xA;really easy to do and understand.  If its up and running you will now see a&#xA;Recent posts seciton below the article on this page powered by htmx.&lt;/p&gt;&#xA;&lt;h2 id=&#34;jinja&#34;&gt;jinja &lt;a href=&#34;#jinja&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;I’ve been using jinja for years now, but its mostly been some template&#xA;variables here, some loops there.  Now that I am putting fastapi and htmx to&#xA;work I am really learning how to setup and design templates properly.  Building&#xA;up from a good re-usable base, including partials that so that pages can be&#xA;rendered as full pages or partials.&lt;/p&gt;&#xA;&lt;h2 id=&#34;just&#34;&gt;just &lt;a href=&#34;#just&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;I have long been using my shell history to re-run complex shell commands that I&#xA;use to build projets, compile tailwind, build docker images, run docker in&#xA;local development.  Most of the time they are not complex, but sometimes are&#xA;something that would take me a few minutes to remember if I lost my shell&#xA;history without it being documented&lt;/p&gt;&#xA;&lt;p&gt;I’ve started storing all these things that I can in just.  If its something&#xA;that I get from my shell history I start thinking about how it would belong in&#xA;a justfile.  I’ve tried a few others over the years but they always seem tied&#xA;to a language or build tool, just is language agnostic and runs in any&#xA;terminal.  Worst case, someone does not want to install it they can copy paste&#xA;out of the justfile.&lt;/p&gt;&#xA;&lt;p&gt;Biggest benefit is that it communicates to others what I do when I am working&#xA;on a project.  There are some good competitors like runbook that run readmes,&#xA;but just has been working great for me and easy to use.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>tailwind post template</title>
    <id>https://waylonwalker.com/tailwind-post-template/</id>
    <updated>2024-06-08T14:47:42Z</updated>
    <published>2024-06-08T14:47:42Z</published>
    <link href="https://waylonwalker.com/tailwind-post-template/" rel="alternate" type="text/html"></link>
    <summary type="text">Today I am playing around with tailwind, flexing the css muscle and learning how to build new and different layouts with it.</summary>
    <content type="html">&lt;p&gt;Today I am playing around with tailwind, flexing the css muscle and learning&#xA;how to build new and different layouts with it.&lt;/p&gt;&#xA;&lt;p&gt;I created a new post template that mimics a terminal look in css where I could&#xA;inject the post title, description, and other frontmatter elements.&lt;/p&gt;&#xA;&lt;iframe src=&#34;/playground/tailwind-post-template&#34; width=&#34;100%&#34; height=&#34;800px&#34; class=&#34;overflow-hidden&#34; scrolling=&#34;no&#34;&gt;&#xA;&lt;p&gt;I think this is a pretty cool layout, I could make a&#xA;&lt;a href=&#34;https://carbon.now.sh&#34;&gt;carbon.now.sh&lt;/a&gt;{.hoverlink} clone or more realistically I could&#xA;make it into a template for blog pages and this could become &lt;a href=&#34;/og/&#34; class=&#34;glossary-term&#34; title=&#34;OG is short for open graph, a set of standard meta tags that are used for social media sharing. This is what tells other websites how to describe and display...&#34;&gt;og&lt;/a&gt; images.&lt;/p&gt;&#xA;&lt;p class=&#34;mx-auto block w-fit mb-0&#34;&gt;&lt;/p&gt;&#xA;&lt;p class=&#34;mx-auto block w-fit mt-0&#34;&gt;&lt;a href=&#34;/still-loving-tailwind/&#34; class=&#34;wikilink&#34; data-title=&#34;Still Loving Tailwind&#34; data-description=&#34;I&amp;#39;ve been using tailwind for a few months now and I can still say I&amp;#39;m loving it. I&amp;#39;ve been using it to create some rapid prototypes that may or may not ever...&#34; data-date=&#34;2023-11-30&#34; data-preview=&#34;I&amp;#39;ve been using tailwind for a few months now and I can still say I&amp;#39;m loving it. I&amp;#39;ve been using it to create some rapid prototypes that may or may not ever...&#34;&gt;Still Loving Tailwind&lt;/a&gt;&lt;/p&gt;&#xA;&lt;/div&gt;&lt;/iframe&gt;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 catppuccin/ulauncher: 🇺 Soothing pastel theme for Ulauncher</title>
    <id>https://waylonwalker.com/thought-301/</id>
    <updated>2024-06-07T03:59:30Z</updated>
    <published>2024-06-07T03:59:30Z</published>
    <link href="https://waylonwalker.com/thought-301/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://github.com/catppuccin/ulauncher</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://github.com/catppuccin/ulauncher&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://opengraph.githubassets.com/17586f151e40edda426418a60998c5171ffc2011ea169c13629b208f57fbbc91/catppuccin/ulauncher&#34; alt=&#34;GitHub - catppuccin/ulauncher: 🇺 Soothing pastel theme for Ulauncher — 🇺 Soothing pastel theme for Ulauncher. Contribute to catppuccin/ulauncher development by creating an account on GitHub.&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: GitHub - catppuccin/ulauncher: 🇺 Soothing pastel theme for Ulauncher — 🇺 Soothing pastel theme for Ulauncher. Contribute to catppuccin/ulauncher development by creating an account on GitHub.&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;GitHub - catppuccin/ulauncher: 🇺 Soothing pastel theme for Ulauncher&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;🇺 Soothing pastel theme for Ulauncher. Contribute to catppuccin/ulauncher development by creating an account on GitHub.&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;GitHub · github.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;I am using this theme for Ulauncher in arch and it looks fantastic!  One line install (read it first).&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;python3 &amp;lt;&lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;curl https://raw.githubusercontent.com/catppuccin/ulauncher/main/install.py -fsSL&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Ulauncher — Application launcher for Linux 🐧</title>
    <id>https://waylonwalker.com/thought-300/</id>
    <updated>2024-06-07T03:58:16Z</updated>
    <published>2024-06-07T03:58:16Z</published>
    <link href="https://waylonwalker.com/thought-300/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://ulauncher.io/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://ulauncher.io/&#34; class=&#34;embed-card-link  has-avatar has-avatar-before&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/ulauncher.io.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/ulauncher.io.ico&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Ulauncher — Application launcher for Linux 🐧&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Download Ulauncher for Linux, discover extensions and videos, and support the project.&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;ulauncher.io&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Just discovered this really cool launcher from the DHH distro omakub.  &lt;a href=&#34;https://github.com/basecamp/omakub&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;github.com/omakub&lt;/a&gt;{.hoverlink}.&lt;/p&gt;&#xA;&lt;p&gt;Ulauncher comes out of the box looking good, supports extensions, and shortcuts like I have a lot of mac launchers have.  I installed it plus a theme and in no time It was looking good and launching applications.&lt;/p&gt;&#xA;&lt;p&gt;In the past I have leaned in on rofi for task launching, it is good.  I just felt it was harder to configure to get right or look good.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ catppuccin ulauncher</title>
    <id>https://waylonwalker.com/catppuccin-ulauncher/</id>
    <updated>2024-06-07T03:40:13Z</updated>
    <published>2024-06-07T03:40:13Z</published>
    <link href="https://waylonwalker.com/catppuccin-ulauncher/" rel="alternate" type="text/html"></link>
    <summary type="text">The work on ulauncher by catppuccin.</summary>
    <content type="html">&lt;p&gt;The work on &lt;a href=&#34;https://github.com/catppuccin/ulauncher&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;ulauncher&lt;/a&gt; by &lt;a href=&#34;https://github.com/catppuccin&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;catppuccin&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;🇺 Soothing pastel theme for Ulauncher&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ codex-team editor.js</title>
    <id>https://waylonwalker.com/codex-team-editor-js/</id>
    <updated>2024-06-06T21:10:13Z</updated>
    <published>2024-06-06T21:10:13Z</published>
    <link href="https://waylonwalker.com/codex-team-editor-js/" rel="alternate" type="text/html"></link>
    <summary type="text">The work on editor.js by codex-team.</summary>
    <content type="html">&lt;p&gt;The work on &lt;a href=&#34;https://github.com/codex-team/editor.js&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;editor.js&lt;/a&gt; by &lt;a href=&#34;https://github.com/codex-team&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;codex-team&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;A block-style editor with clean JSON output&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Steam Deck dock</title>
    <id>https://waylonwalker.com/thought-299/</id>
    <updated>2024-06-06T17:25:14Z</updated>
    <published>2024-06-06T17:25:14Z</published>
    <link href="https://waylonwalker.com/thought-299/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://kbd.news/Steam-Deck-dock-2291.html</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;/static/https://kbd.news/Steam-Deck-dock-2291.html&#34; class=&#34;glightbox-link&#34; aria-label=&#34;https://kbd.news/Steam-Deck-dock-2291.html&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;/static/https://kbd.news/Steam-Deck-dock-2291.html&#34; alt=&#34;https://kbd.news/Steam-Deck-dock-2291.html&#34;/ data-glightbox=&#34;description: https://kbd.news/Steam-Deck-dock-2291.html&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;p&gt;This is a sick steam deck dock!   With a corne built in laptop style.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 basecamp/omakub: Opinionated Ubuntu Setup</title>
    <id>https://waylonwalker.com/thought-298/</id>
    <updated>2024-06-06T16:20:19Z</updated>
    <published>2024-06-06T16:20:19Z</published>
    <link href="https://waylonwalker.com/thought-298/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://github.com/basecamp/omakub</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://github.com/basecamp/omakub&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://opengraph.githubassets.com/721c60403535e3a9bd50d9778562108e3a2ef69b13711d69d8f295e5dfb978d6/basecamp/omakub&#34; alt=&#34;GitHub - basecamp/omakub: Opinionated Ubuntu Setup — Opinionated Ubuntu Setup. Contribute to basecamp/omakub development by creating an account on GitHub.&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: GitHub - basecamp/omakub: Opinionated Ubuntu Setup — Opinionated Ubuntu Setup. Contribute to basecamp/omakub development by creating an account on GitHub.&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;GitHub - basecamp/omakub: Opinionated Ubuntu Setup&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Opinionated Ubuntu Setup. Contribute to basecamp/omakub development by creating an account on GitHub.&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;GitHub · github.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;This is DHH’s linux startup script.  Call it a distro if you want, but he doesn’t.  It’s made to take a vanilla ubuntu install and configure everything the way he likes it.  There’s a number of great nuggets in here to pick up on.&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;No need to write bespoke configs for every essential tool just to get started or to be up on all the latest command-line tools. Omakub is an opinionated take on what Linux can be at its best.&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;p&gt;Check it out and give it a ⭐ &lt;a href=&#34;https://github.com/basecamp/omakub&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;basecamp/omakub&lt;/a&gt;{.hoverlink}.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 From the Circle to Epicycles (Part 1) - An animated introducti...</title>
    <id>https://waylonwalker.com/thought-297/</id>
    <updated>2024-06-06T14:02:50Z</updated>
    <published>2024-06-06T14:02:50Z</published>
    <link href="https://waylonwalker.com/thought-297/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.andreinc.net/2024/04/24/from-the-circle-to-epicycles</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://www.andreinc.net/2024/04/24/from-the-circle-to-epicycles&#34; class=&#34;embed-card-link  has-avatar has-avatar-before&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/www.andreinc.net.png&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/www.andreinc.net.png&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;From the circle to epicycles | Personal Site of Andrei N. Ciobanu&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;This article will be part of an extensive series in which I plan to explore various aspects of Fourier Mathematics. I will take notes, create some visuals (a good pretext to learn more about graphi...&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;andreinc.net&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;This is a really cool animated visual representation of how sine waves work, how they relate to circles, pi, rad, and how to add up a series of waves to make square and sawtooth waves.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Darren Burns 🌱 on X: &#34;Here&#39;s an early clip of my new (work in ...</title>
    <id>https://waylonwalker.com/thought-296/</id>
    <updated>2024-06-04T02:04:35Z</updated>
    <published>2024-06-04T02:04:35Z</published>
    <link href="https://waylonwalker.com/thought-296/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://x.com/_darrenburns/status/1797763563270095006</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://x.com/_darrenburns/status/1797763563270095006&#34; class=&#34;embed-card-link  has-avatar has-avatar-before&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/x.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/x.com.ico&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;External Link&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;X (formerly Twitter) · x.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;This looks like a sweet tui postman clone.  Darren is really rolling with these tui’s.  Cant wait to see where this one goes.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ darrenburns posting</title>
    <id>https://waylonwalker.com/darrenburns-posting/</id>
    <updated>2024-06-04T02:02:35Z</updated>
    <published>2024-06-04T02:02:35Z</published>
    <link href="https://waylonwalker.com/darrenburns-posting/" rel="alternate" type="text/html"></link>
    <summary type="text">Check out darrenburns and their project posting.</summary>
    <content type="html">&lt;p&gt;Check out &lt;a href=&#34;https://github.com/darrenburns&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;darrenburns&lt;/a&gt; and their project &lt;a href=&#34;https://github.com/darrenburns/posting&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;posting&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;The modern API client that lives in your terminal.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 How to Force Dark Mode on Every Website in Google Chrome</title>
    <id>https://waylonwalker.com/thought-295/</id>
    <updated>2024-06-03T18:52:25Z</updated>
    <published>2024-06-03T18:52:25Z</published>
    <link href="https://waylonwalker.com/thought-295/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.howtogeek.com/446198/how-to-force-dark-mode-on-every-website-in-google-chrome/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://www.howtogeek.com/446198/how-to-force-dark-mode-on-every-website-in-google-chrome/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://static0.howtogeekimages.com/wordpress/wp-content/uploads/2024/06/laptop-with-some-google-chrome-windows-and-a-dark-mode-switch.jpg?w=1600&amp;amp;h=900&amp;amp;fit=crop&#34; alt=&#34;How to Force Dark Mode on Every Website in Google Chrome — Do you like dark mode? Chrome now lets you forcibly enable it for every site on the web. No more blindingly bright websites.&#34; loading=&#34;lazy&#34;/ width=&#34;1600&#34; data-glightbox=&#34;description: How to Force Dark Mode on Every Website in Google Chrome — Do you like dark mode? Chrome now lets you forcibly enable it for every site on the web. No more blindingly bright websites.&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;How to Force Dark Mode on Every Website in Google Chrome&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Do you like dark mode? Chrome now lets you forcibly enable it for every site on the web. No more blindingly bright websites.&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;How-To Geek · howtogeek.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Sometimes I struggle to get my os to report dark mode to chrome, luckily there is a way to force chrome to always use dark mode.&lt;/p&gt;&#xA;&lt;p&gt;I’ve never really gotten into dark reader and extensions like this. For some reason they all make websites look really weird to me and I don’t really care for it.  What I want is websites designed to be in dark/light to always go dark, if the designer didn’t design dark just let it be light.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>tailscale ssh</title>
    <id>https://waylonwalker.com/tailscale-ssh/</id>
    <updated>2024-06-03T16:40:18Z</updated>
    <published>2024-06-03T16:40:18Z</published>
    <link href="https://waylonwalker.com/tailscale-ssh/" rel="alternate" type="text/html"></link>
    <summary type="text">Tailscale allows you to ssh into all of your tailscale machines, it busts through firewalls and accross networks without complex setup. If you have used...</summary>
    <content type="html">&lt;p&gt;Tailscale allows you to ssh into all of your tailscale machines, it busts&#xA;through firewalls and accross networks without complex setup.  If you have used&#xA;tailscale before this is an obvious no brainer.  What is not obvious is that&#xA;you can configure tailscale to allow ssh connections from devices within your&#xA;tailnet without even a ssh daemon process running right through the tailscale&#xA;daemon.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;tailscale status&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;tailscale &lt;span class=&#34;nb&#34;&gt;set&lt;/span&gt; --ssh&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;I picked this up from the tailscale youtube channel.&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://www.youtube.com/watch?v=08clF9srJ2k&amp;amp;t=35s&#34; class=&#34;youtube-embed  has-avatar has-avatar-before&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/www.youtube.com.png&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/www.youtube.com.png&#34;&gt;Tailscale&lt;/a&gt;&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 xxHash - Extremely fast non-cryptographic hash algorithm</title>
    <id>https://waylonwalker.com/thought-293/</id>
    <updated>2024-06-03T13:34:30Z</updated>
    <published>2024-06-03T13:34:30Z</published>
    <link href="https://waylonwalker.com/thought-293/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://xxhash.com/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://xxhash.com/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;xxHash - Extremely fast non-cryptographic hash algorithm&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;xxhash.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;xxHash is an extremely fast non-cryptographic hash algorithm, working at RAM speed limit. It is proposed in four flavors (XXH32, XXH64, XXH3_64bits and XXH3_128bits). The latest variant, XXH3, offers improved performance across the board, especially on small data.&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 xxhash · PyPI</title>
    <id>https://waylonwalker.com/thought-292/</id>
    <updated>2024-06-03T13:34:05Z</updated>
    <published>2024-06-03T13:34:05Z</published>
    <link href="https://waylonwalker.com/thought-292/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://pypi.org/project/xxhash/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://pypi.org/project/xxhash/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://pypi.org/static/images/twitter.abaf4b19.webp&#34; alt=&#34;xxhash — Python binding for xxHash&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: xxhash — Python binding for xxHash&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;xxhash&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Python binding for xxHash&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;PyPI · pypi.org&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;I hit an issue with markata where even though a bunch of articles were cached, the site build was still slow because I was hitting hashlib.sha256 so hard for cache keys.  I was shocked when this popped up in my profiler as a significant portion of the time spent.  I swapped out for xxhash and that issue completely went away.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Latest Page in Markata</title>
    <id>https://waylonwalker.com/latest-page-in-markata/</id>
    <updated>2024-06-01T21:01:26Z</updated>
    <published>2024-06-01T21:01:26Z</published>
    <link href="https://waylonwalker.com/latest-page-in-markata/" rel="alternate" type="text/html"></link>
    <summary type="text">I just implemented a latest blog post link in Markata by asking for the first post slug from the blog feed. The implementation uses the jinja_md plugin to...</summary>
    <content type="html">&lt;p&gt;I just implemented a latest blog post link in Markata by asking for the first&#xA;post slug from the blog feed.  The implementation uses the jinja_md plugin to&#xA;render jinja against the markdown and a &lt;meta/&gt; tag to redirect.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;My latest blog post is [[ {{ markata.feeds.blog.posts[0].slug }} ]].  Click the&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;link if you are not automatically redirected.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&amp;lt;meta http-equiv=&amp;#34;Refresh&amp;#34; content=&amp;#34;0; url=&amp;#39;/{{ markata.feeds.blog.posts[0].slug }}&amp;#39;&amp;#34; /&amp;gt;  &#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;h2 id=&#34;setting-up-the-feed&#34;&gt;Setting up the feed &lt;a href=&#34;#setting-up-the-feed&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;Feeds are setup in &lt;code&gt;markata.toml&lt;/code&gt; configuration.  They provide a handy way to&#xA;create an &lt;a href=&#34;/html/&#34; class=&#34;glossary-term&#34; title=&#34;HTML (HyperText Markup Language) is the standard markup language used to create and design documents on the World Wide Web. It structures web content by...&#34;&gt;html&lt;/a&gt; feed, rss feed, and quickly reference a filtered set of posts&#xA;like this.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c&#34;&gt;# you will need to enable the jinja_md plugin along with the defaults&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;nx&#34;&gt;markata&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nx&#34;&gt;hooks&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;s2&#34;&gt;&amp;#34;markata.plugins.jinja_md&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;s2&#34;&gt;&amp;#34;default&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;p&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c&#34;&gt;# set up the blog feed&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;[[&lt;/span&gt;&lt;span class=&#34;nx&#34;&gt;markata&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nx&#34;&gt;feeds&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nx&#34;&gt;slug&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;s1&#34;&gt;&amp;#39;blog&amp;#39;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nx&#34;&gt;template&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;feed.html&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nx&#34;&gt;filter&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;date&amp;lt;=today and templateKey in [&amp;#39;blog-post&amp;#39;] and published&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nx&#34;&gt;sort&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;date&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nx&#34;&gt;reverse&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;kc&#34;&gt;true&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;For more information on markata check out the full &lt;a href=&#34;/markata/&#34; class=&#34;wikilink&#34; data-title=&#34;markata&#34; data-description=&#34;This post is a work in progress.&#34; data-date=&#34;2024-05-30&#34; data-preview=&#34;This post is a work in progress.&#34;&gt;markata&lt;/a&gt; post.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Replicate — Run AI with an API</title>
    <id>https://waylonwalker.com/thought-291/</id>
    <updated>2024-06-01T00:59:49Z</updated>
    <published>2024-06-01T00:59:49Z</published>
    <link href="https://waylonwalker.com/thought-291/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://replicate.com/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://replicate.com/&#34; class=&#34;embed-card-link  has-avatar has-avatar-before&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/replicate.com.png&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/replicate.com.png&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Replicate - Run AI with an API&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Run open-source machine learning models with a cloud API&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;replicate.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;This is so easy compared to self hosting stable diffusion yourself.  It even has a nice api that you can hit with curl or python.  The pricing seems competitive as well.   Bookmarking this to try next time I need something like it.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 How to Deliver Code Every Day | Jake Worth</title>
    <id>https://waylonwalker.com/thought-290/</id>
    <updated>2024-06-01T00:48:21Z</updated>
    <published>2024-06-01T00:48:21Z</published>
    <link href="https://waylonwalker.com/thought-290/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.jakeworth.com/posts/how-to-deliver-code-every-day/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://www.jakeworth.com/posts/how-to-deliver-code-every-day/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://jakeworth.com/twittercard.png&#34; alt=&#34;How to Deliver Code Every Day — I recently calculated that I merge 0.8 pull requests every day into my team repo. “How to Deliver Code Every 0.8 Days” didn’t sing, so let’s say I merge about one PR every day, delivering one or more features to production. I like this velocity, and in this post, I’ll explain how you can achieve it yourself.&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: How to Deliver Code Every Day — I recently calculated that I merge 0.8 pull requests every day into my team repo. “How to Deliver Code Every 0.8 Days” didn’t sing, so let’s say I merge about one PR every day, delivering one or more features to production. I like this velocity, and in this post, I’ll explain how you can achieve it yourself.&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;How to Deliver Code Every Day&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;I recently calculated that I merge 0.8 pull requests every day into my team repo. “How to Deliver Code Every 0.8 Days” didn’t sing, so let’s say I merge about one PR every day, delivering o...&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;Jake Worth · jakeworth.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Great set of tips here!&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;No waiting. No “waiting until tomorrow” or “It’s Friday, let’s wait until Monday” to deploy. If your deploys are so slow that deploying an hour before the end of the day is a risk, that’s a separate problem. If you’re afraid of a Friday deploy, your system is too brittle, or you don’t have foolproof rollback procedures, or you don’t have people you trust on call to resolve it. Each of these is a problem that you can fix.&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;p&gt;This one I find interesting  I think there are some industries where customers come in large waves over the weekend, and a weekend bug can not only ruin someones day off, take longer to fix, but also cost a lot of money.&lt;/p&gt;&#xA;&lt;p&gt;Not deploying on Friday is totally what that team should be doing.&lt;/p&gt;&#xA;&lt;p&gt;Most of us are not that team.  Most of us work on small teams supporting some sort of product that Should be able to be tested and rolled back.  I completely agree with Jake here, if your not willing to deploy on Friday you are not confident in your product.   You need to work on better testing, rollback strategies, and feature flagging is what you need.&lt;/p&gt;&#xA;&lt;p&gt;I’ve also been on teams where we don’t deploy in the middle of the day or right before we leave for vacation because we are early, our customers are important to us, and we accept that we have not hit our marks yet on the ability to swiftly recover from some downtime so risk is high.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Be Fast | Jake Worth</title>
    <id>https://waylonwalker.com/thought-289/</id>
    <updated>2024-06-01T00:38:15Z</updated>
    <published>2024-06-01T00:38:15Z</published>
    <link href="https://waylonwalker.com/thought-289/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.jakeworth.com/posts/be-fast/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://www.jakeworth.com/posts/be-fast/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://jakeworth.com/twittercard.png&#34; alt=&#34;You Have to Get Fast to Get Good at Programming — Great programmers aren’t fast because they’re great. They’re great because they’re fast.&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: You Have to Get Fast to Get Good at Programming — Great programmers aren’t fast because they’re great. They’re great because they’re fast.&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;You Have to Get Fast to Get Good at Programming&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Great programmers aren’t fast because they’re great. They’re great because they’re fast.&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;Jake Worth · jakeworth.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Be Fast, Practice, Hone your craft.  There’s a lot to be said here about honing your craft for editing text, picking up a few extra WPM, learning vim shortcuts.&lt;/p&gt;&#xA;&lt;p&gt;Also just build shit.  The more you build new and different things the more not only your text editing will just roll out, your skills to see patterns in code and architecture will flourish.&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;Read their bios, and the answer is always no. They loved to play, sure. They had some base talent, typically. But they also invested an absurd amount of time into that skill set.&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;p&gt;This! is actually what turned me on to Post Malone.  I remember hearing his story in how he was just known as the guy with a guitar because he was always playing it between class and everything.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Refactoring one line links into wikilinks</title>
    <id>https://waylonwalker.com/refactoring-into-wikilinks/</id>
    <updated>2024-05-31T20:33:10Z</updated>
    <published>2024-05-31T20:33:10Z</published>
    <link href="https://waylonwalker.com/refactoring-into-wikilinks/" rel="alternate" type="text/html"></link>
    <summary type="text">Previously I had setup a feature of my website to expand one line links into a card. This was not a standard, even to the point that some formatters wrap the...</summary>
    <content type="html">&lt;p&gt;Previously I had setup a feature of my website to expand one line links into a&#xA;card.  This was not a standard, even to the point that some formatters wrap the&#xA;links with &lt;angle brackets=&#34;&#34;&gt;, thus breaking my custom plugin.  Moving to the&#xA;wikilink standard will allow my markdown posts to work accross more site&#xA;builders without custom integrations.&lt;/angle&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;/expand-one-line-links/&#34; class=&#34;wikilink&#34; data-title=&#34;Expand One Line Links&#34; data-description=&#34;I wanted a super simple way to cross-link blog posts that require as little effort as possible, yet still looks good in vanilla markdown in GitHub. I have...&#34; data-date=&#34;2020-11-18&#34; data-preview=&#34;I wanted a super simple way to cross-link blog posts that require as little effort as possible, yet still looks good in vanilla markdown in GitHub. I have...&#34;&gt;Expand One Line Links&lt;/a&gt;&lt;/p&gt;&#xA;&lt;h2 id=&#34;what-is-a-wikilink&#34;&gt;What is a wikilink &lt;a href=&#34;#what-is-a-wikilink&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;Wikilinks are standard to a lot of wikis written in markdown.&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://github.com/jsepia/markdown-it-wikilinks#readme&#34; class=&#34;hoverlink  has-avatar has-avatar-before&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34;&gt;markdown-it-wikilinks&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;The wikilink syntax is a slug wrapped in double square brackets.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;[[ slug ]]&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Marksman lsp will even autocomplete these for you, its pretty sweet.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt; I recently implemented hover for wikilinks and and am pretty stoked about the&#xA;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt;result.  Check this one out &lt;a href=&#34;/sick-wikilink-hover/&#34; class=&#34;wikilink&#34; data-title=&#34;sick wikilink hover&#34; data-description=&#34;Today I set up some sick wikilink hover effects using tailwind see a-case-for-tailwindcss. When you hover over them they show an image preview of the link...&#34; data-date=&#34;2024-05-30&#34; data-preview=&#34;Today I set up some sick wikilink hover effects using tailwind see a-case-for-tailwindcss. When you hover over them they show an image preview of the link...&#34;&gt;sick wikilink hover&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;&lt;h2 id=&#34;vim-quickfix&#34;&gt;Vim Quickfix &lt;a href=&#34;#vim-quickfix&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;You could use &lt;code&gt;vimgrep&lt;/code&gt; to fill your quickfix list will all of the one line links&#xA;but I am less familiar with vimgrep and kept missing posts for some reason, I&#xA;think it was something in my file glob missing some directories.&lt;/p&gt;&#xA;&lt;p&gt;I chose to use &lt;code&gt;cexpr&lt;/code&gt; to fill my quickfix list using a command that outputs a&#xA;vimgrep format &lt;code&gt;filename:line:col:msg&lt;/code&gt;&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;nx&#34;&gt;cexpr&lt;/span&gt; &lt;span class=&#34;nx&#34;&gt;system&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;rg ^&amp;lt;https -t md --vimgrep .&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;This filled my quickfix list with all of the one line links.&lt;/p&gt;&#xA;&lt;h2 id=&#34;vim-cdo&#34;&gt;Vim cdo &lt;a href=&#34;#vim-cdo&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;Now all I needed to do was to run a substitution command on every line in the&#xA;quickfix list.  This one features the one eyed fighting kirby that I learned&#xA;from the primeagen [[ thoughts-200 ]].&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;nx&#34;&gt;cdo&lt;/span&gt; &lt;span class=&#34;nx&#34;&gt;s&lt;/span&gt;&lt;span class=&#34;sr&#34;&gt;/\(^https:\/\/waylonwalker.com\/\)\(.*\)/&lt;/span&gt;[[ \&lt;span class=&#34;m&#34;&gt;2&lt;/span&gt; ]]&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;This converts all of the full links into a slug wrapped in double square&#xA;brackets.&lt;/p&gt;&#xA;&lt;h2 id=&#34;more&#34;&gt;More &lt;a href=&#34;#more&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;There was a bit more to the full refactor, for instance some had a til/ preix,&#xA;some were for youtube, and some were not pointed to my site.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>about this site</title>
    <id>https://waylonwalker.com/about-this-site/</id>
    <updated>2024-05-31T14:07:02Z</updated>
    <published>2024-05-31T14:07:02Z</published>
    <link href="https://waylonwalker.com/about-this-site/" rel="alternate" type="text/html"></link>
    <summary type="text">I registered waylonwalker.com and started making content for it in 2017 after a big industry downturn in 2016 that left me scared for what would happen if I...</summary>
    <content type="html">&lt;p&gt;I registered waylonwalker.com and started making content for it in 2017 after a&#xA;big industry downturn in 2016 that left me scared for what would happen if I&#xA;were laid off.  The company I was working for at the time did it’s first major&#xA;downsizing in history sending many really good engineers out to look for new&#xA;opportunities in a world flooded with many in the same situation.  This was&#xA;very similar to what happened to the tech industry in 2024.&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;This was very similar to what happened to the tech industry in 2024.&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;p&gt;See &lt;a href=&#34;/about/&#34; class=&#34;wikilink&#34; data-title=&#34;Waylon Walker&#34; data-description=&#34;Husband, dad of two, and hobbyist builder of things on the internet.&#34; data-date=&#34;2021-11-20&#34; data-preview=&#34;Husband, dad of two, and hobbyist builder of things on the internet.&#34;&gt;Waylon Walker&lt;/a&gt; for more about me.&lt;/p&gt;&#xA;&lt;h2 id=&#34;what-is-this-site&#34;&gt;What is this site? &lt;a href=&#34;#what-is-this-site&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;It’s a blog&lt;/li&gt;&#xA;&lt;li&gt;Digital Garden&lt;/li&gt;&#xA;&lt;li&gt;Learn in public&lt;/li&gt;&#xA;&lt;li&gt;TIL&lt;/li&gt;&#xA;&lt;li&gt;portfolio&lt;/li&gt;&#xA;&lt;li&gt;my personal corner of the internet&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;h2 id=&#34;its-nottext-red-500-text-6xl-font-bold-perfect&#34;&gt;It’s [NOT]{.text-red-500 .text-6xl .font-bold} Perfect &lt;a href=&#34;#its-nottext-red-500-text-6xl-font-bold-perfect&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;There will be mistakes&lt;/li&gt;&#xA;&lt;li&gt;I will learn&lt;/li&gt;&#xA;&lt;li&gt;Grammar will be fine, but never perfect&lt;/li&gt;&#xA;&lt;li&gt;Code will run on my machine, but not guaranteed to be perfect&lt;/li&gt;&#xA;&lt;li&gt;There will be days when the whole site is broken&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;h2 id=&#34;it-started-as-a-blog&#34;&gt;It started as a blog &lt;a href=&#34;#it-started-as-a-blog&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p class=&#34;font-bold underline decoration-teal-500&#34;&gt;This site started out as a [big B]&lt;/p&gt;&#xA;&lt;h2 id=&#34;its-a-digital-garden&#34;&gt;It’s a digital garden &lt;a href=&#34;#its-a-digital-garden&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;Somewhere along the line I found a really great community of people who create&#xA;content in ways that they does not require that level of depth and polish on&#xA;each and every post they make.  Ideas flow out and content gets made over time.&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://maggieappleton.com&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/maggieappleton.com.png&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/maggieappleton.com.png&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;Maggie Appleton&lt;/a&gt;{.hoverlink} and the idea of &lt;a href=&#34;https://maggieappleton.com/garden-history&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/maggieappleton.com.png&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/maggieappleton.com.png&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;digital&#xA;gardening&lt;/a&gt;{.hoverlink} has been very&#xA;inspiriational. She makes really great content with amazing drawings in them.&#xA;She publishes early and often and labels content with the state that it is in,&#xA;early and often.  Some posts are budding, and some are evergreen.  She also&#xA;distinguishes between notes and essays.&lt;/p&gt;&#xA;&lt;h2 id=&#34;learn-in-public&#34;&gt;Learn in public &lt;a href=&#34;#learn-in-public&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://www.swyx.io/&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/www.swyx.io.png&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/www.swyx.io.png&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;Shawn Wang&lt;/a&gt;{.hoverlink} (swyx) Has been very inpsiring with ideas&#xA;around &lt;a href=&#34;https://www.swyx.io/learn-in-public&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/www.swyx.io.png&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/www.swyx.io.png&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;Learn In Public&lt;/a&gt;{.hoverlink}.&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;Whatever your thing is, make the thing you wish you had found when you were&#xA;learning. Don’t judge your results by “claps” or retweets or stars or upvotes&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;just talk to yourself from 3 months ago. I keep an almost-daily dev blog&#xA;written for no one else but me.&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;p&gt;Try your best to be right but don’t wait til your the expert to share what you&#xA;are learning.  If something works for you, you are likely mostly right even if&#xA;you don’t have all the right words for it yet.  Don’t be afraid to be wrong.&lt;/p&gt;&#xA;&lt;h2 id=&#34;til&#34;&gt;TIL &lt;a href=&#34;#til&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;On to one of the most inspirational pieces that I have taken ideas from&#xA;&lt;a href=&#34;https://x.com/jbrancha&#34; class=&#34;hoverlink  has-avatar has-avatar-before&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/x.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/x.com.ico&#34;&gt;@jbrancha&lt;/a&gt;&lt;a href=&#34;https://github.com/jbranchaud/til&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;#til&#xA;repository&lt;/a&gt;{.hoverlink}.  He has been posting daily Tils&#xA;for Years, and they do pretty damn well on google despite what SEO experts say&#xA;his results end up in my google search quite often.&lt;/p&gt;&#xA;&lt;p&gt;I’ve made many posts on this site in the TIL format.  I don’t strictly stick to&#xA;a schedule or a character length quite like Josh Does, but generally they are&#xA;short, sweet, single ideas.&lt;/p&gt;&#xA;&lt;h2 id=&#34;thoughts&#34;&gt;Thoughts &lt;a href=&#34;#thoughts&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;I created a sub site &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;Thoughts&lt;/a&gt; to serve as a sort of list of bookmarks,&#xA;its a place for me to comment, quote, and link to other pages on the internet.&lt;/p&gt;&#xA;&lt;h2 id=&#34;portfolio&#34;&gt;Portfolio &lt;a href=&#34;#portfolio&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;This is my place to create and share content that becomes part of my portfolio.&#xA;I network with others, share content across social accounts and make it public.&#xA;This is an example of my work in writing, documenting, mentoring, and web&#xA;development.&lt;/p&gt;&#xA;&lt;h2 id=&#34;static-site&#34;&gt;Static Site &lt;a href=&#34;#static-site&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;This site has gone from &lt;a href=&#34;/html/&#34; class=&#34;glossary-term&#34; title=&#34;HTML (HyperText Markup Language) is the standard markup language used to create and design documents on the World Wide Web. It structures web content by...&#34;&gt;html&lt;/a&gt;, to gatsby, and finally I built my own static site&#xA;generator &lt;a href=&#34;/markata/&#34; class=&#34;wikilink&#34; data-title=&#34;markata&#34; data-description=&#34;This post is a work in progress.&#34; data-date=&#34;2024-05-30&#34; data-preview=&#34;This post is a work in progress.&#34;&gt;markata&lt;/a&gt;.  It’s been through a few different hosts, but at the&#xA;end of the day the content is all&#xA;&lt;a href=&#34;https://www.markdownguide.org/basic-syntax/&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/www.markdownguide.org.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/www.markdownguide.org.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;markdown&lt;/a&gt;{.hoverlink} with frontmatter.&lt;/p&gt;&#xA;&lt;p&gt;For instance the beginning of this post looks like this.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;---&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;date: 2024-05-31 14:07:02&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;templateKey: blog-post&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;title: about this site&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;tags:&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  &lt;span class=&#34;k&#34;&gt;-&lt;/span&gt; meta&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;published: True&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;---&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;h2 id=&#34;own-your-content&#34;&gt;Own your Content &lt;a href=&#34;#own-your-content&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;Throughout this process I have become a proponent of owning your own content on&#xA;the internet.  If you own the domain, the content, and host it yourself you&#xA;control when it gets published, deleted, and updated.  No one can take this&#xA;away from you execept for you.  It’s a very powerful tool that I highly&#xA;recommend everyone to use.  You can get your own domain for $12/year or less,&#xA;and that is all you need to pay.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ pypeaday eol-dr</title>
    <id>https://waylonwalker.com/pypeaday-eol-dr/</id>
    <updated>2024-05-31T11:49:42Z</updated>
    <published>2024-05-31T11:49:42Z</published>
    <link href="https://waylonwalker.com/pypeaday-eol-dr/" rel="alternate" type="text/html"></link>
    <summary type="text">Just starred eol-dr by pypeaday. It&#39;s an exciting project with a lot to offer.</summary>
    <content type="html">&lt;p&gt;Just starred &lt;a href=&#34;https://github.com/pypeaday/eol-dr&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;eol-dr&lt;/a&gt; by &lt;a href=&#34;https://github.com/pypeaday&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;pypeaday&lt;/a&gt;. It’s an exciting project with a lot to offer.&lt;/p&gt;&#xA;&lt;p&gt;A crowd-sourced guide to help techs help their non-tech spouses / partners / parents / kids when we are at the end-of-life&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>sick wikilink hover</title>
    <id>https://waylonwalker.com/sick-wikilink-hover/</id>
    <updated>2024-05-30T21:48:49Z</updated>
    <published>2024-05-30T21:48:49Z</published>
    <link href="https://waylonwalker.com/sick-wikilink-hover/" rel="alternate" type="text/html"></link>
    <summary type="text">Today I set up some sick wikilink hover effects using tailwind see a-case-for-tailwindcss. When you hover over them they show an image preview of the link...</summary>
    <content type="html">&lt;p&gt;Today I set up some sick wikilink hover effects using tailwind see &lt;a href=&#34;/a-case-for-tailwindcss/&#34; class=&#34;wikilink&#34; data-title=&#34;A Case For Tailwindcss&#34; data-description=&#34;I was watching @theprimeagen recently and I think he sold me on using tailwindcss. The thing about tailwind is that it is not a big component library, it&amp;#39;s a...&#34; data-date=&#34;2023-09-10&#34; data-preview=&#34;I was watching @theprimeagen recently and I think he sold me on using tailwindcss. The thing about tailwind is that it is not a big component library, it&amp;#39;s a...&#34;&gt;A Case For Tailwindcss&lt;/a&gt;. When you hover over them they show an image preview&#xA;of the link that you are going to.  I cant find where I have seen this but it&#xA;comes from some docs sites.&lt;/p&gt;&#xA;&lt;p&gt;I’ll finish this article later, just excited to see it up.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Zellij on X: &#34;POV your sysadmin rigged your terminal to show t...</title>
    <id>https://waylonwalker.com/thought-288/</id>
    <updated>2024-05-30T19:38:23Z</updated>
    <published>2024-05-30T19:38:23Z</published>
    <link href="https://waylonwalker.com/thought-288/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://x.com/Zellij_dev/status/1574675207935107072</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://x.com/Zellij_dev/status/1574675207935107072&#34; class=&#34;embed-card-link  has-avatar has-avatar-before&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/x.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/x.com.ico&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;External Link&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;X (formerly Twitter) · x.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;This one is too funny.  opening a sixel image in the terminal when logging into prod.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Text Decoration - Tailwind CSS</title>
    <id>https://waylonwalker.com/thought-287/</id>
    <updated>2024-05-30T18:32:45Z</updated>
    <published>2024-05-30T18:32:45Z</published>
    <link href="https://waylonwalker.com/thought-287/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://tailwindcss.com/docs/text-decoration</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://tailwindcss.com/docs/text-decoration&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://tailwindcss.com/api/og?path=/docs/text-decoration-line&#34; alt=&#34;text-decoration-line - Typography — Utilities for controlling the decoration of text.&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: text-decoration-line - Typography — Utilities for controlling the decoration of text.&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;text-decoration-line - Typography&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Utilities for controlling the decoration of text.&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;tailwindcss.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Tailwind calls strikethrough line-through.  This caught me off guard and took me a minute to find.&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;Control how text is decorated with the underline, no-underline, and line-through utilities.&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Digital Gardening for Non-Technical Folks</title>
    <id>https://waylonwalker.com/thought-286/</id>
    <updated>2024-05-30T15:41:59Z</updated>
    <published>2024-05-30T15:41:59Z</published>
    <link href="https://waylonwalker.com/thought-286/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://maggieappleton.com/nontechnical-gardening</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://maggieappleton.com/nontechnical-gardening&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://maggieappleton.com/og/nontechnical-gardening.png&#34; alt=&#34;Digital Gardening for Non-Technical Folks — How to build a digital garden without touching code&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: Digital Gardening for Non-Technical Folks — How to build a digital garden without touching code&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Digital Gardening for Non-Technical Folks&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;How to build a digital garden without touching code&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;maggieappleton.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Maggie is a fantastic proponent to the digital gardening movement. In this article she proposes 3 ways for someone to start their own digital garden with low friction and no code.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 We have a right to repair! with Kyle Wiens, Founder and CEO at...</title>
    <id>https://waylonwalker.com/thought-285/</id>
    <updated>2024-05-30T15:13:14Z</updated>
    <published>2024-05-30T15:13:14Z</published>
    <link href="https://waylonwalker.com/thought-285/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://changelog.com/podcast/582</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://changelog.com/podcast/582&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://snap.fly.dev/podcast/582/img&#34; alt=&#34;We have a right to repair! with Kyle Wiens, Founder and CEO at iFixit (Changelog Interviews #582) — This week Adam went solo — talking to Kyle Wiens, Founder and CEO at iFixit, about all things Right to Repair. They discussed the latest win here in the US with Oregon passing an electronics Right to Repair law to allow owners the right to get their stuff fixed anywhere as well as limit the anti-repair practices of par...&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: We have a right to repair! with Kyle Wiens, Founder and CEO at iFixit (Changelog Interviews #582) — This week Adam went solo — talking to Kyle Wiens, Founder and CEO at iFixit, about all things Right to Repair. They discussed the latest win here in the US with Oregon passing an electronics Right to Repair law to allow owners the right to get their stuff fixed anywhere as well as limit the anti-repair practices of par...&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;We have a right to repair! with Kyle Wiens, Founder and CEO at iFixit (Changelog Interviews #582)&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;This week Adam went solo — talking to Kyle Wiens, Founder and CEO at iFixit, about all things Right to Repair. They discussed the latest win here in the US with Oregon passing an electronics Righ...&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;Changelog · changelog.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;This is one of my favorite changelog episodes of all time.  I had no idea all the work that has gone into the right to repair and ifixit.  They talk a lot about apple and its trend to be less repairable from unservicable air pods to serialized components within iphone.&lt;/p&gt;&#xA;&lt;p&gt;A lot of legal talk that was far more interesting that I thought it would be.  Recently winning the right to repair case against John Deere, and creating repairability scores for devices to be placed in stores like energy guide is.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>markata</title>
    <id>https://waylonwalker.com/markata/</id>
    <updated>2024-05-30T13:45:54Z</updated>
    <published>2024-05-30T13:45:54Z</published>
    <link href="https://waylonwalker.com/markata/" rel="alternate" type="text/html"></link>
    <summary type="text">This post is a work in progress.</summary>
    <content type="html">&lt;p&gt;This post is a work in progress.&lt;/p&gt;&#xA;&lt;p&gt;Markata is the static site generator that I created to build my website &lt;a href=&#34;/about-this-site/&#34; class=&#34;wikilink&#34; data-title=&#34;about this site&#34; data-description=&#34;I registered waylonwalker.com and started making content for it in 2017 after a big industry downturn in 2016 that left me scared for what would happen if I...&#34; data-date=&#34;2024-05-31&#34; data-preview=&#34;I registered waylonwalker.com and started making content for it in 2017 after a big industry downturn in 2016 that left me scared for what would happen if I...&#34;&gt;about this site&lt;/a&gt;.  I built it for me and I enjoy using it.  I know everying&#xA;it can do and I can extend it to do more easily.  I have set it up for some&#xA;friends to also use it and am proud that it helps them publish their content.&lt;/p&gt;&#xA;&lt;p&gt;It’s a meme to create your own static site generator to make your website.  Yes&#xA;its funny, I don’t recommend it if your not ready for the level of work that&#xA;comes with it, but at the end of the day it’s very rewarding and a great way to&#xA;learn.&lt;/p&gt;&#xA;&lt;h2 id=&#34;static-sites-were-all-the-rage&#34;&gt;Static Sites were all the rage &lt;a href=&#34;#static-sites-were-all-the-rage&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;&lt;strong&gt;JAMStack was 🔥&lt;/strong&gt;&lt;/p&gt;&#xA;&lt;p&gt;Gatsby and Next.js hit the scene as the next generation of static site builders&#xA;and were getting big around the time I started building my site in 2017.  They&#xA;were based on react.  I dove into react and learned it enough to build my&#xA;website, but I really lacked the depth of knowledge in the js ecosystem to&#xA;really work on it effectively.  For instance when it got slow, it was hard for&#xA;me to profile and find out why.  What I really wanted was my site written in&#xA;python, which I knew the ecosystem for very well, but I did not find the&#xA;existing site generators easy to extend to do the things I needed.  Naively I&#xA;thought it would be easier to just build my own than learn how to make one do&#xA;what I wanted it to.  Not invented here syndrome hitting hard.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;In their Defense&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;I really lacked the depth of knowledge in the js ecosystem to really work on&#xA;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt;it (gatsby) effectively.&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;&lt;h2 id=&#34;plugins-all-the-way-down&#34;&gt;Plugins all the way down &lt;a href=&#34;#plugins-all-the-way-down&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;I started building this as I dove deeper into the &lt;a href=&#34;/kedro/&#34; class=&#34;wikilink&#34; data-title=&#34;Kedro&#34; data-description=&#34;My Notes about using kedro&#34; data-date=&#34;2019-11-02&#34; data-preview=&#34;My Notes about using kedro&#34;&gt;Kedro&lt;/a&gt; framework for Data&#xA;Engineering pipelines.  They use a plugin framework for allowing users to&#xA;extend it called pluggy.  I had a great experience extending kedro using pluggy&#xA;and wanted to build something with based on pluggy when I had started markata.&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;/pluggy-minimal-example/&#34; class=&#34;wikilink&#34; data-title=&#34;A Minimal Pluggy Example&#34; data-description=&#34;Pluggy makes it so easy to allow users to modify the behavior of a framework without thier specific feature needing to be implemented in the framework itself.&#34; data-date=&#34;2022-01-01&#34; data-preview=&#34;Pluggy makes it so easy to allow users to modify the behavior of a framework without thier specific feature needing to be implemented in the framework itself.&#34;&gt;A Minimal Pluggy Example&lt;/a&gt;&lt;/p&gt;&#xA;&lt;h2 id=&#34;more-posts&#34;&gt;More Posts &lt;a href=&#34;#more-posts&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;I have more posts about markata in the [[ tag/markata ]].&lt;/p&gt;&#xA;&lt;p&gt;{% for post in markata.feeds.markatafeed.map(reverse=True) %}&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/%7B%7Bpost.slug%7D%7D&#34;&gt;{{post.title}}&lt;/a&gt; - {{post.date}}&#xA;{% endfor %}&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>my linked in work history</title>
    <id>https://waylonwalker.com/my-linked-in-work-history/</id>
    <updated>2024-05-30T11:14:16Z</updated>
    <published>2024-05-30T11:14:16Z</published>
    <link href="https://waylonwalker.com/my-linked-in-work-history/" rel="alternate" type="text/html"></link>
    <summary type="text">My linked in work history is empty. I made up a position about content developer that tracks how long I&#39;ve been blogging. I think i did this because LinkedIn...</summary>
    <content type="html">&lt;p&gt;My linked in work history is empty.  I made up a position about content&#xA;developer that tracks how long I’ve been blogging.  I think i did this because&#xA;LinkedIn requires it.  Either way this is public knowledge and fine sharing.&lt;/p&gt;&#xA;&lt;h2 id=&#34;social-engineering&#34;&gt;Social Engineering &lt;a href=&#34;#social-engineering&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;If you have taken any security class for your job seriously you have already&#xA;been told not to share your work with most companies to the public, this is&#xA;private information that only opens you up for social engineering attacks&#xA;against that company.&lt;/p&gt;&#xA;&lt;h2 id=&#34;i-care-about-privacy-and-security&#34;&gt;I care about privacy and security &lt;a href=&#34;#i-care-about-privacy-and-security&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;I care about the security of these companies I work for and their reputation,&#xA;so I refuse to publically share it.&lt;/p&gt;&#xA;&lt;h2 id=&#34;need-to-know&#34;&gt;Need to know &lt;a href=&#34;#need-to-know&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;If somehow you need to know where I work it’s my choice to tell you.  I don’t&#xA;need to advertise to every social engineering hacker where I work on the&#xA;platform that they go to get that information from.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Your LinkedIn is Garbage</title>
    <id>https://waylonwalker.com/your-linkedin-is-garbage/</id>
    <updated>2024-05-30T11:02:39Z</updated>
    <published>2024-05-30T11:02:39Z</published>
    <link href="https://waylonwalker.com/your-linkedin-is-garbage/" rel="alternate" type="text/html"></link>
    <summary type="text">Your linkedin link sits at the top of your resume, its one of the first things I see when I open your resume, but yet it gives me no more information that...</summary>
    <content type="html">&lt;p&gt;Your linkedin link sits at the top of your resume, its one of the first things&#xA;I see when I open your resume, but yet it gives me no more information that the&#xA;damn resume you sent me.&lt;/p&gt;&#xA;&lt;p&gt;Save that space on your resume for something useful.&lt;/p&gt;&#xA;&lt;h2 id=&#34;so-you-want-that-inme-on-your-resume&#34;&gt;So you want that /in/me on your resume &lt;a href=&#34;#so-you-want-that-inme-on-your-resume&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;Fine if you want it on your resume make it actually useful for someone reading&#xA;your resume.&lt;/p&gt;&#xA;&lt;h2 id=&#34;actually-post-something&#34;&gt;Actually post something &lt;a href=&#34;#actually-post-something&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;If I am reading resume’s and I actually take the time to look at your linkedin&#xA;I want to see you post something.  Take a side, make an opinion and post it.&#xA;Learn something new, make a post about it.  If you have a blog and you make a&#xA;good post share it there.&lt;/p&gt;&#xA;&lt;h2 id=&#34;your-work-history-belongs-on-your-resume&#34;&gt;Your work history belongs on your resume &lt;a href=&#34;#your-work-history-belongs-on-your-resume&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;Any security 101 tells you that you should not share your work history on&#xA;linked in.  You should not share photos of you at your workplace that include&#xA;sensitive information such as your badge.&lt;/p&gt;&#xA;&lt;p&gt;Your work history on LinkedIn is for hackers to steal and use for social&#xA;engineering.&lt;/p&gt;&#xA;&lt;p&gt;If you took security seriously you would not include you work history at all,&#xA;and any hiring manager who gives a shit would see that and should understand.&#xA;Reality is that they probably don’t and it probably raised more questions than&#xA;answers for them.&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;/my-linked-in-work-history/&#34; class=&#34;wikilink&#34; data-title=&#34;my linked in work history&#34; data-description=&#34;My linked in work history is empty. I made up a position about content developer that tracks how long I&amp;#39;ve been blogging. I think i did this because LinkedIn...&#34; data-date=&#34;2024-05-30&#34; data-preview=&#34;My linked in work history is empty. I made up a position about content developer that tracks how long I&amp;#39;ve been blogging. I think i did this because LinkedIn...&#34;&gt;my linked in work history&lt;/a&gt;&lt;/p&gt;&#xA;&lt;h2 id=&#34;congrats-on-your-work-anniversary&#34;&gt;Congrats on your work anniversary &lt;a href=&#34;#congrats-on-your-work-anniversary&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;All these comments and messages are auto generated, both sides know it and its&#xA;garbage.  If you actually care about someones work history or achievements take&#xA;30s to craft a message of your own to them, that actually means something and&#xA;is not garbage.&lt;/p&gt;&#xA;&lt;h2 id=&#34;tldr&#34;&gt;TLDR &lt;a href=&#34;#tldr&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;If you are not going to take the time and effort to make something worth&#xA;sharing, take your garbage profile off your resume.o&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Try Out the Latest Linux Gnome DE With DistroBox</title>
    <id>https://waylonwalker.com/thought-284/</id>
    <updated>2024-05-26T01:13:05Z</updated>
    <published>2024-05-26T01:13:05Z</published>
    <link href="https://waylonwalker.com/thought-284/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://linuxtldr.com/gnome-de-in-distrobox/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://linuxtldr.com/gnome-de-in-distrobox/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://linuxtldr.com/wp-content/uploads/2024/02/gnome-de-in-distrobox.webp&#34; alt=&#34;Try Out the Latest Linux Gnome DE With DistroBox — Discover a step-by-step guide to installing and experiencing the latest Linux Gnome desktop environment with DistroBox.&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: Try Out the Latest Linux Gnome DE With DistroBox — Discover a step-by-step guide to installing and experiencing the latest Linux Gnome desktop environment with DistroBox.&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Try Out the Latest Linux Gnome DE With DistroBox&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Discover a step-by-step guide to installing and experiencing the latest Linux Gnome desktop environment with DistroBox.&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;Linux TLDR · linuxtldr.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Get gnome running in distrobox.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 STLGears.com | The Free STL Gear Designer</title>
    <id>https://waylonwalker.com/thought-283/</id>
    <updated>2024-05-26T00:04:56Z</updated>
    <published>2024-05-26T00:04:56Z</published>
    <link href="https://waylonwalker.com/thought-283/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.stlgears.com/generators/3dprint</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://www.stlgears.com/generators/3dprint&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://iili.io/HOllvRI.png&#34; alt=&#34;STLGears.com — The Free STL Gear Designer For 3D Printing&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: STLGears.com — The Free STL Gear Designer For 3D Printing&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;STLGears.com&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;The Free STL Gear Designer For 3D Printing&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;stlgears.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;This is a pretty nice gear generator.  I printed a few gears today and it worked great so far.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 eraser-dev/eraser: 🧹 Cleaning up images from Kubernetes nodes</title>
    <id>https://waylonwalker.com/thought-282/</id>
    <updated>2024-05-25T01:26:09Z</updated>
    <published>2024-05-25T01:26:09Z</published>
    <link href="https://waylonwalker.com/thought-282/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://github.com/eraser-dev/eraser?tab=readme-ov-file</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://github.com/eraser-dev/eraser?tab=readme-ov-file&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://opengraph.githubassets.com/30e241a435319be74d01879a835e7ae3607ec2a41c978b78e82fb4665fffd51a/eraser-dev/eraser&#34; alt=&#34;GitHub - eraser-dev/eraser: 🧹 Cleaning up images from Kubernetes nodes — 🧹 Cleaning up images from Kubernetes nodes. Contribute to eraser-dev/eraser development by creating an account on GitHub.&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: GitHub - eraser-dev/eraser: 🧹 Cleaning up images from Kubernetes nodes — 🧹 Cleaning up images from Kubernetes nodes. Contribute to eraser-dev/eraser development by creating an account on GitHub.&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;GitHub - eraser-dev/eraser: 🧹 Cleaning up images from Kubernetes nodes&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;🧹 Cleaning up images from Kubernetes nodes. Contribute to eraser-dev/eraser development by creating an account on GitHub.&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;GitHub · github.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;This is kinda sick, its a tool to clean up container images in a k8s cluster.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ eraser-dev eraser</title>
    <id>https://waylonwalker.com/eraser-dev-eraser/</id>
    <updated>2024-05-25T01:25:18Z</updated>
    <published>2024-05-25T01:25:18Z</published>
    <link href="https://waylonwalker.com/eraser-dev-eraser/" rel="alternate" type="text/html"></link>
    <summary type="text">I recently discovered eraser by eraser-dev, and it&#39;s truly impressive.</summary>
    <content type="html">&lt;p&gt;I recently discovered &lt;a href=&#34;https://github.com/eraser-dev/eraser&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;eraser&lt;/a&gt; by &lt;a href=&#34;https://github.com/eraser-dev&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;eraser-dev&lt;/a&gt;, and it’s truly impressive.&lt;/p&gt;&#xA;&lt;p&gt;🧹 Cleaning up images from Kubernetes nodes&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Distrobox</title>
    <id>https://waylonwalker.com/thought-281/</id>
    <updated>2024-05-22T18:13:13Z</updated>
    <published>2024-05-22T18:13:13Z</published>
    <link href="https://waylonwalker.com/thought-281/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://distrobox.it/usage/distrobox-host-exec/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://distrobox.it/usage/distrobox-host-exec/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://distrobox.it/assets/card.webp&#34; alt=&#34;Distrobox — Use any linux distribution inside your terminal.&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: Distrobox — Use any linux distribution inside your terminal.&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Distrobox&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Use any linux distribution inside your terminal.&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;distrobox.it&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;distrobox gives you &lt;code&gt;distrobox-host-exec&lt;/code&gt; to run commands on the host. This is handy to get access to host level clis that you probably wouldn’t want to run from the container like &lt;code&gt;podman&lt;/code&gt;, &lt;code&gt;docker&lt;/code&gt;, &lt;code&gt;flatpak&lt;/code&gt;.&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;DESCRIPTION&#xA;distrobox-host-exec lets one execute command on the host, while inside of a container.&lt;/p&gt;&#xA;&lt;p&gt;Under the hood, distrobox-host-exec uses host-spawn a project that lets us execute commands back on the host. If the tool is not found the user will be prompted to install it.&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Are We Anti-Cheat Yet?</title>
    <id>https://waylonwalker.com/thought-280/</id>
    <updated>2024-05-22T12:37:55Z</updated>
    <published>2024-05-22T12:37:55Z</published>
    <link href="https://waylonwalker.com/thought-280/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://areweanticheatyet.com/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://areweanticheatyet.com/&#34; class=&#34;embed-card-link  has-avatar has-avatar-before&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/areweanticheatyet.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/areweanticheatyet.com.ico&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Are We Anti-Cheat Yet?&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;areweanticheatyet.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;A comprehensive community built index of anti-cheat support for linux very similar to proton, but specific to anticheat support.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 ublue-os/image-template: Build your own custom Universal Blue ...</title>
    <id>https://waylonwalker.com/thought-279/</id>
    <updated>2024-05-22T12:36:10Z</updated>
    <published>2024-05-22T12:36:10Z</published>
    <link href="https://waylonwalker.com/thought-279/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://github.com/ublue-os/image-template</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://github.com/ublue-os/image-template&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://opengraph.githubassets.com/33473a1c84ecf7b1dd7df716eb451fabdab34da05bc969dcd26205d926ea7bf1/ublue-os/image-template&#34; alt=&#34;GitHub - ublue-os/image-template: Build your own custom Universal Blue Image! — Build your own custom Universal Blue Image! Contribute to ublue-os/image-template development by creating an account on GitHub.&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: GitHub - ublue-os/image-template: Build your own custom Universal Blue Image! — Build your own custom Universal Blue Image! Contribute to ublue-os/image-template development by creating an account on GitHub.&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;GitHub - ublue-os/image-template: Build your own custom Universal Blue Image!&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Build your own custom Universal Blue Image! Contribute to ublue-os/image-template development by creating an account on GitHub.&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;GitHub · github.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;ublue-os makes a github template for making your own &lt;a href=&#34;/glossary/git/&#34; class=&#34;glossary-term&#34; title=&#34;Git is a version control system for tracking changes in source code during software development. In the beginning there were many, some were licensed. As...&#34;&gt;git&lt;/a&gt; repo with actions that build out your own personal ublue iso.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ ublue-os image-template</title>
    <id>https://waylonwalker.com/ublue-os-image-template/</id>
    <updated>2024-05-22T12:34:45Z</updated>
    <published>2024-05-22T12:34:45Z</published>
    <link href="https://waylonwalker.com/ublue-os-image-template/" rel="alternate" type="text/html"></link>
    <summary type="text">The work on image-template by ublue-os.</summary>
    <content type="html">&lt;p&gt;The work on &lt;a href=&#34;https://github.com/ublue-os/image-template&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;image-template&lt;/a&gt; by &lt;a href=&#34;https://github.com/ublue-os&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;ublue-os&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Build your own custom Universal Blue Image!&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 ublue-os/obs-studio-portable: OCI container image of OBS Studi...</title>
    <id>https://waylonwalker.com/thought-278/</id>
    <updated>2024-05-21T01:46:59Z</updated>
    <published>2024-05-21T01:46:59Z</published>
    <link href="https://waylonwalker.com/thought-278/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://github.com/ublue-os/obs-studio-portable</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://github.com/ublue-os/obs-studio-portable&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://opengraph.githubassets.com/de3f8b3d188df1f9264bd60ae096772a8a60cbb5b1b9fedfed67489ea120cb76/ublue-os/obs-studio-portable&#34; alt=&#34;GitHub - ublue-os/obs-studio-portable: OCI container image of OBS Studio that bundles a curated collection of 3rd party plugins — OCI container image of OBS Studio that bundles a curated collection of 3rd party plugins - ublue-os/obs-studio-portable&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: GitHub - ublue-os/obs-studio-portable: OCI container image of OBS Studio that bundles a curated collection of 3rd party plugins — OCI container image of OBS Studio that bundles a curated collection of 3rd party plugins - ublue-os/obs-studio-portable&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;GitHub - ublue-os/obs-studio-portable: OCI container image of OBS Studio that bundles a curated collection of 3rd party plugins&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;OCI container image of OBS Studio that bundles a curated collection of 3rd party plugins - ublue-os/obs-studio-portable&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;GitHub · github.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Distrobox is so interesting and cool, I’ve only recently started realizing how much it can do especially related to hardware and graphics, this is quite an example that runs obs in a distrobox.  I had no idea distrobox would let you connect to cameras and gpus so seemlessly, and give you a gui to work from. And with distrobox you can export so that it just looks like an app on your system.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ ublue-os obs-studio-portable</title>
    <id>https://waylonwalker.com/ublue-os-obs-studio-portable/</id>
    <updated>2024-05-21T01:44:25Z</updated>
    <published>2024-05-21T01:44:25Z</published>
    <link href="https://waylonwalker.com/ublue-os-obs-studio-portable/" rel="alternate" type="text/html"></link>
    <summary type="text">The work on obs-studio-portable by ublue-os.</summary>
    <content type="html">&lt;p&gt;The work on &lt;a href=&#34;https://github.com/ublue-os/obs-studio-portable&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;obs-studio-portable&lt;/a&gt; by &lt;a href=&#34;https://github.com/ublue-os&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;ublue-os&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;OCI container image of OBS Studio that bundles a curated collection of 3rd party plugins&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ andydunstall piko</title>
    <id>https://waylonwalker.com/andydunstall-piko/</id>
    <updated>2024-05-16T13:54:42Z</updated>
    <published>2024-05-16T13:54:42Z</published>
    <link href="https://waylonwalker.com/andydunstall-piko/" rel="alternate" type="text/html"></link>
    <summary type="text">andydunstall has done a fantastic job with piko. Highly recommend taking a look.</summary>
    <content type="html">&lt;p&gt;&lt;a href=&#34;https://github.com/andydunstall&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;andydunstall&lt;/a&gt; has done a fantastic job with &lt;a href=&#34;https://github.com/andydunstall/piko&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;piko&lt;/a&gt;. Highly recommend taking a look.&lt;/p&gt;&#xA;&lt;p&gt;An open-source alternative to Ngrok, designed to serve production traffic and be simple to host (particularly on Kubernetes)&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 How Ahrefs Gets a Billion Dollar-Worth Infrastructure With a 9...</title>
    <id>https://waylonwalker.com/thought-277/</id>
    <updated>2024-05-16T01:38:42Z</updated>
    <published>2024-05-16T01:38:42Z</published>
    <link href="https://waylonwalker.com/thought-277/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://tech.ahrefs.com/how-ahrefs-gets-a-billion-dollar-worth-infrastructure-with-a-90-discount-5edd473b2399</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://tech.ahrefs.com/how-ahrefs-gets-a-billion-dollar-worth-infrastructure-with-a-90-discount-5edd473b2399&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://miro.medium.com/v2/resize:fit:1200/1*16rpyRv_ew4l6Z9SEi9Uzg.jpeg&#34; alt=&#34;How Ahrefs gets a Billion dollar-worth infrastructure with a 90% discount — A holistic comparison of on-prem Ahrefs infrastructure with a cloud alternative&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: How Ahrefs gets a Billion dollar-worth infrastructure with a 90% discount — A holistic comparison of on-prem Ahrefs infrastructure with a cloud alternative&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;How Ahrefs gets a Billion dollar-worth infrastructure with a 90% discount&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;A holistic comparison of on-prem Ahrefs infrastructure with a cloud alternative&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;Medium · tech.ahrefs.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;2024 has been a wild year for infra with going “back” to on prem being made popular by &lt;a href=&#34;https://twitter.com/dhh&#34;&gt;@dhh&lt;/a&gt;.  Well it looks like ahrefs saw right through the cloud trends an decided to ride the anti cloud train until it came back around to the station.&lt;/p&gt;&#xA;&lt;p&gt;Being just a bit critical of the article it is impossible to get an apples to apples without actually running something of this scale and spending too much to find out.  I cant imagine raw ec2 and ebs being the cheapest route into aws.  They used no serverless tech in their article, but I digress, because I like this own your shit and build good product train.&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;What about People?!&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;p&gt;This follow up does dive into the typical gut reaction that people cost a lot of money, you must account for them.  You see when you hire people who are actually good at what they do, and run lean a lot of cost goes away, you have levels of management that disappear, levels of tooling that don’t need to exist, departments of IT don’t need to exist.&lt;/p&gt;&#xA;&lt;p&gt;Colo’s are the new hotness, and will continue to grow!&lt;/p&gt;&#xA;&lt;hr/&gt;&#xA;&lt;p&gt;I just notices that they didn’t even account for egress, support and taxes, egress costs would make  a difference.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Safer Bash Shebang Recipes - Just Programmer&#39;s Manual</title>
    <id>https://waylonwalker.com/thought-276/</id>
    <updated>2024-05-14T22:29:49Z</updated>
    <published>2024-05-14T22:29:49Z</published>
    <link href="https://waylonwalker.com/thought-276/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://just.systems/man/en/safer-bash-shebang-recipes.html?highlight=pipefail#safer-bash-shebang-recipes</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://just.systems/man/en/safer-bash-shebang-recipes.html?highlight=pipefail#safer-bash-shebang-recipes&#34; class=&#34;embed-card-link  has-avatar has-avatar-before&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/just.systems.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/just.systems.ico&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Safer Bash Shebang Recipes - Just Programmer&amp;#39;s Manual&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;just.systems&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;When using justfiles each line is ran separately from the last, unless you specify the file to be ran by something other than just such as bash.  If you want variables to persist you need to set a shebang.&lt;/p&gt;&#xA;&lt;p&gt;Also if you are using your script i a way that you want it to exit when it fails you need to set -e and  -o pipefail.  This is critical if you are thinking about using just for production scripts like ci/cd.  I’ve hit too bugs where ci passes, but no artifacts were created issues for this exact reason.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;foo:&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  &lt;span class=&#34;c1&#34;&gt;#!/usr/bin/env bash&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  &lt;span class=&#34;nb&#34;&gt;set&lt;/span&gt; -euxo pipefail&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  &lt;span class=&#34;nv&#34;&gt;hello&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;Yo&amp;#39;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  &lt;span class=&#34;nb&#34;&gt;echo&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;$hello&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt; from Bash!&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Justfile Cheat Sheet by linux_china - Download free from Cheat...</title>
    <id>https://waylonwalker.com/thought-275/</id>
    <updated>2024-05-14T22:17:30Z</updated>
    <published>2024-05-14T22:17:30Z</published>
    <link href="https://waylonwalker.com/thought-275/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://cheatography.com/linux-china/cheat-sheets/justfile/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://cheatography.com/linux-china/cheat-sheets/justfile/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://media.cheatography.com/storage/thumb/linux-china_justfile.600.jpg&#34; alt=&#34;Justfile Cheat Sheet — Just is a command runner https://github.com/casey/just&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: Justfile Cheat Sheet — Just is a command runner https://github.com/casey/just&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Justfile Cheat Sheet&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Just is a command runner https://github.com/casey/just&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;Cheatography · cheatography.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;This is a dope ass cheat sheet for justfiles.  It’s filled with good examples that are short and to the point, probably all from the docs, but anyways I need to do some like this for myself.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 A quote from Tim Paul</title>
    <id>https://waylonwalker.com/thought-274/</id>
    <updated>2024-05-14T02:21:17Z</updated>
    <published>2024-05-14T02:21:17Z</published>
    <link href="https://waylonwalker.com/thought-274/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://simonwillison.net/2024/May/13/tim-paul/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://simonwillison.net/2024/May/13/tim-paul/&#34; class=&#34;embed-card-link  has-avatar has-avatar-before&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/simonwillison.net.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/simonwillison.net.ico&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;A quote from Tim Paul&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;I’m no developer, but I got the AI part working in about an hour. What took longer was the other stuff: identifying the problem, designing and building the UI, setting …&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;Simon Willison’s Weblog · simonwillison.net&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Damn this Tim Paul quote finishes hard and such a good point.  None of the stuff around llms just work.  Good ui’s,  front end, back end, infrastructure, product.  All these things still need to exist, and in fact for ai to be good we need to still go hard on them otherwise everything will die in a heaping pile of &lt;a href=&#34;https://simonwillison.net/2024/May/8/slop/&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/simonwillison.net.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/simonwillison.net.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;ai slop&lt;/a&gt;&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;I’m no developer, but I got the AI part working in about an hour.&lt;/p&gt;&#xA;&lt;p&gt;What took longer was the other stuff: identifying the problem, designing and building the UI, setting up the templating, routes and data architecture.&lt;/p&gt;&#xA;&lt;p&gt;It reminded me that, in order to capitalise on the potential of AI technologies, we need to really invest in the other stuff too, especially data infrastructure.&lt;/p&gt;&#xA;&lt;p&gt;It would be ironic, and a huge shame, if AI hype sucked all the investment out of those things.&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;p&gt;— &lt;a href=&#34;https://www.timpaul.co.uk/posts/using-ai-to-generate-web-forms-from-pdfs/&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/www.timpaul.co.uk.png&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/www.timpaul.co.uk.png&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;Tim Paul&lt;/a&gt;&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 PopSQL - Collaborative SQL Editor - Bring Order to SQL Chaos</title>
    <id>https://waylonwalker.com/thought-273/</id>
    <updated>2024-05-12T19:29:58Z</updated>
    <published>2024-05-12T19:29:58Z</published>
    <link href="https://waylonwalker.com/thought-273/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://popsql.com/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://popsql.com/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://images.ctfassets.net/iv1sg9nibjwl/L9cy5FXJHXiAvZABkKvwa/5308dd58add6c033ac404c556010f445/homepage_og.jpg&#34; alt=&#34;PopSQL - Collaborative SQL Editor - Bring Order to SQL Chaos — PopSQL is a unified SQL collaboration workspace that connects everyone in the data analysis process so you can obtain better insights by asking the right questions, together.&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: PopSQL - Collaborative SQL Editor - Bring Order to SQL Chaos — PopSQL is a unified SQL collaboration workspace that connects everyone in the data analysis process so you can obtain better insights by asking the right questions, together.&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;PopSQL - Collaborative SQL Editor - Bring Order to SQL Chaos&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;PopSQL is a unified SQL collaboration workspace that connects everyone in the data analysis process so you can obtain better insights by asking the right questions, together.&#xA;&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;PopSQL · popsql.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;PopSql looks like a very innovative product to bring collaboration to data exploration and visualization in a way you would expect from something like vscode liveshare.  This looks far more appealing than a traditional BI data tool.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Pricing | PopSQL</title>
    <id>https://waylonwalker.com/thought-272/</id>
    <updated>2024-05-12T19:27:05Z</updated>
    <published>2024-05-12T19:27:05Z</published>
    <link href="https://waylonwalker.com/thought-272/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://popsql.com/pricing</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://popsql.com/pricing&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://popsql.com/static/images/og/pricing.jpg&#34; alt=&#34;Pricing | PopSQL — PopSQL is a unified SQL collaboration workspace that connects everyone in the data analysis process so you can obtain better insights by asking the right questions, together.&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: Pricing | PopSQL — PopSQL is a unified SQL collaboration workspace that connects everyone in the data analysis process so you can obtain better insights by asking the right questions, together.&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Pricing | PopSQL&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;PopSQL is a unified SQL collaboration workspace that connects everyone in the data analysis process so you can obtain better insights by asking the right questions, together.&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;PopSQL · popsql.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;interesting pricing model from popsql (pronounces Popsicle).  At a glance you pay for data retention, want the abiltiy to recall all the queries you ran within the last year, run at a higher frequency, you jump a pricing tier.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Dax Raad - SST, Build modern full-stack applications on AWS wi...</title>
    <id>https://waylonwalker.com/thought-271/</id>
    <updated>2024-05-12T19:24:28Z</updated>
    <published>2024-05-12T19:24:28Z</published>
    <link href="https://waylonwalker.com/thought-271/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/watch?v=V_2OLtsD0N8&amp;t=4604</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;V_2OLtsD0N8&#34; title=&#34;Dax Raad - SST, Build modern full-stack applications on AWS with Ease&#34; playlabel=&#34;Play: Dax Raad - SST, Build modern full-stack applications on AWS with Ease&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;such a sick episode with dax.&lt;/p&gt;&#xA;&lt;p&gt;SST’s free tier will be free as long as aws allows a free tier, their free tier literally costs them nothing.&lt;/p&gt;&#xA;&lt;p&gt;They talked about keeping SST small, the limitations that brings, but also the number of problems that just go away when you only have 3 people building.  Lots of process disappears, everyone can trust everyone, no one needs to wait for approval, everyone is their own PM and just builds cool shit.  They don’t have to worry about big costs and making payroll because they are profitable so much higher than their costs.&lt;/p&gt;&#xA;&lt;p&gt;If they can get through phase one of just being the go platform for a very specific audience of users, and gain marketshare, the ideas of offerings on top of this are endless.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Install Pokemon TCG Live on Steam Deck - Installation Guide - ...</title>
    <id>https://waylonwalker.com/thought-270/</id>
    <updated>2024-05-11T13:27:19Z</updated>
    <published>2024-05-11T13:27:19Z</published>
    <link href="https://waylonwalker.com/thought-270/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/watch?v=zfN4hk7FelI</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;zfN4hk7FelI&#34; title=&#34;Install Pokemon TCG Live on Steam Deck - Installation Guide - get past the white login screen&#34; playlabel=&#34;Play: Install Pokemon TCG Live on Steam Deck - Installation Guide - get past the white login screen&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;I had no idea that you could just drop an msi installer right in steam.  This worked for me, and was much easier to install pokemon tcg live in 05-2024 on ubuntu 22-04.  I added the msi to steam from my downloads, hit start, failed right away like he said it would.  changed compatability to proton experimental, and it opened right up.&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;Download the official installer from pokemon tcg&lt;/li&gt;&#xA;&lt;li&gt;Add non steam game&lt;/li&gt;&#xA;&lt;li&gt;click show all file types&lt;/li&gt;&#xA;&lt;li&gt;navigate to downloaded msi&lt;/li&gt;&#xA;&lt;li&gt;click gear icon &amp;gt; compatability &amp;gt; proton experimental&lt;/li&gt;&#xA;&lt;li&gt;click play&lt;/li&gt;&#xA;&lt;li&gt;profit&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ starfederation datastar</title>
    <id>https://waylonwalker.com/starfederation-datastar/</id>
    <updated>2024-05-10T19:07:04Z</updated>
    <published>2024-05-10T19:07:04Z</published>
    <link href="https://waylonwalker.com/starfederation-datastar/" rel="alternate" type="text/html"></link>
    <summary type="text">The work on datastar by starfederation.</summary>
    <content type="html">&lt;p&gt;The work on &lt;a href=&#34;https://github.com/starfederation/datastar&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;datastar&lt;/a&gt; by &lt;a href=&#34;https://github.com/starfederation&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;starfederation&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;The hypermedia framework.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Fields - Pydantic</title>
    <id>https://waylonwalker.com/thought-269/</id>
    <updated>2024-05-09T20:28:27Z</updated>
    <published>2024-05-09T20:28:27Z</published>
    <link href="https://waylonwalker.com/thought-269/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://docs.pydantic.dev/2.7/concepts/fields/#field-representation</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://docs.pydantic.dev/2.7/concepts/fields/#field-representation&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://pydantic.dev/docs/og/validation/2.7/concepts/fields.png&#34; alt=&#34;Fields&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: Fields&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Fields&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;Pydantic Docs · docs.pydantic.dev&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;&lt;code&gt;exclude=True&lt;/code&gt; and &lt;code&gt;repr=False&lt;/code&gt; is a good pydantic combination for secret attributes such as user passwords, or hashed passwords.  exclude keeps it out of model_dumps, and repr keeps it out of the logs.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;kn&#34;&gt;from&lt;/span&gt; &lt;span class=&#34;nn&#34;&gt;pydantic&lt;/span&gt; &lt;span class=&#34;kn&#34;&gt;import&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;BaseModel&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;Field&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;class&lt;/span&gt; &lt;span class=&#34;nc&#34;&gt;User&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;BaseModel&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;):&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;n&#34;&gt;name&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;nb&#34;&gt;str&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;Field&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;repr&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;kc&#34;&gt;True&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;  &#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;n&#34;&gt;age&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;nb&#34;&gt;int&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;Field&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;repr&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;kc&#34;&gt;False&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;user&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;User&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;name&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;John&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;age&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;42&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;print&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;user&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;#&amp;gt; name=&amp;#39;John&amp;#39;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>just picker</title>
    <id>https://waylonwalker.com/just-picker/</id>
    <updated>2024-05-08T20:48:23Z</updated>
    <published>2024-05-08T20:48:23Z</published>
    <link href="https://waylonwalker.com/just-picker/" rel="alternate" type="text/html"></link>
    <summary type="text">has been by go to tool for saving commands in a way that I can replay them and have team members replay them without relying on the shell history of any...</summary>
    <content type="html">&lt;p&gt;&lt;a href=&#34;https://github.com/casey/just&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;&lt;code&gt;just&lt;/code&gt;&lt;/a&gt; has been by go to tool for saving&#xA;commands in a way that I can replay them and have team members replay them&#xA;without relying on the shell history of any given machine.  This is my go to&#xA;default step, it lets you pick a just command to run with a fuzzy picker.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;default:&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  @just --list&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Hatch v1.10.0 - Hatch</title>
    <id>https://waylonwalker.com/thought-268/</id>
    <updated>2024-05-02T14:06:57Z</updated>
    <published>2024-05-02T14:06:57Z</published>
    <link href="https://waylonwalker.com/thought-268/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://hatch.pypa.io/latest/blog/2024/05/02/hatch-v1100/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://hatch.pypa.io/latest/blog/2024/05/02/hatch-v1100/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Hatch v1.10.0 - Hatch&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;hatch.pypa.io&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Hatch be flyin.&lt;/p&gt;&#xA;&lt;p&gt;This new release of hatch includes support for the new package installer &lt;code&gt;uv&lt;/code&gt; which is just mind blowing fast compared to anything else we have in python right now.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;nx&#34;&gt;tool&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nx&#34;&gt;hatch&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nx&#34;&gt;envs&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nx&#34;&gt;default&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nx&#34;&gt;installer&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;uv&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;The other features are cool too, check them out.  I’ll probably be using the test runner, but I’ve been waiting for the uv support since uv launched.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Using journalctl - The Ultimate Guide To Logging</title>
    <id>https://waylonwalker.com/thought-267/</id>
    <updated>2024-05-02T01:20:51Z</updated>
    <published>2024-05-02T01:20:51Z</published>
    <link href="https://waylonwalker.com/thought-267/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.loggly.com/ultimate-guide/using-journalctl/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://www.loggly.com/ultimate-guide/using-journalctl/&#34; class=&#34;embed-card-link  has-avatar has-avatar-before&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/www.loggly.com.png&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/www.loggly.com.png&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;External Link&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;loggly.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;I had a boot issue on my sons fresh ubuntu 24.04 install and journalctl came in clutch.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;journalctl -p &lt;span class=&#34;m&#34;&gt;3&lt;/span&gt; -xb &#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;ul&gt;&#xA;&lt;li&gt;-p 3 gives me priority 3&lt;/li&gt;&#xA;&lt;li&gt;-x gives me extra catalog information when available&lt;/li&gt;&#xA;&lt;li&gt;-b gives me the current boot.&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Bug #2006590 “gdm3 crashes with SIGTRAP on startup” : Bugs : g...</title>
    <id>https://waylonwalker.com/thought-266/</id>
    <updated>2024-05-02T00:54:02Z</updated>
    <published>2024-05-02T00:54:02Z</published>
    <link href="https://waylonwalker.com/thought-266/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://bugs.launchpad.net/ubuntu/+source/gdm3/+bug/2006590</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://bugs.launchpad.net/ubuntu/+source/gdm3/+bug/2006590&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img src=&#34;/@@/launchpad-og-image.png&#34; alt=&#34;Bug #2006590 “gdm3 crashes with SIGTRAP on startup” : Bugs : gdm3 package : Ubuntu — Suddenly this week, my GUI (ubuntu 22.10) does not open, stuck on the console text.&#xA;I tried to free some space (by uninstall a app), then to check/update the paquets (dkpg).&#xA;&amp;lt;p&amp;gt;ProblemType: Bug&#xA;DistroRelease: Ubuntu 22.10&#xA;Package: xorg 1:7.7+23ubuntu2&#xA;ProcVersionSignature: Ubuntu 5.19.0-29.30-generic 5.19.17&#xA;Uname: Linux 5.19.0-29-generic x86_64&#xA;NonfreeKernelModules: nvidia_modeset nvidia&#xA;.proc.driver.nvidia.capabilities.gpu0: Error: path was not a regular file.&#xA;.proc.driver.nvidia.capabilities…&amp;#34; loading=“lazy”&amp;gt;&#xA;&amp;lt;/div&amp;gt;&#xA;&amp;lt;div class=&#34; embed-card-content glightbox&#34;=&#34;&#34;/ data-glightbox=&#34;description: Bug #2006590 “gdm3 crashes with SIGTRAP on startup” : Bugs : gdm3 package : Ubuntu — Suddenly this week, my GUI (ubuntu 22.10) does not open, stuck on the console text.&#xA;I tried to free some space (by uninstall a app), then to check/update the paquets (dkpg).&#xA;&amp;lt;p&amp;gt;ProblemType: Bug&#xA;DistroRelease: Ubuntu 22.10&#xA;Package: xorg 1:7.7+23ubuntu2&#xA;ProcVersionSignature: Ubuntu 5.19.0-29.30-generic 5.19.17&#xA;Uname: Linux 5.19.0-29-generic x86_64&#xA;NonfreeKernelModules: nvidia_modeset nvidia&#xA;.proc.driver.nvidia.capabilities.gpu0: Error: path was not a regular file.&#xA;.proc.driver.nvidia.capabilities…&amp;#34; loading=“lazy”&amp;gt;&#xA;&amp;lt;/div&amp;gt;&#xA;&amp;lt;div class=&#34;&gt;&#xA;&lt;div class=&#34;embed-card-title&#34;&gt;Bug #2006590 “gdm3 crashes with SIGTRAP on startup” : Bugs : gdm3 package : Ubuntu&lt;/div&gt;&#xA;&lt;div class=&#34;embed-card-description&#34;&gt;Suddenly this week, my GUI (ubuntu 22.10) does not open, stuck on the console text.&#xA;I tried to free some space (by uninstall a app), then to check/update the paquets (dkpg).&lt;p&gt;&lt;/p&gt;&#xA;&lt;p&gt;ProblemType: Bug&#xA;Distr…&lt;/p&gt;&lt;/div&gt;&#xA;&lt;div class=&#34;embed-card-meta&#34;&gt;Launchpad · bugs.launchpad.net&lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;/a&gt;&lt;p&gt;&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;This Thread saved my son’s ubuntu 24.04 install.&#xA;His was failing to start with the following error.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Gdm: GdmSession: no session desktop files installed, aborting...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;&lt;a href=&#34;https://twitter.com/_WaylonWalker/status/1785825677079441482&#34;&gt;https://twitter.com/_WaylonWalker/status/1785825677079441482&lt;/a&gt;&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo apt install --reinstall ubuntu-session&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Alir3z4/html2text: Convert HTML to Markdown-formatted text.</title>
    <id>https://waylonwalker.com/thought-265/</id>
    <updated>2024-05-01T17:50:26Z</updated>
    <published>2024-05-01T17:50:26Z</published>
    <link href="https://waylonwalker.com/thought-265/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://github.com/Alir3z4/html2text</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://github.com/Alir3z4/html2text&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://opengraph.githubassets.com/48c190698deb6cc3ed93e12c4967618ee76f51da12311f5368ae90a994e6f819/Alir3z4/html2text&#34; alt=&#34;GitHub - Alir3z4/html2text: Convert HTML to Markdown-formatted text. — Convert HTML to Markdown-formatted text. Contribute to Alir3z4/html2text development by creating an account on GitHub.&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: GitHub - Alir3z4/html2text: Convert HTML to Markdown-formatted text. — Convert HTML to Markdown-formatted text. Contribute to Alir3z4/html2text development by creating an account on GitHub.&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;GitHub - Alir3z4/html2text: Convert HTML to Markdown-formatted text.&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Convert HTML to Markdown-formatted text. Contribute to Alir3z4/html2text development by creating an account on GitHub.&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;GitHub · github.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Super neat tool to convert &lt;a href=&#34;/html/&#34; class=&#34;glossary-term&#34; title=&#34;HTML (HyperText Markup Language) is the standard markup language used to create and design documents on the World Wide Web. It structures web content by...&#34;&gt;html&lt;/a&gt; to markdown&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;o&#34;&gt;&amp;gt;&amp;gt;&amp;gt;&lt;/span&gt; &lt;span class=&#34;kn&#34;&gt;import&lt;/span&gt; &lt;span class=&#34;nn&#34;&gt;html2text&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;o&#34;&gt;&amp;gt;&amp;gt;&amp;gt;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;o&#34;&gt;&amp;gt;&amp;gt;&amp;gt;&lt;/span&gt; &lt;span class=&#34;nb&#34;&gt;print&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;html2text&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;html2text&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;Zed&amp;#39;s&amp;lt;/strong&amp;gt; dead baby, &amp;lt;em&amp;gt;Zed&amp;#39;s&amp;lt;/em&amp;gt; dead.&amp;lt;/p&amp;gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;))&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;o&#34;&gt;**&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;Zed&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;s** dead baby, _Zed&amp;#39;&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;s_&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;dead&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;It even plays nicely with rich.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;kn&#34;&gt;from&lt;/span&gt; &lt;span class=&#34;nn&#34;&gt;rich.markdown&lt;/span&gt; &lt;span class=&#34;kn&#34;&gt;import&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;Markdown&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;kn&#34;&gt;from&lt;/span&gt; &lt;span class=&#34;nn&#34;&gt;rich.console&lt;/span&gt; &lt;span class=&#34;kn&#34;&gt;import&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;Console&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;kn&#34;&gt;import&lt;/span&gt; &lt;span class=&#34;nn&#34;&gt;html2text&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;console&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;Console&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;()&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;md&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;Markdown&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;html2text&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;html2text&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;Zed&amp;#39;s&amp;lt;/strong&amp;gt; dead baby, &amp;lt;em&amp;gt;Zed&amp;#39;s&amp;lt;/em&amp;gt; dead.&amp;lt;/p&amp;gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;))&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;console&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;print&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;md&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 I Interviewed Uncle Bob - YouTube</title>
    <id>https://waylonwalker.com/thought-264/</id>
    <updated>2024-05-01T02:34:03Z</updated>
    <published>2024-05-01T02:34:03Z</published>
    <link href="https://waylonwalker.com/thought-264/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/watch?v=UBXXw2JSloo</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;UBXXw2JSloo&#34; title=&#34;I Interviewed Uncle Bob&#34; playlabel=&#34;Play: I Interviewed Uncle Bob&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Fantastic interview with Uncle Bob, really it was more of a 2 way conversation.  So many of Uncle Bob’s takes have been taken out of context, its cool to hear some of the well actuallys, and the experience behind some of the reasoning.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 How an empty S3 bucket can make your AWS bill explode | by Mac...</title>
    <id>https://waylonwalker.com/thought-263/</id>
    <updated>2024-05-01T02:31:56Z</updated>
    <published>2024-05-01T02:31:56Z</published>
    <link href="https://waylonwalker.com/thought-263/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://medium.com/@maciej.pocwierz/how-an-empty-s3-bucket-can-make-your-aws-bill-explode-934a383cb8b1</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://medium.com/@maciej.pocwierz/how-an-empty-s3-bucket-can-make-your-aws-bill-explode-934a383cb8b1&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://miro.medium.com/v2/resize:fit:1131/1*ktXAgHa0JfQeuIANa5MVbw.png&#34; alt=&#34;How an empty S3 bucket can make your AWS bill explode — Imagine you create an empty, private AWS S3 bucket in a region of your preference. What will your AWS bill be the next morning?&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: How an empty S3 bucket can make your AWS bill explode — Imagine you create an empty, private AWS S3 bucket in a region of your preference. What will your AWS bill be the next morning?&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;How an empty S3 bucket can make your AWS bill explode&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Imagine you create an empty, private AWS S3 bucket in a region of your preference. What will your AWS bill be the next morning?&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;Medium · medium.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Imagine waking up to a $1,300 for running an example project!  That sounds like peanuts for a cloud bill but for an individual trying to learn that hits my monthly budget real hard.&lt;/p&gt;&#xA;&lt;p&gt;That’s what happened to Marciej, make sure you check out the full article and give them a 👏 on Medium if you have an account.&lt;/p&gt;&#xA;&lt;p&gt;The more I see things come out about aws, the more it makes me sick, and confirm my feelings that I cannot possibly use them for a side project without some real $$ planning to come out of it.&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;Yes, S3 charges for unauthorized requests (4xx) as well[1]. That’s expected behavior.&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;p&gt;They offer no DDOS protection against 4xx or 5xx requests against your bucket.  Absolutely bonkers that you have ZERO control over this.&lt;/p&gt;&#xA;&lt;hr/&gt;&#xA;&lt;p&gt;This response just feels absolutely gross.&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;I notified the AWS security team. I suggested that they restrict the unfortunate S3 bucket name to protect their customers from unexpected charges, and to protect the impacted companies from data leaks. But they were unwilling to address misconfigurations of third-party products.&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;p&gt;It sounds like this guy followed some default instructions for an example site, HOW MANY OTHERS have done this or will do this? And AWS has no response other than to take thier money.&lt;/p&gt;&#xA;&lt;p&gt;After contacting them he was able to get it cancelled, but this is no guarantee.  We’ve seen other cloud vendors stick users like this with a few thousand dollar bills after cutting their bill to 5% of the original.&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;AWS was kind enough to cancel my S3 bill. However, they emphasized that this was done as an exception.&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;p&gt;2024 is wild on the cloud hosting front, own your shit or be careful.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Media Types</title>
    <id>https://waylonwalker.com/thought-262/</id>
    <updated>2024-04-30T18:15:43Z</updated>
    <published>2024-04-30T18:15:43Z</published>
    <link href="https://waylonwalker.com/thought-262/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.iana.org/assignments/media-types/media-types.xhtml#text</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://www.iana.org/assignments/media-types/media-types.xhtml#text&#34; class=&#34;embed-card-link  has-avatar has-avatar-before&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/www.iana.org.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/www.iana.org.ico&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Media Types&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;iana.org&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;A full list of standard &lt;code&gt;Accept&lt;/code&gt; types.&lt;/p&gt;&#xA;&lt;p&gt;This is a handy reference.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Network Types - Pydantic</title>
    <id>https://waylonwalker.com/thought-260/</id>
    <updated>2024-04-30T18:12:26Z</updated>
    <published>2024-04-30T18:12:26Z</published>
    <link href="https://waylonwalker.com/thought-260/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://docs.pydantic.dev/2.7/api/networks/#pydantic.networks.EmailStr</summary>
    <content type="html">&lt;figure&gt;&#xA;![https://docs.pydantic.dev/2.7/api/networks/&lt;a href=&#34;/tags/pydantic/&#34; class=&#34;hashtag-tag&#34; data-tag=&#34;pydantic&#34; data-count=&#34;3&#34; data-reading-time=&#34;3&#34; data-reading-time-text=&#34;3 minutes&#34;&gt;#pydantic&lt;/a&gt;.networks.EmailStr](/static/https://docs.pydantic.dev/2.7/api/networks/&lt;a href=&#34;/tags/pydantic/&#34; class=&#34;hashtag-tag&#34; data-tag=&#34;pydantic&#34; data-count=&#34;3&#34; data-reading-time=&#34;3&#34; data-reading-time-text=&#34;3 minutes&#34;&gt;#pydantic&lt;/a&gt;.networks.EmailStr)&#xA;&lt;/figure&gt;&#xA;&lt;p&gt;pydantic has a nice built in email validator &lt;code&gt;EmailStr&lt;/code&gt;&lt;/p&gt;&#xA;&lt;p&gt;It requires an optional pydantic dependency&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;pip install email-validator&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Then you can validate email addresses.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;kn&#34;&gt;from&lt;/span&gt; &lt;span class=&#34;nn&#34;&gt;pydantic&lt;/span&gt; &lt;span class=&#34;kn&#34;&gt;import&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;BaseModel&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;EmailStr&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;class&lt;/span&gt; &lt;span class=&#34;nc&#34;&gt;Model&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;BaseModel&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;):&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;n&#34;&gt;email&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;EmailStr&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;print&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;Model&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;email&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;contact@mail.com&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;))&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;#&amp;gt; email=&amp;#39;contact@mail.com&amp;#39;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 rich.panel — Rich 13.6.0 documentation</title>
    <id>https://waylonwalker.com/thought-259/</id>
    <updated>2024-04-30T18:10:37Z</updated>
    <published>2024-04-30T18:10:37Z</published>
    <link href="https://waylonwalker.com/thought-259/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://rich.readthedocs.io/en/stable/reference/panel.html</summary>
    <content type="html">&lt;figure&gt;&#xA;&lt;a href=&#34;/static/https://rich.readthedocs.io/en/stable/reference/panel.html&#34; class=&#34;glightbox-link&#34; aria-label=&#34;https://rich.readthedocs.io/en/stable/reference/panel.html&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;/static/https://rich.readthedocs.io/en/stable/reference/panel.html&#34; alt=&#34;https://rich.readthedocs.io/en/stable/reference/panel.html&#34;/ data-glightbox=&#34;description: https://rich.readthedocs.io/en/stable/reference/panel.html&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;p&gt;This is my go to rich response container for clis written in python.  It creates a nice box around the content on the screen and provides some nice separation in the output.  It can be overdone, but comes in clutch when looking for that print statement in a long output.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Handling Errors - FastAPI</title>
    <id>https://waylonwalker.com/thought-258/</id>
    <updated>2024-04-30T18:08:35Z</updated>
    <published>2024-04-30T18:08:35Z</published>
    <link href="https://waylonwalker.com/thought-258/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://fastapi.tiangolo.com/tutorial/handling-errors/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://fastapi.tiangolo.com/tutorial/handling-errors/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://fastapi.tiangolo.com/assets/images/social/tutorial/handling-errors.png&#34; alt=&#34;Handling Errors - FastAPI — FastAPI framework, high performance, easy to learn, fast to code, ready for production&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: Handling Errors - FastAPI — FastAPI framework, high performance, easy to learn, fast to code, ready for production&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Handling Errors - FastAPI&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;FastAPI framework, high performance, easy to learn, fast to code, ready for production&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;fastapi.tiangolo.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;This page shows how to customize your &lt;a href=&#34;/fastapi/&#34; class=&#34;glossary-term&#34; title=&#34;FastAPI is a modern and efficient web framework for Python, built on top of the Starlette web framework, and pydantic for data validation and serialization.&#34;&gt;fastapi&lt;/a&gt; errors.  I found this very useful to setup common templates so that I can return the same 404’s both programatically and by default, so it all looks the same to the end user.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;kn&#34;&gt;from&lt;/span&gt; &lt;span class=&#34;nn&#34;&gt;fastapi&lt;/span&gt; &lt;span class=&#34;kn&#34;&gt;import&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;FastAPI&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;Request&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;kn&#34;&gt;from&lt;/span&gt; &lt;span class=&#34;nn&#34;&gt;fastapi.responses&lt;/span&gt; &lt;span class=&#34;kn&#34;&gt;import&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;JSONResponse&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;class&lt;/span&gt; &lt;span class=&#34;nc&#34;&gt;UnicornException&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;ne&#34;&gt;Exception&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;):&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;k&#34;&gt;def&lt;/span&gt; &lt;span class=&#34;fm&#34;&gt;__init__&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;bp&#34;&gt;self&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;name&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;nb&#34;&gt;str&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;):&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;bp&#34;&gt;self&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;name&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;name&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;app&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;FastAPI&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;()&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nd&#34;&gt;@app.exception_handler&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;UnicornException&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;async&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;def&lt;/span&gt; &lt;span class=&#34;nf&#34;&gt;unicorn_exception_handler&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;request&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;Request&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;exc&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;UnicornException&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;):&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;k&#34;&gt;return&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;JSONResponse&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;n&#34;&gt;status_code&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;418&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;n&#34;&gt;content&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;message&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;sa&#34;&gt;f&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;Oops! &lt;/span&gt;&lt;span class=&#34;si&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;exc&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;name&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;}&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt; did something. There goes a rainbow...&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;},&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nd&#34;&gt;@app.get&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;/unicorns/&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;{name}&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;async&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;def&lt;/span&gt; &lt;span class=&#34;nf&#34;&gt;read_unicorn&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;name&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;nb&#34;&gt;str&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;):&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;k&#34;&gt;if&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;name&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;==&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;yolo&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;k&#34;&gt;raise&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;UnicornException&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;name&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;name&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;k&#34;&gt;return&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;unicorn_name&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;name&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;}&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;hr/&gt;&#xA;&lt;p&gt;This post sat in draft for months.  I stumbled upon it again and found great success returning good error messages based on user preferences.  the default remains json, but if a user requests &lt;code&gt;text/html&lt;/code&gt; it will be an &lt;a href=&#34;/html/&#34; class=&#34;glossary-term&#34; title=&#34;HTML (HyperText Markup Language) is the standard markup language used to create and design documents on the World Wide Web. It structures web content by...&#34;&gt;html&lt;/a&gt; response, and text for &lt;code&gt;application/rtf&lt;/code&gt; or &lt;code&gt;text/plain&lt;/code&gt;&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Creating SSH Apps with Charm Wish and Laravel Prompts | Joe Ta...</title>
    <id>https://waylonwalker.com/thought-257/</id>
    <updated>2024-04-30T18:05:21Z</updated>
    <published>2024-04-30T18:05:21Z</published>
    <link href="https://waylonwalker.com/thought-257/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://blog.joe.codes/creating-ssh-apps-with-charm-wish-and-laravel-prompts</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://blog.joe.codes/creating-ssh-apps-with-charm-wish-and-laravel-prompts&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://blog.joe.codes/img/asset/YXNzZXRzL2NoYXJtLXdpc2guanBn?p=seo_pro_og&amp;amp;s=fa781be7bdd202e6f43d603e96ae6959&#34; alt=&#34;Creating SSH Apps with Charm Wish and Laravel Prompts — Building PHP CLI apps with Laravel Prompts is easy, but how can we share them? Charm to the rescue! Charm Wish is an easy-to-use SSH server that allows users to securely log into your server and use your CLI app.&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: Creating SSH Apps with Charm Wish and Laravel Prompts — Building PHP CLI apps with Laravel Prompts is easy, but how can we share them? Charm to the rescue! Charm Wish is an easy-to-use SSH server that allows users to securely log into your server and use your CLI app.&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Creating SSH Apps with Charm Wish and Laravel Prompts&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Building PHP CLI apps with Laravel Prompts is easy, but how can we share them? Charm to the rescue! Charm Wish is an easy-to-use SSH server that allows users to securely log into your server and us...&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;Joe Tannenbaum · blog.joe.codes&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Joe has a sick cli.labs site for deploying tui applications.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;ssh cli.lab.joe.codes&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 white-space - CSS: Cascading Style Sheets | MDN</title>
    <id>https://waylonwalker.com/thought-256/</id>
    <updated>2024-04-30T18:03:17Z</updated>
    <published>2024-04-30T18:03:17Z</published>
    <link href="https://waylonwalker.com/thought-256/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://developer.mozilla.org/en-US/docs/Web/CSS/white-space</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://developer.mozilla.org/en-US/docs/Web/CSS/white-space&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://developer.mozilla.org/mdn-social-image.46ac2375.png&#34; alt=&#34;white-space CSS property - CSS | MDN — The white-space CSS property sets how white space inside an element is handled.&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: white-space CSS property - CSS | MDN — The white-space CSS property sets how white space inside an element is handled.&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;white-space CSS property - CSS | MDN&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;The white-space CSS property sets how white space inside an element is handled.&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;MDN Web Docs · developer.mozilla.org&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;&lt;a href=&#34;/html/&#34; class=&#34;glossary-term&#34; title=&#34;HTML (HyperText Markup Language) is the standard markup language used to create and design documents on the World Wide Web. It structures web content by...&#34;&gt;html&lt;/a&gt; can preserve newline &lt;code&gt;\n&lt;/code&gt; characters by styling an element with &lt;code&gt;white-space: pre-wrap;&lt;/code&gt;&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;pre-wrap&#xA;Sequences of white space are preserved. Lines are broken at newline characters, at &lt;br/&gt;, and as necessary to fill line boxes.&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 &lt;/&gt; htmx ~ The response-targets Extension</title>
    <id>https://waylonwalker.com/thought-255/</id>
    <updated>2024-04-30T18:00:54Z</updated>
    <published>2024-04-30T18:00:54Z</published>
    <link href="https://waylonwalker.com/thought-255/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://htmx.org/extensions/response-targets/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://htmx.org/extensions/response-targets/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;&amp;lt;/&amp;gt; htmx ~ The htmx Response Targets Extension Extension&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;htmx gives you access to AJAX, CSS Transitions, WebSockets and Server Sent Events directly in HTML, using attributes, so you can build modern user interfaces with the simplicity and power of hypert...&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;htmx.org&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;The &lt;a href=&#34;/htmx/&#34; class=&#34;glossary-term&#34; title=&#34;htmx is a frontend javascript library for creating dynamic web applications.&#34;&gt;htmx&lt;/a&gt; response-targets extension allows me to respond to errors from the backend and do normal htmx swaps.&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;by default htmx will only swap on 200 and 300 responses&#xA;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;/div&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;p&gt;Load the extension in head&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;&amp;lt;&lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;script&lt;/span&gt; &lt;span class=&#34;na&#34;&gt;src&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;&amp;#34;https://unpkg.com/htmx.org@1.9.12/dist/ext/response-targets.js&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;&amp;gt;&amp;lt;/&lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;script&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;&amp;gt;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Use  the extension on an endpoint that might return a 400.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;&amp;lt;&lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;div&lt;/span&gt; &lt;span class=&#34;na&#34;&gt;hx-ext&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;&amp;#34;response-targets&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;&amp;gt;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;p&#34;&gt;&amp;lt;&lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;div&lt;/span&gt; &lt;span class=&#34;na&#34;&gt;id&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;&amp;#34;response-div&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;&amp;gt;&amp;lt;/&lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;div&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;&amp;gt;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;p&#34;&gt;&amp;lt;&lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;button&lt;/span&gt; &lt;span class=&#34;na&#34;&gt;hx-post&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;&amp;#34;/register&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;            &lt;span class=&#34;na&#34;&gt;hx-target&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;&amp;#34;#response-div&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;            &lt;span class=&#34;na&#34;&gt;hx-target-5&lt;/span&gt;&lt;span class=&#34;err&#34;&gt;*=&amp;#34;#&lt;/span&gt;&lt;span class=&#34;na&#34;&gt;serious-errors&lt;/span&gt;&lt;span class=&#34;err&#34;&gt;&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;            &lt;span class=&#34;na&#34;&gt;hx-target-404&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;&amp;#34;#not-found&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;&amp;gt;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        Register!&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;p&#34;&gt;&amp;lt;/&lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;button&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;&amp;gt;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;p&#34;&gt;&amp;lt;&lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;div&lt;/span&gt; &lt;span class=&#34;na&#34;&gt;id&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;&amp;#34;serious-errors&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;&amp;gt;&amp;lt;/&lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;div&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;&amp;gt;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;p&#34;&gt;&amp;lt;&lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;div&lt;/span&gt; &lt;span class=&#34;na&#34;&gt;id&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;&amp;#34;not-found&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;&amp;gt;&amp;lt;/&lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;div&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;&amp;gt;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;&amp;lt;/&lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;div&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;&amp;gt;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 How to Restart All Pods in a Kubernetes Namespace | Boot.dev</title>
    <id>https://waylonwalker.com/thought-254/</id>
    <updated>2024-04-25T21:59:56Z</updated>
    <published>2024-04-25T21:59:56Z</published>
    <link href="https://waylonwalker.com/thought-254/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://blog.boot.dev/open-source/how-to-restart-all-pods-in-a-kubernetes-namespace/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://blog.boot.dev/open-source/how-to-restart-all-pods-in-a-kubernetes-namespace/&#34; class=&#34;embed-card-link  has-avatar has-avatar-before&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/blog.boot.dev.png&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/blog.boot.dev.png&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;https://boot.dev/blog/devops/how-to-restart-all-pods-in-a-kubernetes-namespace/&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;blog.boot.dev&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;As of kubernetes 1.15 there is an easy way to restart all pods in a deployment.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;kubectl -n &lt;span class=&#34;o&#34;&gt;{&lt;/span&gt;NAMESPACE&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt; rollout restart deploy&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Thanks Lane give him a follow &lt;a href=&#34;https://twitter.com/wagslane&#34;&gt;@wagslane&lt;/a&gt;&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>showmount-e</title>
    <id>https://waylonwalker.com/showmount-e/</id>
    <updated>2024-04-25T20:15:29Z</updated>
    <published>2024-04-25T20:15:29Z</published>
    <link href="https://waylonwalker.com/showmount-e/" rel="alternate" type="text/html"></link>
    <summary type="text">TIL how to display the list of nfs mounts on your network.</summary>
    <content type="html">&lt;p&gt;TIL how to display the list of nfs mounts on your network.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;showmount -e&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;You can even look for mounts of other machines on your network.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;showmount -e &amp;lt;hostname&amp;gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>control minio token access</title>
    <id>https://waylonwalker.com/control-minio-token-access/</id>
    <updated>2024-04-24T17:03:34Z</updated>
    <published>2024-04-24T17:03:34Z</published>
    <link href="https://waylonwalker.com/control-minio-token-access/" rel="alternate" type="text/html"></link>
    <summary type="text">To allow access only to the , you can pass add the Resource field to the User Policy when you create a new token.</summary>
    <content type="html">&lt;p&gt;To allow access only to the &lt;bucket&gt;, you can pass add the Resource field  to&#xA;the User Policy when you create a new token.&lt;/bucket&gt;&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;{&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  &lt;span class=&#34;nt&#34;&gt;&amp;#34;Version&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;2012-10-17&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  &lt;span class=&#34;nt&#34;&gt;&amp;#34;Statement&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;      &lt;span class=&#34;nt&#34;&gt;&amp;#34;Effect&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;Allow&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;      &lt;span class=&#34;nt&#34;&gt;&amp;#34;Action&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;s2&#34;&gt;&amp;#34;admin:*&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;      &lt;span class=&#34;p&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;p&#34;&gt;},&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;      &lt;span class=&#34;nt&#34;&gt;&amp;#34;Effect&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;Allow&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;      &lt;span class=&#34;nt&#34;&gt;&amp;#34;Action&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;s2&#34;&gt;&amp;#34;kms:*&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;      &lt;span class=&#34;p&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;p&#34;&gt;},&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;      &lt;span class=&#34;nt&#34;&gt;&amp;#34;Effect&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;Allow&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;      &lt;span class=&#34;nt&#34;&gt;&amp;#34;Action&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;s2&#34;&gt;&amp;#34;s3:*&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;      &lt;span class=&#34;p&#34;&gt;],&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;      &lt;span class=&#34;nt&#34;&gt;&amp;#34;Resource&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;s2&#34;&gt;&amp;#34;arn:aws:s3:::&amp;lt;bucket&amp;gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;s2&#34;&gt;&amp;#34;arn:aws:s3:::&amp;lt;bucket&amp;gt;/*&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;      &lt;span class=&#34;p&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;p&#34;&gt;}&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  &lt;span class=&#34;p&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;}&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>How to List Sqlite tables</title>
    <id>https://waylonwalker.com/how-to-list-sqlite-tables/</id>
    <updated>2024-04-23T20:03:27Z</updated>
    <published>2024-04-23T20:03:27Z</published>
    <link href="https://waylonwalker.com/how-to-list-sqlite-tables/" rel="alternate" type="text/html"></link>
    <summary type="text">You can inspect sqlite tables with the sqlite shell.</summary>
    <content type="html">&lt;p&gt;You can inspect sqlite tables with the sqlite shell.&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;note that you get into the shell with &lt;code&gt;sqlite3 database.db&lt;/code&gt;&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;tables&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;I also learned that &lt;code&gt;.tables&lt;/code&gt;, &lt;code&gt;.index&lt;/code&gt; and &lt;code&gt;.schema&lt;/code&gt; are helper functions that&#xA;query the &lt;code&gt;sqlite_master&lt;/code&gt; table on the &lt;code&gt;main&lt;/code&gt; database.&lt;/p&gt;&#xA;&lt;p&gt;Here is an output from my redka database.  The sqlite_master table contains all&#xA;the sqlite objects type, name, tbl_name, rootpage, and sql to create them.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;❯ sqlite3 database.db &lt;span class=&#34;s2&#34;&gt;&amp;#34;SELECT * from sqlite_master;&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;table&lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;rkey&lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;rkey&lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;2&lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;CREATE TABLE rkey &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    id       integer primary key,&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    key      text not null,&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;nb&#34;&gt;type&lt;/span&gt;     integer not null,&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        version  integer not null,&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    etime    integer,&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        mtime    integer not null&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;index&lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;rkey_key_idx&lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;rkey&lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;3&lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;CREATE UNIQUE INDEX rkey_key_idx on rkey &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;key&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;index&lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;rkey_etime_idx&lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;rkey&lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;4&lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;CREATE INDEX rkey_etime_idx on rkey &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;etime&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;where etime is not null&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;trigger&lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;rkey_on_type_update&lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;rkey&lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;0&lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;CREATE TRIGGER rkey_on_type_update&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;before update of &lt;span class=&#34;nb&#34;&gt;type&lt;/span&gt; on rkey&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;for&lt;/span&gt; each row&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;when old.type is not new.type&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;begin&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;k&#34;&gt;select&lt;/span&gt; raise&lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;abort, &lt;span class=&#34;s1&#34;&gt;&amp;#39;key type mismatch&amp;#39;&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;end&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;table&lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;rstring&lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;rstring&lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;5&lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;CREATE TABLE rstring &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    key_id integer not null,&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    value  blob not null,&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    foreign key &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;key_id&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; references rkey &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;id&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;          on delete cascade&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;index&lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;rstring_pk_idx&lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;rstring&lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;6&lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;CREATE UNIQUE INDEX rstring_pk_idx on rstring &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;key_id&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;view&lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;vstring&lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;vstring&lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;0&lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;CREATE VIEW vstring as&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  &lt;span class=&#34;k&#34;&gt;select&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    rkey.id as key_id, rkey.key, rstring.value,&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        datetime&lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;etime/1000, &lt;span class=&#34;s1&#34;&gt;&amp;#39;unixepoch&amp;#39;&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; as etime,&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        datetime&lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;mtime/1000, &lt;span class=&#34;s1&#34;&gt;&amp;#39;unixepoch&amp;#39;&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; as mtime&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  from rkey join rstring on rkey.id &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; rstring.key_id&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  where rkey.type &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;m&#34;&gt;1&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    and &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;rkey.etime is null or rkey.etime &amp;gt; unixepoch&lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;subsec&amp;#39;&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;))&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;table&lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;rhash&lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;rhash&lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;7&lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;CREATE TABLE rhash &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    key_id integer not null,&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    field text not null,&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    value blob not null,&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    foreign key &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;key_id&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; references rkey &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;id&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;      on delete cascade&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;index&lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;rhash_pk_idx&lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;rhash&lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;8&lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;CREATE UNIQUE INDEX rhash_pk_idx on rhash &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;key_id, field&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;index&lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;rhash_key_id_idx&lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;rhash&lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;9&lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;CREATE INDEX rhash_key_id_idx on rhash &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;key_id&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;view&lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;vhash&lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;vhash&lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;0&lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;CREATE VIEW vhash as&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  &lt;span class=&#34;k&#34;&gt;select&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    rkey.id as key_id, rkey.key, rhash.field, rhash.value,&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        datetime&lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;etime/1000, &lt;span class=&#34;s1&#34;&gt;&amp;#39;unixepoch&amp;#39;&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; as etime,&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        datetime&lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;mtime/1000, &lt;span class=&#34;s1&#34;&gt;&amp;#39;unixepoch&amp;#39;&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; as mtime&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  from rkey join rhash on rkey.id &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; rhash.key_id&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  where rkey.type &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;m&#34;&gt;4&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    and &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;rkey.etime is null or rkey.etime &amp;gt; unixepoch&lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;subsec&amp;#39;&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;))&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Redka Runs on SQLite</title>
    <id>https://waylonwalker.com/redka-runs-on-sqlite/</id>
    <updated>2024-04-22T19:54:24Z</updated>
    <published>2024-04-22T19:54:24Z</published>
    <link href="https://waylonwalker.com/redka-runs-on-sqlite/" rel="alternate" type="text/html"></link>
    <summary type="text">With the liscense changes to redis there are several new forks out there. One that I am particularly interested in is redka.</summary>
    <content type="html">&lt;p&gt;With the liscense changes to redis there are several new forks out there.  One&#xA;that I am particularly interested in is&#xA;&lt;a href=&#34;https://github.com/nalgeon/redka&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;redka&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;curl https://i.jpillora.com/nalgeon/redka &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt; bash&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;chmod +x redka&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;./redka database.db&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;We now have redis running on port 6379 that we can connect to with a redis&#xA;client. And we have a sqlite database that we can inspect.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;❯ sqlite3 database.db &lt;span class=&#34;s2&#34;&gt;&amp;#34;SELECT name FROM sqlite_master;&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;rkey&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;rkey_key_idx&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;rkey_etime_idx&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;rkey_on_type_update&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;rstring&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;rstring_pk_idx&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;vstring&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;rhash&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;rhash_pk_idx&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;rhash_key_id_idx&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;vhash&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;We can look at the values in the vstring table.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sqlite3 database.db &lt;span class=&#34;s2&#34;&gt;&amp;#34;SELECT * from vstring;&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;1&lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;hi&lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;hello there you&lt;span class=&#34;o&#34;&gt;||&lt;/span&gt;2024-04-17 01:46:26&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Am I vulnerable to the xz backdoor?</title>
    <id>https://waylonwalker.com/am-i-vulnerable-to-the-xz-backdoor/</id>
    <updated>2024-04-21T07:53:54Z</updated>
    <published>2024-04-21T07:53:54Z</published>
    <link href="https://waylonwalker.com/am-i-vulnerable-to-the-xz-backdoor/" rel="alternate" type="text/html"></link>
    <summary type="text">The main system that I am concerned about is my arch BTW machine. I found a great article from the official archlinux site covering it.</summary>
    <content type="html">&lt;p&gt;The main system that I am concerned about is my arch BTW machine. I found a&#xA;great &lt;a href=&#34;https://archlinux.org/news/the-xz-package-has-been-backdoored/&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/archlinux.org.png&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/archlinux.org.png&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;article&lt;/a&gt;&#xA;from the official archlinux site covering it.&lt;/p&gt;&#xA;&lt;p&gt;For my machine I am concerned with this line.&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;The xz packages prior to version 5.6.1-2 (specifically 5.6.0-1 and 5.6.1-1)&#xA;contain this backdoor.&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;p&gt;I checked my xz package with &lt;a href=&#34;/paru/&#34; class=&#34;glossary-term&#34; title=&#34;paru is a package manager for archlinux that installs packages from the &lt;a href=&#34;/aur/&#34; class=&#34;glossary-term&#34; title=&#34;Arch User Repository, a collection of community maintained packages for archlinux.&#34;&gt;AUR&lt;/a&gt;.&#34;&gt;paru&lt;/a&gt;, and I am good.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;paru -Qii zx&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>arch dependencies</title>
    <id>https://waylonwalker.com/arch-dependencies/</id>
    <updated>2024-04-20T07:42:21Z</updated>
    <published>2024-04-20T07:42:21Z</published>
    <link href="https://waylonwalker.com/arch-dependencies/" rel="alternate" type="text/html"></link>
    <summary type="text">paru has some nice features that I rarely use, and hav to look up when I need them. Here are two commands to help with dependency management.</summary>
    <content type="html">&lt;p&gt;&lt;a href=&#34;/paru/&#34; class=&#34;glossary-term&#34; title=&#34;paru is a package manager for archlinux that installs packages from the &lt;a href=&#34;/aur/&#34; class=&#34;glossary-term&#34; title=&#34;Arch User Repository, a collection of community maintained packages for archlinux.&#34;&gt;AUR&lt;/a&gt;.&#34;&gt;paru&lt;/a&gt; has some nice features that I rarely use, and hav to look up when I need&#xA;them.  Here are two commands to help with dependency management.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;❯ paru -Qii nodejs&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Name            : nodejs&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Version         : 21.7.2-1&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Description     : Evented I/O &lt;span class=&#34;k&#34;&gt;for&lt;/span&gt; V8 javascript&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Architecture    : x86_64&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;URL             : https://nodejs.org/&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Licenses        : MIT&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Groups          : None&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Provides        : None&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Depends On      : icu  libuv  libnghttp2  libnghttp3  libngtcp2  openssl  zlib  brotli  c-ares&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Optional Deps   : npm: nodejs package manager &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;installed&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Required By     : node-gyp  nodejs-nopt  npm  semver&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Optional For    : None&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Conflicts With  : None&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Replaces        : None&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Installed Size  : 46.86 MiB&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Packager        : Felix Yan &amp;lt;felixonmars@archlinux.org&amp;gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Build Date      : Thu &lt;span class=&#34;m&#34;&gt;04&lt;/span&gt; Apr &lt;span class=&#34;m&#34;&gt;2024&lt;/span&gt; 05:11:09 AM CDT&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Install Date    : Mon &lt;span class=&#34;m&#34;&gt;15&lt;/span&gt; Apr &lt;span class=&#34;m&#34;&gt;2024&lt;/span&gt; 07:27:02 AM CDT&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Install Reason  : Installed as a dependency &lt;span class=&#34;k&#34;&gt;for&lt;/span&gt; another package&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Install Script  : No&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Validated By    : Signature&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Backup Files    : None&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Extended Data   : &lt;span class=&#34;nv&#34;&gt;pkgtype&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;pkg&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;You can check all the packages depended on by nodejs by running the following.&#xA;This is everything from all of the repos you have configured, not what you have&#xA;installed.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;❯ pactree --reverse --sync --depth &lt;span class=&#34;m&#34;&gt;1&lt;/span&gt; nodejs&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;nodejs&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;├─acorn&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;├─ansible-language-server&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;├─asar&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;├─babel-cli&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;├─babel-core&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;├─bash-language-server&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;├─blinksocks&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;├─bower&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;├─browserify&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;├─coffeescript&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;├─dot-language-server&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;├─emscripten&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;├─eslint&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;├─eslint-language-server&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;├─eslint_d&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;├─gitlab&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;├─gnomon&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;├─grunt-cli&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;├─gtop&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;├─gulp&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;├─hedgedoc&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;├─jake&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;├─markdownlint-cli2&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;├─marked&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;├─marked-man&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;├─matrix-appservice-irc&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;├─modclean&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;├─node-gyp&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;├─nodejs-emojione&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;├─nodejs-material-design-icons&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;├─nodejs-nopt&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;├─nodejs-source-map&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;├─nodejs-yaml&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;├─npm&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;├─openui5&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;├─pm2&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;├─prettier&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;├─pyright&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;├─rapydscript-ng&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;├─s3rver&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;├─semver&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;├─serverless&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;├─stylelint&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;├─stylus&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;├─svelte-language-server&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;├─tailwindcss-language-server&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;├─ts-node&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;├─typescript&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;├─typescript-svelte-plugin&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;├─uglify-js&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;├─vscode-css-languageserver&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;├─vscode-html-languageserver&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;├─vscode-json-languageserver&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;├─vue-language-server&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;├─vue-typescript-plugin&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;├─wasm-bindgen&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;├─web-ext&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;├─wrangler&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;├─yaml-language-server&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;├─yarn&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 ⭐⭐⭐⭐⭐ Changelog Master Feed</title>
    <id>https://waylonwalker.com/thought-253/</id>
    <updated>2024-04-20T01:47:19Z</updated>
    <published>2024-04-20T01:47:19Z</published>
    <link href="https://waylonwalker.com/thought-253/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://changelog.com/master</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://changelog.com/master&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://cdn.changelog.com/static/images/share/twitter-master-8e71f3d7acf22cec2efb6c4633ba01e8.png&#34; alt=&#34;Changelog Master Feed — Your one-stop shop for all Changelog podcasts.&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: Changelog Master Feed — Your one-stop shop for all Changelog podcasts.&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Changelog Master Feed&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Your one-stop shop for all Changelog podcasts.&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;Changelog · changelog.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Jerod (It’s ya boi) and Adam are my favorite tech news nerds, and have the sickest podcasts in tech.  Yes plural podcasts they run seven podcasts maybe more.  If you want it short and sweet they got the best 15 minutes of tech news each week this is it.  My favorite is Ship it, sad to see Gerhard go, but Justin and Autumn are crushing it.  Every episode is highly polished and surrounded by the sickest beats in podcasting.&lt;/p&gt;&#xA;&lt;p&gt;Subscribe to one pod if you want, but I recommend collecting them all with the master feed.&lt;/p&gt;&#xA;&lt;p&gt;⭐⭐⭐⭐⭐&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 MarkdownDown</title>
    <id>https://waylonwalker.com/thought-252/</id>
    <updated>2024-04-20T01:38:35Z</updated>
    <published>2024-04-20T01:38:35Z</published>
    <link href="https://waylonwalker.com/thought-252/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://markdowndown.vercel.app/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://markdowndown.vercel.app/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://markdowndown.vercel.app/og.png&#34; alt=&#34;MarkdownDown — Convert any webpage to a clean markdown w/ images downloaded.&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: MarkdownDown — Convert any webpage to a clean markdown w/ images downloaded.&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;MarkdownDown&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Convert any webpage to a clean markdown w/ images downloaded.&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;MarkdownDown · markdowndown.vercel.app&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Small web app to convert &lt;a href=&#34;/html/&#34; class=&#34;glossary-term&#34; title=&#34;HTML (HyperText Markup Language) is the standard markup language used to create and design documents on the World Wide Web. It structures web content by...&#34;&gt;html&lt;/a&gt; into markdown.  Pretty cool idea. I actually want to look into this for reader and see how well it would work.  Right now I am just pulling descriptions, but maybe I can pull full web pages, and keep the full intent of the first 200 words or so in the cards.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Boston Dynamics’ new humanoid moves like no robot you’ve ever ...</title>
    <id>https://waylonwalker.com/thought-251/</id>
    <updated>2024-04-20T01:36:39Z</updated>
    <published>2024-04-20T01:36:39Z</published>
    <link href="https://waylonwalker.com/thought-251/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://arstechnica.com/gadgets/2024/04/boston-dynamics-debuts-humanoid-robot-destined-for-commercialization/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://arstechnica.com/gadgets/2024/04/boston-dynamics-debuts-humanoid-robot-destined-for-commercialization/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://cdn.arstechnica.net/wp-content/uploads/2024/04/atlas-yellow-1152x648.jpg&#34; alt=&#34;Boston Dynamics’ new humanoid moves like no robot you’ve ever seen — All-electric, 360° joints give the new Atlas plenty of inhuman movements.&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: Boston Dynamics’ new humanoid moves like no robot you’ve ever seen — All-electric, 360° joints give the new Atlas plenty of inhuman movements.&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Boston Dynamics’ new humanoid moves like no robot you’ve ever seen&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;All-electric, 360° joints give the new Atlas plenty of inhuman movements.&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;Ars Technica · arstechnica.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Award for the creepiest way to stand up a robot from lying flat.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Rug pull, not cool! (Changelog &amp; Friends #40)</title>
    <id>https://waylonwalker.com/thought-250/</id>
    <updated>2024-04-20T01:36:03Z</updated>
    <published>2024-04-20T01:36:03Z</published>
    <link href="https://waylonwalker.com/thought-250/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://changelog.com/friends/40</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://changelog.com/friends/40&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://snap.fly.dev/friends/40/img&#34; alt=&#34;Rug pull, not cool! (Changelog &amp;amp; Friends #40) — If Changelog News had an extended edition, this might be it! Jerod &amp;amp; Adam discuss Hashicorp&amp;#39;s Cease and Desist letter, Redis getting forked, Boston Dymanics&amp;#39; scary cool new robot, Justin Searls&amp;#39; extensive use of the Apple Vision Pro, Thorston Ball moving from Vim to Zed, Firefox becoming hard to use, Beeper joining Aut...&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: Rug pull, not cool! (Changelog &amp;amp; Friends #40) — If Changelog News had an extended edition, this might be it! Jerod &amp;amp; Adam discuss Hashicorp&amp;#39;s Cease and Desist letter, Redis getting forked, Boston Dymanics&amp;#39; scary cool new robot, Justin Searls&amp;#39; extensive use of the Apple Vision Pro, Thorston Ball moving from Vim to Zed, Firefox becoming hard to use, Beeper joining Aut...&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Rug pull, not cool! (Changelog &amp;amp; Friends #40)&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;If Changelog News had an extended edition, this might be it! Jerod &amp;amp; Adam discuss Hashicorp&amp;#39;s Cease and Desist letter, Redis getting forked, Boston Dymanics&amp;#39; scary cool new robot, Justin Searls&amp;#39; ex...&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;Changelog · changelog.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Five star episode with Jarod and Adam shootin the crap.&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://opentofu.org/blog/our-response-to-hashicorps-cease-and-desist/&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/opentofu.org.png&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/opentofu.org.png&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;The massive Cease and Desist&lt;/a&gt;&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;p&gt;Sucks that the guest had to back out, what a wild world 2024 is.  Filled with license and pricing changes.&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://registerspill.thorstenball.com/p/from-vim-to-zed&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/registerspill.thorstenball.com.png&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/registerspill.thorstenball.com.png&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;From Vim to Zed&lt;/a&gt;&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;p&gt;Interesting to hear the journey into zed, way to go Thorston diving all the way into working at zed.&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://arstechnica.com/gadgets/2024/04/boston-dynamics-debuts-humanoid-robot-destined-for-commercialization&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/arstechnica.com.png&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/arstechnica.com.png&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;Boston Dynamics’ new Atlas&lt;/a&gt;&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;p&gt;I later saw this through a YT short, and man does it hold up to the creepy level that they described.&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://markdowndown.vercel.app/&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/markdowndown.vercel.app.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/markdowndown.vercel.app.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;MarkdownDown&lt;/a&gt;&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;p&gt;This is a legit cool service, that converts &lt;a href=&#34;/html/&#34; class=&#34;glossary-term&#34; title=&#34;HTML (HyperText Markup Language) is the standard markup language used to create and design documents on the World Wide Web. It structures web content by...&#34;&gt;html&lt;/a&gt; into markdown&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>copier trust</title>
    <id>https://waylonwalker.com/copier-trust/</id>
    <updated>2024-04-19T20:41:06Z</updated>
    <published>2024-04-19T20:41:06Z</published>
    <link href="https://waylonwalker.com/copier-trust/" rel="alternate" type="text/html"></link>
    <summary type="text">I recently had to update my copier-gallery command to trust my own templates because some of them have shell scripts that run afterwards. Be warned that this...</summary>
    <content type="html">&lt;p&gt;I recently had to update my copier-gallery command to trust my own templates&#xA;because some of them have shell scripts that run afterwards.  Be warned that&#xA;this could be a dangerous feature to run on random templates you get off the&#xA;internet, but these are all mine, so if I wreck it its my own fault.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;copier copy --trust &amp;lt;template&amp;gt; &amp;lt;destination&amp;gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;All the the copier copy api can be found with help.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;❯ copier copy --help&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;copier copy 8.3.0&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Copy from a template &lt;span class=&#34;nb&#34;&gt;source&lt;/span&gt; to a destination.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Usage:&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    copier copy &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;SWITCHES&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt; template_src destination_path&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Hidden-switches:&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    -h, --help                         Prints this &lt;span class=&#34;nb&#34;&gt;help&lt;/span&gt; message and quits&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    --help-all                         Prints &lt;span class=&#34;nb&#34;&gt;help&lt;/span&gt; messages of all sub-commands and quits&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    -v, --version                      Prints the program&lt;span class=&#34;err&#34;&gt;&amp;#39;&lt;/span&gt;s version and quits&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Switches:&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    -C, --no-cleanup                   On error, &lt;span class=&#34;k&#34;&gt;do&lt;/span&gt; not delete destination &lt;span class=&#34;k&#34;&gt;if&lt;/span&gt; it was&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;                                       created by Copier.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    --UNSAFE, --trust                  Allow templates with unsafe features &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;Jinja&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;                                       extensions, migrations, tasks&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    -a, --answers-file VALUE:str       Update using this path &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;relative to&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;                                       &lt;span class=&#34;sb&#34;&gt;`&lt;/span&gt;destination_path&lt;span class=&#34;sb&#34;&gt;`&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; to find the answers file&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    -d, --data &lt;span class=&#34;nv&#34;&gt;VARIABLE&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;VALUE:str      Make VARIABLE available as VALUE when rendering the&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;                                       template&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt; may be given multiple &lt;span class=&#34;nb&#34;&gt;times&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    -f, --force                        Same as &lt;span class=&#34;sb&#34;&gt;`&lt;/span&gt;--defaults --overwrite&lt;span class=&#34;sb&#34;&gt;`&lt;/span&gt;.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    -g, --prereleases                  Use prereleases to compare template VCS tags.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    -l, --defaults                     Use default answers to questions, which might be&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;                                       null &lt;span class=&#34;k&#34;&gt;if&lt;/span&gt; not specified.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    -n, --pretend                      Run but &lt;span class=&#34;k&#34;&gt;do&lt;/span&gt; not make any changes&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    -q, --quiet                        Suppress status output&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    -r, --vcs-ref VALUE:str            Git reference to checkout in &lt;span class=&#34;sb&#34;&gt;`&lt;/span&gt;template_src&lt;span class=&#34;sb&#34;&gt;`&lt;/span&gt;. If you&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;                                       &lt;span class=&#34;k&#34;&gt;do&lt;/span&gt; not specify it, it will try to checkout the&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;                                       latest git tag, as sorted using the PEP &lt;span class=&#34;m&#34;&gt;440&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;                                       algorithm. If you want to checkout always the&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;                                       latest version, use &lt;span class=&#34;sb&#34;&gt;`&lt;/span&gt;--vcs-ref&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;HEAD&lt;span class=&#34;sb&#34;&gt;`&lt;/span&gt;.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    -s, --skip VALUE:str               Skip specified files &lt;span class=&#34;k&#34;&gt;if&lt;/span&gt; they exist already&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt; may be&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;                                       given multiple &lt;span class=&#34;nb&#34;&gt;times&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    -w, --overwrite                    Overwrite files that already exist, without asking.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    -x, --exclude VALUE:str            A name or shell-style pattern matching files or&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;                                       folders that must not be copied&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt; may be given&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;                                       multiple &lt;span class=&#34;nb&#34;&gt;times&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 argocd automated sync</title>
    <id>https://waylonwalker.com/thought-249/</id>
    <updated>2024-04-19T19:36:47Z</updated>
    <published>2024-04-19T19:36:47Z</published>
    <link href="https://waylonwalker.com/thought-249/" rel="alternate" type="text/html"></link>
    <summary type="text">!none</summary>
    <content type="html">&lt;!-- embed not found: none --&gt;&#xA;&lt;p&gt;![[none]]&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nn&#34;&gt;---&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nt&#34;&gt;apiVersion&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;l&#34;&gt;argoproj.io/v1alpha1&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nt&#34;&gt;kind&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;l&#34;&gt;Application&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nt&#34;&gt;metadata&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;name&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;l&#34;&gt;kanboard&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;namespace&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;l&#34;&gt;argocd&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nt&#34;&gt;spec&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;project&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;l&#34;&gt;default&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;destination&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;    &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;namespace&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;l&#34;&gt;kanboard&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;    &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;server&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;https://kubernetes.default.svc&amp;#39;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;source&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;    &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;path&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;l&#34;&gt;kanboard&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;    &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;repoURL&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;https://github.com/waylonwalker/homelab-argo&amp;#39;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;    &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;targetRevision&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;l&#34;&gt;HEAD&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;syncPolicy&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;    &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;automated&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;      &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;prune&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;kc&#34;&gt;true&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Manual Upgrades | K3s</title>
    <id>https://waylonwalker.com/thought-248/</id>
    <updated>2024-04-19T12:51:03Z</updated>
    <published>2024-04-19T12:51:03Z</published>
    <link href="https://waylonwalker.com/thought-248/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://docs.k3s.io/upgrades/manual</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://docs.k3s.io/upgrades/manual&#34; class=&#34;embed-card-link  has-avatar has-avatar-before&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/docs.k3s.io.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/docs.k3s.io.ico&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Manual Upgrades | K3s&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;You can upgrade K3s by using the installation script, or by manually installing the binary of the desired version.&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;docs.k3s.io&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;You can give k3s an install channel to install &lt;code&gt;stable&lt;/code&gt;,  &lt;code&gt;latest&lt;/code&gt;, or specific versions like &lt;code&gt;1.26&lt;/code&gt;.  This is handy to make sure that you install the same version on all of your workers.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;curl -sfL https://get.k3s.io &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;INSTALL_K3S_CHANNEL&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;latest &amp;lt;EXISTING_K3S_ENV&amp;gt; sh -s - &amp;lt;EXISTING_K3S_ARGS&amp;gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>ipython f2</title>
    <id>https://waylonwalker.com/ipython-f2/</id>
    <updated>2024-04-18T20:40:41Z</updated>
    <published>2024-04-18T20:40:41Z</published>
    <link href="https://waylonwalker.com/ipython-f2/" rel="alternate" type="text/html"></link>
    <summary type="text">Today I accidentally ran f2 in ipython to discover that it opens your $EDITOR! I use this feature quite often in zsh, it is bound to for me, and since I have...</summary>
    <content type="html">&lt;p&gt;Today I accidentally ran f2 in ipython to discover that it opens your $EDITOR!&#xA;I use this feature quite often in zsh, it is bound to &lt;code&gt;&amp;lt;c-e&amp;gt;&lt;/code&gt; for me, and since&#xA;I have my environment variable &lt;code&gt;EDITOR&lt;/code&gt; set to &lt;code&gt;nvim&lt;/code&gt; it opens nvim when I hit&#xA;&lt;code&gt;&amp;lt;c-e&amp;gt;&lt;/code&gt;.  Today I discovered that Ipython has this bound to &lt;code&gt;F2&lt;/code&gt;.  If you know&#xA;how to set it to &lt;code&gt;&amp;lt;c-e&amp;gt;&lt;/code&gt; let me know I’ve tried, a lot.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;export&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;EDITOR&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;nvim&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;ipython&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&amp;lt;F2&amp;gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;better yet add &lt;code&gt;export EDITOR=nvim&lt;/code&gt; to your .zshrc&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# ~/.zshrc&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;export&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;EDITOR&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;nvim&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Devin&#39;s Upwork &#34;side hustle&#34; exposed (Changelog News #90)</title>
    <id>https://waylonwalker.com/thought-247/</id>
    <updated>2024-04-18T01:18:04Z</updated>
    <published>2024-04-18T01:18:04Z</published>
    <link href="https://waylonwalker.com/thought-247/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://changelog.com/news/90</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://changelog.com/news/90&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://snap.fly.dev/news/90/img&#34; alt=&#34;Devin&amp;#39;s Upwork &amp;#34;side hustle&amp;#34; exposed (Changelog News #90) — YouTuber &amp;#34;Internet of Bugs&amp;#34; breaks down why AI &amp;#34;software engineer&amp;#34; Devin is no Upwork hero, Redka is Anton Zhiyanov&amp;#39;s attempt to reimplement Redis with SQLite, OpenTofu issues its response to Hashicorp&amp;#39;s Cease and Desist letter, Brian LeRoux introduces Enhance WASM &amp;amp; PumpkinOS is not your average PalmOS emulator.&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: Devin&amp;#39;s Upwork &amp;#34;side hustle&amp;#34; exposed (Changelog News #90) — YouTuber &amp;#34;Internet of Bugs&amp;#34; breaks down why AI &amp;#34;software engineer&amp;#34; Devin is no Upwork hero, Redka is Anton Zhiyanov&amp;#39;s attempt to reimplement Redis with SQLite, OpenTofu issues its response to Hashicorp&amp;#39;s Cease and Desist letter, Brian LeRoux introduces Enhance WASM &amp;amp; PumpkinOS is not your average PalmOS emulator.&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Devin&amp;#39;s Upwork &amp;#34;side hustle&amp;#34; exposed (Changelog News #90)&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;YouTuber &amp;#34;Internet of Bugs&amp;#34; breaks down why AI &amp;#34;software engineer&amp;#34; Devin is no Upwork hero, Redka is Anton Zhiyanov&amp;#39;s attempt to reimplement Redis with SQLite, OpenTofu issues its response to Hashi...&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;Changelog · changelog.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Damn 2024 is such a shit show, now Devin seems to be out as a complete scam.  It’s really teaching us to have skepticism for what you find on the internet.  Turns out that when broken down frame by frame much of the description in the video was a straight up lie.  Personally it seemed quite plausible that it was percentage points better than the competition, but I was not holding my breath for it to be a hands off engineer.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 sql - How can I list the tables in a SQLite database file that...</title>
    <id>https://waylonwalker.com/thought-246/</id>
    <updated>2024-04-18T01:13:59Z</updated>
    <published>2024-04-18T01:13:59Z</published>
    <link href="https://waylonwalker.com/thought-246/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://stackoverflow.com/questions/82875/how-can-i-list-the-tables-in-a-sqlite-database-file-that-was-opened-with-attach#answer-83195</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://stackoverflow.com/questions/82875/how-can-i-list-the-tables-in-a-sqlite-database-file-that-was-opened-with-attach#answer-83195&#34; class=&#34;embed-card-link  has-avatar has-avatar-before&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/stackoverflow.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/stackoverflow.com.ico&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;External Link&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;stackoverflow.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;I learned about the sqlite_master table from this stack overflow answer.  This helps make a lot of sense to how sqlite works.  The master table contains all the sqlite objects and the sql to create them.&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;The .tables, and .schema “helper” functions don’t look into ATTACHed databases: they just query the SQLITE_MASTER table for the “main” database. Consequently, if you used&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sqlite3 database.db &lt;span class=&#34;s2&#34;&gt;&amp;#34;SELECT * from sqlite_master;&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>sqlmodel indexes</title>
    <id>https://waylonwalker.com/sqlmodel-indexes/</id>
    <updated>2024-04-17T21:55:25Z</updated>
    <published>2024-04-17T21:55:25Z</published>
    <link href="https://waylonwalker.com/sqlmodel-indexes/" rel="alternate" type="text/html"></link>
    <summary type="text">I&#39;ve really been enjoying using sqlmodel for my projects that need a database. One thing that I definitely lacked on for too long was indexing my database. I...</summary>
    <content type="html">&lt;p&gt;I’ve really been enjoying using sqlmodel for my projects that need a database.&#xA;One thing that I definitely lacked on for too long was indexing my database.  I&#xA;hit a point with one database where it was taking 7s for pretty simple&#xA;paginated queries to return 10 records.&lt;/p&gt;&#xA;&lt;p&gt;For every field that you will be querying on, you can create an index, by&#xA;setting it equal to &lt;code&gt;Field(index=True)&lt;/code&gt;&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;class&lt;/span&gt; &lt;span class=&#34;nc&#34;&gt;Hero&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;SQLModel&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;table&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;kc&#34;&gt;True&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;):&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;nb&#34;&gt;id&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;nb&#34;&gt;int&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;|&lt;/span&gt; &lt;span class=&#34;kc&#34;&gt;None&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;Field&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;default&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;kc&#34;&gt;None&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;primary_key&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;kc&#34;&gt;True&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;n&#34;&gt;name&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;nb&#34;&gt;str&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;Field&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;index&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;kc&#34;&gt;True&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;n&#34;&gt;secret_name&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;nb&#34;&gt;str&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;n&#34;&gt;age&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;nb&#34;&gt;int&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;|&lt;/span&gt; &lt;span class=&#34;kc&#34;&gt;None&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;Field&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;default&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;kc&#34;&gt;None&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;index&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;kc&#34;&gt;True&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;&lt;em&gt;example courtesy of the docs&lt;/em&gt;&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt; primary keys are indexed by default.&#xA;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;/div&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;The docs cover this pretty well, and in quite depth - &lt;a href=&#34;https://sqlmodel.tiangolo.com/tutorial/indexes/&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/sqlmodel.tiangolo.com.png&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/sqlmodel.tiangolo.com.png&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;Optimizing Queries&lt;/a&gt;&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 inline-snapshot</title>
    <id>https://waylonwalker.com/thought-245/</id>
    <updated>2024-04-17T18:37:15Z</updated>
    <published>2024-04-17T18:37:15Z</published>
    <link href="https://waylonwalker.com/thought-245/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://15r10nk.github.io/inline-snapshot/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://15r10nk.github.io/inline-snapshot/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Redirecting&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;15r10nk.github.io&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;This is a cool snapshot testing tool that automatically creates, and updates test values for you.&lt;/p&gt;&#xA;&lt;p&gt;Starting with some test code.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;kn&#34;&gt;from&lt;/span&gt; &lt;span class=&#34;nn&#34;&gt;inline_snapshot&lt;/span&gt; &lt;span class=&#34;kn&#34;&gt;import&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;snapshot&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;def&lt;/span&gt; &lt;span class=&#34;nf&#34;&gt;something&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;():&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;k&#34;&gt;return&lt;/span&gt; &lt;span class=&#34;mi&#34;&gt;1548&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;*&lt;/span&gt; &lt;span class=&#34;mi&#34;&gt;18489&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;def&lt;/span&gt; &lt;span class=&#34;nf&#34;&gt;test_something&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;():&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;k&#34;&gt;assert&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;something&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;()&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;==&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;snapshot&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;()&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;now if I run &lt;code&gt;pytest&lt;/code&gt; my tests will fail because my assert will fail, but if I run &lt;code&gt;pytest --inline-snapshot=create&lt;/code&gt; it will fill out my snapshot values and the file will then look like this.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;kn&#34;&gt;from&lt;/span&gt; &lt;span class=&#34;nn&#34;&gt;inline_snapshot&lt;/span&gt; &lt;span class=&#34;kn&#34;&gt;import&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;snapshot&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;def&lt;/span&gt; &lt;span class=&#34;nf&#34;&gt;something&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;():&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;k&#34;&gt;return&lt;/span&gt; &lt;span class=&#34;mi&#34;&gt;1548&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;*&lt;/span&gt; &lt;span class=&#34;mi&#34;&gt;18489&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;def&lt;/span&gt; &lt;span class=&#34;nf&#34;&gt;test_something&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;():&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;k&#34;&gt;assert&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;something&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;()&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;==&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;snapshot&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;28620972&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>python inline snapshot</title>
    <id>https://waylonwalker.com/python-inline-snapshot/</id>
    <updated>2024-04-17T13:32:53Z</updated>
    <published>2024-04-17T13:32:53Z</published>
    <link href="https://waylonwalker.com/python-inline-snapshot/" rel="alternate" type="text/html"></link>
    <summary type="text">is a new tool that I am trying out for python testing. It takes snapshots of your outputs and places them inline with the test.</summary>
    <content type="html">&lt;p&gt;&lt;code&gt;inline-snapshot&lt;/code&gt; is a new tool that I am trying out for python testing.  It&#xA;takes snapshots of your outputs and places them inline with the test.&lt;/p&gt;&#xA;&lt;p&gt;Here is the most basic starter.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;kn&#34;&gt;import&lt;/span&gt; &lt;span class=&#34;nn&#34;&gt;inline_snapshot&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;def&lt;/span&gt; &lt;span class=&#34;nf&#34;&gt;test_one&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;():&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;k&#34;&gt;assert&lt;/span&gt; &lt;span class=&#34;mi&#34;&gt;1&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;==&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;snapshot&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;()&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Now when I run &lt;code&gt;pytest&lt;/code&gt; my tests will &lt;strong&gt;fail&lt;/strong&gt; because my assert has no value, but if I&#xA;run &lt;code&gt;pytest --inline-snapshot=create&lt;/code&gt; it will fill out my snapshot values and the&#xA;file will then look like this.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;kn&#34;&gt;import&lt;/span&gt; &lt;span class=&#34;nn&#34;&gt;inline_snapshot&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;def&lt;/span&gt; &lt;span class=&#34;nf&#34;&gt;test_one&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;():&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;k&#34;&gt;assert&lt;/span&gt; &lt;span class=&#34;mi&#34;&gt;1&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;==&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;snapshot&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;1&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;It also works with pydantic models.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;class&lt;/span&gt; &lt;span class=&#34;nc&#34;&gt;MyModel&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;BaseModel&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;):&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;n&#34;&gt;name&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;nb&#34;&gt;str&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;n&#34;&gt;age&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;nb&#34;&gt;int&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;n&#34;&gt;nickname&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;nb&#34;&gt;str&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;|&lt;/span&gt; &lt;span class=&#34;kc&#34;&gt;None&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;kc&#34;&gt;None&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;def&lt;/span&gt; &lt;span class=&#34;nf&#34;&gt;test_my_model_instance&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;():&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;k&#34;&gt;assert&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;MyModel&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;name&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;Waylon&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;age&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;1&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;==&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;snapshot&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;MyModel&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;name&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;Waylon&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;age&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;1&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;))&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;def&lt;/span&gt; &lt;span class=&#34;nf&#34;&gt;test_my_model_fields&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;():&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;n&#34;&gt;me&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;MyModel&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;name&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;Waylon&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;age&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;1&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;nickname&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;Waylon&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;k&#34;&gt;assert&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;me&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;name&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;==&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;snapshot&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;Waylon&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;k&#34;&gt;assert&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;me&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;age&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;==&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;snapshot&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;1&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;k&#34;&gt;assert&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;me&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;nickname&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;==&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;snapshot&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;Waylon&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ nalgeon redka</title>
    <id>https://waylonwalker.com/nalgeon-redka/</id>
    <updated>2024-04-17T12:06:05Z</updated>
    <published>2024-04-17T12:06:05Z</published>
    <link href="https://waylonwalker.com/nalgeon-redka/" rel="alternate" type="text/html"></link>
    <summary type="text">nalgeon has done a fantastic job with redka. Highly recommend taking a look.</summary>
    <content type="html">&lt;p&gt;&lt;a href=&#34;https://github.com/nalgeon&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;nalgeon&lt;/a&gt; has done a fantastic job with &lt;a href=&#34;https://github.com/nalgeon/redka&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;redka&lt;/a&gt;. Highly recommend taking a look.&lt;/p&gt;&#xA;&lt;p&gt;Redis re-implemented with SQLite&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 nalgeon/redka: Redis re-implemented with SQLite</title>
    <id>https://waylonwalker.com/thought-244/</id>
    <updated>2024-04-17T01:59:08Z</updated>
    <published>2024-04-17T01:59:08Z</published>
    <link href="https://waylonwalker.com/thought-244/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://github.com/nalgeon/redka</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://github.com/nalgeon/redka&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://repository-images.githubusercontent.com/783038627/6aedc9a7-e25a-4b0e-a6ba-3169932ee993&#34; alt=&#34;GitHub - nalgeon/redka: Redis re-implemented with SQL — Redis re-implemented with SQL. Contribute to nalgeon/redka development by creating an account on GitHub.&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: GitHub - nalgeon/redka: Redis re-implemented with SQL — Redis re-implemented with SQL. Contribute to nalgeon/redka development by creating an account on GitHub.&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;GitHub - nalgeon/redka: Redis re-implemented with SQL&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;Redis re-implemented with SQL. Contribute to nalgeon/redka development by creating an account on GitHub.&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;GitHub · github.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Redka a sick new redis compatable api, that uses sqlite as its backend datastore.  It feels lightweight to use as it is a single small binary.  Data does not have to fit into memory as it uses sqlite to store data.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>sqlite vacuum</title>
    <id>https://waylonwalker.com/sqlite-vacuum/</id>
    <updated>2024-04-16T21:31:24Z</updated>
    <published>2024-04-16T21:31:24Z</published>
    <link href="https://waylonwalker.com/sqlite-vacuum/" rel="alternate" type="text/html"></link>
    <summary type="text">Today I learned how to VACUUM a sqlite database and cut its size in about half. It&#39;s a database that I have had running for quite awhile and has some decent...</summary>
    <content type="html">&lt;p&gt;Today I learned how to VACUUM a sqlite database and cut its size in about half.&#xA;It’s a database that I have had running for quite awhile and has some decent&#xA;traffic on it.&lt;/p&gt;&#xA;&lt;p&gt;Why is it important to do a VACUUM? In short its becuase the file system gets&#xA;fragmented with as data is updated. On delete the files are removed from the&#xA;database and marked as available for reuse in the filesystem, but the space is&#xA;not reclaimed.&lt;/p&gt;&#xA;&lt;p&gt;To VACUUM a database, run the following sql command.  You can do it right form&#xA;the sqlite shell by running &lt;code&gt;sqlite3&lt;/code&gt;.&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;You will need about double the current size of the database as free space to&#xA;do the VACUUM, you need space for a full copy, journaling or write ahead&#xA;logs, and the existing database.&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;VACUUM&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;The docs are fantastic for &lt;a href=&#34;https://www.sqlite.org/lang_vacuum.html&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/www.sqlite.org.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/www.sqlite.org.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;vacuum&lt;/a&gt;.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Arch Linux - News: The xz package has been backdoored</title>
    <id>https://waylonwalker.com/thought-243/</id>
    <updated>2024-04-16T13:00:33Z</updated>
    <published>2024-04-16T13:00:33Z</published>
    <link href="https://waylonwalker.com/thought-243/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://archlinux.org/news/the-xz-package-has-been-backdoored/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://archlinux.org/news/the-xz-package-has-been-backdoored/&#34; class=&#34;embed-card-link  has-avatar has-avatar-before&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/archlinux.org.png&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/archlinux.org.png&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Arch Linux - News: The xz package has been backdoored&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;archlinux.org&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Check your system to see if you are vulnerable to the xz backdoor.&lt;/p&gt;&#xA;&lt;p&gt;I found this line most pertanent to me.&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;The xz packages prior to version 5.6.1-2 (specifically 5.6.0-1 and 5.6.1-1) contain this backdoor.&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;p&gt;Also it appears that arch is not vulnerable as it does not directly link openssh to liblzma, so the known attack vecotor is not possible.  read to the end of the linked article for more.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 My harpoon config</title>
    <id>https://waylonwalker.com/thought-242/</id>
    <updated>2024-04-16T01:34:38Z</updated>
    <published>2024-04-16T01:34:38Z</published>
    <link href="https://waylonwalker.com/thought-242/" rel="alternate" type="text/html"></link>
    <summary type="text">!None</summary>
    <content type="html">&lt;!-- embed not found: None --&gt;&#xA;&lt;p&gt;![[None]]&lt;/p&gt;&#xA;&lt;p&gt;Install it&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#x9;&lt;span class=&#34;p&#34;&gt;{&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#x9;&#x9;&lt;span class=&#34;s2&#34;&gt;&amp;#34;ThePrimeagen/harpoon&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#x9;&#x9;&lt;span class=&#34;n&#34;&gt;branch&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;harpoon2&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#x9;&#x9;&lt;span class=&#34;n&#34;&gt;dependencies&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;nvim-lua/plenary.nvim&amp;#34;&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;},&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#x9;&#x9;&lt;span class=&#34;n&#34;&gt;config&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;kr&#34;&gt;function&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;()&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#x9;&#x9;&#x9;&lt;span class=&#34;n&#34;&gt;require&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;waylonwalker.plugins.harpoon&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;).&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;setup&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;()&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#x9;&#x9;&lt;span class=&#34;kr&#34;&gt;end&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#x9;&lt;span class=&#34;p&#34;&gt;},&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;harpoon config&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;kd&#34;&gt;local&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;harpoon&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;require&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;harpoon&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;M&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{}&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;M.setup&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;kr&#34;&gt;function&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;()&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- REQUIRED&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;harpoon&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;setup&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;()&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- REQUIRED&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;vim.keymap&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;set&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;n&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;&amp;lt;F10&amp;gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;kr&#34;&gt;function&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;()&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;harpoon&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;list&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;():&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;append&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;()&lt;/span&gt; &lt;span class=&#34;kr&#34;&gt;end&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;vim.keymap&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;set&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;n&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;&amp;lt;F9&amp;gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;kr&#34;&gt;function&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;()&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;harpoon.ui&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;toggle_quick_menu&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;harpoon&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;list&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;())&lt;/span&gt; &lt;span class=&#34;kr&#34;&gt;end&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;vim.keymap&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;set&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;n&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;&amp;lt;F1&amp;gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;kr&#34;&gt;function&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;()&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;harpoon&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;list&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;():&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;select&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;1&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt; &lt;span class=&#34;kr&#34;&gt;end&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;vim.keymap&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;set&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;n&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;&amp;lt;F2&amp;gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;kr&#34;&gt;function&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;()&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;harpoon&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;list&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;():&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;select&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;2&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt; &lt;span class=&#34;kr&#34;&gt;end&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;vim.keymap&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;set&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;n&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;&amp;lt;F3&amp;gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;kr&#34;&gt;function&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;()&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;harpoon&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;list&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;():&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;select&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;3&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt; &lt;span class=&#34;kr&#34;&gt;end&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- these are cnext/cprev&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- vim.keymap.set(&amp;#34;n&amp;#34;, &amp;#34;&amp;lt;F4&amp;gt;&amp;#34;, function() harpoon:list():select(4) end)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- vim.keymap.set(&amp;#34;n&amp;#34;, &amp;#34;&amp;lt;F5&amp;gt;&amp;#34;, function() harpoon:list():select(5) end)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;vim.keymap&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;set&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;n&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;&amp;lt;F6&amp;gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;kr&#34;&gt;function&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;()&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;harpoon&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;list&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;():&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;select&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;6&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt; &lt;span class=&#34;kr&#34;&gt;end&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- Toggle previous &amp;amp; next buffers stored within Harpoon list&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;vim.keymap&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;set&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;n&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;&amp;lt;F7&amp;gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;kr&#34;&gt;function&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;()&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;harpoon&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;list&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;():&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;prev&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;()&lt;/span&gt; &lt;span class=&#34;kr&#34;&gt;end&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;vim.keymap&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;set&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;n&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;&amp;lt;F8&amp;gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;kr&#34;&gt;function&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;()&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;harpoon&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;list&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;():&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;next&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;()&lt;/span&gt; &lt;span class=&#34;kr&#34;&gt;end&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- basic telescope configuration&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;kd&#34;&gt;local&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;conf&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;require&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;telescope.config&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;).&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;values&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;kd&#34;&gt;local&lt;/span&gt; &lt;span class=&#34;kr&#34;&gt;function&lt;/span&gt; &lt;span class=&#34;nf&#34;&gt;toggle_telescope&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;harpoon_files&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;kd&#34;&gt;local&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;file_paths&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{}&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;kr&#34;&gt;for&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;_&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;item&lt;/span&gt; &lt;span class=&#34;kr&#34;&gt;in&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;ipairs&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;harpoon_files.items&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt; &lt;span class=&#34;kr&#34;&gt;do&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;n&#34;&gt;table.insert&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;file_paths&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;item.value&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;kr&#34;&gt;end&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;n&#34;&gt;require&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;telescope.pickers&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;).&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;new&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;({},&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;n&#34;&gt;prompt_title&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;Harpoon&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;n&#34;&gt;finder&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;require&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;telescope.finders&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;).&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;new_table&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;({&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;            &lt;span class=&#34;n&#34;&gt;results&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;file_paths&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;p&#34;&gt;}),&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;n&#34;&gt;previewer&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;conf.file_previewer&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;({}),&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;n&#34;&gt;sorter&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;conf.generic_sorter&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;({}),&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;p&#34;&gt;}):&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;find&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;()&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;kr&#34;&gt;end&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;vim.keymap&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;set&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;n&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;&amp;lt;C-e&amp;gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;kr&#34;&gt;function&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;()&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;toggle_telescope&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;harpoon&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;list&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;())&lt;/span&gt; &lt;span class=&#34;kr&#34;&gt;end&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;desc&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;Open harpoon window&amp;#34;&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;})&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;kr&#34;&gt;end&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;kr&#34;&gt;return&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;M&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Tailwind Animations</title>
    <id>https://waylonwalker.com/tailwind-animations/</id>
    <updated>2024-04-15T21:19:21Z</updated>
    <published>2024-04-15T21:19:21Z</published>
    <link href="https://waylonwalker.com/tailwind-animations/" rel="alternate" type="text/html"></link>
    <summary type="text">I learned that tailwind animations are pretty easy to add only needing a few classes. For some reason though my brain broke, thinking that I could...</summary>
    <content type="html">&lt;p&gt;I learned that tailwind animations are pretty easy to add only needing a few&#xA;classes.  For some reason though my brain broke, thinking that I could&#xA;dynamically change the number and you can’t cause there are only so many pre&#xA;compiled classes without using an arbitrary value with brackets.&lt;/p&gt;&#xA;&lt;p&gt;Here are the classes that I used to transition my colors very slowly.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;&amp;lt;&lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;div&lt;/span&gt; &lt;span class=&#34;na&#34;&gt;id&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;&amp;#34;square&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;      &lt;span class=&#34;na&#34;&gt;class&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;&amp;#34;transition-colors ease-in-out duration-700&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;&amp;gt;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;&amp;lt;/&lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;div&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;&amp;gt;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;And the entire square element.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;&amp;lt;&lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;div&lt;/span&gt; &lt;span class=&#34;na&#34;&gt;id&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;&amp;#34;square&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;      &lt;span class=&#34;na&#34;&gt;class&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;&amp;#34;w-16 h-16 bg-rose-500 rounded border border-4 border-rose-800 hover:bg-indigo-600 hover:border-yellow-500 transition-colors ease-in-out duration-700&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;&amp;gt;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;&amp;lt;/&lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;div&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;&amp;gt;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>How to kill ollama server</title>
    <id>https://waylonwalker.com/how-to-kill-ollama-server/</id>
    <updated>2024-04-14T18:31:36Z</updated>
    <published>2024-04-14T18:31:36Z</published>
    <link href="https://waylonwalker.com/how-to-kill-ollama-server/" rel="alternate" type="text/html"></link>
    <summary type="text">I recently updated ollama, and it now installs a systemd service that I was not expecting. Seems like a great option, but I hadn&#39;t expeted this and I was...</summary>
    <content type="html">&lt;p&gt;I recently updated &lt;a href=&#34;https://ollama.com/&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/ollama.com.png&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/ollama.com.png&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;ollama&lt;/a&gt;, and it now installs a systemd&#xA;service that I was not expecting.  Seems like a great option, but I hadn’t&#xA;expeted this and I was able to kill it previously.  It was using up gpu, and I&#xA;do other things on my machine with a gpu.  I tried pkill, kill, and everything,&#xA;it was still coming back.&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;No matter what it comes back&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# stop it&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;systemctl stop ollama.service&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# disable it if you want&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;systemctl disable ollama.service&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# confirm its status&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;systemctl status ollama.service&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;You can confirm this with the following command.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# checking running processes&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;ps aux &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt; grep ollama&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;pgrep ollama&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# checking gpu processes&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;gpustat --show-cmd --show-pid&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Next time you want to start you can do it as before with &lt;code&gt;ollama serve&lt;/code&gt;.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 From Vim To Zed - YouTube</title>
    <id>https://waylonwalker.com/thought-241/</id>
    <updated>2024-04-13T13:42:56Z</updated>
    <published>2024-04-13T13:42:56Z</published>
    <link href="https://waylonwalker.com/thought-241/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/watch?v=ZRnWmNdf5IE&amp;t=612</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;ZRnWmNdf5IE&#34; title=&#34;From Vim To Zed&#34; playlabel=&#34;Play: From Vim To Zed&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;I found this statement quite intriguing.&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;multi-cursors are just macros.&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;p&gt;This is quite a philisophical video and mostly prime talking about the things that make vim vim, and what prime needs in and editor vs what he can live without.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Composing Typer clis</title>
    <id>https://waylonwalker.com/composing-typer-clis/</id>
    <updated>2024-04-13T08:27:26Z</updated>
    <published>2024-04-13T08:27:26Z</published>
    <link href="https://waylonwalker.com/composing-typer-clis/" rel="alternate" type="text/html"></link>
    <summary type="text">Typer makes it easy to compose your cli applications, like you might with a web router if you are more familiar with that. This allows you to build smaller...</summary>
    <content type="html">&lt;p&gt;Typer makes it easy to compose your cli applications, like you might with a web&#xA;router if you are more familiar with that.  This allows you to build smaller&#xA;applications that compose into a larger application.&lt;/p&gt;&#xA;&lt;p&gt;You will see similar patterns in the wild, namely the &lt;code&gt;aws&lt;/code&gt; cli which always&#xA;has the &lt;code&gt;aws &amp;lt;command&amp;gt; &amp;lt;subcommand&amp;gt;&lt;/code&gt; pattern.&lt;/p&gt;&#xA;&lt;p&gt;Lets setup the cli app itself first.  You can put it in &lt;code&gt;project/cli/cli.py&lt;/code&gt;.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;kn&#34;&gt;import&lt;/span&gt; &lt;span class=&#34;nn&#34;&gt;typer&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;kn&#34;&gt;from&lt;/span&gt; &lt;span class=&#34;nn&#34;&gt;project.cli.api&lt;/span&gt; &lt;span class=&#34;kn&#34;&gt;import&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;api_app&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;kn&#34;&gt;from&lt;/span&gt; &lt;span class=&#34;nn&#34;&gt;project.cli.config&lt;/span&gt; &lt;span class=&#34;kn&#34;&gt;import&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;config_app&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;kn&#34;&gt;from&lt;/span&gt; &lt;span class=&#34;nn&#34;&gt;project.cli.user&lt;/span&gt; &lt;span class=&#34;kn&#34;&gt;import&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;user_app&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;kn&#34;&gt;from&lt;/span&gt; &lt;span class=&#34;nn&#34;&gt;project.cli.run&lt;/span&gt; &lt;span class=&#34;kn&#34;&gt;import&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;run_app&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;app&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;typer&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;Typer&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;()&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;app&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;add_typer&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;api_app&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;name&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;api&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;app&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;add_typer&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;config_app&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;name&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;config&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;app&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;add_typer&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;user_app&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;name&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;user&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;app&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;add_typer&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;run_app&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;name&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;run&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Creating an app that will become a command is the same as creating a regular&#xA;app in Typer.  We need to create a callback that will become our command, and a&#xA;command that will become our subcommand in the parent app.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;kn&#34;&gt;import&lt;/span&gt; &lt;span class=&#34;nn&#34;&gt;typer&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;kn&#34;&gt;from&lt;/span&gt; &lt;span class=&#34;nn&#34;&gt;rich.console&lt;/span&gt; &lt;span class=&#34;kn&#34;&gt;import&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;Console&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;kn&#34;&gt;from&lt;/span&gt; &lt;span class=&#34;nn&#34;&gt;project.config&lt;/span&gt; &lt;span class=&#34;kn&#34;&gt;import&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;get_config&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;config_app&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;typer&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;Typer&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;()&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nd&#34;&gt;@config_app.callback&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;()&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;def&lt;/span&gt; &lt;span class=&#34;nf&#34;&gt;config&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;():&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;s2&#34;&gt;&amp;#34;model cli&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nd&#34;&gt;@config_app.command&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;()&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;def&lt;/span&gt; &lt;span class=&#34;nf&#34;&gt;show&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;):&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;n&#34;&gt;project_config&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;get_config&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;env&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;n&#34;&gt;Console&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;()&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;print&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;fokais_config&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Setting up the entrypoint in pyproject.toml.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;nx&#34;&gt;project&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nx&#34;&gt;scripts&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]&lt;/span&gt; &lt;span class=&#34;c&#34;&gt;# &amp;lt;- this project is part of the config DO NOT change it&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nx&#34;&gt;project&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;project.cli.cli:app&amp;#34;&lt;/span&gt; &lt;span class=&#34;c&#34;&gt;# &amp;lt;- This project is the project name, DO change it&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Now you can see each cli application as a sub command.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;❯ project --help&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt; Usage: project &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;OPTIONS&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt; COMMAND &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;ARGS&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;╭─ Options ─────────────────────────────────────────────────────────────────────────────────────────╮&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;│ --install-completion  &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;bash&lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;zsh&lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;fish&lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;powershell&lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;pwsh&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;  Install completion &lt;span class=&#34;k&#34;&gt;for&lt;/span&gt; the specified shell.│&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;│                                                        &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;default: None&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;                            │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;│ --show-completion     &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;bash&lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;zsh&lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;fish&lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;powershell&lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;pwsh&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;  Show completion &lt;span class=&#34;k&#34;&gt;for&lt;/span&gt; the specified shell,   │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;│                                                        to copy it or customize the installation.  │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;│                                                        &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;default: None&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;                            │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;│ --help                                                 Show this message and exit.                │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;╰───────────────────────────────────────────────────────────────────────────────────────────────────╯&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;╭─ Commands ────────────────────────────────────────────────────────────────────────────────────────╮&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;│ api                        model cli                                                              │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;│ config                     config cli                                                             │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;│ user                       user cli                                                               │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;│ run                        run cli                                                                │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;╰───────────────────────────────────────────────────────────────────────────────────────────────────╯&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;In the example above we can run the command &lt;code&gt;project config show&lt;/code&gt; to see the&#xA;current configuration of our project.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>tailwind arbitrary values</title>
    <id>https://waylonwalker.com/tailwind-custom-size/</id>
    <updated>2024-04-12T21:21:42Z</updated>
    <published>2024-04-12T21:21:42Z</published>
    <link href="https://waylonwalker.com/tailwind-custom-size/" rel="alternate" type="text/html"></link>
    <summary type="text">I learned not to fear the arbitrary size feature of tailwind. While building out reader.waylonwalker.com I kept getting content flowing off the screen, and...</summary>
    <content type="html">&lt;p&gt;I learned not to fear the arbitrary size feature of tailwind.  While building&#xA;out &lt;a href=&#34;https://reader.waylonwalker.com&#34;&gt;reader.waylonwalker.com&lt;/a&gt; I kept getting&#xA;content flowing off the screen, and struggling to keep it on the screen.  I&#xA;really felt that I should be able to do this with vanilla tailwind, but after&#xA;some encouragement from Twitter I decided to lean on arbitrary values and it&#xA;worked.&lt;/p&gt;&#xA;&lt;p&gt;Don’t fear the arbitrary values.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;&amp;lt;&lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;li&lt;/span&gt; &lt;span class=&#34;na&#34;&gt;class&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;&amp;#34;max-w-[100vw]&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;&amp;gt;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;&amp;lt;/&lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;li&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;&amp;gt;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Learn more about using-arbitrary-values from their docs&#xA;&lt;a href=&#34;https://tailwindcss.com/docs/adding-custom-styles#using-arbitrary-values&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/tailwindcss.com.png&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/tailwindcss.com.png&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;docs&lt;/a&gt;&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Use an llm to automagically generate meaningful git commit mes...</title>
    <id>https://waylonwalker.com/thought-240/</id>
    <updated>2024-04-11T13:35:50Z</updated>
    <published>2024-04-11T13:35:50Z</published>
    <link href="https://waylonwalker.com/thought-240/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://harper.blog/2024/03/11/use-an-llm-to-automagically-generate-meaningful-git-commit-messages/</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://harper.blog/2024/03/11/use-an-llm-to-automagically-generate-meaningful-git-commit-messages/&#34; class=&#34;embed-card-link&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-image&#34;&gt;&#xA;      &lt;img class=&#34;glightbox&#34; src=&#34;https://harper.blog/images/social_card_bg_harper_hu_8387c1b95157265.png&#34; alt=&#34;Use an llm to automagically generate meaningful git commit messages — I&#34; loading=&#34;lazy&#34;/ data-glightbox=&#34;description: Use an llm to automagically generate meaningful git commit messages — I&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;Use an llm to automagically generate meaningful git commit messages&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-description&#34;&gt;I&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;harper.blog&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;This is pretty sick, I wanted this early on when I was making lockhart.  I wanted to do the &lt;a href=&#34;/glossary/git/&#34; class=&#34;glossary-term&#34; title=&#34;Git is a version control system for tracking changes in source code during software development. In the beginning there were many, some were licensed. As...&#34;&gt;git&lt;/a&gt; hook thing but could not figure it out and did not know that &lt;code&gt;prepare-commit-msg&lt;/code&gt; was a hook that I could use.&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;Git Hooked&#xA;Then I remembered! Git hooks! Lol. Why would I have that in my brain - who knows!&lt;/p&gt;&#xA;&lt;p&gt;I asked claude again, and they whipped up a simple script that would act as a hook that triggers with the prepare-commit-msg event.&lt;/p&gt;&#xA;&lt;p&gt;This is awesome, cuz if you want to add a git message, you can skip the hook. But if you are lazy, you exclude the message and it will call the LLM.&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;p&gt;Simon Willison’s llm cli comes in clutch here, it has such a good intereface to allow a prompt to be piped in, but the system prompt be set by -s.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nv&#34;&gt;gpt&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;!f() { git diff &lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;$1&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt; | llm -s \&amp;#34;&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;$(&lt;/span&gt;cat ~/.config/prompts/commit-system-prompt.txt&lt;span class=&#34;k&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;\&amp;#34; }; f&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;blockquote&gt;&#xA;&lt;p&gt;I love hacking on projects, but often I am super bad at making commits that make sense.&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;p&gt;I completely relate to this statement, and this is why I am trying it.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>fix npm global install needs sudo</title>
    <id>https://waylonwalker.com/fix-npm-global-install-needs-sudo/</id>
    <updated>2024-04-11T13:28:17Z</updated>
    <published>2024-04-11T13:28:17Z</published>
    <link href="https://waylonwalker.com/fix-npm-global-install-needs-sudo/" rel="alternate" type="text/html"></link>
    <summary type="text">Each time I go to set up npm I am frustrated by the errors saying that I don&#39;t have permission to , and it&#39;s frustrating. And I forget what I need to do to...</summary>
    <content type="html">&lt;p&gt;Each time I go to set up npm I am frustrated by the errors saying that I don’t&#xA;have permission to &lt;code&gt;npm i -g &amp;lt;package&amp;gt;&lt;/code&gt;, and it’s frustrating.  And I forget&#xA;what I need to do to tell npm to install packages in a directory I own, and my&#xA;shell to look there so that I can use the executables.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;mkdir ~/.npm-global&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;export&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;NPM_CONFIG_PREFIX&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;~/.npm-global&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;export&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;PATH&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;$PATH&lt;/span&gt;:~/.npm-global/bin&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;For the fix to remain persistent you need to put these two lines in your shell&#xA;profile like &lt;code&gt;~/.bashrc&lt;/code&gt; or &lt;code&gt;~/.zshrc&lt;/code&gt;.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;export&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;NPM_CONFIG_PREFIX&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;~/.npm-global&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;export&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;PATH&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;$PATH&lt;/span&gt;:~/.npm-global/bin&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>One Day Build - Play Outside</title>
    <id>https://waylonwalker.com/odb-play-outside/</id>
    <updated>2024-04-10T12:32:20Z</updated>
    <published>2024-04-10T12:32:20Z</published>
    <link href="https://waylonwalker.com/odb-play-outside/" rel="alternate" type="text/html"></link>
    <summary type="text">Inspired by Adam Savage and his One Day builds on youtube. I often build things, and want to make them generally useful for others and over configure out of...</summary>
    <content type="html">&lt;p&gt;Inspired by Adam Savage and his One Day builds on youtube.  I often build&#xA;things, and want to make them generally useful for others and over configure&#xA;out of the gate.  This project is purely for me inspired by a need I have.&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;a href=&#34;https://play-outside.wayl.one/&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/play-outside.wayl.one.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/play-outside.wayl.one.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;play-outside&lt;/a&gt;&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;h2 id=&#34;how-to&#34;&gt;!How-To &lt;a href=&#34;#how-to&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;This post will not directly show how to make a weather app, but document the&#xA;process that I went through to make mine.  It will show the tools that I used&#xA;to make it, and the final result.&lt;/p&gt;&#xA;&lt;h2 id=&#34;the-situation&#34;&gt;The Situation &lt;a href=&#34;#the-situation&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;It often goes in our house ask dad while he is busy and he will probably just&#xA;say yes without thinking much.  This happens a lot when kids ask to go&#xA;outside.  I think sure, go for it, you will figure it out.  Then my wife walks&#xA;in and asks where they are, followed by, did you even check the weather, its&#xA;-11 degrees outside right now.&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;I need a tool for this decision making process&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;h2 id=&#34;lungs&#34;&gt;Lungs &lt;a href=&#34;#lungs&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;You we have a family of not the most heathly lungs, we have my wife with lung&#xA;cancer, one lung missing, and kids with asthma.  We need to account for&#xA;temperature, humidity, wind chill, and air quality before heading outside and&#xA;seeing the repercussions of it later.&lt;/p&gt;&#xA;&lt;h2 id=&#34;final-result&#34;&gt;Final result &lt;a href=&#34;#final-result&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;So this is what I built, its a web app that checks the weather and air quality&#xA;in your area and determines if its safe to go outside.  It will even recommend&#xA;limiting your time, or wearing a coat.&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://play-outside.wayl.one/&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://shots.waylonwalker.com/shot/?url=https://play-outside.wayl.one&amp;amp;height=1200&amp;amp;width=600&amp;amp;scaled_width=600&amp;amp;scaled_height=1200&amp;amp;selectors=&#34; alt=&#34;&#34;/ data-glightbox=&#34;description: &#34;&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;h2 id=&#34;the-stack&#34;&gt;The Stack &lt;a href=&#34;#the-stack&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;This is a one day build, I have both kids at home from school, so this is&#xA;realistically only like 2-3 hours at most, so this has to be chosen based on&#xA;familiarity.&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;Docker&lt;/li&gt;&#xA;&lt;li&gt;k8s&lt;/li&gt;&#xA;&lt;li&gt;Python&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;/fastapi/&#34; class=&#34;glossary-term&#34; title=&#34;FastAPI is a modern and efficient web framework for Python, built on top of the Starlette web framework, and pydantic for data validation and serialization.&#34;&gt;FastAPI&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;tailwind&lt;/li&gt;&#xA;&lt;li&gt;httpx&lt;/li&gt;&#xA;&lt;li&gt;OpenWeatherMap API&lt;/li&gt;&#xA;&lt;li&gt;ipwho.is&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;This is the same stack (minue the apis) that I am using to build my startup&#xA;fokais.com with.  I am quite familiar with it and should be able to quickly&#xA;make progress with it.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;❯ tree&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Permissions Size User   Date Modified Git Name&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;drwxr-xr-x     - waylon &lt;span class=&#34;m&#34;&gt;16&lt;/span&gt; Jan 12:21   -N  .&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;.rw-r--r--  3.8k waylon &lt;span class=&#34;m&#34;&gt;16&lt;/span&gt; Jan 12:24   -N ├──  deployment.yaml&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;.rw-r--r--   &lt;span class=&#34;m&#34;&gt;278&lt;/span&gt; waylon &lt;span class=&#34;m&#34;&gt;16&lt;/span&gt; Jan 12:21   -N ├──  docker-compose.yml&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;.rw-r--r--   &lt;span class=&#34;m&#34;&gt;552&lt;/span&gt; waylon &lt;span class=&#34;m&#34;&gt;16&lt;/span&gt; Jan 12:20   -N ├──  Dockerfile&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;.rw-r--r--   15k waylon &lt;span class=&#34;m&#34;&gt;15&lt;/span&gt; Jan 14:37   -N ├──  favicon.ico&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;.rw-r--r--  1.9k waylon &lt;span class=&#34;m&#34;&gt;15&lt;/span&gt; Jan 15:58   -N ├──  justfile&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;.rw-r--r--  1.1k waylon &lt;span class=&#34;m&#34;&gt;15&lt;/span&gt; Jan 11:39   -N ├──  LICENSE.txt&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;.rw-r--r--   51k waylon &lt;span class=&#34;m&#34;&gt;15&lt;/span&gt; Jan 14:38   -N ├──  package-lock.json&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;.rw-r--r--    &lt;span class=&#34;m&#34;&gt;69&lt;/span&gt; waylon &lt;span class=&#34;m&#34;&gt;15&lt;/span&gt; Jan 14:38   -N ├──  package.json&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;drwxr-xr-x     - waylon &lt;span class=&#34;m&#34;&gt;16&lt;/span&gt; Jan 12:20   -N ├──  play_outside&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;.rw-r--r--   &lt;span class=&#34;m&#34;&gt;138&lt;/span&gt; waylon &lt;span class=&#34;m&#34;&gt;16&lt;/span&gt; Jan 12:21   -N │  ├──  __about__.py&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;.rw-r--r--   &lt;span class=&#34;m&#34;&gt;115&lt;/span&gt; waylon &lt;span class=&#34;m&#34;&gt;15&lt;/span&gt; Jan 11:39   -N │  ├──  __init__.py&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;.rw-r--r--  7.5k waylon &lt;span class=&#34;m&#34;&gt;16&lt;/span&gt; Jan 08:14   -N │  ├──  api.py&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;drwxr-xr-x     - waylon &lt;span class=&#34;m&#34;&gt;15&lt;/span&gt; Jan 21:30   -N │  ├──  cli&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;.rw-r--r--  3.5k waylon &lt;span class=&#34;m&#34;&gt;15&lt;/span&gt; Jan 21:30   -N │  │  └──  api.py&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;.rw-r--r--  2.8k waylon &lt;span class=&#34;m&#34;&gt;16&lt;/span&gt; Jan 12:20   -N │  ├──  config.py&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;.rw-r--r--  3.0k waylon &lt;span class=&#34;m&#34;&gt;15&lt;/span&gt; Jan 14:35   -N │  ├──  decorators.py&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;.rw-r--r--    &lt;span class=&#34;m&#34;&gt;51&lt;/span&gt; waylon &lt;span class=&#34;m&#34;&gt;15&lt;/span&gt; Jan 14:50   -N │  └──  queries.py&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;.rw-r--r--  2.2k waylon &lt;span class=&#34;m&#34;&gt;15&lt;/span&gt; Jan 15:16   -N ├──  pyproject.toml&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;.rw-r--r--   &lt;span class=&#34;m&#34;&gt;506&lt;/span&gt; waylon &lt;span class=&#34;m&#34;&gt;15&lt;/span&gt; Jan 11:39   -N ├──  README.md&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;drwxr-xr-x     - waylon &lt;span class=&#34;m&#34;&gt;15&lt;/span&gt; Jan 14:39   -N ├──  static&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;.rw-r--r--   21k waylon &lt;span class=&#34;m&#34;&gt;16&lt;/span&gt; Jan 08:10   -N │  ├──  app.css&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;.rw-r--r--   15k waylon &lt;span class=&#34;m&#34;&gt;15&lt;/span&gt; Jan 14:37   -N │  ├──  favicon.ico&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;.rw-r--r--   47k waylon &lt;span class=&#34;m&#34;&gt;15&lt;/span&gt; Jan 14:32   -N │  └──  htmx.org@1.9.8&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;drwxr-xr-x     - waylon &lt;span class=&#34;m&#34;&gt;15&lt;/span&gt; Jan 21:04   -N ├──  tailwind&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;.rw-r--r--  6.2k waylon &lt;span class=&#34;m&#34;&gt;15&lt;/span&gt; Jan 21:04   -N │  └──  app.css&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;.rw-r--r--   &lt;span class=&#34;m&#34;&gt;360&lt;/span&gt; waylon &lt;span class=&#34;m&#34;&gt;15&lt;/span&gt; Jan 21:04   -N ├──  tailwind.config.js&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;drwxr-xr-x     - waylon &lt;span class=&#34;m&#34;&gt;16&lt;/span&gt; Jan 12:16   -N ├──  templates&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;.rw-r--r--  2.5k waylon &lt;span class=&#34;m&#34;&gt;16&lt;/span&gt; Jan 12:16   -N │  ├──  base.html&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;.rw-r--r--  2.2k waylon &lt;span class=&#34;m&#34;&gt;16&lt;/span&gt; Jan 12:11   -N │  ├──  card.html&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;.rw-r--r--   &lt;span class=&#34;m&#34;&gt;151&lt;/span&gt; waylon &lt;span class=&#34;m&#34;&gt;15&lt;/span&gt; Jan 21:07   -N │  ├──  includestyles.html&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;.rw-r--r--   &lt;span class=&#34;m&#34;&gt;418&lt;/span&gt; waylon &lt;span class=&#34;m&#34;&gt;16&lt;/span&gt; Jan 12:12   -N │  └──  index.html&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;drwxr-xr-x     - waylon &lt;span class=&#34;m&#34;&gt;15&lt;/span&gt; Jan 11:39   -N └──  tests&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;.rw-r--r--   &lt;span class=&#34;m&#34;&gt;115&lt;/span&gt; waylon &lt;span class=&#34;m&#34;&gt;15&lt;/span&gt; Jan 11:39   -N    └──  __init__.py&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;h2 id=&#34;&lt;a href=&#34;/htmx/&#34; class=&#34;glossary-term&#34; title=&#34;htmx is a frontend javascript library for creating dynamic web applications.&#34;&gt;htmx&lt;/a&gt;-btw&#34;&gt;HTMX BTW &lt;a href=&#34;#htmx-btw&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;I have been pairing up htmx with this stack quite a lot lately, and its&#xA;fantastic, but honestly this idea just does not have a lot of endpoints, and I&#xA;don’t think it needs it for a one day build, just toss everything into one page&#xA;and call it good.&lt;/p&gt;&#xA;&lt;h2 id=&#34;getting-weather-data&#34;&gt;Getting Weather Data &lt;a href=&#34;#getting-weather-data&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;The first thing we need is the feels_like or Apartment Temperature.  A quick&#xA;google search lead me to &lt;a href=&#34;https://openweathermap.org/&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/openweathermap.org.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/openweathermap.org.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;https://openweathermap.org/&lt;/a&gt; they have a very nice&#xA;calculation for the feels like temerature already built in.&lt;/p&gt;&#xA;&lt;a href=&#34;https://openweathermap.org/&#34;&gt;&#xA;&lt;img class=&#34;glightbox&#34; src=&#34;https://shots.waylonwalker.com/shot/?url=https://openweathermap.org/&amp;amp;height=450&amp;amp;width=800&amp;amp;scaled_width=800&amp;amp;scaled_height=450&amp;amp;selectors=&#34; alt=&#34;screenshot of https://openweathermap.org/&#34; height=&#34;450&#34; width=&#34;800&#34;/ data-glightbox=&#34;description: screenshot of https://openweathermap.org/&#34;&gt;&#xA;&lt;/a&gt;&#xA;&lt;p&gt;Now using openweathermap, we can get the feels like temperature, by latitude&#xA;and longitude.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;async&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;def&lt;/span&gt; &lt;span class=&#34;nf&#34;&gt;get_weather&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;lat_long&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;):&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;k&#34;&gt;async&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;with&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;httpx&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;AsyncClient&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;()&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;as&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;client&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;n&#34;&gt;response&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;await&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;client&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;get&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;            &lt;span class=&#34;sa&#34;&gt;f&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;https://api.openweathermap.org/data/2.5/weather?units=imperial&amp;amp;lat=&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;lat_long&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;latitude&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;}&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;amp;lon=&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;lat_long&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;longitude&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;}&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;amp;appid=&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;config&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;open_weather_api_key&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;}&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;k&#34;&gt;return&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;response&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;json&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;()&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;h2 id=&#34;where-are-you&#34;&gt;Where are you?? &lt;a href=&#34;#where-are-you&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;Since no one is going to know their current latitude and longitude we need a&#xA;way to look this up for it to actually be useful. For this I leaned on&#xA;&lt;a href=&#34;https://ipwhois.io/&#34; class=&#34;hoverlink  has-avatar has-avatar-before&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/ipwhois.io.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/ipwhois.io.ico&#34;&gt;https://ipwhois.io/&lt;/a&gt;&lt;/p&gt;&#xA;&lt;a href=&#34;https://ipwhois.io/&#34;&gt;&#xA;&lt;img class=&#34;glightbox&#34; src=&#34;https://shots.waylonwalker.com/shot/?url=https://ipwhois.io/&amp;amp;height=450&amp;amp;width=800&amp;amp;scaled_width=800&amp;amp;scaled_height=450&amp;amp;selectors=&#34; alt=&#34;screenshot of https://ipwhois.io/&#34; height=&#34;450&#34; width=&#34;800&#34;/ data-glightbox=&#34;description: screenshot of https://ipwhois.io/&#34;&gt;&#xA;&lt;/a&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;async&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;def&lt;/span&gt; &lt;span class=&#34;nf&#34;&gt;get_lat_long&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;ip_address&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;):&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;k&#34;&gt;if&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;ip_address&lt;/span&gt; &lt;span class=&#34;ow&#34;&gt;is&lt;/span&gt; &lt;span class=&#34;kc&#34;&gt;None&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;n&#34;&gt;ip_address&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;140.177.140.75&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;k&#34;&gt;async&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;with&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;httpx&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;AsyncClient&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;()&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;as&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;client&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;n&#34;&gt;response&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;await&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;client&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;get&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;sa&#34;&gt;f&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;https://ipwho.is/&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;ip_address&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;}&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;k&#34;&gt;return&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;response&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;json&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;()&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;h2 id=&#34;decision-tree&#34;&gt;Decision Tree &lt;a href=&#34;#decision-tree&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;For this I punted over to chatGPT to see what it came up with.&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code class=&#34;language-prompt&#34;&gt;I am working on a web app to tell kids if its ok to play outside.  It is&#xA;targeted towards kids living in the  midwest united states.   I have the feels&#xA;like temperature already.  Set some values for the temperature&#xA;&#xA;too cold,&#xA;no longer than 15 minutes,&#xA;coats required,&#xA;no longer than 15 minutes,&#xA;too hot&#xA;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt;What it came up with wasn’t a terrible starting point, but its values&#xA;essentially said kids cant play in the snow.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;def&lt;/span&gt; &lt;span class=&#34;nf&#34;&gt;determine_play_condition&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;feels_like_temperature&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;):&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;k&#34;&gt;if&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;feels_like_temperature&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;&amp;lt;&lt;/span&gt; &lt;span class=&#34;mi&#34;&gt;20&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;k&#34;&gt;return&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;It&amp;#39;s too cold for extended play. Stay indoors and keep warm!&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;k&#34;&gt;elif&lt;/span&gt; &lt;span class=&#34;mi&#34;&gt;20&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;&amp;lt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;feels_like_temperature&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;&amp;lt;=&lt;/span&gt; &lt;span class=&#34;mi&#34;&gt;32&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;k&#34;&gt;return&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;Perfect weather for snow play! Enjoy the winter wonderland!&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;k&#34;&gt;elif&lt;/span&gt; &lt;span class=&#34;mi&#34;&gt;32&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;&amp;lt;&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;feels_like_temperature&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;&amp;lt;=&lt;/span&gt; &lt;span class=&#34;mi&#34;&gt;40&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;k&#34;&gt;return&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;Coats and winter gear required for outdoor play. Stay cozy!&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;k&#34;&gt;elif&lt;/span&gt; &lt;span class=&#34;mi&#34;&gt;40&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;&amp;lt;&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;feels_like_temperature&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;&amp;lt;=&lt;/span&gt; &lt;span class=&#34;mi&#34;&gt;50&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;k&#34;&gt;return&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;You can play in the snow, but limit your time. It&amp;#39;s getting warmer!&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;k&#34;&gt;else&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;k&#34;&gt;return&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;It&amp;#39;s too warm for snow play. Find other fun activities indoors!&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# Example usage:&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;feels_like_temp&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;mi&#34;&gt;25&lt;/span&gt;  &lt;span class=&#34;c1&#34;&gt;# Replace with the actual feels like temperature&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;message&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;determine_play_condition&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;feels_like_temp&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;print&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;message&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;h2 id=&#34;some-massaging-later&#34;&gt;Some Massaging Later &lt;a href=&#34;#some-massaging-later&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;My wife sent me over this image from&#xA;&lt;a href=&#34;https://tinkergarten.com/pages/weather-watch&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/tinkergarten.com.png&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/tinkergarten.com.png&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;Tinkergarten&lt;/a&gt;, which is a chart&#xA;made by the Iowa Department of Public Health.  I used it as a guide to set some&#xA;values, and added some conditions based on visibility and air quality index&#xA;(aqi), which we have become all too familiar with over the past year with all&#xA;the forest fires out Western US causing our lungs issues here in the Midwest.&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://d2gesac5hma2c2.cloudfront.net/uploads/attachment/file/84/weatherwatch2.png&#34; class=&#34;glightbox-link&#34; aria-label=&#34;This chart was produced by the Iowa Department of Public Health, Healthy Child Care Iowa through federal grant (MCJ19T029 &amp;amp;amp; MCJ19KCC7) funds from the US Department of Health &amp;amp;amp; Human Services, Health Resources &amp;amp;amp; Services Administration, Maternal &amp;amp;amp; Child Health Bureau. Wind-Chill and Heat Index information is from the National Weather Service. A search led us to the chart as posted on daycare.com&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://d2gesac5hma2c2.cloudfront.net/uploads/attachment/file/84/weatherwatch2.png&#34; alt=&#34;This chart was produced by the Iowa Department of Public Health, Healthy Child Care Iowa through federal grant (MCJ19T029 &amp;amp; MCJ19KCC7) funds from the US Department of Health &amp;amp; Human Services, Health Resources &amp;amp; Services Administration, Maternal &amp;amp; Child Health Bureau. Wind-Chill and Heat Index information is from the National Weather Service. A search led us to the chart as posted on daycare.com&#34; style=&#34;width: 100%; max-width: 800px;&#34;/ data-glightbox=&#34;description: This chart was produced by the Iowa Department of Public Health, Healthy Child Care Iowa through federal grant (MCJ19T029 &amp;amp; MCJ19KCC7) funds from the US Department of Health &amp;amp; Human Services, Health Resources &amp;amp; Services Administration, Maternal &amp;amp; Child Health Bureau. Wind-Chill and Heat Index information is from the National Weather Service. A search led us to the chart as posted on daycare.com&#34;&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;(aqi) which we have become all too familiar with over the past year with all&#xA;the forest fires out Western US&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;def&lt;/span&gt; &lt;span class=&#34;nf&#34;&gt;determine_play_condition&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;weather&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;aqi&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;0&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;):&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;n&#34;&gt;play_condition&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;PlayCondition&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;()&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;n&#34;&gt;feels_like_temperature&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;weather&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;main&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;][&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;feels_like&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;n&#34;&gt;visibility&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;weather&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;visibility&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;n&#34;&gt;play_condition&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;message&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;+=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;hours_till_sunset&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;weather&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;k&#34;&gt;if&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;after&amp;#34;&lt;/span&gt; &lt;span class=&#34;ow&#34;&gt;in&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;play_condition&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;message&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;n&#34;&gt;play_condition&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;color&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;bg-red-500&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;k&#34;&gt;if&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;visibility&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;&amp;lt;&lt;/span&gt; &lt;span class=&#34;mi&#34;&gt;1000&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;n&#34;&gt;play_condition&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;message&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;+=&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;It&amp;#39;s too foggy. Find better activities inside!&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;n&#34;&gt;play_condition&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;color&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;bg-red-500&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;k&#34;&gt;if&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;aqi&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;&amp;gt;&lt;/span&gt; &lt;span class=&#34;mi&#34;&gt;150&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;n&#34;&gt;play_condition&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;message&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;+=&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;It&amp;#39;s too polluted. Find better activities inside!&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;n&#34;&gt;play_condition&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;color&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;bg-red-500&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;k&#34;&gt;elif&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;aqi&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;&amp;gt;&lt;/span&gt; &lt;span class=&#34;mi&#34;&gt;100&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;n&#34;&gt;play_condition&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;message&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;+=&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;limit your time outside due to the poor air quality&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;n&#34;&gt;play_condition&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;color&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;bg-yellow-500&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;k&#34;&gt;elif&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;aqi&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;&amp;gt;&lt;/span&gt; &lt;span class=&#34;mi&#34;&gt;50&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;n&#34;&gt;play_condition&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;message&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;+=&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;Check the air quality outside at your discression.&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;n&#34;&gt;play_condition&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;color&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;bg-yellow-500&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;k&#34;&gt;else&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;n&#34;&gt;play_condition&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;message&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;+=&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;k&#34;&gt;if&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;feels_like_temperature&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;&amp;lt;&lt;/span&gt; &lt;span class=&#34;mi&#34;&gt;10&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;n&#34;&gt;play_condition&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;message&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;+=&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;It&amp;#39;s too cold. Stay indoors and keep warm!&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;n&#34;&gt;play_condition&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;color&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;bg-red-500&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;k&#34;&gt;elif&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;feels_like_temperature&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;&amp;lt;&lt;/span&gt; &lt;span class=&#34;mi&#34;&gt;30&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;n&#34;&gt;play_condition&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;message&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;+=&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;You can play outside, but limit your time!&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;n&#34;&gt;play_condition&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;color&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;bg-yellow-500&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;k&#34;&gt;elif&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;feels_like_temperature&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;&amp;lt;&lt;/span&gt; &lt;span class=&#34;mi&#34;&gt;40&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;n&#34;&gt;play_condition&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;message&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;+=&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;            &lt;span class=&#34;s2&#34;&gt;&amp;#34;Coats and winter gear required for outdoor play. Stay cozy!&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;k&#34;&gt;elif&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;feels_like_temperature&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;&amp;lt;&lt;/span&gt; &lt;span class=&#34;mi&#34;&gt;50&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;n&#34;&gt;play_condition&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;message&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;+=&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;Grab a warm jacket and enjoy your time outside!&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;k&#34;&gt;elif&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;feels_like_temperature&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;&amp;lt;&lt;/span&gt; &lt;span class=&#34;mi&#34;&gt;60&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;n&#34;&gt;play_condition&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;message&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;+=&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;Grab some long sleeves and enjoy your time outside!&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;k&#34;&gt;elif&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;feels_like_temperature&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;&amp;gt;&lt;/span&gt; &lt;span class=&#34;mi&#34;&gt;90&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;n&#34;&gt;play_condition&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;message&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;+=&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;            &lt;span class=&#34;s2&#34;&gt;&amp;#34;You can play outside, but limit your time in this heat!&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;n&#34;&gt;play_condition&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;color&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;bg-yellow-500&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;k&#34;&gt;elif&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;feels_like_temperature&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;&amp;gt;&lt;/span&gt; &lt;span class=&#34;mi&#34;&gt;109&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;n&#34;&gt;play_condition&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;message&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;+=&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;            &lt;span class=&#34;s2&#34;&gt;&amp;#34;It&amp;#39;s too hot for outdoor play. Find cooler activities indoors!&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;n&#34;&gt;play_condition&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;color&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;bg-red-500&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;k&#34;&gt;else&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;n&#34;&gt;play_condition&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;message&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;+=&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;Enjoy your time outside!&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;k&#34;&gt;return&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;play_condition&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;h2 id=&#34;pulling-the-data-together&#34;&gt;Pulling the data together &lt;a href=&#34;#pulling-the-data-together&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;Since I will be needing all of the data together upon every request I put&#xA;together one &lt;code&gt;get_data&lt;/code&gt; function to return a dict of all of the data.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;forecast&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt; I pulled the forecast endpoint from openweathermap as well, it looks like a&#xA;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt;stripped down version of the regular weather endpoint, but every few hours&#xA;over the course of the next 5 days.&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;async&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;def&lt;/span&gt; &lt;span class=&#34;nf&#34;&gt;get_data&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;request&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;Request&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;):&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;n&#34;&gt;user_ip&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;request&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;headers&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;get&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;CF-Connecting-IP&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;n&#34;&gt;lat_long&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;await&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;get_lat_long&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;user_ip&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;n&#34;&gt;weather&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;await&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;get_weather&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;lat_long&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;n&#34;&gt;forecast&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;await&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;get_forecast&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;lat_long&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;n&#34;&gt;air_quality&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;await&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;get_air_quality&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;lat_long&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;n&#34;&gt;weather&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;play_condition&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;determine_play_condition&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;n&#34;&gt;weather&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;n&#34;&gt;air_quality&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;list&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;][&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;0&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;][&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;main&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;][&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;aqi&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;],&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;n&#34;&gt;forecast&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;play_condition&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;determine_play_condition&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;x&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;),&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;**&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;x&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;}&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;k&#34;&gt;for&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;x&lt;/span&gt; &lt;span class=&#34;ow&#34;&gt;in&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;forecast&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;k&#34;&gt;if&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;datetime&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;fromtimestamp&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;x&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;dt&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;])&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;hour&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;&amp;gt;=&lt;/span&gt; &lt;span class=&#34;mi&#34;&gt;6&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;ow&#34;&gt;and&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;datetime&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;fromtimestamp&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;x&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;dt&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;])&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;hour&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;&amp;lt;=&lt;/span&gt; &lt;span class=&#34;mi&#34;&gt;21&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;p&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;k&#34;&gt;return&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;s2&#34;&gt;&amp;#34;request.client&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;request&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;client&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;s2&#34;&gt;&amp;#34;request.client.host&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;request&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;client&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;host&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;s2&#34;&gt;&amp;#34;user_ip&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;user_ip&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;s2&#34;&gt;&amp;#34;lat_long&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;lat_long&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;s2&#34;&gt;&amp;#34;weather&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;weather&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;s2&#34;&gt;&amp;#34;forecast&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;forecast&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;s2&#34;&gt;&amp;#34;air_quality&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;air_quality&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;s2&#34;&gt;&amp;#34;sunset&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;weather&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;sys&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;][&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;sunset&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;],&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;p&#34;&gt;}&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;h2 id=&#34;fastapi&#34;&gt;FastAPI &lt;a href=&#34;#fastapi&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;Fastapi here is a great framework, it uses pydantic to validate the data&#xA;returned from the api, has a great dependency management system.&lt;/p&gt;&#xA;&lt;p&gt;I am going to use none of that, all I need is one TemplateResponse using jinja.&#xA;For good measure, I’ll toss in a &lt;code&gt;/metadata&lt;/code&gt; route that returns the data.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;kn&#34;&gt;from&lt;/span&gt; &lt;span class=&#34;nn&#34;&gt;fastapi&lt;/span&gt; &lt;span class=&#34;kn&#34;&gt;import&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;FastAPI&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;app&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;FastAPI&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;()&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nd&#34;&gt;@app.get&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;/&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nd&#34;&gt;@no_cache&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;async&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;def&lt;/span&gt; &lt;span class=&#34;nf&#34;&gt;get_home&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;request&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;Request&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;):&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;n&#34;&gt;data&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;await&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;get_data&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;request&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;k&#34;&gt;return&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;config&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;templates&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;TemplateResponse&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;index.html&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;request&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;request&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;**&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;data&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;})&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nd&#34;&gt;@app.get&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;/metadata&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;async&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;def&lt;/span&gt; &lt;span class=&#34;nf&#34;&gt;root&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;n&#34;&gt;request&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;Request&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;):&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;k&#34;&gt;return&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;await&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;get_data&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;request&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;h2 id=&#34;no-cache-header&#34;&gt;No Cache Header &lt;a href=&#34;#no-cache-header&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;I had some issues with cloudflare caching me and not letting me hit the api&#xA;everytime.  I’ve ran into this several times in the past, so I went to the&#xA;cloudflare dashboard, manually busted the cache for the home route and popped a&#xA;&lt;code&gt;no_cache&lt;/code&gt; decorator on the &lt;code&gt;get_home&lt;/code&gt; route.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;def&lt;/span&gt; &lt;span class=&#34;nf&#34;&gt;no_cache&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;func&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;):&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;n&#34;&gt;not_cached_routes&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;append&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;sa&#34;&gt;f&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;func&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;vm&#34;&gt;__module__&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;}&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;func&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;vm&#34;&gt;__name__&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;}&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;nd&#34;&gt;@wraps&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;func&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;k&#34;&gt;async&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;def&lt;/span&gt; &lt;span class=&#34;nf&#34;&gt;wrapper&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;*&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;args&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;request&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;Request&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;**&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;kwargs&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;):&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;c1&#34;&gt;# my_header will be now available in decorator&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;k&#34;&gt;if&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;request&amp;#34;&lt;/span&gt; &lt;span class=&#34;ow&#34;&gt;in&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;signature&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;func&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;parameters&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;            &lt;span class=&#34;n&#34;&gt;kwargs&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;request&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;request&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;k&#34;&gt;if&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;inspect&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;iscoroutinefunction&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;func&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;):&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;            &lt;span class=&#34;n&#34;&gt;response&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;await&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;func&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;*&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;args&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;**&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;kwargs&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;k&#34;&gt;else&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;            &lt;span class=&#34;n&#34;&gt;response&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;func&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;*&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;args&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;**&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;kwargs&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;n&#34;&gt;response&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;headers&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;Cache-Control&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;no-cache, no-store, must-revalidate&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;n&#34;&gt;response&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;headers&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;Pragma&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;no-cache&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;n&#34;&gt;response&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;headers&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;Expires&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;0&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;k&#34;&gt;return&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;response&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;k&#34;&gt;return&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;wrapper&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nd&#34;&gt;@app.get&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;/&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nd&#34;&gt;@no_cache&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;async&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;def&lt;/span&gt; &lt;span class=&#34;nf&#34;&gt;get_home&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;request&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;Request&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;):&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;n&#34;&gt;data&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;await&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;get_data&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;request&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;k&#34;&gt;return&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;config&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;templates&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;TemplateResponse&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;index.html&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;request&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;request&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;**&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;data&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;})&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;This solved my caching issues.&lt;/p&gt;&#xA;&lt;h2 id=&#34;templates&#34;&gt;Templates &lt;a href=&#34;#templates&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;I used jinja for templating its built right into FastAPI.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;kn&#34;&gt;from&lt;/span&gt; &lt;span class=&#34;nn&#34;&gt;fastapi.templating&lt;/span&gt; &lt;span class=&#34;kn&#34;&gt;import&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;Jinja2Templates&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;templates&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;Jinja2Templates&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;directory&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;templates&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;This will get you by for quite awhile, and I probably could deal with templates&#xA;working just like this for a one day build, but I have some nice feautures that&#xA;I like from other projects, and at least one specific to just this project.&#xA;Once they are in my config object, I use them like so.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt; The `request` parameter is a requirement for all templates.&#xA;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;/div&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nd&#34;&gt;@app.get&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;/&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nd&#34;&gt;@no_cache&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;async&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;def&lt;/span&gt; &lt;span class=&#34;nf&#34;&gt;get_home&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;request&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;Request&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;):&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;n&#34;&gt;data&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;await&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;get_data&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;request&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;k&#34;&gt;return&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;config&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;templates&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;TemplateResponse&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;index.html&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;request&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;request&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;**&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;data&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;})&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;h3 id=&#34;globals&#34;&gt;Globals &lt;a href=&#34;#globals&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h3&gt;&#xA;&lt;p&gt;I need a nice way to convert the openweathermap timestamps to human readable values.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;kn&#34;&gt;from&lt;/span&gt; &lt;span class=&#34;nn&#34;&gt;datetime&lt;/span&gt; &lt;span class=&#34;kn&#34;&gt;import&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;datetime&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;templates&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;env&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;globals&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;datetime&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;datetime&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Then in jinja I can format the &lt;code&gt;weather.dt&lt;/code&gt; variable like so.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;{{&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;datetime&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;fromtimestamp&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;weather&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;dt&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;strftime&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;format&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;s1&#34;&gt;&amp;#39;%A&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;}}&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;h3 id=&#34;putting-it-together&#34;&gt;Putting it together &lt;a href=&#34;#putting-it-together&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h3&gt;&#xA;&lt;p&gt;I put a get_templates function in my config, and the config object is passed&#xA;the results as config.  Again I copy pasted a function &lt;code&gt;https_url_for&lt;/code&gt; from&#xA;my other project so that I can use &lt;code&gt;url_for&lt;/code&gt; in my templates and it work on&#xA;both localhost and production.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;kn&#34;&gt;import&lt;/span&gt; &lt;span class=&#34;nn&#34;&gt;os&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;kn&#34;&gt;from&lt;/span&gt; &lt;span class=&#34;nn&#34;&gt;datetime&lt;/span&gt; &lt;span class=&#34;kn&#34;&gt;import&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;datetime&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;kn&#34;&gt;from&lt;/span&gt; &lt;span class=&#34;nn&#34;&gt;datetime&lt;/span&gt; &lt;span class=&#34;kn&#34;&gt;import&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;timezone&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;kn&#34;&gt;from&lt;/span&gt; &lt;span class=&#34;nn&#34;&gt;fastapi.templating&lt;/span&gt; &lt;span class=&#34;kn&#34;&gt;import&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;Jinja2Templates&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;kn&#34;&gt;from&lt;/span&gt; &lt;span class=&#34;nn&#34;&gt;rich.console&lt;/span&gt; &lt;span class=&#34;kn&#34;&gt;import&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;Console&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;console&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;Console&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;()&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nd&#34;&gt;@pass_context&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;def&lt;/span&gt; &lt;span class=&#34;nf&#34;&gt;https_url_for&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;context&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;nb&#34;&gt;dict&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;name&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;nb&#34;&gt;str&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;**&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;path_params&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;Any&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;-&amp;gt;&lt;/span&gt; &lt;span class=&#34;nb&#34;&gt;str&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;n&#34;&gt;request&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;context&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;request&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;n&#34;&gt;http_url&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;request&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;url_for&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;name&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;**&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;path_params&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;k&#34;&gt;return&lt;/span&gt; &lt;span class=&#34;nb&#34;&gt;str&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;http_url&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;replace&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;http&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;https&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;mi&#34;&gt;1&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;def&lt;/span&gt; &lt;span class=&#34;nf&#34;&gt;get_templates&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;config&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;BaseSettings&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;-&amp;gt;&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;Jinja2Templates&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;n&#34;&gt;templates&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;Jinja2Templates&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;directory&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;templates&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;n&#34;&gt;templates&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;env&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;filters&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;quote_plus&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;lambda&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;u&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;quote_plus&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;str&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;u&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;))&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;n&#34;&gt;templates&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;env&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;filters&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;timestamp&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;lambda&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;u&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;datetime&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;fromtimestamp&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;n&#34;&gt;u&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;tz&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;timezone&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;utc&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;strftime&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;%B &lt;/span&gt;&lt;span class=&#34;si&#34;&gt;%d&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;, %Y&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;n&#34;&gt;templates&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;env&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;globals&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;https_url_for&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;https_url_for&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;n&#34;&gt;templates&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;env&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;globals&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;config&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;config&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;n&#34;&gt;templates&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;env&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;globals&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;datetime&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;datetime&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;n&#34;&gt;templates&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;env&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;globals&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;len&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;nb&#34;&gt;len&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;n&#34;&gt;templates&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;env&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;globals&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;int&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;nb&#34;&gt;int&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;n&#34;&gt;console&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;print&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;sa&#34;&gt;f&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;Using environment: &lt;/span&gt;&lt;span class=&#34;si&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;os&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;environ&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;get&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;ENV&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;}&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;k&#34;&gt;if&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;os&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;environ&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;get&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;ENV&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt; &lt;span class=&#34;ow&#34;&gt;in&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;dev&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;qa&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;prod&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]:&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;n&#34;&gt;templates&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;env&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;globals&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;url_for&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;https_url_for&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;n&#34;&gt;console&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;print&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;Using HTTPS&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;k&#34;&gt;else&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;n&#34;&gt;console&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;print&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;Using HTTP&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;k&#34;&gt;return&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;templates&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;h2 id=&#34;styles&#34;&gt;Styles &lt;a href=&#34;#styles&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;I’ve been all in on tailwind lately.  I was a long holdout. I used Sass back in&#xA;2016/2017 when I was first getting into webdev, then went many years just&#xA;straight vanilla.  Tailwind just has some really well thought out color and&#xA;rythm that makes it easy.  I have also really been appreciating the locality of&#xA;behavior part of it.  I can make components in jinja with everything they need.&lt;/p&gt;&#xA;&lt;p&gt;I set up my &lt;code&gt;tailwind.config.js&lt;/code&gt; like so.  It includes the typography plugin&#xA;and some extra box shadows that are centered.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;cm&#34;&gt;/** @type {import(&amp;#39;tailwindcss&amp;#39;).Config} */&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nx&#34;&gt;module&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;nx&#34;&gt;exports&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  &lt;span class=&#34;nx&#34;&gt;content&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;templates/**/*.html&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;],&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  &lt;span class=&#34;nx&#34;&gt;plugins&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;nx&#34;&gt;require&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;@tailwindcss/typography&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)],&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  &lt;span class=&#34;nx&#34;&gt;theme&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;nx&#34;&gt;extend&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;      &lt;span class=&#34;nx&#34;&gt;boxShadow&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;nx&#34;&gt;xlc&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;0 0 60px 15px rgba(0, 0, 0, 0.3)&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;nx&#34;&gt;lgc&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;0 0 20px 0px rgba(0, 0, 0, 0.3)&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;      &lt;span class=&#34;p&#34;&gt;},&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;p&#34;&gt;},&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  &lt;span class=&#34;p&#34;&gt;},&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;};&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;For my &lt;code&gt;tailwind/app.css&lt;/code&gt; I set the background color of the page dark, text&#xA;white, and make the scrollbar not default.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;@&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;tailwind&lt;/span&gt; &lt;span class=&#34;nt&#34;&gt;base&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;@&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;tailwind&lt;/span&gt; &lt;span class=&#34;nt&#34;&gt;components&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;@&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;tailwind&lt;/span&gt; &lt;span class=&#34;nt&#34;&gt;utilities&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nt&#34;&gt;html&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  &lt;span class=&#34;k&#34;&gt;scroll-behavior&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;kc&#34;&gt;smooth&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  &lt;span class=&#34;err&#34;&gt;@apply&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;bg-zinc-800&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;text-white&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;autofill&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;bg-yellow-500&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;}&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;::&lt;/span&gt;&lt;span class=&#34;nd&#34;&gt;-webkit-scrollbar&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  &lt;span class=&#34;err&#34;&gt;@apply&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;h-4&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;w-4&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;}&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;::&lt;/span&gt;&lt;span class=&#34;nd&#34;&gt;-webkit-scrollbar-track&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  &lt;span class=&#34;err&#34;&gt;@apply&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;rounded-full&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;bg-zinc-900&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;}&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nt&#34;&gt;body&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;::&lt;/span&gt;&lt;span class=&#34;nd&#34;&gt;-webkit-scrollbar-track&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  &lt;span class=&#34;err&#34;&gt;@apply&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;rounded-full&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;bg-pink-600&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;}&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;::&lt;/span&gt;&lt;span class=&#34;nd&#34;&gt;-webkit-scrollbar-thumb&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  &lt;span class=&#34;err&#34;&gt;@apply&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;rounded-full&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;bg-zinc-600&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;hover&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;bg-zinc-500&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;}&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nt&#34;&gt;body&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;::&lt;/span&gt;&lt;span class=&#34;nd&#34;&gt;-webkit-scrollbar-thumb&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  &lt;span class=&#34;err&#34;&gt;@apply&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;rounded-full&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;bg-cyan-500&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;hover&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;bg-cyan-400&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;}&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;h3 id=&#34;compiling-tailwind&#34;&gt;Compiling tailwind &lt;a href=&#34;#compiling-tailwind&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h3&gt;&#xA;&lt;p&gt;I run tailwind using npx after first installing the typography plugin.  This&#xA;will use my &lt;code&gt;tailwind.config.js&lt;/code&gt; file, and the &lt;code&gt;tailwind/app.css&lt;/code&gt; file as&#xA;input, and output to &lt;code&gt;static/app.css&lt;/code&gt;.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt; --watch will watch for changes, and automatically recompile as you make changes to any templates.&#xA;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;/div&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# install the typography plugin&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;npm i @tailwindcss/typography&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# compile the css&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;npx tailwindcss --input tailwind/app.css --output static/app.css --watch&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;h2 id=&#34;deployment&#34;&gt;Deployment &lt;a href=&#34;#deployment&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;h2 id=&#34;docker&#34;&gt;Docker &lt;a href=&#34;#docker&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;h2 id=&#34;ci&#34;&gt;CI &lt;a href=&#34;#ci&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;h2 id=&#34;k8s&#34;&gt;K8s &lt;a href=&#34;#k8s&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;h2 id=&#34;text-based&#34;&gt;TEXT BASED &lt;a href=&#34;#text-based&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;a href=&#34;https://play-outside.wayl.one/&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/play-outside.wayl.one.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/play-outside.wayl.one.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;play-outside&lt;/a&gt;&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>darkmode scrollbars</title>
    <id>https://waylonwalker.com/darkmode-scrollbars/</id>
    <updated>2024-04-10T11:56:38Z</updated>
    <published>2024-04-10T11:56:38Z</published>
    <link href="https://waylonwalker.com/darkmode-scrollbars/" rel="alternate" type="text/html"></link>
    <summary type="text">If you are designing a website in dark mode the scrollbars can be finicky to match the theme. Here is a pretty sane default that looks nice without being...</summary>
    <content type="html">&lt;p&gt;If you are designing a website in dark mode the scrollbars can be finicky to&#xA;match the theme.  Here is a pretty sane default that looks nice without being&#xA;obnoxiously contrast to the rest of the site.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;p&#34;&gt;&amp;lt;&lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;style&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;&amp;gt;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;p&#34;&gt;::&lt;/span&gt;&lt;span class=&#34;nd&#34;&gt;-webkit-scrollbar&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;            &lt;span class=&#34;k&#34;&gt;height&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;mi&#34;&gt;1&lt;/span&gt;&lt;span class=&#34;kt&#34;&gt;rem&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;            &lt;span class=&#34;k&#34;&gt;width&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;mi&#34;&gt;1&lt;/span&gt;&lt;span class=&#34;kt&#34;&gt;rem&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;p&#34;&gt;}&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;p&#34;&gt;::&lt;/span&gt;&lt;span class=&#34;nd&#34;&gt;-webkit-scrollbar-track&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;            &lt;span class=&#34;k&#34;&gt;background-color&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;nb&#34;&gt;rgb&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;24&lt;/span&gt; &lt;span class=&#34;mi&#34;&gt;24&lt;/span&gt; &lt;span class=&#34;mi&#34;&gt;27&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;p&#34;&gt;}&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;nt&#34;&gt;body&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;::&lt;/span&gt;&lt;span class=&#34;nd&#34;&gt;-webkit-scrollbar-track&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;            &lt;span class=&#34;k&#34;&gt;background-color&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;nb&#34;&gt;rgb&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;39&lt;/span&gt; &lt;span class=&#34;mi&#34;&gt;39&lt;/span&gt; &lt;span class=&#34;mi&#34;&gt;42&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;p&#34;&gt;}&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;p&#34;&gt;::&lt;/span&gt;&lt;span class=&#34;nd&#34;&gt;-webkit-scrollbar-thumb&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;            &lt;span class=&#34;k&#34;&gt;background-color&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;nb&#34;&gt;rgb&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;82&lt;/span&gt; &lt;span class=&#34;mi&#34;&gt;82&lt;/span&gt; &lt;span class=&#34;mi&#34;&gt;91&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;p&#34;&gt;}&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;p&#34;&gt;::&lt;/span&gt;&lt;span class=&#34;nd&#34;&gt;-webkit-scrollbar-thumb&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;nd&#34;&gt;hover&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;            &lt;span class=&#34;k&#34;&gt;background-color&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;nb&#34;&gt;rgb&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;113&lt;/span&gt; &lt;span class=&#34;mi&#34;&gt;113&lt;/span&gt; &lt;span class=&#34;mi&#34;&gt;122&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;p&#34;&gt;}&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;nt&#34;&gt;body&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;::&lt;/span&gt;&lt;span class=&#34;nd&#34;&gt;-webkit-scrollbar-thumb&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;            &lt;span class=&#34;k&#34;&gt;background-color&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;nb&#34;&gt;rgb&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;82&lt;/span&gt; &lt;span class=&#34;mi&#34;&gt;82&lt;/span&gt; &lt;span class=&#34;mi&#34;&gt;91&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;p&#34;&gt;}&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;nt&#34;&gt;body&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;::&lt;/span&gt;&lt;span class=&#34;nd&#34;&gt;-webkit-scrollbar-thumb&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;nd&#34;&gt;hover&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;            &lt;span class=&#34;k&#34;&gt;background-color&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;nb&#34;&gt;rgb&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;113&lt;/span&gt; &lt;span class=&#34;mi&#34;&gt;113&lt;/span&gt; &lt;span class=&#34;mi&#34;&gt;122&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;p&#34;&gt;}&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;p&#34;&gt;::&lt;/span&gt;&lt;span class=&#34;nd&#34;&gt;-webkit-scrollbar-corner&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;            &lt;span class=&#34;k&#34;&gt;background-color&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;nb&#34;&gt;rgb&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;39&lt;/span&gt; &lt;span class=&#34;mi&#34;&gt;39&lt;/span&gt; &lt;span class=&#34;mi&#34;&gt;42&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;p&#34;&gt;}&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;p&#34;&gt;&amp;lt;/&lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;style&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;&amp;gt;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Want a rounded scrollbar thumb? add these styles.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;::&lt;/span&gt;&lt;span class=&#34;nd&#34;&gt;-webkit-scrollbar-thumb&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;k&#34;&gt;border-radius&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;mf&#34;&gt;0.25&lt;/span&gt;&lt;span class=&#34;kt&#34;&gt;rem&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;k&#34;&gt;border-radius&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;mi&#34;&gt;9999&lt;/span&gt;&lt;span class=&#34;kt&#34;&gt;px&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;}&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nt&#34;&gt;body&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;::&lt;/span&gt;&lt;span class=&#34;nd&#34;&gt;-webkit-scrollbar-thumb&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;k&#34;&gt;border-radius&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;mf&#34;&gt;0.25&lt;/span&gt;&lt;span class=&#34;kt&#34;&gt;rem&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;k&#34;&gt;border-radius&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;mi&#34;&gt;9999&lt;/span&gt;&lt;span class=&#34;kt&#34;&gt;px&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;}&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;This makes a very nice looking default darkmode scrollbar.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 node.js - How to fix npm throwing error without sudo - Stack O...</title>
    <id>https://waylonwalker.com/thought-239/</id>
    <updated>2024-04-09T18:21:02Z</updated>
    <published>2024-04-09T18:21:02Z</published>
    <link href="https://waylonwalker.com/thought-239/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://stackoverflow.com/questions/16151018/how-to-fix-npm-throwing-error-without-sudo#answer-41395398</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://stackoverflow.com/questions/16151018/how-to-fix-npm-throwing-error-without-sudo#answer-41395398&#34; class=&#34;embed-card-link  has-avatar has-avatar-before&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/stackoverflow.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/stackoverflow.com.ico&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;External Link&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;stackoverflow.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Its sad that this is not the accepted answer.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;mkdir ~/.npm-global&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;export&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;NPM_CONFIG_PREFIX&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;~/.npm-global&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;export&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;PATH&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;$PATH&lt;/span&gt;:~/.npm-global/bin&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>Udating Cloudflare Pages using the Wrangler cli</title>
    <id>https://waylonwalker.com/updating-cloudflare-pages-using-the-wrangler-cli/</id>
    <updated>2024-04-09T17:03:51Z</updated>
    <published>2024-04-09T17:03:51Z</published>
    <link href="https://waylonwalker.com/updating-cloudflare-pages-using-the-wrangler-cli/" rel="alternate" type="text/html"></link>
    <summary type="text">Before deploying to cloudflare pages with wrangler you need a cloudflare api token. You can get one at dash.cloudflare.com/profile/api-tokens.</summary>
    <content type="html">&lt;p&gt;Before deploying to cloudflare pages with wrangler you need a cloudflare api&#xA;token.  You can get one at&#xA;&lt;a href=&#34;https://dash.cloudflare.com/profile/api-tokens&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/dash.cloudflare.com.png&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/dash.cloudflare.com.png&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;dash.cloudflare.com/profile/api-tokens&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://dropper.waylonwalker.com/api/file/7b566e55-98ff-4d96-b0bc-3c4e5b619d68.png&#34; class=&#34;glightbox-link&#34; aria-label=&#34;cloudflare-pages-api-token.png&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://dropper.waylonwalker.com/api/file/7b566e55-98ff-4d96-b0bc-3c4e5b619d68.png&#34; alt=&#34;cloudflare-pages-api-token.png&#34;/ data-glightbox=&#34;description: cloudflare-pages-api-token.png&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;h2 id=&#34;install-wrangler&#34;&gt;Install Wrangler &lt;a href=&#34;#install-wrangler&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;Next install wrangler using npm.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;npm i -g wrangler&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;h2 id=&#34;create-a-project&#34;&gt;Create a Project &lt;a href=&#34;#create-a-project&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;Before you deploy to cloudflare pages you need to create a project.  You might&#xA;already have one, or you might want to create one in the webui, but you have&#xA;the option to create it at the command line with wrangler.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;npx wrangler pages deploy markout --project-name reader-waylonwalker-com --branch markout&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;h2 id=&#34;deploy&#34;&gt;Deploy &lt;a href=&#34;#deploy&#34; class=&#34;heading-anchor&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;Now you can deploy your static application using wrangler to cloudflare pages.&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;In this example I have my application built into the markout directory, and&#xA;since the production branch is named &lt;code&gt;markout&lt;/code&gt; I need to pass that in here as&#xA;well.&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;wrangler pages deploy markout --project-name reader-waylonwalker-com --branch markout&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 google chrome - Webkit scrollbar CSS, always a white box in co...</title>
    <id>https://waylonwalker.com/thought-238/</id>
    <updated>2024-04-09T16:55:55Z</updated>
    <published>2024-04-09T16:55:55Z</published>
    <link href="https://waylonwalker.com/thought-238/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://stackoverflow.com/questions/35968553/webkit-scrollbar-css-always-a-white-box-in-corner</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external&#34;&gt;&#xA;  &lt;a href=&#34;https://stackoverflow.com/questions/35968553/webkit-scrollbar-css-always-a-white-box-in-corner&#34; class=&#34;embed-card-link  has-avatar has-avatar-before&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/stackoverflow.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/stackoverflow.com.ico&#34;&gt;&#xA;    &lt;div class=&#34;embed-card-content&#34;&gt;&#xA;      &lt;div class=&#34;embed-card-title&#34;&gt;External Link&lt;/div&gt;&#xA;      &lt;div class=&#34;embed-card-meta&#34;&gt;stackoverflow.com&lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;This is how you fix the stupid corner section of a double scroll bar being white on a dark theme site.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;::&lt;/span&gt;&lt;span class=&#34;nd&#34;&gt;-webkit-scrollbar-corner&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  &lt;span class=&#34;k&#34;&gt;background&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;nb&#34;&gt;rgba&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;0&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;0&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;0&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;0&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;}&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;The question included an example image where you can see white squares everywhere there are horizontal and vertical scroll bars.&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;&lt;a href=&#34;https://i.stack.imgur.com/P6b7f.png&#34; class=&#34;glightbox-link&#34; aria-label=&#34;the corner&#34;&gt;&lt;img class=&#34;glightbox&#34; src=&#34;https://i.stack.imgur.com/P6b7f.png&#34; alt=&#34;the corner&#34;/ data-glightbox=&#34;description: the corner&#34;&gt;&lt;/a&gt;&#xA;&lt;/figure&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>scheduling cron jobs in kubernetes</title>
    <id>https://waylonwalker.com/scheduling-cron-jobs-in-kubernetes/</id>
    <updated>2024-04-08T16:56:46Z</updated>
    <published>2024-04-08T16:56:46Z</published>
    <link href="https://waylonwalker.com/scheduling-cron-jobs-in-kubernetes/" rel="alternate" type="text/html"></link>
    <summary type="text">For my reader app I am using cronjobs to schedule my a new build and upload to cloudflare pages every hour. In this example I have built a docker image and...</summary>
    <content type="html">&lt;p&gt;For my reader app I am using cronjobs to schedule my a new build and upload to&#xA;cloudflare pages every hour.  In this example I have built a docker image&#xA;&lt;code&gt;docker.io/waylonwalker/reader-waylonwalker-com&lt;/code&gt; and pushed it to dockerhub.&#xA;It uses a &lt;code&gt;CLOUDFLARE_API_TOKEN&lt;/code&gt; secret to access cloudflare, and the&#xA;entrypoint itself does the build and upload.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nt&#34;&gt;apiVersion&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;l&#34;&gt;v1&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nt&#34;&gt;kind&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;l&#34;&gt;Namespace&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nt&#34;&gt;metadata&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;creationTimestamp&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;kc&#34;&gt;null&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;name&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;l&#34;&gt;reader&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;namespace&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;l&#34;&gt;reader&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nn&#34;&gt;---&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nt&#34;&gt;apiVersion&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;l&#34;&gt;batch/v1&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nt&#34;&gt;kind&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;l&#34;&gt;CronJob&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nt&#34;&gt;metadata&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;name&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;l&#34;&gt;reader-cronjob&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;namespace&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;l&#34;&gt;reader&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nt&#34;&gt;spec&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;schedule&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;0 * * * *&amp;#34;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;successfulJobsHistoryLimit&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;m&#34;&gt;6&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;failedJobsHistoryLimit&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;m&#34;&gt;6&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;jobTemplate&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;    &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;spec&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;      &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;template&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;        &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;spec&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;          &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;containers&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;            &lt;/span&gt;- &lt;span class=&#34;nt&#34;&gt;name&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;l&#34;&gt;reader-container&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;              &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;image&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;l&#34;&gt;docker.io/waylonwalker/reader-waylonwalker-com:latest&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;              &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;env&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;                &lt;/span&gt;- &lt;span class=&#34;nt&#34;&gt;name&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;l&#34;&gt;CLOUDFLARE_API_TOKEN&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;                  &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;valueFrom&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;                    &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;secretKeyRef&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;                      &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;name&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;l&#34;&gt;cloudflare-secret&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;                      &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;key&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;l&#34;&gt;cloudflare-secret&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;          &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;restartPolicy&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;l&#34;&gt;OnFailure&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Cache Ruins Everything Around Me - YouTube</title>
    <id>https://waylonwalker.com/thought-237/</id>
    <updated>2024-04-08T13:50:43Z</updated>
    <published>2024-04-08T13:50:43Z</published>
    <link href="https://waylonwalker.com/thought-237/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/watch?v=j8oD976nhZk</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;j8oD976nhZk&#34; title=&#34;Cache Ruins Everything Around Me&#34; playlabel=&#34;Play: Cache Ruins Everything Around Me&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;This is an interesting problem.  I want to make a solution for this on &lt;a href=&#34;/htmx/&#34; class=&#34;glossary-term&#34; title=&#34;htmx is a frontend javascript library for creating dynamic web applications.&#34;&gt;htmx&lt;/a&gt;-patterns.  I would make user specific routes with an &lt;code&gt;hx-get&lt;/code&gt; rather than serving the whole page, serve a partial with &lt;code&gt;hx-oob&lt;/code&gt;s to fill in user specific data with a no cache on the cdn level.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>💭 building a youtube tool in 24 hours to prove a point - YouTube</title>
    <id>https://waylonwalker.com/thought-236/</id>
    <updated>2024-04-08T13:35:15Z</updated>
    <published>2024-04-08T13:35:15Z</published>
    <link href="https://waylonwalker.com/thought-236/" rel="alternate" type="text/html"></link>
    <summary type="text">!https://www.youtube.com/watch?v=ws86p5iUaRs</summary>
    <content type="html">&lt;div class=&#34;embed-card embed-card-external embed-card-provider-youtube&#34;&gt;&#xA;  &lt;div class=&#34;embed-card-rich&#34;&gt;&#xA;&lt;lite-youtube videoid=&#34;ws86p5iUaRs&#34; title=&#34;building a youtube tool in 24 hours to prove a point&#34; playlabel=&#34;Play: building a youtube tool in 24 hours to prove a point&#34;&gt;&lt;/lite-youtube&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;So cool to see ROX build this over the course of a day.&lt;/p&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This post is a &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34; data-date=&#34;2024-04-01&#34; data-preview=&#34;These are generally my thoughts on a web page or some sort of url, except a rare few don&amp;#39;t have a link. These are dual published off of my...&#34;&gt;thought&lt;/a&gt;. It’s a short note that I make&#xA;about someone else’s content online #thoughts&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ DigitalHarbor7 DigitalHarbor</title>
    <id>https://waylonwalker.com/digitalharbor7-digitalharbor/</id>
    <updated>2024-04-07T19:23:52Z</updated>
    <published>2024-04-07T19:23:52Z</published>
    <link href="https://waylonwalker.com/digitalharbor7-digitalharbor/" rel="alternate" type="text/html"></link>
    <summary type="text">Looking for inspiration? DigitalHarbor by DigitalHarbor7.</summary>
    <content type="html">&lt;p&gt;Looking for inspiration? &lt;a href=&#34;https://github.com/DigitalHarbor7/DigitalHarbor&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;DigitalHarbor&lt;/a&gt; by &lt;a href=&#34;https://github.com/DigitalHarbor7&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;DigitalHarbor7&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;No description available.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ blueswen fastapi-observability</title>
    <id>https://waylonwalker.com/blueswen-fastapi-observability/</id>
    <updated>2024-04-07T19:05:14Z</updated>
    <published>2024-04-07T19:05:14Z</published>
    <link href="https://waylonwalker.com/blueswen-fastapi-observability/" rel="alternate" type="text/html"></link>
    <summary type="text">I&#39;m really excited about fastapi-observability, an amazing project by blueswen. It&#39;s worth exploring!</summary>
    <content type="html">&lt;p&gt;I’m really excited about &lt;a href=&#34;https://github.com/blueswen/fastapi-observability&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;fastapi-observability&lt;/a&gt;, an amazing project by &lt;a href=&#34;https://github.com/blueswen&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;blueswen&lt;/a&gt;. It’s worth exploring!&lt;/p&gt;&#xA;&lt;p&gt;Observe &lt;a href=&#34;/fastapi/&#34; class=&#34;glossary-term&#34; title=&#34;FastAPI is a modern and efficient web framework for Python, built on top of the Starlette web framework, and pydantic for data validation and serialization.&#34;&gt;FastAPI&lt;/a&gt; app with three pillars of observability: Traces (Tempo), Metrics (Prometheus), Logs (Loki) on Grafana through OpenTelemetry and OpenMetrics.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>jinja macros</title>
    <id>https://waylonwalker.com/jinja-macros/</id>
    <updated>2024-04-07T14:54:08Z</updated>
    <published>2024-04-07T14:54:08Z</published>
    <link href="https://waylonwalker.com/jinja-macros/" rel="alternate" type="text/html"></link>
    <summary type="text">I am working on a page for htmx-patterns and I ran into a situation with lots of duplication. Especially when i am using tailwind I run into situations where...</summary>
    <content type="html">&lt;p&gt;I am working on a page for&#xA;&lt;a href=&#34;https://htmx-patterns.waylonwalker.com&#34;&gt;htmx-patterns&lt;/a&gt; and I ran into a&#xA;situation with lots of duplication.  Especially when i am using tailwind I run&#xA;into situations where the duplication can get tedious to maintiain.  The&#xA;solution I found is macros.&lt;/p&gt;&#xA;&lt;p&gt;Now I can use the same code for all of my links, and call the macro to use it.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;{% macro link(id, text, boosted=false) -%}&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;&amp;lt;&lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;a&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;na&#34;&gt;class&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;&amp;#34;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;    {% if id is none %}&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;      pointer-events-none bg-terminal-950 text-terminal-900 ring-terminal-900&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;    {% else %}&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;      bg-terminal-950 hover:bg-terminal-900 hover:text-terminal-400 text-terminal-500 shadow-lg shadow-terminal-300/20 hover:shadow-terminal-300/30 ring-terminal-300&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;    {% endif %}&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;      cursor-pointer block text-center font-bold py-2 px-4 rounded w-full ring-1&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;    &amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;err&#34;&gt;{%&lt;/span&gt; &lt;span class=&#34;na&#34;&gt;if&lt;/span&gt; &lt;span class=&#34;na&#34;&gt;id&lt;/span&gt; &lt;span class=&#34;na&#34;&gt;is&lt;/span&gt; &lt;span class=&#34;na&#34;&gt;not&lt;/span&gt; &lt;span class=&#34;na&#34;&gt;none&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;%}&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;na&#34;&gt;href&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;&amp;#34;{{ url_for(&amp;#39;boosted&amp;#39;, id=id) }}&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;err&#34;&gt;{%&lt;/span&gt; &lt;span class=&#34;na&#34;&gt;endif&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;%}&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;err&#34;&gt;{%&lt;/span&gt; &lt;span class=&#34;na&#34;&gt;if&lt;/span&gt; &lt;span class=&#34;na&#34;&gt;boosted&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;%}&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;na&#34;&gt;hx-boost&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;&amp;#34;true&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;err&#34;&gt;{%&lt;/span&gt; &lt;span class=&#34;na&#34;&gt;endif&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;%}&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;&amp;gt;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    {{ text }}&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;&amp;lt;/&lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;a&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;&amp;gt;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;{%- endmacro %}&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;&amp;lt;&lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;h2&lt;/span&gt; &lt;span class=&#34;na&#34;&gt;class&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;&amp;#39;text-3xl font-light mt-0 max-w-xl text-center prose-xl mt-8 text-terminal-500&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;&amp;gt;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    Boosted Links&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;&amp;lt;/&lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;h2&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;&amp;gt;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;&amp;lt;&lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;div&lt;/span&gt; &lt;span class=&#34;na&#34;&gt;class&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;&amp;#39;flex flex-row gap-4&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;&amp;gt;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    {{ link(prev_id, &amp;#39;Previous&amp;#39;, boosted=True) }}&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    {{ link(next_id, &amp;#39;Next&amp;#39;, boosted=True) }}&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;&amp;lt;/&lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;div&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;&amp;gt;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;&amp;lt;&lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;h2&lt;/span&gt; &lt;span class=&#34;na&#34;&gt;class&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;&amp;#39;text-3xl font-light mt-0 max-w-xl text-center prose-xl mt-8 text-terminal-500&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;&amp;gt;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    Normal Links&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;&amp;lt;/&lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;h2&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;&amp;gt;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;&amp;lt;&lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;div&lt;/span&gt; &lt;span class=&#34;na&#34;&gt;class&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;&amp;#39;flex flex-row gap-4&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;&amp;gt;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    {{ link(prev_id, &amp;#39;Previous&amp;#39;, boosted=False) }}&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    {{ link(next_id, &amp;#39;Next&amp;#39;, boosted=False) }}&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;&amp;lt;/&lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;div&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;&amp;gt;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>⭐ Avaiga taipy</title>
    <id>https://waylonwalker.com/avaiga-taipy/</id>
    <updated>2024-04-07T00:34:46Z</updated>
    <published>2024-04-07T00:34:46Z</published>
    <link href="https://waylonwalker.com/avaiga-taipy/" rel="alternate" type="text/html"></link>
    <summary type="text">If you&#39;re into interesting projects, don&#39;t miss out on taipy, created by Avaiga.</summary>
    <content type="html">&lt;p&gt;If you’re into interesting projects, don’t miss out on &lt;a href=&#34;https://github.com/Avaiga/taipy&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;taipy&lt;/a&gt;, created by &lt;a href=&#34;https://github.com/Avaiga&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;Avaiga&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Turns Data and AI algorithms into production-ready web applications in no time.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>jinja loop variable and htmx</title>
    <id>https://waylonwalker.com/jinja-loop-variable-and-htmx/</id>
    <updated>2024-04-06T20:47:13Z</updated>
    <published>2024-04-06T20:47:13Z</published>
    <link href="https://waylonwalker.com/jinja-loop-variable-and-htmx/" rel="alternate" type="text/html"></link>
    <summary type="text">jinja has a loop variable that is very handy to use with htmx. Whether you want to implement a click to load more or an infinite scroll this loop variable is...</summary>
    <content type="html">&lt;p&gt;jinja has a loop variable that is very handy to use with &lt;a href=&#34;/htmx/&#34; class=&#34;glossary-term&#34; title=&#34;htmx is a frontend javascript library for creating dynamic web applications.&#34;&gt;htmx&lt;/a&gt;.  Whether you&#xA;want to implement a click to load more or an infinite scroll this loop variable&#xA;is very handy.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;{% for person in persons %}&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;&amp;lt;&lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;li&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;err&#34;&gt;{%&lt;/span&gt; &lt;span class=&#34;na&#34;&gt;if&lt;/span&gt; &lt;span class=&#34;na&#34;&gt;loop&lt;/span&gt;&lt;span class=&#34;err&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;na&#34;&gt;last&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;%}&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;na&#34;&gt;hx-get&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;&amp;#34;{{ url_for(&amp;#39;infinite&amp;#39;, page=next_page) }}&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;na&#34;&gt;hx-trigger&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;&amp;#34;intersect once&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;na&#34;&gt;hx-target&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;&amp;#34;#persons&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;na&#34;&gt;hx-swap&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;&amp;#39;beforeend&amp;#39;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;na&#34;&gt;hx-indicator&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;&amp;#34;#persons-loading&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;err&#34;&gt;{%&lt;/span&gt; &lt;span class=&#34;na&#34;&gt;endif&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;%}&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;err&#34;&gt;{{&lt;/span&gt; &lt;span class=&#34;na&#34;&gt;person&lt;/span&gt;&lt;span class=&#34;err&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;na&#34;&gt;name&lt;/span&gt;&lt;span class=&#34;err&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;na&#34;&gt;upper&lt;/span&gt;&lt;span class=&#34;err&#34;&gt;()&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;}}&lt;/span&gt; &lt;span class=&#34;na&#34;&gt;-&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;err&#34;&gt;{{&lt;/span&gt; &lt;span class=&#34;na&#34;&gt;person&lt;/span&gt;&lt;span class=&#34;err&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;na&#34;&gt;phone_number&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;}}&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;err&#34;&gt;&amp;lt;/&lt;/span&gt;&lt;span class=&#34;na&#34;&gt;li&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;&amp;gt;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;{% endfor %}&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Now for every chunk of contacts that we load we will trigger the infinite&#xA;scroll by loading more once the last one has intersected the screen.&lt;/p&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>fastapi jinja url_for with query params</title>
    <id>https://waylonwalker.com/fastapi-jinja-url_for-with-query-params/</id>
    <updated>2024-04-05T20:43:32Z</updated>
    <published>2024-04-05T20:43:32Z</published>
    <link href="https://waylonwalker.com/fastapi-jinja-url_for-with-query-params/" rel="alternate" type="text/html"></link>
    <summary type="text">Out of the box Starlette does not support url_for with query params it throws the following error.</summary>
    <content type="html">&lt;p&gt;Out of the box &lt;a href=&#34;/starlette/&#34; class=&#34;glossary-term&#34; title=&#34;Starlette is a low level web framework for modern (as of 2025) async python development most famously used by &lt;a href=&#34;/fastapi/&#34; class=&#34;glossary-term&#34; title=&#34;FastAPI is a modern and efficient web framework for Python, built on top of the Starlette web framework, and pydantic for data validation and serialization.&#34;&gt;FastAPI&lt;/a&gt;.&#34;&gt;Starlette&lt;/a&gt; does not support url_for with query params.  When&#xA;trying to use url_for with query params it throws the following error.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;starlette&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;routing&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;NoMatchFound&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;No&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;route&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;exists&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;for&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;name&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;infinite&amp;#34;&lt;/span&gt; &lt;span class=&#34;ow&#34;&gt;and&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;params&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;page&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;In my searching for this I found &lt;a href=&#34;https://github.com/encode/starlette/issues/560&#34; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/github.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/github.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#34;&gt;starlette issue #560&lt;/a&gt; quite helpful, but not complete, as it did not work for me.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;kn&#34;&gt;import&lt;/span&gt; &lt;span class=&#34;nn&#34;&gt;jinja2&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;if&lt;/span&gt; &lt;span class=&#34;nb&#34;&gt;hasattr&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;jinja2&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;pass_context&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;):&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;n&#34;&gt;pass_context&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;jinja2&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;pass_context&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;else&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;n&#34;&gt;pass_context&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;jinja2&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;contextfunction&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nd&#34;&gt;@pass_context&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;def&lt;/span&gt; &lt;span class=&#34;nf&#34;&gt;url_for_query&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;context&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;nb&#34;&gt;dict&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;name&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;nb&#34;&gt;str&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;**&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;params&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;nb&#34;&gt;dict&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;-&amp;gt;&lt;/span&gt; &lt;span class=&#34;nb&#34;&gt;str&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;n&#34;&gt;request&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;context&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;request&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;n&#34;&gt;url&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;nb&#34;&gt;str&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;request&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;url_for&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;name&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;))&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;k&#34;&gt;if&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;params&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;==&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{}:&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;k&#34;&gt;return&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;url&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;kn&#34;&gt;from&lt;/span&gt; &lt;span class=&#34;nn&#34;&gt;urllib.parse&lt;/span&gt; &lt;span class=&#34;kn&#34;&gt;import&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;parse_qs&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;urlencode&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;urlparse&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;urlunparse&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;c1&#34;&gt;# Parse the URL&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;n&#34;&gt;parsed_url&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;urlparse&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;url&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;c1&#34;&gt;# Parse the query parameters&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;n&#34;&gt;query_params&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;parse_qs&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;parsed_url&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;query&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;c1&#34;&gt;# Update the query parameters with the new ones&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;n&#34;&gt;query_params&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;update&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;params&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;c1&#34;&gt;# Rebuild the query string&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;n&#34;&gt;updated_query_string&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;urlencode&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;query_params&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;doseq&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;kc&#34;&gt;True&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;c1&#34;&gt;# Rebuild the URL with the updated query string&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;n&#34;&gt;updated_url&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;urlunparse&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;            &lt;span class=&#34;n&#34;&gt;parsed_url&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;scheme&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;            &lt;span class=&#34;n&#34;&gt;parsed_url&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;netloc&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;            &lt;span class=&#34;n&#34;&gt;parsed_url&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;path&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;            &lt;span class=&#34;n&#34;&gt;parsed_url&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;params&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;            &lt;span class=&#34;n&#34;&gt;updated_query_string&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;            &lt;span class=&#34;n&#34;&gt;parsed_url&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;fragment&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;k&#34;&gt;if&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;os&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;environ&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;get&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;ENV&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt; &lt;span class=&#34;ow&#34;&gt;in&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;dev&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;qa&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;prod&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]:&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;n&#34;&gt;updated_url&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;updated_url&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;replace&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;http&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;https&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;mi&#34;&gt;1&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;k&#34;&gt;return&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;updated_url&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;def&lt;/span&gt; &lt;span class=&#34;nf&#34;&gt;get_templates&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;():&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;n&#34;&gt;templates&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;Jinja2Templates&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;directory&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;templates&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;n&#34;&gt;templates&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;env&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;globals&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;url_for&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;url_for_query&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;k&#34;&gt;return&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;templates&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;https&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt; If you want url_for to work in production you need some way to convert http&#xA;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt;to https.  Here is how I make it work, for local development I &lt;code&gt;export ENV=local&lt;/code&gt; then for each environment that I am running on a server I include&#xA;it in the list and update &lt;code&gt;ENV&lt;/code&gt; appropriately.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;k&#34;&gt;if&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;os&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;environ&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;get&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;ENV&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt; &lt;span class=&#34;ow&#34;&gt;in&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;dev&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;qa&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;prod&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]:&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;n&#34;&gt;updated_url&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;updated_url&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;replace&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;http&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;https&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;mi&#34;&gt;1&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&#xA;&lt;p&gt;The route might look something like this.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nd&#34;&gt;@infinite_router.get&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;/&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;async&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;def&lt;/span&gt; &lt;span class=&#34;nf&#34;&gt;home&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;request&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;Request&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;page&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;nb&#34;&gt;int&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;mi&#34;&gt;1&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;n&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;nb&#34;&gt;int&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;mi&#34;&gt;10&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;):&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  &lt;span class=&#34;o&#34;&gt;...&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;To access the home route using url_for in a jinja template you can use the&#xA;following, once you have applied the &lt;code&gt;url_for_query&lt;/code&gt; function as your default&#xA;&lt;code&gt;url_for&lt;/code&gt;&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;&amp;lt;&lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;a&lt;/span&gt; &lt;span class=&#34;na&#34;&gt;href&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;&amp;#34;{{ url_for(&amp;#39;home&amp;#39;, page=1) }}&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;&amp;gt;&lt;/span&gt;Home&lt;span class=&#34;p&#34;&gt;&amp;lt;/&lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;a&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;&amp;gt;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>setting up a kind cluster with argocd installed</title>
    <id>https://waylonwalker.com/kind-cluster-with-argo/</id>
    <updated>2024-04-04T18:42:18Z</updated>
    <published>2024-04-04T18:42:18Z</published>
    <link href="https://waylonwalker.com/kind-cluster-with-argo/" rel="alternate" type="text/html"></link>
    <summary type="text">Kind (Kubernetes in Docker) is a tool that makes it easy to create and tear down local clusters quickly. I like to use it to test out new workflows.</summary>
    <content type="html">&lt;p&gt;Kind (Kubernetes in Docker) is a tool that makes it easy to create and tear&#xA;down local clusters quickly.  I like to use it to test out new workflows.&lt;/p&gt;&#xA;&lt;p&gt;Argocd is a continuous delivery tool that makes it easy to setup gitops&#xA;workflows in kubernetes.&lt;/p&gt;&#xA;&lt;p&gt;Here is how you can setup a new kind cluster and install argocd into it using&#xA;helm, the kubernetes package manager.&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;kind create cluster --name argocd&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# your first time through you need to add the argocd repo&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;helm repo add argo https://argoproj.github.io/argo-helm&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;helm repo update&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt