<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>seanmonstar - Micro</title>
    <description>My name is Sean McArthur, and here I blabber on about Rust, networking, open source, and a better web.
</description>
    <link>https://seanmonstar.com/micro</link>
    <atom:link href="https://seanmonstar.com/micro/rss/" rel="self" type="application/rss+xml"/>
    <pubDate>Wed, 29 Jul 2026 13:21:58 +0000</pubDate>
    <lastBuildDate>Wed, 29 Jul 2026 13:21:58 +0000</lastBuildDate>
    <generator>Jekyll v3.10.0</generator>
    
    
      <item>
        <title>I want your own words</title>
        <description>&lt;p&gt;If you choose to communicate with me, all I ask is that you use your own words. Bug reports and issues. Pull request descriptions and especially review comments. This isn’t new, but I wanted a link of my own.&lt;/p&gt;

&lt;p&gt;LLMs write way &lt;em&gt;way&lt;/em&gt; too much. I don’t know if you understood it enough for me to ask questions back. They don’t use reasoning, so is it real? If you didn’t care enough to write it, do I care to read it?&lt;/p&gt;

&lt;p&gt;I’m torn when I receive LLMed reports. Initially, I really don’t want to read all that. But at the same time, my mind nags me; something’s broken and I should fix it for everyone. If it makes it easier for someone to report a bug, that’s a pro, I guess.&lt;/p&gt;
</description>
        <pubDate>Wed, 29 Jul 2026 00:00:00 +0000</pubDate>
        <link>https://seanmonstar.com/micro/20260729-i-want-your-own-words/</link>
        <guid isPermaLink="true">https://seanmonstar.com/micro/20260729-i-want-your-own-words/</guid>
        
        <category>llms</category>
        
        
      </item>
    
      <item>
        <title>Accessors can reveal internal representation</title>
        <description>&lt;p&gt;As a library maintainer, it’s common to receive requests from users to add a “simple accessor”. The data is &lt;em&gt;right there&lt;/em&gt;. But that accessor can end up revealing internal representation details that you can no longer change.&lt;/p&gt;

&lt;p&gt;This is one reason why it could be a better practice to return an &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;impl Iterator&lt;/code&gt; instead of &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;&amp;amp;[T]&lt;/code&gt;. The latter freezes you in place to always storing the data in consecutive memory. (Such as &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;String::as_bytes()&lt;/code&gt;.)&lt;/p&gt;

&lt;p&gt;View types might help too, like &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;Ref&amp;lt;&apos;_&amp;gt;&lt;/code&gt;. Returning a reference requires the data already exist in that shape in &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;self&lt;/code&gt;. You can’t change its shape in the accessor and return a reference to &lt;em&gt;that&lt;/em&gt;.&lt;/p&gt;
</description>
        <pubDate>Tue, 21 Jul 2026 00:00:00 +0000</pubDate>
        <link>https://seanmonstar.com/micro/20260721-accessors-reveal-internal-repr/</link>
        <guid isPermaLink="true">https://seanmonstar.com/micro/20260721-accessors-reveal-internal-repr/</guid>
        
        <category>rust</category>
        
        
      </item>
    
      <item>
        <title>Rust Errors generally shouldn&apos;t be PartialEq</title>
        <description>&lt;p&gt;Errors might have internal details that don’t make sense to compare. Like positional data, or a source chain. Even if you don’t have those details yet, committing to a public API of &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;PartialEq&lt;/code&gt; can restrict you from internal refactoring.&lt;/p&gt;

&lt;p&gt;The common reason to want this is for testing purposes. People want to assert an error case matches what they expect. But that doesn’t need equality. &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;matches!&lt;/code&gt; , &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;kind()&lt;/code&gt;, or &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;is_*()&lt;/code&gt; patterns fit better.&lt;/p&gt;

&lt;p&gt;A public, exhaustive, flat &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;enum&lt;/code&gt; could choose differently. But those look more like a &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;kind()&lt;/code&gt;. If you have private error details, I don’t think they make sense for comparing.&lt;/p&gt;

&lt;p&gt;Some interesting discussion a &lt;a href=&quot;https://www.reddit.com/r/rust/comments/n12uf9/is_there_a_good_reason_not_to_impl_eqpartialeq/&quot;&gt;few years ago&lt;/a&gt;.&lt;/p&gt;
</description>
        <pubDate>Mon, 13 Jul 2026 00:00:00 +0000</pubDate>
        <link>https://seanmonstar.com/micro/20260713-errors-not-partialeq/</link>
        <guid isPermaLink="true">https://seanmonstar.com/micro/20260713-errors-not-partialeq/</guid>
        
        
      </item>
    
      <item>
        <title>Owning my microblog with POSSE</title>
        <description>&lt;p&gt;&lt;a href=&quot;https://indieweb.org/POSSE&quot;&gt;POSSE&lt;/a&gt; is the practice of publishing on your own site first, and pushing that out to other services. To get the content where people are, while linking back to the original owned post.&lt;/p&gt;

&lt;p&gt;I now have a &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;/micro&lt;/code&gt; blog on my own website, and automation (a GH action) to break up new posts and send them to Mastodon and Bluesky as threads. It even has it’s own &lt;a href=&quot;https://seanmonstar.com/micro/rss&quot;&gt;rss feed&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;This new setup lets me nudge people more towards my own property. As various other properties come and go, my online identity and content lasts longer.&lt;/p&gt;

&lt;p&gt;And it solves one of my &lt;a href=&quot;https://masto.ai/@seanmonstar/109319880660929327&quot;&gt;longer-standing concerns&lt;/a&gt; about microblogging: it feels like they can be more important content now, because they’re &lt;em&gt;mine&lt;/em&gt;.&lt;/p&gt;
</description>
        <pubDate>Tue, 23 Jun 2026 00:00:00 +0000</pubDate>
        <link>https://seanmonstar.com/micro/20260623-owning-my-microblog-with-posse/</link>
        <guid isPermaLink="true">https://seanmonstar.com/micro/20260623-owning-my-microblog-with-posse/</guid>
        
        
      </item>
    
  </channel>
</rss>
