<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0" xmlns:media="http://search.yahoo.com/mrss/">
    <channel>
        <title><![CDATA[Jason Thorsness Blog]]></title>
        <description><![CDATA[Jason Thorsness Blog]]></description>
        <link>https://www.jasonthorsness.com/</link>
        <generator>RSS for Node</generator>
        <lastBuildDate>Mon, 24 Nov 2025 07:42:31 GMT</lastBuildDate>
        <atom:link href="https://www.jasonthorsness.com/rss.xml" rel="self" type="application/rss+xml"/>
        <language><![CDATA[en]]></language>
        <item>
            <title><![CDATA[Where Is The Content?]]></title>
            <description><![CDATA[Most of the fun of having a personal website is in recreating it every few years...? This is the simplest layout yet, based on NextJS 14 App Router, DotNet 8, and Tractor Loader for image manipulation. I'll recycle the content from my old site eventually and replay it here -- message me on X/Twitter if there's anything in particular you miss.]]></description>
            <link>https://www.jasonthorsness.com/0</link>
            <guid isPermaLink="true">https://www.jasonthorsness.com/0</guid>
            <dc:creator><![CDATA[Jason Thorsness]]></dc:creator>
            <pubDate>Wed, 21 Feb 2024 08:00:01 GMT</pubDate>
            <media:content url="https://www.jasonthorsness.com/rss/0.jpg" width="720" height="306" medium="image" type="image/jpeg"/>
        </item>
        <item>
            <title><![CDATA[Better DotNet WebAssembly]]></title>
            <description><![CDATA[DotNet WebAssembly has been tied up with the Blazor project which is an awkward fit for use cases that don't involve a Blazor UI. Now we have something better. NativeAOT-LLVM compiles C# to WebAssembly using LLVM, and makes interop with JavaScript and other languages like C/C++ straightforward. See how straightforward integration is with NextJS.]]></description>
            <link>https://www.jasonthorsness.com/1</link>
            <guid isPermaLink="true">https://www.jasonthorsness.com/1</guid>
            <dc:creator><![CDATA[Jason Thorsness]]></dc:creator>
            <pubDate>Wed, 21 Feb 2024 08:00:01 GMT</pubDate>
            <media:content url="https://www.jasonthorsness.com/rss/1.jpg" width="720" height="306" medium="image" type="image/jpeg"/>
        </item>
        <item>
            <title><![CDATA[WebAssembly SIMD]]></title>
            <description><![CDATA[NativeAOT-LLVM does not yet support SIMD through System.Numerics.Vector. However, it's straightforward to reimplement the same functionality -- if you don't mind getting your hands a bit dirty with WebAssembly intrinsics in C. Here's how.]]></description>
            <link>https://www.jasonthorsness.com/2</link>
            <guid isPermaLink="true">https://www.jasonthorsness.com/2</guid>
            <dc:creator><![CDATA[Jason Thorsness]]></dc:creator>
            <pubDate>Thu, 22 Feb 2024 08:00:01 GMT</pubDate>
            <media:content url="https://www.jasonthorsness.com/rss/2.jpg" width="720" height="306" medium="image" type="image/jpeg"/>
        </item>
        <item>
            <title><![CDATA[Hire Some Web Workers]]></title>
            <description><![CDATA[Hundreds of readers wrote to complain about the sluggish performance of the slider on the previous article. Fundamentally the non-SIMD version of the program took long enough to cause noticeable lag in the UI -- because the thread used for DOM updates was also the one used for the long-running test. Here's how I used Web Workers to fix it.]]></description>
            <link>https://www.jasonthorsness.com/3</link>
            <guid isPermaLink="true">https://www.jasonthorsness.com/3</guid>
            <dc:creator><![CDATA[Jason Thorsness]]></dc:creator>
            <pubDate>Sun, 25 Feb 2024 08:00:01 GMT</pubDate>
            <media:content url="https://www.jasonthorsness.com/rss/3.jpg" width="720" height="306" medium="image" type="image/jpeg"/>
        </item>
        <item>
            <title><![CDATA[BSON — The Gritty Details]]></title>
            <description><![CDATA[I recently wrote an article on the SingleStore Engineering Blog on our use of the BSON Data Type in SingleStore's latest release. That provides a brief overview of BSON in SingleStore -- but what about the minute details of the type itself? Here's an in-depth guide to the entirety of the BSON data type.]]></description>
            <link>https://www.jasonthorsness.com/4</link>
            <guid isPermaLink="true">https://www.jasonthorsness.com/4</guid>
            <dc:creator><![CDATA[Jason Thorsness]]></dc:creator>
            <pubDate>Mon, 26 Feb 2024 08:00:01 GMT</pubDate>
            <media:content url="https://www.jasonthorsness.com/rss/4.jpg" width="720" height="306" medium="image" type="image/jpeg"/>
        </item>
        <item>
            <title><![CDATA[Weather Bingo]]></title>
            <description><![CDATA[Did it rain yesterday? The weather apps never tell you what the weather was, only what it will be. For time travelers and historians like myself, this is a major problem. Now with weather.bingo on the SingleStore Free Shared Tier I've solved that problem forever. Here's how.]]></description>
            <link>https://www.jasonthorsness.com/5</link>
            <guid isPermaLink="true">https://www.jasonthorsness.com/5</guid>
            <dc:creator><![CDATA[Jason Thorsness]]></dc:creator>
            <pubDate>Mon, 06 May 2024 08:00:01 GMT</pubDate>
            <media:content url="https://www.jasonthorsness.com/rss/5.jpg" width="720" height="306" medium="image" type="image/jpeg"/>
        </item>
        <item>
            <title><![CDATA[The Edge of the World]]></title>
            <description><![CDATA[The location search on weather.bingo is fast. Really -- try it now. It just works, globally, with no third-party APIs required. With Vercel Edge functions, this sort of low-latency auto-complete is within the grasp of smaller sites on hobby plans. Learn how.]]></description>
            <link>https://www.jasonthorsness.com/6</link>
            <guid isPermaLink="true">https://www.jasonthorsness.com/6</guid>
            <dc:creator><![CDATA[Jason Thorsness]]></dc:creator>
            <pubDate>Mon, 20 May 2024 08:00:01 GMT</pubDate>
            <media:content url="https://www.jasonthorsness.com/rss/6.jpg" width="720" height="306" medium="image" type="image/jpeg"/>
        </item>
        <item>
            <title><![CDATA[OpenAI Serving Up Nonsense]]></title>
            <description><![CDATA[The magic of vector search comes from the model, but even today's most sophisticated models might still be at the "first year at Hogwarts" level. See how I found some nonsensical results from OpenAI's latest.]]></description>
            <link>https://www.jasonthorsness.com/7</link>
            <guid isPermaLink="true">https://www.jasonthorsness.com/7</guid>
            <dc:creator><![CDATA[Jason Thorsness]]></dc:creator>
            <pubDate>Thu, 20 Jun 2024 08:00:01 GMT</pubDate>
            <media:content url="https://www.jasonthorsness.com/rss/7.jpg" width="720" height="306" medium="image" type="image/jpeg"/>
        </item>
        <item>
            <title><![CDATA[Load Data at GiB/s]]></title>
            <description><![CDATA[I hate waiting for data loads. It's time to stop waiting and load some data at speed. See how I set up a fast system to load over a terabyte of data and 2 billion rows into SingleStore in under 20 minutes.]]></description>
            <link>https://www.jasonthorsness.com/8</link>
            <guid isPermaLink="true">https://www.jasonthorsness.com/8</guid>
            <dc:creator><![CDATA[Jason Thorsness]]></dc:creator>
            <pubDate>Tue, 09 Jul 2024 08:00:01 GMT</pubDate>
            <media:content url="https://www.jasonthorsness.com/rss/8.jpg" width="720" height="306" medium="image" type="image/jpeg"/>
        </item>
        <item>
            <title><![CDATA[S3 Trampoline]]></title>
            <description><![CDATA[Faster AND Cheaper? Bounce a few terabytes of data into SingleStore without paying cross-AZ transfer fees using a technique I'm calling the S3 Trampoline. Learn how it's done.]]></description>
            <link>https://www.jasonthorsness.com/9</link>
            <guid isPermaLink="true">https://www.jasonthorsness.com/9</guid>
            <dc:creator><![CDATA[Jason Thorsness]]></dc:creator>
            <pubDate>Fri, 12 Jul 2024 08:00:01 GMT</pubDate>
            <media:content url="https://www.jasonthorsness.com/rss/9.jpg" width="720" height="306" medium="image" type="image/jpeg"/>
        </item>
        <item>
            <title><![CDATA[C, C#, Go, TS via WebAssembly]]></title>
            <description><![CDATA[You've probably seen the computer language benchmark game \-- but how about a real-time comparison in your browser? Join me as I implement a brute-force solution to the traveling salesman problem in C, C#, Go, and TypeScript, and find out how they perform on your own machine.]]></description>
            <link>https://www.jasonthorsness.com/10</link>
            <guid isPermaLink="true">https://www.jasonthorsness.com/10</guid>
            <dc:creator><![CDATA[Jason Thorsness]]></dc:creator>
            <pubDate>Mon, 29 Jul 2024 08:00:01 GMT</pubDate>
            <media:content url="https://www.jasonthorsness.com/rss/10.jpg" width="720" height="306" medium="image" type="image/jpeg"/>
        </item>
        <item>
            <title><![CDATA[Streamlit for Weather.Bingo]]></title>
            <description><![CDATA[The Streamlit project is an easy way to visualize data. It works great with SingleStore as a data source, so I've connected it up to weather.bingo. Check it out!.]]></description>
            <link>https://www.jasonthorsness.com/11</link>
            <guid isPermaLink="true">https://www.jasonthorsness.com/11</guid>
            <dc:creator><![CDATA[Jason Thorsness]]></dc:creator>
            <pubDate>Wed, 31 Jul 2024 08:00:01 GMT</pubDate>
            <media:content url="https://www.jasonthorsness.com/rss/11.jpg" width="720" height="306" medium="image" type="image/jpeg"/>
        </item>
        <item>
            <title><![CDATA[SQL 💜 WebAssembly]]></title>
            <description><![CDATA[SQL makes writing UDFs for complex string, JSON, and blob manipulation awkward. What if instead you could write those UDFs in Go or C/C++ and leverage industry-standard libraries? What if you could safely add such functions to your database just by pasting a GitHub URL? The dream is real.]]></description>
            <link>https://www.jasonthorsness.com/12</link>
            <guid isPermaLink="true">https://www.jasonthorsness.com/12</guid>
            <dc:creator><![CDATA[Jason Thorsness]]></dc:creator>
            <pubDate>Sun, 18 Aug 2024 08:00:01 GMT</pubDate>
            <media:content url="https://www.jasonthorsness.com/rss/12.jpg" width="720" height="306" medium="image" type="image/jpeg"/>
        </item>
        <item>
            <title><![CDATA[Spicing Things Up With Jobs]]></title>
            <description><![CDATA[SingleStore now offers a novel scheduled jobs service, enabling any Python or SQL task to be run on a schedule. I've used it to sprinkle some AI ✨ on the home page of weather.bingo. Learn how I did it.]]></description>
            <link>https://www.jasonthorsness.com/13</link>
            <guid isPermaLink="true">https://www.jasonthorsness.com/13</guid>
            <dc:creator><![CDATA[Jason Thorsness]]></dc:creator>
            <pubDate>Mon, 26 Aug 2024 08:00:01 GMT</pubDate>
            <media:content url="https://www.jasonthorsness.com/rss/13.jpg" width="720" height="306" medium="image" type="image/jpeg"/>
        </item>
        <item>
            <title><![CDATA[JSON Schema with Speed]]></title>
            <description><![CDATA[The JSON Schema project has fought the fight against schema-free JSON for many years. Using the same technique as in a previous article, I've brought JSON Schema to SingleStore. Use it to validate your INSERTs, UPDATEs, or even as a high-performance query tool. Add some sanity to your JSON today with a simple SQL statement.]]></description>
            <link>https://www.jasonthorsness.com/14</link>
            <guid isPermaLink="true">https://www.jasonthorsness.com/14</guid>
            <dc:creator><![CDATA[Jason Thorsness]]></dc:creator>
            <pubDate>Wed, 28 Aug 2024 08:00:01 GMT</pubDate>
            <media:content url="https://www.jasonthorsness.com/rss/14.jpg" width="720" height="306" medium="image" type="image/jpeg"/>
        </item>
        <item>
            <title><![CDATA[Randomized Demo Challenge]]></title>
            <description><![CDATA[With only ChatGPT, a web browser, and a random topic, can I generate and load millions of rows of highly-tailored data into SingleStore and highlight key features, all in the space of 5 minutes? With some new scripts and workflow I think I can probably do it, and that you can too! Let's find out!]]></description>
            <link>https://www.jasonthorsness.com/15</link>
            <guid isPermaLink="true">https://www.jasonthorsness.com/15</guid>
            <dc:creator><![CDATA[Jason Thorsness]]></dc:creator>
            <pubDate>Wed, 25 Sep 2024 08:00:01 GMT</pubDate>
            <media:content url="https://www.jasonthorsness.com/rss/15.jpg" width="720" height="306" medium="image" type="image/jpeg"/>
        </item>
        <item>
            <title><![CDATA[Wooden Boxes]]></title>
            <description><![CDATA[I designed and built some gift boxes out of maple, walnut and padauk. Although I laser-cut all of the pieces, I went to great lengths to avoid exposing charred edges. Like most of my craft projects this turned into way more work than I expected. Read on for the full story.]]></description>
            <link>https://www.jasonthorsness.com/16</link>
            <guid isPermaLink="true">https://www.jasonthorsness.com/16</guid>
            <dc:creator><![CDATA[Jason Thorsness]]></dc:creator>
            <pubDate>Mon, 30 Dec 2024 08:00:01 GMT</pubDate>
            <media:content url="https://www.jasonthorsness.com/rss/16.jpg" width="720" height="306" medium="image" type="image/jpeg"/>
        </item>
        <item>
            <title><![CDATA[Nobody Cares about Tractor Loader]]></title>
            <description><![CDATA[Images here are powered by Tractor Loader, a glue library for NextJS and Sharp that enables inline image transformation in JSX or MDX, like !\[cat]\(./img.jpg?crop=400,400,400,400\&tractor). So far, I am the only user of this library 😢. But perhaps the next user could be you! Read my pitch.]]></description>
            <link>https://www.jasonthorsness.com/17</link>
            <guid isPermaLink="true">https://www.jasonthorsness.com/17</guid>
            <dc:creator><![CDATA[Jason Thorsness]]></dc:creator>
            <pubDate>Sat, 04 Jan 2025 08:00:01 GMT</pubDate>
            <media:content url="https://www.jasonthorsness.com/rss/17.jpg" width="720" height="306" medium="image" type="image/jpeg"/>
        </item>
        <item>
            <title><![CDATA[Build On SingleStore 🛠️
Analytics]]></title>
            <description><![CDATA[Ever wonder how to build a scalable high-performance real-time application? SingleStore is as close to a drop-in solution as you can get, but you might not know how to get started. If so, this article is for you. Follow along while I build an analytics solution for my web site.]]></description>
            <link>https://www.jasonthorsness.com/18</link>
            <guid isPermaLink="true">https://www.jasonthorsness.com/18</guid>
            <dc:creator><![CDATA[Jason Thorsness]]></dc:creator>
            <pubDate>Wed, 22 Jan 2025 08:00:01 GMT</pubDate>
            <media:content url="https://www.jasonthorsness.com/rss/18.jpg" width="720" height="306" medium="image" type="image/jpeg"/>
        </item>
        <item>
            <title><![CDATA[Build On SingleStore 🛠️
Monitoring]]></title>
            <description><![CDATA[Another article only two days later? Well, I needed to know how my VPS is doing, and this is another straightforward use case for SingleStore: a backend for monitoring! Journey with me to understand my server's performance.]]></description>
            <link>https://www.jasonthorsness.com/19</link>
            <guid isPermaLink="true">https://www.jasonthorsness.com/19</guid>
            <dc:creator><![CDATA[Jason Thorsness]]></dc:creator>
            <pubDate>Fri, 24 Jan 2025 08:00:01 GMT</pubDate>
            <media:content url="https://www.jasonthorsness.com/rss/19.jpg" width="720" height="306" medium="image" type="image/jpeg"/>
        </item>
        <item>
            <title><![CDATA[DeepSeek My User Agent]]></title>
            <description><![CDATA[You've maintained an uneasy contract with the web for years -- you know web sites scrape every last byte of your information, but you tolerate it because it's invisible. They don't JUDGE YOU as a user. At least, not until now. Click onward for the opinion DeepSeek R1 has of YOUR information.]]></description>
            <link>https://www.jasonthorsness.com/20</link>
            <guid isPermaLink="true">https://www.jasonthorsness.com/20</guid>
            <dc:creator><![CDATA[Jason Thorsness]]></dc:creator>
            <pubDate>Sun, 26 Jan 2025 08:00:01 GMT</pubDate>
            <media:content url="https://www.jasonthorsness.com/rss/20.jpg" width="720" height="306" medium="image" type="image/jpeg"/>
        </item>
        <item>
            <title><![CDATA[Build On SingleStore 🛠️
Row Store]]></title>
            <description><![CDATA[SingleStore started as MemSQL (YC11) with a memory-optimized skiplist-based table structure. And although it has evolved to feature support disk-based columnar storage, if you look closely enough the row store is still there, and still amazing for some workloads.]]></description>
            <link>https://www.jasonthorsness.com/21</link>
            <guid isPermaLink="true">https://www.jasonthorsness.com/21</guid>
            <dc:creator><![CDATA[Jason Thorsness]]></dc:creator>
            <pubDate>Wed, 29 Jan 2025 08:00:01 GMT</pubDate>
            <media:content url="https://www.jasonthorsness.com/rss/21.jpg" width="720" height="306" medium="image" type="image/jpeg"/>
        </item>
        <item>
            <title><![CDATA[Fast Queries Do Less]]></title>
            <description><![CDATA[One universal technique for getting software systems to perform faster is to make them do less work. For database queries, this means both asking for less and getting the system to work more efficiently. Read this article to help your queries do less work today.]]></description>
            <link>https://www.jasonthorsness.com/22</link>
            <guid isPermaLink="true">https://www.jasonthorsness.com/22</guid>
            <dc:creator><![CDATA[Jason Thorsness]]></dc:creator>
            <pubDate>Fri, 31 Jan 2025 08:00:01 GMT</pubDate>
            <media:content url="https://www.jasonthorsness.com/rss/22.jpg" width="720" height="306" medium="image" type="image/jpeg"/>
        </item>
        <item>
            <title><![CDATA[Hell Is Microbenchmarking]]></title>
            <description><![CDATA[I set out to write an article on how big O notation doesn't help to compare algorithms at small input sizes. I planned a quick demo to show how constant factors matter. Instead, I found all my assumptions and abstractions broken.]]></description>
            <link>https://www.jasonthorsness.com/23</link>
            <guid isPermaLink="true">https://www.jasonthorsness.com/23</guid>
            <dc:creator><![CDATA[Jason Thorsness]]></dc:creator>
            <pubDate>Tue, 11 Feb 2025 08:00:01 GMT</pubDate>
            <media:content url="https://www.jasonthorsness.com/rss/23.jpg" width="720" height="306" medium="image" type="image/jpeg"/>
        </item>
        <item>
            <title><![CDATA[LLM not LLVM]]></title>
            <description><![CDATA[You might have used an LLM to translate between high-level languages like Python to TypeScript, or Go to C#. But with the latest models, can an LLM act as a universal compiler? Is it possible to go directly from a prompt to assembly? As is the custom of our time, YOLO.]]></description>
            <link>https://www.jasonthorsness.com/24</link>
            <guid isPermaLink="true">https://www.jasonthorsness.com/24</guid>
            <dc:creator><![CDATA[Jason Thorsness]]></dc:creator>
            <pubDate>Fri, 07 Mar 2025 08:00:01 GMT</pubDate>
            <media:content url="https://www.jasonthorsness.com/rss/24.jpg" width="720" height="306" medium="image" type="image/jpeg"/>
        </item>
        <item>
            <title><![CDATA[You Wouldn't Download a Hacker News]]></title>
            <description><![CDATA[I downloaded the entirety of Hacker News and fed it to DuckDB, ultimately uncovering the secret to building a successful startup (or at least to drawing attention to a successful article).]]></description>
            <link>https://www.jasonthorsness.com/25</link>
            <guid isPermaLink="true">https://www.jasonthorsness.com/25</guid>
            <dc:creator><![CDATA[Jason Thorsness]]></dc:creator>
            <pubDate>Tue, 29 Apr 2025 08:00:01 GMT</pubDate>
            <media:content url="https://www.jasonthorsness.com/rss/25.jpg" width="720" height="306" medium="image" type="image/jpeg"/>
        </item>
        <item>
            <title><![CDATA[Tower Defense: Cache Control]]></title>
            <description><![CDATA[I've played a lot of Tower Defense over the years, starting with Desktop Tower Defense in 2007. Now everything I see looks like Tower Defense. Especially protecting the cores on my VPS from the crush of web traffic. You, reader, are the enemy unit in this game. Read On to scout my defenses.]]></description>
            <link>https://www.jasonthorsness.com/26</link>
            <guid isPermaLink="true">https://www.jasonthorsness.com/26</guid>
            <dc:creator><![CDATA[Jason Thorsness]]></dc:creator>
            <pubDate>Mon, 12 May 2025 08:00:01 GMT</pubDate>
            <media:content url="https://www.jasonthorsness.com/rss/26.jpg" width="720" height="306" medium="image" type="image/jpeg"/>
        </item>
        <item>
            <title><![CDATA[Font Around and Find Out]]></title>
            <description><![CDATA[I produced a 580-byte monospace font that renders all code points in Unicode planes 0, 1, and 15 as empty glyphs. Can we go smaller? The specification says yes, but Google's reference WOFF2 decoder has denied me my final victory with a haughty error: "implausible compression ratio".]]></description>
            <link>https://www.jasonthorsness.com/27</link>
            <guid isPermaLink="true">https://www.jasonthorsness.com/27</guid>
            <dc:creator><![CDATA[Jason Thorsness]]></dc:creator>
            <pubDate>Tue, 03 Jun 2025 08:00:01 GMT</pubDate>
            <media:content url="https://www.jasonthorsness.com/rss/27.jpg" width="720" height="306" medium="image" type="image/jpeg"/>
        </item>
        <item>
            <title><![CDATA[HTTP: H is for Hallucinated]]></title>
            <description><![CDATA[In a previous article I joked about browsers generating pages with an LLM when the real server is slow. I introduced this as a bad idea -- but what if it's a good idea? What if instead of developing a web site, you can just have the LLM take requests and return HTML responses? Join me and experience the utopian future of web development.]]></description>
            <link>https://www.jasonthorsness.com/28</link>
            <guid isPermaLink="true">https://www.jasonthorsness.com/28</guid>
            <dc:creator><![CDATA[Jason Thorsness]]></dc:creator>
            <pubDate>Tue, 01 Jul 2025 08:00:01 GMT</pubDate>
            <media:content url="https://www.jasonthorsness.com/rss/28.jpg" width="720" height="306" medium="image" type="image/jpeg"/>
        </item>
        <item>
            <title><![CDATA[AI Is Less Creative Than You Think]]></title>
            <description><![CDATA[As I showed in my last article, LLMs can generate web sites in real-time, complete with rich CSS and images. At first glance this output can appear incredibly creative. But... is it really? Take a step back with me, squint your eyes, and find out.]]></description>
            <link>https://www.jasonthorsness.com/29</link>
            <guid isPermaLink="true">https://www.jasonthorsness.com/29</guid>
            <dc:creator><![CDATA[Jason Thorsness]]></dc:creator>
            <pubDate>Mon, 14 Jul 2025 08:00:01 GMT</pubDate>
            <media:content url="https://www.jasonthorsness.com/rss/29.jpg" width="720" height="306" medium="image" type="image/jpeg"/>
        </item>
        <item>
            <title><![CDATA[A Software For One]]></title>
            <description><![CDATA[If someone writes an mp3 player in a forest (presumably on a laptop), does it make a sound? Maybe software written for your own personal use is the sweetest sound of all.]]></description>
            <link>https://www.jasonthorsness.com/30</link>
            <guid isPermaLink="true">https://www.jasonthorsness.com/30</guid>
            <dc:creator><![CDATA[Jason Thorsness]]></dc:creator>
            <pubDate>Fri, 18 Jul 2025 08:00:01 GMT</pubDate>
            <media:content url="https://www.jasonthorsness.com/rss/30.jpg" width="720" height="306" medium="image" type="image/jpeg"/>
        </item>
        <item>
            <title><![CDATA[Spleen of a New Machine]]></title>
            <description><![CDATA[The book Soul of a New Machine follows a group of computer engineers developing a novel product. Their pragmatic leader states "if you can do a quick-and-dirty job and it works, do it", a philosophy I applied directly to this article.]]></description>
            <link>https://www.jasonthorsness.com/31</link>
            <guid isPermaLink="true">https://www.jasonthorsness.com/31</guid>
            <dc:creator><![CDATA[Jason Thorsness]]></dc:creator>
            <pubDate>Tue, 07 Oct 2025 08:00:01 GMT</pubDate>
            <media:content url="https://www.jasonthorsness.com/rss/31.jpg" width="720" height="306" medium="image" type="image/jpeg"/>
        </item>
        <item>
            <title><![CDATA[War on Slop]]></title>
            <description><![CDATA[We condemn media created in massive volume with low effort by AI as slop, but it's the industrial software machine distributing the slop that's the problem. AI advances will make the slop taste sweeter but the poison in the meal is the same.]]></description>
            <link>https://www.jasonthorsness.com/32</link>
            <guid isPermaLink="true">https://www.jasonthorsness.com/32</guid>
            <dc:creator><![CDATA[Jason Thorsness]]></dc:creator>
            <pubDate>Mon, 13 Oct 2025 08:00:01 GMT</pubDate>
            <media:content url="https://www.jasonthorsness.com/rss/32.jpg" width="720" height="306" medium="image" type="image/jpeg"/>
        </item>
        <item>
            <title><![CDATA[Meeting Or Deleting Constraints]]></title>
            <link>https://www.jasonthorsness.com/33</link>
            <guid isPermaLink="true">https://www.jasonthorsness.com/33</guid>
            <dc:creator><![CDATA[Jason Thorsness]]></dc:creator>
            <pubDate>Thu, 16 Oct 2025 08:00:01 GMT</pubDate>
            <media:content url="https://www.jasonthorsness.com/rss/33.jpg" width="720" height="306" medium="image" type="image/jpeg"/>
        </item>
        <item>
            <title><![CDATA[Tree Dangler]]></title>
            <description><![CDATA[I compensate for my poor intuition of how wooden pieces will hang by coding an interactive ornament builder and physics simulation. Joy to the World, it actually works!.]]></description>
            <link>https://www.jasonthorsness.com/34</link>
            <guid isPermaLink="true">https://www.jasonthorsness.com/34</guid>
            <dc:creator><![CDATA[Jason Thorsness]]></dc:creator>
            <pubDate>Sun, 23 Nov 2025 08:00:01 GMT</pubDate>
            <media:content url="https://www.jasonthorsness.com/rss/34.jpg" width="720" height="306" medium="image" type="image/jpeg"/>
        </item>
    </channel>
</rss>