<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
    <channel>
        <title><![CDATA[ Carlos&#039; Dev Stream - pckt ]]></title>
        <link><![CDATA[ https://dev-stream.pckt.blog ]]></link>
        <description><![CDATA[  ]]></description>
        <language>en</language>
        <pubDate>Fri, 01 May 2026 06:17:04 +0000</pubDate>

                    <item>
                <title>I think AI is swapping code debt for tooling debt</title>
                <link>https://dev-stream.pckt.blog/i-think-ai-is-swapping-code-debt-for-tooling-debt-em3b48c</link>
                <description><![CDATA[I talked with an engineer recently who told me he was single-handedly (or rather, Claude-handedly) paying down tech debt in his company&#039;s codebase. And, at the same time, implementing a bunch of tools in their CI to catch all the kinds of quality slop problems that vibe coding everything could bring with it. I am thinking that this is representative of switching to a new mode of thinking about tech debt. The classic tech debt is code. Code debt starts at 0, when you have 0 code. When you add mor...]]></description>
                <author>Carlos&#039; Dev Stream</author>
                <guid isPermaLink="false">i-think-ai-is-swapping-code-debt-for-tooling-debt-em3b48c</guid>
                <pubDate>Wed, 25 Feb 2026 14:24:06 +0000</pubDate>
                            </item>
                    <item>
                <title>APFS is case-sensitive on first write and case-insensitive afterwards</title>
                <link>https://dev-stream.pckt.blog/apfs-is-case-sensitive-on-first-write-and-case-insensitive-afterwards-4gra1tq</link>
                <description><![CDATA[APFS on macOS is case-insensitive by default. I guess this is done to keep traditions, since HFS+ (its predecessor) was case-insensitive by default too; and I actually think it is, in general, a good idea. Most persons, technical or not, would usually regard a document titled Financial results the same as Financial Results in the real world; so Apple translated that expectation to the computer world. The implementation is done like this: when you write a file for the first time, it will actually...]]></description>
                <author>Carlos&#039; Dev Stream</author>
                <guid isPermaLink="false">apfs-is-case-sensitive-on-first-write-and-case-insensitive-afterwards-4gra1tq</guid>
                <pubDate>Thu, 29 Jan 2026 09:11:59 +0000</pubDate>
                            </item>
                    <item>
                <title>TIL: `join` over `(-&gt;)`</title>
                <link>https://dev-stream.pckt.blog/til-join-over-dfm23ru</link>
                <description><![CDATA[I discovered a neat pattern: using join with the function arrow ((-)) as a Monad. When you join over functions, you get: This lets you pass the same argument twice: once to determine what to do, and another to actually do it. In , we have validators with the signature type Validator = input - Validation. Most of our validation helpers are written in a point-free, un-applied style, which works great, except recently when I needed to inspect the input to decide which validator to run.]]></description>
                <author>Carlos&#039; Dev Stream</author>
                <guid isPermaLink="false">til-join-over-dfm23ru</guid>
                <pubDate>Fri, 23 Jan 2026 09:41:41 +0000</pubDate>
                            </item>
                    <item>
                <title>TIL: AbortSignal.timeout</title>
                <link>https://dev-stream.pckt.blog/til-abortsignaltimeout-62fkgjz</link>
                <description><![CDATA[For Promise timeouts, I was overworrying about doing setTimeouts with an AbortController, and cleaning them up afterwards to avoid memory leaks: The gods of JS smiled in my favor this week when I found out about AbortSignal.timeout (thanks to ). It simplifies timeouts to a single call:]]></description>
                <author>Carlos&#039; Dev Stream</author>
                <guid isPermaLink="false">til-abortsignaltimeout-62fkgjz</guid>
                <pubDate>Fri, 23 Jan 2026 09:16:19 +0000</pubDate>
                            </item>
            </channel>
</rss>