<?xml version="1.0" encoding="UTF-8"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:media="http://search.yahoo.com/mrss/"><channel><title>Sam Collins&apos;s Weblog</title><description>A disorderly collection of shared notes. Words by human; code by clanker.</description><link>https://samcollins.blog/</link><atom:link href="https://samcollins.blog/rss.xml" rel="self" type="application/rss+xml"/><item><title>Defending against npm attacks is hard</title><link>https://samcollins.blog/ssca/</link><guid isPermaLink="true">https://samcollins.blog/mtmP8EHANNcENLom8nx6EtH5</guid><description>Supply-chain attacks are rising. Blocking fresh package installs sounds simple, but enforcing it across npm, pnpm, curl, GitHub etc. is the hard part.</description><pubDate>Fri, 15 May 2026 00:00:00 GMT</pubDate><dc:creator>Sam Collins</dc:creator><media:content url="https://samcollins.blog/og/mtmP8EHANNcENLom8nx6EtH5.jpg" medium="image" type="image/jpeg" width="1200" height="630"/><category>Code &amp; AI</category></item><item><title>Using “underdrawings” for accurate text and numbers</title><link>https://samcollins.blog/underdrawings/</link><guid isPermaLink="true">https://samcollins.blog/mpBwgXS4eDglOEYWLp7EaG0S</guid><description>A technique for accurate text and numbers in AI-generated images: generate the layout deterministically, then ask the image model to paint on top.</description><pubDate>Thu, 30 Apr 2026 00:00:00 GMT</pubDate><dc:creator>Sam Collins</dc:creator><media:content url="https://samcollins.blog/og/mpBwgXS4eDglOEYWLp7EaG0S.jpg" medium="image" type="image/jpeg" width="1200" height="630"/><category>Code &amp; AI</category></item><item><title>Talking with my books</title><link>https://samcollins.blog/talking-books/</link><guid isPermaLink="true">https://samcollins.blog/modQFqJsXJsmygCMHfhmIg8W</guid><description>How to use Claude Code as a tutor for a specific book by importing the full text via @file — and the context-window tradeoffs that come with it.</description><pubDate>Mon, 16 Mar 2026 00:00:00 GMT</pubDate><dc:creator>Sam Collins</dc:creator><media:content url="https://samcollins.blog/og/modQFqJsXJsmygCMHfhmIg8W.jpg" medium="image" type="image/jpeg" width="1200" height="630"/><category>Code &amp; AI</category></item><item><title>Multi-State Checkboxes</title><link>https://samcollins.blog/checkboxes/</link><guid isPermaLink="true">https://samcollins.blog/m2romyfSdPkoK4KQbv3mACnc</guid><description>An expanded markdown checkbox syntax for tasks with more than two states, designed to render cleanly in Obsidian without plugins.</description><pubDate>Tue, 16 Dec 2025 00:00:00 GMT</pubDate><dc:creator>Sam Collins</dc:creator><media:content url="https://samcollins.blog/og/m2romyfSdPkoK4KQbv3mACnc.jpg" medium="image" type="image/jpeg" width="1200" height="630"/><category>Arbitrary Musings</category></item><item><title>Using caps lock for voice transcription (macOS)</title><link>https://samcollins.blog/caps-lock/</link><guid isPermaLink="true">https://samcollins.blog/mnP2fj61V77HvOCrHVI5SkNX</guid><description>Three bash commands to remap Caps Lock as a hotkey on macOS — for triggering voice transcription apps that don&apos;t support it natively.</description><pubDate>Mon, 15 Dec 2025 00:00:00 GMT</pubDate><dc:creator>Sam Collins</dc:creator><media:content url="https://samcollins.blog/og/mnP2fj61V77HvOCrHVI5SkNX.jpg" medium="image" type="image/jpeg" width="1200" height="630"/><category>Code &amp; AI</category></item><item><title>Bicycle for the Mind</title><link>https://samcollins.blog/bicycle/</link><guid isPermaLink="true">https://samcollins.blog/mNcHslVVh1yH232lrZQZ6I</guid><description>On the bicycle for the mind metaphor and what the 1973 Scientific American chart showed me</description><pubDate>Tue, 19 Aug 2025 00:00:00 GMT</pubDate><dc:creator>Sam Collins</dc:creator><media:content url="https://samcollins.blog/og/mNcHslVVh1yH232lrZQZ6I.jpg" medium="image" type="image/jpeg" width="1200" height="630"/><category>Arbitrary Musings</category></item></channel></rss>