<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet href="/atom.xsl" type="text/xsl"?>
<feed xmlns="http://www.w3.org/2005/Atom">
  <title>Blog</title>
  <id>https://go.waylonwalker.com/blog/atom.xml</id>
  <updated>2026-03-27T16:35:40Z</updated>
  <subtitle>Full Blog Posts</subtitle>
  <link href="https://go.waylonwalker.com/blog/" rel="alternate" type="text/html"></link>
  <link href="https://go.waylonwalker.com/blog/atom.xml" rel="self" type="application/atom+xml"></link>
  <author>
    <name>Waylon Walker</name>
  </author>
  <generator uri="https://github.com/WaylonWalker/markata-go">markata-go</generator>
  <entry>
    <title>/carry/</title>
    <id>https://go.waylonwalker.com/carry/</id>
    <updated>2026-03-27T16:35:40Z</updated>
    <published>2026-03-27T16:35:40Z</published>
    <link href="https://go.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;&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>I Built A Tmux Session Switcher</title>
    <id>https://go.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://go.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;&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>/verify</title>
    <id>https://go.waylonwalker.com/verify/</id>
    <updated>2026-02-24T10:36:57Z</updated>
    <published>2026-02-24T10:36:57Z</published>
    <link href="https://go.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; style=&#34;--favicon-url: url(&amp;#39;/assets/markata/link-avatars/waylonwalker.com.ico&amp;#39;);&#34; data-favicon=&#34;/assets/markata/link-avatars/waylonwalker.com.ico&#34; class=&#34;has-avatar  has-avatar-before&#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>First W In Brotato</title>
    <id>https://go.waylonwalker.com/first-w-in-brotato/</id>
    <updated>2026-02-11T20:48:08Z</updated>
    <published>2026-02-11T20:48:08Z</published>
    <link href="https://go.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;&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;/figure&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;Watching back I cannot believe how lucky I got, barely scraping by with 1hp at this point&lt;/p&gt;&#xA;&lt;/blockquote&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;&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;/figure&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;the last 80s of the game&lt;/p&gt;&#xA;&lt;/blockquote&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;&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>/top4</title>
    <id>https://go.waylonwalker.com/top4/</id>
    <updated>2026-02-11T14:00:00Z</updated>
    <published>2026-02-11T14:00:00Z</published>
    <link href="https://go.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;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
  <entry>
    <title>/yep</title>
    <id>https://go.waylonwalker.com/yep/</id>
    <updated>2026-02-11T12:00:00Z</updated>
    <published>2026-02-11T12:00:00Z</published>
    <link href="https://go.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://go.waylonwalker.com/nope/</id>
    <updated>2026-02-11T12:00:00Z</updated>
    <published>2026-02-11T12:00:00Z</published>
    <link href="https://go.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>Pm Not Babysitter</title>
    <id>https://go.waylonwalker.com/pm-not-babysitter/</id>
    <updated>2026-02-06T14:04:25Z</updated>
    <published>2026-02-06T14:04:25Z</published>
    <link href="https://go.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>Agent Management Is Exhausting</title>
    <id>https://go.waylonwalker.com/agent-management-is-exhausting/</id>
    <updated>2026-01-26T14:38:35Z</updated>
    <published>2026-01-26T14:38:35Z</published>
    <link href="https://go.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>Stop Using Boomer Ai</title>
    <id>https://go.waylonwalker.com/stop-using-boomer-ai/</id>
    <updated>2026-01-26T13:12:29Z</updated>
    <published>2026-01-26T13:12:29Z</published>
    <link href="https://go.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>Mentions</title>
    <id>https://go.waylonwalker.com/mentions/</id>
    <updated>2026-01-24T19:11:15Z</updated>
    <published>2026-01-24T19:11:15Z</published>
    <link href="https://go.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>What Your Coding Tool Says About You</title>
    <id>https://go.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://go.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>📝 Git Notes</title>
    <id>https://go.waylonwalker.com/git/</id>
    <updated>2026-01-15T09:05:21Z</updated>
    <published>2026-01-15T09:05:21Z</published>
    <link href="https://go.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;cp&#34;&gt;&lt;/span&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;&lt;span class=&#34;se&#34;&gt;&lt;/span&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;&lt;span class=&#34;se&#34;&gt;&lt;/span&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;&lt;span class=&#34;se&#34;&gt;&lt;/span&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>Dont Trust Users Tokens</title>
    <id>https://go.waylonwalker.com/dont-trust-users-tokens/</id>
    <updated>2026-01-14T19:49:43Z</updated>
    <published>2026-01-14T19:49:43Z</published>
    <link href="https://go.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>Ai</title>
    <id>https://go.waylonwalker.com/ai/</id>
    <updated>2026-01-11T13:48:43Z</updated>
    <published>2026-01-11T13:48:43Z</published>
    <link href="https://go.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>Og-Sample</title>
    <id>https://go.waylonwalker.com/og-sample/</id>
    <updated>2026-01-09T08:19:29Z</updated>
    <published>2026-01-09T08:19:29Z</published>
    <link href="https://go.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>2026 Resolutions</title>
    <id>https://go.waylonwalker.com/2026-resolutions/</id>
    <updated>2026-01-08T10:48:12Z</updated>
    <published>2026-01-08T10:48:12Z</published>
    <link href="https://go.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;&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;&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;/figure&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;New dart board in the basement&lt;/p&gt;&#xA;&lt;/blockquote&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;&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;/figure&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;building a fingerboard park in the basement&lt;/p&gt;&#xA;&lt;/blockquote&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;&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;&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;/figure&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;building set for Jolly Holiday with Rhiannon&lt;/p&gt;&#xA;&lt;/blockquote&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;&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;/figure&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;building boxes for Jolly Holiday with Wyatt&lt;/p&gt;&#xA;&lt;/blockquote&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;&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;/figure&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;Bike Rides&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>Developer Vs Artist Ai</title>
    <id>https://go.waylonwalker.com/developer-vs-artist-ai/</id>
    <updated>2025-12-19T09:44:00Z</updated>
    <published>2025-12-19T09:44:00Z</published>
    <link href="https://go.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;&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>The Right Reasons To Run Kubernetes In Your Homelab</title>
    <id>https://go.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://go.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;&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>One Year Of Shots</title>
    <id>https://go.waylonwalker.com/one-year-of-shots/</id>
    <updated>2025-12-09T12:44:39Z</updated>
    <published>2025-12-09T12:44:39Z</published>
    <link href="https://go.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;&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;/figure&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;a histogram of shot counts by day&lt;/p&gt;&#xA;&lt;/blockquote&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;gd&#34;&gt;&lt;/span&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;&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;/figure&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;originally I simply used an image of the post itself&lt;/p&gt;&#xA;&lt;/blockquote&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;&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;/figure&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;In Feb 2025 I made OG specific templates to use for the OG images.&lt;/p&gt;&#xA;&lt;/blockquote&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;&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;/figure&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;collage of all shots, click to see full size&lt;/p&gt;&#xA;&lt;/blockquote&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;&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;/figure&gt;&#xA;&lt;blockquote&gt;&#xA;&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;&#xA;&lt;/blockquote&gt;&#xA;</content>
    <author>
      <name>Waylon Walker</name>
      <email>hello@waylonwalker.com</email>
      <uri>https://waylonwalker.com</uri>
    </author>
  </entry>
</feed>