<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/">
  <channel>
    <title>Software-Management on Andrew Quinn&#39;s TILs</title>
    <link>https://til.andrew-quinn.me/tags/software-management/</link>
    <description>Recent content in Software-Management on Andrew Quinn&#39;s TILs</description>
    <image>
      <title>Andrew Quinn&#39;s TILs</title>
      <url>https://til.andrew-quinn.me/papermod-cover.png</url>
      <link>https://til.andrew-quinn.me/papermod-cover.png</link>
    </image>
    <generator>Hugo -- gohugo.io</generator>
    <language>en-us</language>
    <lastBuildDate>Wed, 25 Feb 2026 00:00:00 +0000</lastBuildDate><atom:link href="https://til.andrew-quinn.me/tags/software-management/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>The long death of programming languages</title>
      <link>https://til.andrew-quinn.me/posts/the-long-death-of-programming-languages/</link>
      <pubDate>Wed, 25 Feb 2026 00:00:00 +0000</pubDate>
      
      <guid>https://til.andrew-quinn.me/posts/the-long-death-of-programming-languages/</guid>
      <description>&lt;p&gt;I wrote my first Clojure program in anger a few months ago.
Only, it&amp;rsquo;s not accurate to
say that I wrote it; AI did most of the writing, and I directed it on what my
design goals were and why.
Architecturally, you could call it was a stateless
&lt;a href=&#34;https://learn.microsoft.com/en-us/azure/architecture/patterns/anti-corruption-layer&#34;&gt;anti-corruption layer&lt;/a&gt;,
yapping between some REST endpoints and some ancient proprietary serialization.&lt;/p&gt;
&lt;p&gt;I had never written a Clojure program of nontrivial size before. Indeed I had
barely touched any Lisp at all
since working through &lt;a href=&#34;https://mitp-content-server.mit.edu/books/content/sectbyfn/books_pres_0/6515/sicp.zip/index.html&#34;&gt;SICP&lt;/a&gt;
during a high school summer vacation, over a decade ago.
That didn&amp;rsquo;t matter. Much more important was emphasizing certain invariants from
the start, like the aforementioned statelessness, which made it very easy to
unit and integration test, which was the true challenge.&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>It&#39;s okay to solve a problem twice</title>
      <link>https://til.andrew-quinn.me/posts/it-s-okay-to-solve-a-problem-twice/</link>
      <pubDate>Fri, 22 Aug 2025 00:00:00 +0000</pubDate>
      
      <guid>https://til.andrew-quinn.me/posts/it-s-okay-to-solve-a-problem-twice/</guid>
      <description>&lt;p&gt;Quoth
&lt;a href=&#34;https://www.catb.org/~esr/faqs/hacker-howto.html#believe2&#34;&gt;&amp;ldquo;How to Become a Hacker&amp;rdquo;&lt;/a&gt;:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;2. No problem should ever have to be solved twice.
Creative brains are a valuable, limited resource. They shouldn&#39;t be wasted on re-inventing the wheel when there are so many fascinating new problems waiting out there.
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Much more at the original post, including preemptive rebuttals to what
I&amp;rsquo;m about to describe. This post is entirely about cataloguing my own
error.&lt;/p&gt;
&lt;p&gt;I took this maxim, perhaps, a little too close to heart when I was
starting out as a software guy, 15-odd years ago. This is my
apology to past me. Past me, I apologize.&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>LLM, JavaScript, GitHub Pages, localStorage: A recipe for free apps anyone can use</title>
      <link>https://til.andrew-quinn.me/posts/llm-javascript-github-pages-localstorage-a-recipe-for-free-apps-anyone-can-use/</link>
      <pubDate>Wed, 18 Jun 2025 00:00:00 +0000</pubDate>
      
      <guid>https://til.andrew-quinn.me/posts/llm-javascript-github-pages-localstorage-a-recipe-for-free-apps-anyone-can-use/</guid>
      <description>&lt;p&gt;Earlier today on Hacker News
&lt;a href=&#34;https://pontus.granstrom.me/scrappy/&#34;&gt;Scrappy made the rounds&lt;/a&gt;,
with the explicit tagline &amp;ldquo;make little apps for you and your friends&amp;rdquo;.
I always like to see new projects in this vein.&lt;/p&gt;
&lt;p&gt;That&amp;rsquo;s why I&amp;rsquo;d like to outline my alternative approach, which&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Works cross-platform and on mobile devices by default,&lt;/li&gt;
&lt;li&gt;Doesn&amp;rsquo;t require any app store tomfoolery,&lt;/li&gt;
&lt;li&gt;Has great uptime built in,&lt;/li&gt;
&lt;li&gt;Gives you just enough data persistence to not get in your way, and&lt;/li&gt;
&lt;li&gt;Is owned by you, forever.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;This is the stack I used to build
&lt;a href=&#34;https://hiandrewquinn.github.io/diet-checklist/&#34;&gt;my diet checklist&lt;/a&gt;,
which I keep as a little icon on my phone&amp;rsquo;s home page.
Here it is:&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>Consider the cronslave</title>
      <link>https://til.andrew-quinn.me/posts/consider-the-cronslave/</link>
      <pubDate>Fri, 30 May 2025 00:00:00 +0000</pubDate>
      
      <guid>https://til.andrew-quinn.me/posts/consider-the-cronslave/</guid>
      <description>&lt;p&gt;As a nerdy, working-class kid who grew up in the 1990s, knowing what time it
actually was was a luxury I rarely had access to before I was 12 or so and my
parents finally got an Internet connection with its attendant link to the
Network Time Protocol. If you had told me I could have not just a watch but an
entire &lt;em&gt;machine&lt;/em&gt; that&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Never lost the time,&lt;/li&gt;
&lt;li&gt;Did what I wanted, how I wanted it, and&lt;/li&gt;
&lt;li&gt;Could be programmed to do what I want, how I want it &lt;em&gt;on a schedule&lt;/em&gt;,&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;I would have had to substantially revise my Christmas wishlist.&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>OpenBSD, the computer appliance maker&#39;s secret weapon</title>
      <link>https://til.andrew-quinn.me/posts/openbsd-the-computer-appliance-maker-s-secret-weapon/</link>
      <pubDate>Wed, 05 Jun 2024 00:00:00 +0000</pubDate>
      
      <guid>https://til.andrew-quinn.me/posts/openbsd-the-computer-appliance-maker-s-secret-weapon/</guid>
      <description>&lt;p&gt;Between our ESP32 prokaryotic organisms and our 24/7 Internet-enabled
megafauna servers, there exists a vast and loosely-defined ecosystem of things
the
B2B world likes to call &lt;strong&gt;computer appliances&lt;/strong&gt;. Picture a bespoke Pi 4 packaged
up neatly with some Python scripts, a little fancy plastic embossing, and maybe
a well-guarded &lt;code&gt;id_ed25519.pub&lt;/code&gt; in case you end up in hot water during the
(long - very long, stable cash flow for generations long) maintenance contract,
and you&amp;rsquo;re in the ballpark.&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>Doing is normally distributed, learning is log-normal</title>
      <link>https://til.andrew-quinn.me/posts/doing-is-normally-distributed-learning-is-log-normal/</link>
      <pubDate>Tue, 28 May 2024 00:00:00 +0000</pubDate>
      
      <guid>https://til.andrew-quinn.me/posts/doing-is-normally-distributed-learning-is-log-normal/</guid>
      <description>&lt;p&gt;There are few things I think about more than the essays on
&lt;a href=&#34;https://gwern.net/index&#34;&gt;gwern.net&lt;/a&gt;,
and there are few with as satisfying a theoretical payout
to contemplate in my orb as
&lt;a href=&#34;https://gwern.net/note/pipeline&#34;&gt;his essay on &amp;ldquo;leaky pipelines&amp;rdquo;&lt;/a&gt;,
aka log-normal distributions.&lt;/p&gt;
&lt;p&gt;The skulk: Say you&amp;rsquo;re working on a Laravel web app.
You&amp;rsquo;re about 90% sure you know how to start the app. You&amp;rsquo;re
80% sure you know how to handle the infra you&amp;rsquo;ll need to
get it online. And you&amp;rsquo;re 70% sure you know how to get your
first customer. What is your chance of successfully going
from zero to first customer? 0.9 * 0.8 * 0.7 = a little over
0.5. That&amp;rsquo;s &amp;hellip; a lot less encouraging than any of the
previous numbers, if you buy my multi-step modelling.&lt;/p&gt;</description>
    </item>
    
  </channel>
</rss>
