<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xml:base="https://bjorn.now/" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/"><channel><title>Links on bjorn.now</title><link>https://bjorn.now/link/</link><description>Recent content in Links on bjorn.now</description><generator>Hugo</generator><language>en-us</language><lastBuildDate>Fri, 20 Mar 2026 13:37:14 +0100</lastBuildDate><atom:link href="https://bjorn.now/link/feed.xml" rel="self" type="application/rss+xml"/><item><title>Warranty Void If Regenerated</title><link>https://bjorn.now/link/2026-03-20-warranty-void-if-regenerated/?utm_medium=feed</link><pubDate>Fri, 20 Mar 2026 13:37:14 +0100</pubDate><guid>https://bjorn.now/link/2026-03-20-warranty-void-if-regenerated/</guid><description>Warranty Void If Regenerated by Scott Werner (via Valentine):
His shop was in a corrugated steel building on Highway 29, between a feed store and a Laundromat. It had a waiting area with four plastic chairs and a coffee machine that Tom had specified himself and which made coffee that was, by consensus of his clients, exactly adequate and no better. He’d tried to improve the spec three times. Each time, the regenerated firmware made the coffee subtly worse in a different way. He’d eventually concluded that coffee machine specs existed at the exact intersection of fluid dynamics, thermal management, and taste (three domains where natural language was particularly poor at capturing the relevant distinctions) and had stopped trying. He had, however, found a use for it: when new clients came in insisting that the software they’d generated was “basically fine” and “just needs a little tweak,” he would gesture at the coffee machine and say, “I’ve been trying to get that thing to make decent coffee for two years. You think your sixty-parameter irrigation optimizer is going to be simpler?” This was usually effective. People understood coffee.</description><content:encoded><![CDATA[<p><a href="https://nearzero.software/p/warranty-void-if-regenerated">Warranty Void If Regenerated</a> by Scott Werner (via Valentine):</p>
<blockquote>
<p>His shop was in a corrugated steel building on Highway 29, between a feed store and a Laundromat. It had a waiting area with four plastic chairs and a coffee machine that Tom had specified himself and which made coffee that was, by consensus of his clients, exactly adequate and no better. He&rsquo;d tried to improve the spec three times. Each time, the regenerated firmware made the coffee subtly worse in a different way. He&rsquo;d eventually concluded that coffee machine specs existed at the exact intersection of fluid dynamics, thermal management, and taste (three domains where natural language was particularly poor at capturing the relevant distinctions) and had stopped trying. He had, however, found a use for it: when new clients came in insisting that the software they&rsquo;d generated was &ldquo;basically fine&rdquo; and &ldquo;just needs a little tweak,&rdquo; he would gesture at the coffee machine and say, &ldquo;I&rsquo;ve been trying to get that thing to make decent coffee for two years. You think your sixty-parameter irrigation optimizer is going to be simpler?&rdquo; This was usually effective. People understood coffee.</p>
</blockquote>
<p>A story about what it could look like when everyone generates their own software, how anyone can fix stuff but not everyone will do so in a way that&rsquo;s <a href="https://www.youtube.com/shorts/CGEgJsZKgS8">maintainable or safe</a>, and how <a href="https://youtu.be/tWo3ZrbJQ3k?t=48">the truest repairman will also repair man</a>.</p>
<p>Computer mechanics is already a thing: the people who get called in to fix printers or set up computers when they&rsquo;re really borked. So why not software? I think the customization stuff <em>really will happen</em> like this, just because it&rsquo;ll be that easy. The machine can optimize, but that&rsquo;s not the only thing that matters.</p>
<p>People who understand <a href="/blog/2025/08/10/when-everyone-gets-a-genie/">how things work will still be required</a>, but maybe more like mechanics than the pure programmers of today. At the end of the day, <a href="/blog/2025/07/24/your-name-is-still-on-it/">humans get fired, not genies</a>, so we gotta keep ourselves in the driving seat.</p>
]]></content:encoded></item><item><title>Thoughts on Welcome to Gas Town by Bill De hÓra</title><link>https://bjorn.now/link/2026-03-01-initial-thoughts-on-welcome-to-gas-town-by-bill-de-hora/?utm_medium=feed</link><pubDate>Sun, 01 Mar 2026 21:59:12 +0100</pubDate><guid>https://bjorn.now/link/2026-03-01-initial-thoughts-on-welcome-to-gas-town-by-bill-de-hora/</guid><description>Thoughts on Welcome to Gas Town by Bill de hÓra:
Steve’s description of Gas Town itself reads like a mash-up of social deduction game mechanics, control-plane software, and management theory. It feels, especially on the latter aspect, heavily designed in a modernist urban planning sense. Personally, for AI and agent-driven development, I find myself veering toward constraint-based approaches: establish invariants/laws and let agents explore within them. Gas Town can be read as an attempt to define invariants through roles that allow agents to make progress in an eyes-off/hands-off way. And so my first take is that it leans /hard/ into roles and division of labour. I keep wondering whether some kind of ‘physics’ or rubric-based approach might ultimately be the better primitives. To be fair, you have to start somewhere; there needs to be a bootstrap. And Gas Town, importantly, actually exists.</description><content:encoded><![CDATA[<p><a href="https://dehora.net/journal/2026/2/initial-thoughts-on-welcome-to-gas-town">Thoughts on Welcome to Gas Town</a> by Bill de hÓra:</p>
<blockquote>
<p>Steve’s description of Gas Town itself reads like a mash-up of social deduction game mechanics, control-plane software, and management theory. It feels, especially on the latter aspect, heavily designed in a <a href="https://en.wikipedia.org/wiki/From_Bauhaus_to_Our_House">modernist urban planning</a> sense. Personally, for AI and agent-driven development, <strong>I find myself veering toward constraint-based approaches: establish invariants/laws and let agents explore within them.</strong> Gas Town can be read as an attempt to define invariants through roles that allow agents to make progress in an eyes-off/hands-off way. And so my first take is that it leans /hard/ into roles and division of labour. I keep wondering whether some kind of ‘physics’ or rubric-based approach might ultimately be the better primitives. To be fair, you have to start somewhere; there needs to be a bootstrap. And Gas Town, importantly, actually exists.</p>
</blockquote>
<p>(my bolding), from reading and trying to understand more around vibe coding/agentic engineering this is where my thinking is heading too, but more for my own work rather than designing a system like Gas Town.</p>
<p>I also found this writeup matched what I had been picking out from looking at Gas Town so it makes me think I&rsquo;ve understood things, at least it aligns with someone else&rsquo;s digging. 🙂</p>
<blockquote>
<p>On re-reading, I noticed, or felt, a serious underlying urgency, even anxiety to Steve’s post.</p>
</blockquote>
<p>I have to agree with Bill on this too, there seems to be something of urgency at work. 🤷</p>
<hr>
<p>Because I got a bit shy from burning tokens Thursday (which turns out to have been <a href="https://x.com/trq212/status/2027232172810416493">a bug with Anthropic and they reset everyone&rsquo;s quotas</a>) I have been trying to learn more around vibing and I&rsquo;ve been using <a href="https://github.com/steveyegge/beads">beads</a> alone to understand the concepts. And what I&rsquo;m doing right now is creating the first constraints/invariants, or <a href="/crumb/2026-02-26-how-steve-yegge-gets-quality-when-vibing/">principles as Steve called them</a>, and will see how the design of the system I want to build turns out when I let it loose tomorrow.</p>
<p>I believe I have overdesigned, but it was fun doing, so there&rsquo;s at least that, and I hope I&rsquo;ll have the first couple of constraints in place soon so I can try and run through some actual design work. Or we start over.</p>
]]></content:encoded></item><item><title>Becoming More by Martijn Faassen</title><link>https://bjorn.now/link/2026-02-25-becoming-more-by-martijn-faassen/?utm_medium=feed</link><pubDate>Wed, 25 Feb 2026 17:17:24 +0100</pubDate><guid>https://bjorn.now/link/2026-02-25-becoming-more-by-martijn-faassen/</guid><description>Becoming More by Martijn Faassen:
I want to admit that this AI/human me, this centaur me – my human understanding is on occasion limited. I lean on the AI quite a bit. Perhaps it isn’t genuine understanding. A tricky question in epistemology. Let’s not even talk about the AI understanding something, or not.
I do know this. I’ve always leaned on other people’s understanding - I’ve reused computers, programming languages, software libraries, implemented algorithms from books and wikipedia. I’ve used search engines. This is more broad than software development. I am limited and don’t understand everything about the world as it’s far, far too much. I stand on the shoulders of giants.</description><content:encoded><![CDATA[<p><a href="https://blog.startifact.com/posts/becoming-more/">Becoming More</a> by Martijn Faassen:</p>
<blockquote>
<p>I want to admit that this AI/human me, this centaur me &ndash; my human understanding is on occasion limited. I lean on the AI quite a bit. Perhaps it isn&rsquo;t genuine understanding. A tricky question in epistemology. Let&rsquo;s not even talk about the AI understanding something, or not.</p>
<p>I do know this. I&rsquo;ve always leaned on other people&rsquo;s understanding - I&rsquo;ve reused computers, programming languages, software libraries, implemented algorithms from books and wikipedia. I&rsquo;ve used search engines. This is more broad than software development. I am limited and don&rsquo;t understand everything about the world as it&rsquo;s far, far too much. I stand on the shoulders of giants.</p>
<p>And that&rsquo;s okay. I&rsquo;m still empowered.</p>
<p>Let this empowerment sink in. Have you realized what this means? Have you realized what you can do now as a software developer?</p>
<p>I can use AI to do more. Not be more productive, that&rsquo;s boring and that&rsquo;s debatable.</p>
</blockquote>
<p>Amen Martijn. I saw someone saying that if the AI tools worked really well, then employers would be forbidding them because people would be using them in order to work less. Because if you have an expectation of what could get done, then if you find a way of getting it done faster so you can go home, isn&rsquo;t that okay? But for some group of employers that&rsquo;d be tantamount to stealing!!1one</p>
<p>Now, there is a counter to this argument, Steve Yegge says in <a href="https://steve-yegge.medium.com/the-ai-vampire-eda6e4f07163">The AI Vampire</a>:</p>
<blockquote>
<p>Now let’s look at Scenario B. You decide instead that you will only work for an hour a day, and aim to keep up with your peers using AI. On that heavily reduced workload, you manage to scrape by, and nobody notices.</p>
<p>In this scenario, you capture 100% of the value from your adopting AI.</p>
<p>In this scenario, your company goes out of business. I’m sorry, but your victory over The Man will be pyrrhic, because The Man is about to be kicked in The Balls, since with everyone slacking off, a competitor will take them out pretty fast.</p>
</blockquote>
<p>I don&rsquo;t know, maybe? I think there are certain types of jobs that will absolutely end up folding if they keep at current levels of work done without change. History shows sitting on an advantage without adjusting is not optimal for survival. And to be fair, Yegge&rsquo;s post is <em>against</em> the grind culture and about finding a balance augmented by AI and to not become a hollow shell that commands the genie.</p>
<p>At the same time, I&rsquo;ve started my own company, and I&rsquo;m doing my best to not grind like I did working for others. I do have some runway from that work, but I hope there&rsquo;ll be enough work coming in (or products built that makes money) that I&rsquo;ll make do.</p>
<p>Instead, I have some work that helps me stay afloat, and it has given me time where I can play and explore. Maybe I can leverage it soon, maybe it becomes a rusty tool in the toolbox, or the cornerstone for something new.</p>
<p>Either way, I&rsquo;m becoming more, as Martijn said.</p>
]]></content:encoded></item><item><title>Robby Russel - Most developers dont build new things</title><link>https://bjorn.now/link/2026-02-19-robby-russel-most-developers-dont-build-new-things/?utm_medium=feed</link><pubDate>Thu, 19 Feb 2026 09:58:42 +0100</pubDate><guid>https://bjorn.now/link/2026-02-19-robby-russel-most-developers-dont-build-new-things/</guid><description>Most developers don’t build new things by Robby Russell:
We inherit. We understand. We stabilize. We extend. We improve what we can without destabilizing what already works.
This kind of work rarely attracts attention. It looks like incremental improvement and steady compounding over time.
But if most of your career is going to be spent in the second act, then the real question isn’t whether you get to start something new.</description><content:encoded><![CDATA[<p><a href="https://robbyonrails.com/articles/2026/02/18/most-developers-dont-build-new-things/">Most developers don&rsquo;t build new things</a> by Robby Russell:</p>
<blockquote>
<p>We inherit. We understand. We stabilize. We extend. We improve what we can without destabilizing what already works.</p>
<p>This kind of work rarely attracts attention. It looks like incremental improvement and steady compounding over time.</p>
<p>But if most of your career is going to be spent in the second act, then the real question isn’t whether you get to start something new.</p>
<p>It’s whether what you inherit gets better because you were there.</p>
</blockquote>
<p>I fully agree with Robby, the big piece of what we do day-to-day is making sure we have a better tomorrow in the systems we&rsquo;re part of maintaining, and that&rsquo;s the lens we should be looking through.</p>
<p>For example, right now I&rsquo;ve been working on an old system that&rsquo;s great at what it does and the business is happy with it, but it&rsquo;s not much fun to maintain. I have been using genies to help me and it&rsquo;s been a world of difference in how long it&rsquo;ll take to work on.</p>
<p>Yet, I spent a couple of hours yesterday manually verifying a long list of numbers to ensure we didn&rsquo;t break any calculations or displays in the workflow I have been changing. Because the system is a legacy one per Michael Feather&rsquo;s definition: it <a href="https://understandlegacycode.com/blog/what-is-legacy-code-is-it-code-without-tests/">didn&rsquo;t have any tests</a> before I started working on it, and it&rsquo;s <a href="/blog/2025/07/24/your-name-is-still-on-it/">my name on it</a>, so as we&rsquo;re about to take it to production I need to do my best to ensure it will work. That&rsquo;s the work.</p>
]]></content:encoded></item><item><title>Relocating Rigor by Chad Fowler</title><link>https://bjorn.now/link/2026-01-28-relocating-rigor-by-chad-fowler/?utm_medium=feed</link><pubDate>Wed, 28 Jan 2026 12:30:45 +0100</pubDate><guid>https://bjorn.now/link/2026-01-28-relocating-rigor-by-chad-fowler/</guid><description>Relocating Rigor by Chad Fowler (via Muthu).
Generative systems only work if invariants are explicit rather than implicit. Interfaces must be real contracts, not incidental boundaries. Evaluation must be ruthless. Failures must be loud and immediate. The engineer’s job shifts from typing code to specifying intent and verifying outcomes.
This is very much how I’m currently thinking about working with AIs. I have been using genies to work in a legacy codebase (defined as no tests) I’m new to, and in a language and platform I have barely worked on, and I’m being useful.</description><content:encoded><![CDATA[<p><a href="https://aicoding.leaflet.pub/3mbrvhyye4k2e">Relocating Rigor</a> by Chad Fowler (via Muthu).</p>
<blockquote>
<p>Generative systems only work if invariants are explicit rather than implicit. Interfaces must be real contracts, not incidental boundaries. Evaluation must be ruthless. Failures must be loud and immediate. The engineer&rsquo;s job shifts from typing code to specifying intent and verifying outcomes.</p>
</blockquote>
<p>This is very much how I&rsquo;m currently thinking about working with AIs. I have been using genies to work in a legacy codebase (defined as no tests) I&rsquo;m new to, and in a language and platform I have barely worked on, and I&rsquo;m being useful.</p>
<p>I think it&rsquo;s because I decided to introduce tests to the codebase, verify the existing behavior for the flow I&rsquo;m changing, and then write my new feature as a failing test. Then the genie has been able to iterate while I think about the changes and how they could fail.</p>
<p>For example, we had to move some columns into a new table, and while the code kept the <code>if null then 0</code> pattern that existed, I worried it might be overly &ldquo;safe&rdquo; and that it would return <code>0</code> because the relationship hadn&rsquo;t been loaded. So we traced through all the call sites to see that we also loaded that relationship from the DB, and the genie gave me a report I could follow and easily verify.</p>
]]></content:encoded></item><item><title>Explainle: a daily game to describe words</title><link>https://bjorn.now/link/2025-10-24-explainle-a-daily-game-to-describe-words/?utm_medium=feed</link><pubDate>Fri, 24 Oct 2025 14:42:18 +0200</pubDate><guid>https://bjorn.now/link/2025-10-24-explainle-a-daily-game-to-describe-words/</guid><description>I have enjoyed doing the daily Explainle.org for the last couple of days. It triggers some of the fun bits of language for me. 🙂
The twist compared to straight up “the opposite of this” is that there are “forbidden words” that you’re not allowed to use, and only 100 characters.
Luckily for me, it’s relying on an LLM and is therefore quite nerdy, so I can explain it in language I understand</description><content:encoded><![CDATA[<p>I have enjoyed doing the daily <a href="https://explainle.org?utm_source=bjorn.now">Explainle.org</a>
for the last couple of days. It triggers some of the fun bits of language for me. 🙂</p>
<p>The twist compared to straight up &ldquo;the opposite of this&rdquo; is that
there are &ldquo;forbidden words&rdquo; that you&rsquo;re not allowed to use,
and only 100 characters.</p>
<figure><img src="/img/2025/10-explainle.jpeg"
    alt="Screenshot of Explainle game showing the word AGGREGATE with forbidden words (total, sum, combine, collection, accumulate) crossed out. Previous attempt shows explanation &#39;an SQL AVG statement needs a GROUP BY because it&#39;s an...&#39; with the guess AGGREGATE marked correct with a green checkmark."><figcaption>
      <p>Luckily for me, it&rsquo;s relying on an LLM and is therefore quite nerdy, so I can explain it in language <em>I</em> understand</p>
    </figcaption>
</figure>

]]></content:encoded></item><item><title>Disposable vs Durable code</title><link>https://bjorn.now/link/2025-10-23-disposable-vs-durable-code/?utm_medium=feed</link><pubDate>Thu, 23 Oct 2025 13:30:43 +0200</pubDate><guid>https://bjorn.now/link/2025-10-23-disposable-vs-durable-code/</guid><description>Disposable code is here to stay by Charity Majors.
I like the distinction between disposable and durable code: it’s about whether you try to make the code maintainable or not. Most code when working at a company is durable code, because the outcome when we get it wrong is so high (even if it’s just the risk of losing money or at worst, our job).
And the idea that we can experiment, create POCs, the 10 variations of an idea to see which one works better… that’s great. Work with the genie and figure it out, then spend the proper time and effort making it durable.</description><content:encoded><![CDATA[<p><a href="https://www.honeycomb.io/blog/disposable-code-is-here-to-stay">Disposable code is here to stay</a> by Charity Majors.</p>
<p>I like the distinction between disposable and durable code:
it&rsquo;s about whether you try to make the code maintainable or not.
Most code when working at a company is durable code,
because the outcome when we get it wrong is so high
(even if it&rsquo;s just the risk of losing money or at worst, our job).</p>
<p>And the idea that we can experiment, create POCs,
the 10 variations of an idea to see which one works better… that&rsquo;s great.
Work with the genie and figure it out,
then spend the proper time and effort making it durable.</p>
<blockquote>
<p>Durable code is used when the stakes are high, the losses are material, the ripple effects of failure or performance changes throughout the system are complex and unpredictable. Highly regulated industries require durable software.<br>
[…]<br>
Here’s one (unscientific) rule of thumb: the lower on the stack you go, the closer you get to laying bits down on disk, the more dependable and predictable our software has to be. Databases and operating systems will be durable code til the stars die out.<br>
[…]<br>
The difference between disposable code and durable code is not about whether the code was generated by AI or written by a human, or even how difficult it was to write. The cost is defined by the standards you are building to, and the rest of the software development lifecycle: how well you expect to maintain it, extend it, migrate it, understand its behavior, or fix it when it breaks. This is the expensive part of software development, the type that requires deep expertise and familiarity with your language and environment. Disposable code is cheap because you don’t even try to maintain it.<br>
[…]<br>
This isn’t about “using AI” vs. “not using AI,” or even about generating code vs. not generating code. It’s about understanding the cost model and the risk profile of the type of development you’re engaged in.<br>
[…]<br>
If it’s easy to achieve proficiency with disposable code generation tools, it probably won’t be thought of as software development (and the pay scale will drop accordingly). If I had to guess, I suspect it won’t be a profession at all so much as a skill set, much like typing or spreadsheets, that any tech-literate modern worker is expected to pick up in order to perform the functions of their job in marketing, sales, product, design, etc.<br>
[…]<br>
The coordination tax on large groups is enormous; if AI can help a smaller number of engineers own more product surface and move faster with more confidence, <em>that’s exciting</em>.</p>
</blockquote>
<p>As Charity says, I think there likely will be changes in what programming,
or rather, software development, is.
Just as it <a href="https://bjorn.now/blog/2025/08/10/when-everyone-gets-a-genie/">did with typing before</a>,
a skill every office worker just need to have. Not that all of us are writers, just because of it.</p>
<p>I&rsquo;m also excited at how working with a genie might open up codebases,
so you need fewer people to own and maintain larger codebases (because maintenance is in communication within a team).</p>
<p>For example, I recently contributed to a new codebase in relatively little time
and it was done so fast to the genie figuring out where to make changes.
Even if I had to change most of it,
because the quality wasn&rsquo;t at the level where I wanted to <a href="https://bjorn.now/blog/2025/07/24/your-name-is-still-on-it/">put my name on it.</a></p>
]]></content:encoded></item><item><title>Which of your colleagues are screwed?</title><link>https://bjorn.now/link/2025-08-28-which-of-your-colleagues-are-screwed/?utm_medium=feed</link><pubDate>Thu, 28 Aug 2025 06:02:42 +0530</pubDate><guid>https://bjorn.now/link/2025-08-28-which-of-your-colleagues-are-screwed/</guid><description>Justin Searls asks which of your colleagues are screwed?
I’ve been writing about how AI is likely to affect white-collar (or no-collar or hoodie-wearing) computer programmers […] Think about a random colleague you don’t feel particularly strongly about as you read the following pithy and reductive bullet points. […] They’re going to be screwed if they exhibit:
Curiosity without skepticism Strategy without experiments Ability without understanding Productivity without urgency Creativity without taste Certainty without evidence I recently said that I think curiosity is what makes a good software engineer, and gave examples of when/how they should be curious, but never pointed out that it has to come with a balancing function.</description><content:encoded><![CDATA[<p>Justin Searls asks <a href="https://justin.searls.co/posts/which-of-your-colleagues-are-screwed/">which of your colleagues are screwed?</a></p>
<blockquote>
<p>I&rsquo;ve been writing about how AI is likely to affect white-collar (or no-collar or hoodie-wearing) computer programmers […]
Think about a random colleague you don&rsquo;t feel particularly strongly about as you read the following pithy and reductive bullet points. […]
They&rsquo;re going to be screwed if they exhibit:</p>
<ul>
<li>Curiosity without skepticism</li>
<li>Strategy without experiments</li>
<li>Ability without understanding</li>
<li>Productivity without urgency</li>
<li>Creativity without taste</li>
<li>Certainty without evidence</li>
</ul>
</blockquote>
<p>I recently said that I think <a href="/blog/2025/08/21/what-makes-a-good-software-engineer/">curiosity is what makes a good software engineer</a>, and gave examples of when/how they should be curious, but never pointed out that it has to come with a balancing function.</p>
<p>I can&rsquo;t think of anything done 100% full-throttle that isn&rsquo;t detrimental without something to balance it, but it&rsquo;s tacit and not something I often think about immediately. For example, if you live your life 100% in service it will be limiting, a bit of selfishness is required, see <a href="https://www.youtube.com/watch?v=HPEwD7WpI9g">Doug Forcett from The Good Place</a>.</p>
]]></content:encoded></item><item><title>Return of multi-tasking? by Kent Beck</title><link>https://bjorn.now/link/2025-08-26-return-of-multi-tasking/?utm_medium=feed</link><pubDate>Tue, 26 Aug 2025 18:53:02 +0800</pubDate><guid>https://bjorn.now/link/2025-08-26-return-of-multi-tasking/</guid><description> Kent Beck has a subscriber post called return of Multi-tasking? where he’s realizing he’s more often working on different things across a day now that he’s working with genies. Less time doing clackety-clack and more time thinking about next steps (or napping for epiphanies).
I’ve noticed the same pattern, this “productive multi-tasking” where you shift to something else when you’re stuck or “cogitating in the background.” Whether it’s waiting for feedback, getting help from the CI team (why won’t their plugin inject the AWS credentials it’s supposed to?), or just running out of brain juice and needing to let things percolate (which I want to remember Slow Productivity also recommends, especially for more nebulous work).</description><content:encoded><![CDATA[<hr>
<p>Kent Beck has a subscriber post called <a href="https://tidyfirst.substack.com/p/return-of-multi-tasking">return of Multi-tasking?</a> where he&rsquo;s realizing he&rsquo;s more often working on different things across a day now that he&rsquo;s working with genies. Less time doing clackety-clack and more time thinking about next steps (or napping for epiphanies).</p>
<p>I&rsquo;ve noticed the same pattern, this &ldquo;productive multi-tasking&rdquo; where you shift to something else when you&rsquo;re stuck or &ldquo;cogitating in the background.&rdquo; Whether it&rsquo;s waiting for feedback, getting help from the CI team (why won&rsquo;t their plugin inject the AWS credentials it&rsquo;s supposed to?), or just running out of brain juice and needing to let things percolate (which I want to remember <a href="https://calnewport.com/slow/">Slow Productivity</a> also recommends, especially for more nebulous work).</p>
]]></content:encoded></item><item><title>Life never gave us lemons, we invented them all by ourselves</title><link>https://bjorn.now/link/2025-08-26-life-never-gave-us-lemons/?utm_medium=feed</link><pubDate>Tue, 26 Aug 2025 18:01:11 +0800</pubDate><guid>https://bjorn.now/link/2025-08-26-life-never-gave-us-lemons/</guid><description> …because someone said in a meeting to use the lemons to make lemonade and this started shouting in my mind</description><content:encoded><![CDATA[<div style="position: relative; padding-bottom: 56.25%; height: 0; overflow: hidden;">
      <iframe allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share; fullscreen" loading="eager" referrerpolicy="strict-origin-when-cross-origin" src="https://www.youtube.com/embed/bfDHBcKqwfk?autoplay=0&amp;controls=1&amp;end=0&amp;loop=0&amp;mute=0&amp;start=0" style="position: absolute; top: 0; left: 0; width: 100%; height: 100%; border:0;" title="YouTube video"></iframe>
    </div>

<p>…because someone said in a meeting to use the lemons to make lemonade and this started shouting in my mind</p>
]]></content:encoded></item><item><title>Use Commas as Prefix for Your Scripts</title><link>https://bjorn.now/link/2025-08-13-use-commas-as-prefix-for-your-scripts/?utm_medium=feed</link><pubDate>Wed, 13 Aug 2025 08:28:11 +0800</pubDate><guid>https://bjorn.now/link/2025-08-13-use-commas-as-prefix-for-your-scripts/</guid><description>Commands with commas: I came across this a couple of years ago, and I’ve been using it for my new scripts since.
Debian today supports a huge number of commands; my modest Ubuntu laptop shows several thousand available:
$ apt-file search -x ‘^/usr/bin/[^/]*$’ | wc -l
21733
The solution was obviously to adjust my command names in such a way that they were still easy to type, but would never be chosen as system command names.
[…]</description><content:encoded><![CDATA[<p><a href="https://rhodesmill.org/brandon/2009/commands-with-comma/">Commands with commas</a>: I came across this a couple of years ago, and I&rsquo;ve been using it for <a href="https://github.com/gaqzi/conf/tree/master/bin">my new scripts since.</a></p>
<blockquote>
<p>Debian today supports a huge number of commands; my modest Ubuntu laptop shows several thousand available:</p>
<blockquote>
<p>$ apt-file search -x &lsquo;^/usr/bin/[^/]*$&rsquo; | wc -l<br>
21733</p>
</blockquote>
<p>The solution was obviously to adjust my command names in such a way that they were still easy to type, but would never be chosen as system command names.<br>
[…]</p>
<p><strong>There was but one character left: the simple, modest comma.</strong></p>
<p>A quick experiment revealed in a flash that the comma was exactly the character that I had been looking for! Every tool and shell that lay in arm&rsquo;s reach treated the comma as a perfectly normal and unobjectionable character in a filename.[…]</p>
<p>And, best of all, <strong>thanks to the magic of tab-completion, it became very easy to browse my entire collection of commands</strong>. […]<br>
I simply type a comma followed by tab and my list of commands appears</p>
</blockquote>
]]></content:encoded></item><item><title>Simon Sinek on AI and the value of struggle</title><link>https://bjorn.now/link/2025-08-10-simon-sinek-on-the-value-of-struggle/?utm_medium=feed</link><pubDate>Sun, 10 Aug 2025 21:42:17 +0800</pubDate><guid>https://bjorn.now/link/2025-08-10-simon-sinek-on-the-value-of-struggle/</guid><description>Simon Sinek on AI and the value of struggle, via Arjit:
People keep telling us life is not about the destination. Life is about the journey. But when we think about AI, we only think about the destination. And it’s remarkable ability to write the book, paint the painting, solve the problem, but we forget the importance of doing the work yourself.
And I think in our modern day and age, we have underrepresented the value of struggle. I am smarter, better at problem solving, more resourceful, not because a book exists with my ideas in it, but because I wrote it. That excruciating journey is what made me grow.</description><content:encoded><![CDATA[<p><a href="https://podscripts.co/podcasts/the-diary-of-a-ceo-with-steven-bartlett/simon-sinek-youre-being-lied-to-about-ais-real-purpose-and-were-teaching-our-kids-to-not-be-human">Simon Sinek on AI and the value of struggle</a>, via Arjit:</p>
<blockquote>
<p>People keep telling us life is not about the destination. Life is about the journey. But when we think about AI, we only think about the destination. And it&rsquo;s remarkable ability to write the book, paint the painting, solve the problem, but we forget the importance of doing the work yourself.</p>
<p>And I think <strong>in our modern day and age, we have underrepresented the value of struggle.  I am smarter, better at problem solving, more resourceful, not because a book exists with my ideas in it, but because I wrote it. That excruciating journey is what made me grow.</strong></p>
<p>But it&rsquo;s the same for love, friendships, conflict. And I think that we forget that we give up certain skills or abilities because of technology.</p>
</blockquote>
<p>The struggle is the point. More people can generate a mediocre painting or write perfect English now, but they won&rsquo;t understand the beauty behind either without doing the work. And it&rsquo;s our prerogative to decide which struggles matter to us or if we just wanted something nice to hang in the toilet.</p>
]]></content:encoded></item><item><title>Socrates on writing and learning</title><link>https://bjorn.now/link/2025-08-10-socrates-on-writing/?utm_medium=feed</link><pubDate>Sun, 10 Aug 2025 19:53:07 +0800</pubDate><guid>https://bjorn.now/link/2025-08-10-socrates-on-writing/</guid><description>Went looking for that old ‘kids today don’t memorize’ quote and found an old argument against writing:
[…] They will cease to exercise memory because they rely on that which is written, calling things to remembrance no longer from within themselves, but by means of external marks. […]
One thing we’re not doing as effectively today as we’ve done in the past is to learn lessons by heart. If you don’t know things with perfect recall, how can you expect to apply them?</description><content:encoded><![CDATA[<p>Went looking for that old &lsquo;kids today don&rsquo;t memorize&rsquo; quote and found <a href="https://fs.blog/an-old-argument-against-writing/">an old argument against writing</a>:</p>
<blockquote>
<blockquote>
<p>[…] <strong>They will cease to exercise memory because they rely on that which is written, calling things to remembrance no longer from within themselves, but by means of external marks.</strong> […]</p>
</blockquote>
<p>One thing we’re not doing as effectively today as we’ve done in the past is to learn lessons by heart. If you don’t know things with perfect recall, how can you expect to apply them?</p>
<p>Socrates goes on to compare a written text to a painting:</p>
<blockquote>
<p>You know, Phaedrus, that is the strange thing about writing, which makes it truly correspond to painting. The painter’s products stand before us as though they were alive. But if you question them, they maintain a most majestic silence. It is the same with written words. They seem to talk to you as though they were intelligent, but if you ask them anything about what they say from a desire to be instructed they go on telling just the same thing forever.</p>
</blockquote>
</blockquote>
<p>That last bit especially, &ldquo;if you ask them anything&hellip; they go on telling just the same thing forever.&rdquo;
This all sounds exactly like how we&rsquo;re talking about genies today, and… we&rsquo;re probably going to be fine.</p>
]]></content:encoded></item></channel></rss>