<?xml version="1.0" encoding="utf-8"?><feed xmlns="http://www.w3.org/2005/Atom"
    xmlns:fh="http://purl.org/syndication/history/1.0"
    xmlns:at="http://purl.org/atompub/tombstones/1.0">

    <title>busybee</title>
    <subtitle><![CDATA[Music, comics, art, and other stuff, all in one gigantic pile. The web of yesterday, tomorrow!]]></subtitle>
    <link href="https://beesbuzz.biz/feed" rel="self" />
    

    <link href="https://busybee.superfeedr.com" rel="hub" />
    
    <link href="https://beesbuzz.biz/feed?id=6987" rel="prev-archive" />
    
    
    <link href="https://beesbuzz.biz/" />
    <id>tag:beesbuzz.biz,2026-05-12:_all</id>
    <updated>2026-06-11T19:47:40-07:00</updated>

    
    
    <link href="https://beesbuzz.biz/_login/profile" rel="authorization" />
    

    <entry>
        
        <title>fluffy rambles: Fun things!</title>
        <link href="https://beesbuzz.biz/blog/2653-Fun-things" rel="alternate" type="text/html" />
        <published>2026-06-11T19:47:40-07:00</published>
        <updated>2026-06-11T19:47:40-07:00</updated>
        <id>urn:uuid:549f5517-bb72-4b64-b06f-0ca697cabbb9</id>
        <author><name>fluffy</name></author>
        <summary type="html"><![CDATA[<p>Oh yeah so a lot has been going on, this past week especially has been <em>bonkers</em>, and I&rsquo;m super happy about things right now.</p>]]></summary>
        <content type="html"><![CDATA[

		

<p>Oh yeah so a lot has been going on, this past week especially has been <em>bonkers</em>, and I&rsquo;m super happy about things right now.</p>


<h3 id="2653_h3_1_Furality"><a href="https://beesbuzz.biz/blog/2653-Fun-things#2653_h3_1_Furality" class="toc_link"></a>Furality</h3><p><a href="https://furality.org/">Furality</a> went great! I had a lot of fun seeing folks I hadn&rsquo;t seen in a while, a <em>heck</em> of a lot of people checked out my booth, I gained a lot of new fans, and I contributed some of my homemade espresso cups and home-roasted espresso to the charity auction and it helped raise another $1010 for <a href="https://resilientheartsanimalsanctuary.org/">Resilient Hearts</a>! The con as a whole raised something like $115,000! Furries are <em>amazing</em>.</p><p>One fun highlight of the weekend was when I was doing an impromptu set in the Dealer&rsquo;s Den spawn area, and I got a pretty good audience, including some folks who were enraptured by <a href="https://www.youtube.com/watch?v=J2pnu04Y_TI">my booth video</a>. Folks made requests that I play the jingle from it, which I did, and the crowd went wild! And then one person told me that this song had been their new vocal stim all weekend and then they shared a dubstep remix that they did of it, which was hilarious. I failed to remember their name, unfortunately, but if whoever it is would like to say hi, please do so!</p><p>Another fun thing happened where I was in the &ldquo;greymuzzles meetup&rdquo; (I&rsquo;m old lol) and suddenly I heard &ldquo;OMG it&rsquo;s Sockpuppet!&rdquo; and suddenly I was being mobbed by like four people who all wanted to say hi to me, much to the confusion of the other folks I was with.</p><p>I also got to meet Hiyu and Ashtalon, who do the sound and music for Furality, and expressed interest in working with them in the future. They said they don&rsquo;t really have any need for additional sound/music people but who knows what&rsquo;ll happen over the next year.</p><p>Anyway, the response to my espresso cups was pretty amazing. Obviously they wouldn&rsquo;t normally go for $1010 outside of a charity auction but there were a lot of nice comments on them and people saying they&rsquo;d love to have ones like them, and that&rsquo;s gotten me back in the mood for working on ceramics again.</p><h3 id="2653_h3_2_House-stuff"><a href="https://beesbuzz.biz/blog/2653-Fun-things#2653_h3_2_House-stuff" class="toc_link"></a>House stuff</h3><p>Seattle City Light has a home weatherization thing that they do for low-income homeowners, which has got to be a very tiny sliver of a Venn diagram<sup id="r_e2653_fn1"><a href="https://beesbuzz.biz/blog/2653-Fun-things#d_e2653_fn1" rel="footnote">1</a></sup> in these parts but I happen to be within it, so I got an energy audit many months ago. Anyway the audit found a bunch of stuff that needed improving in my house, and this Monday the construction crew came through and fixed it.</p><p>In particular, they redid the insulation in my attic (I had actually paid quite a lot of money for it a few years ago but they did an incomplete job and couldn&rsquo;t get to the whole house for some reason, but when I got a new roof last year I think that opened up some crevices), sealed the sill plate, properly weather-stripped my basement door, and fixed a bunch of other little things. They also upgraded my bathroom exhaust fan and dryer vent. Good stuff.</p><p>I also hired <a href="https://www.starthereorganizing.com/">a home organization consultant</a> for a 5-hour session, which was a bit more than I could handle all at once but it was her minimum session time, and we got <em>so</em> much done. My kitchen and dining room aren&rsquo;t a cluttered mess. My office is much tidier. My basement/studio doesn&rsquo;t feel like a disaster area! I don&rsquo;t dread going down there anymore, so maybe I can start working on music again.</p><p>And of course now that my basement is much better-organized I can consider working on ceramics again, so maybe I&rsquo;ll get back to doing more espresso cups (and other things).</p><p>This also got things to a state where I could finally take care of a project I&rsquo;ve been meaning to do for <em>years</em>; the concrete pad where my old furnace was is a jagged mess that&rsquo;s just wasted space, and I&rsquo;d been planning for quit esome time to fill in the voids with sand and then do a layer of concrete on top, so that I could use it as a space to keep a small refrigerator to keep drinks in. A friend very kindly gave me a spare dorm fridge a few months ago but it&rsquo;s just been sitting around doing nothing, and so today I finally got some bags of sand and concrete delivered and got it&hellip; <em>mostly</em> done. I underestimated how much concrete I needed so I&rsquo;ll need to get another bag to finish the job, but soon I should be able to have nice beverages at the ready.</p><h3 id="2653_h3_3_Music"><a href="https://beesbuzz.biz/blog/2653-Fun-things#2653_h3_3_Music" class="toc_link"></a>Music</h3><p>On the note of music, I am still very inspired to record more of my next album, Misfits, but I&rsquo;ve been <em>super</em> busy, between Furality and all of the <a href="https://sockpuppet.band/live/?date=202606">shows</a> I&rsquo;m doing. I&rsquo;ve also been given a last-minute short set at TPVR, which should be fun.</p><h3 id="2653_h3_4_A-moment-of-Zen"><a href="https://beesbuzz.biz/blog/2653-Fun-things#2653_h3_4_A-moment-of-Zen" class="toc_link"></a>A moment of Zen</h3><p>I&rsquo;m giving <a href="https://zen-browser.app/">Zen Browser</a> another try. It&rsquo;s working a lot better than it did the last time I tried it. The UI is still very <em>strange</em> compared to other current browsers but it&rsquo;s not necessarily a bad thing.</p><p>On a related note, I&rsquo;m still using <a href="https://gram-editor.com/">gram</a> despite its foibles. Emacs didn&rsquo;t stick for me this time around. But there&rsquo;s still some things Sublime Text does better and I might just switch back to it. Intel apps on macOS have been given a stay of execution for another year (as macOS 27 will continue to include Rosetta) so I could stay on version 3 for now, but I&rsquo;ll probably just bite the bullet and pay for 4.</p><h3 id="2653_h3_5_Also-BIRTHDAY"><a href="https://beesbuzz.biz/blog/2653-Fun-things#2653_h3_5_Also-BIRTHDAY" class="toc_link"></a>Also BIRTHDAY</h3><p>I already <a href="https://beesbuzz.biz/blog/15017-2026-birthday-plans">posted about it</a> but holy shit I&rsquo;m turning 48 on Sunday, where did the time go</p><p>When I was a kid I never thought I&rsquo;d make it to 30, and now 50 is just a blink away. And all in all I&rsquo;ve never felt happier with my life, and is it weird to actually feel optimistic for the future? Sure, there&rsquo;s a lot of stuff that&rsquo;s bad <em>now</em>, but <em>now</em> will eventually end.</p><p>We all just gotta keep fighting for the future, because soon the future will be now.</p>

<hr/><ol><li id="d_e2653_fn1"><p>yes I know Venn diagrams don&rsquo;t actually work that way, don&rsquo;t @ me&nbsp;<a href="/blog/2653-Fun-things#r_e2653_fn1" rev="footnote">↩</a></p></li></ol>

<p><a href="https://beesbuzz.biz/blog/2653-Fun-things#comments">comments</a></p>

        
        <a rel="tag" href="https://beesbuzz.biz/blog/?id=2653&amp;tag=blogging">#blogging</a>
        
        <a rel="tag" href="https://beesbuzz.biz/blog/?id=2653&amp;tag=studio">#studio</a>
        
        <a rel="tag" href="https://beesbuzz.biz/blog/?id=2653&amp;tag=furries">#furries</a>
        
        <a rel="tag" href="https://beesbuzz.biz/blog/?id=2653&amp;tag=furality">#Furality</a>
        
        <a rel="tag" href="https://beesbuzz.biz/blog/?id=2653&amp;tag=house-stuff">#house stuff</a>
        

        ]]>



        </content>
        <category term="Blog" label="fluffy rambles" />
        
        
        <category term="Blogging" label="blogging" />
        
        <category term="Studio" label="studio" />
        
        <category term="Furries" label="furries" />
        
        <category term="Furality" label="Furality" />
        
        <category term="HouseStuff" label="house stuff" />
        

        

    </entry>
    <entry>
        
        <title>fluffy rambles: 2026 birthday plans</title>
        <link href="https://beesbuzz.biz/blog/15017-2026-birthday-plans" rel="alternate" type="text/html" />
        <published>2026-06-11T12:47:13-07:00</published>
        <updated>2026-06-11T12:47:13-07:00</updated>
        <id>urn:uuid:0aae0572-2d23-4dd7-99ba-9697a77bb109</id>
        <author><name>fluffy</name></author>
        <summary type="html"><![CDATA[<p>Hey y&#39;all! My birthday is coming up this Sunday. I have the following things going on:</p>]]></summary>
        <content type="html"><![CDATA[

		

<p>Hey y&#39;all! My birthday is coming up this Sunday. I have the following things going on:</p>
<ul>
<li>I&rsquo;ll be spending some time in VR for the <a href="https://transacademy.org/">Trans Academy</a> Trans Pride festival, and in particular will be speaking on the <a href="https://sockpuppet.band/live/2785-trans-academy-music-production-panel">music production panel</a> which is at 10:45 AM, Pacific time</li>
<li>I&rsquo;m going to be seeing <a href="https://tadc.fandom.com/wiki/The_Last_Act">The Amazing Digital Circus: The Last Act</a> at <a href="https://tickets.fandango.com/mobileexpress/seatselection?row_count=546963086&amp;mid=245189&amp;chainCode=AMC&amp;sdate=2026-06-14+19%3A00&amp;tid=aaiya&amp;route=map-seat-map">AMC Pacific Place at 7 PM</a>, and it&rsquo;d be super fun if I had a bunch of friends with me! Right now the theater is completely empty except for me and it&rsquo;d be nice to not be alone <del>like Kinger lol</del></li>
<li>And I guess if we aren&rsquo;t too emotionally destroyed afterwards (or maybe especially if we are!) we could get drinks and snacks somewhere in the dying mall? It&rsquo;d be thematically-appropriate, at least</li>
<li>is the Pacific Place food court even open that late anymore (8:30)? probably not</li>
<li>looks like <a href="https://pacificplaceseattle.com/stores/haidilao-hot-pot-seattle">the hot pot place</a> is, at least</li>
<li>how is <a href="https://pacificplaceseattle.com/stores/midnight-cookie-co">midnight cookie</a> in any way deserving of that name, wtf</li>
<li>help i&rsquo;m trapped in a neverending <code>&lt;ul&gt;</code></li>
</ul>





<p><a href="https://beesbuzz.biz/blog/15017-2026-birthday-plans#comments">comments</a></p>

        
        <a rel="tag" href="https://beesbuzz.biz/blog/?id=15017&amp;tag=birthday">#birthday</a>
        
        <a rel="tag" href="https://beesbuzz.biz/blog/?id=15017&amp;tag=seattle">#Seattle</a>
        
        <a rel="tag" href="https://beesbuzz.biz/blog/?id=15017&amp;tag=vr">#VR</a>
        

        ]]>



        </content>
        <category term="Blog" label="fluffy rambles" />
        
        
        <category term="Birthday" label="birthday" />
        
        <category term="Seattle" label="Seattle" />
        
        <category term="VR" label="VR" />
        

        

    </entry>
    <entry>
        
        <title>Notes: Please Use AI</title>
        <link href="https://beesbuzz.biz/blog/chatter/1628-Please-Use-AI" rel="alternate" type="text/html" />
        <published>2026-06-10T19:14:47-07:00</published>
        <updated>2026-06-10T19:14:47-07:00</updated>
        <id>urn:uuid:ce84f84f-497d-44d1-bf39-ede4b5783afa</id>
        <author><name>fluffy</name></author>
        <summary type="html"><![CDATA[]]></summary>
        <content type="html"><![CDATA[

		






<p><a href="https://beesbuzz.biz/blog/chatter/1628-Please-Use-AI#comments">comments</a></p>

        
        <a rel="tag" href="https://beesbuzz.biz/blog/chatter/?id=1628&amp;tag=ai">#AI</a>
        
        <a rel="tag" href="https://beesbuzz.biz/blog/chatter/?id=1628&amp;tag=poetry">#poetry</a>
        

        ]]>



        </content>
        <category term="Blog" label="fluffy rambles" />
        <category term="Notes" label="Notes" />
        
        
        <category term="AI" label="AI" />
        
        <category term="Poetry" label="poetry" />
        

        

    </entry>
    <entry>
        
        <title>fluffy rambles: Hello Furality folks!</title>
        <link href="https://beesbuzz.biz/blog/13773-Hello-Furality-folks" rel="alternate" type="text/html" />
        <published>2026-06-03T21:09:24-07:00</published>
        <updated>2026-06-03T21:09:24-07:00</updated>
        <id>urn:uuid:554ddd4f-bebf-4139-89dc-c024264042b1</id>
        <author><name>fluffy</name></author>
        <summary type="html"><![CDATA[<p>Yay, <a href="https://furality.org/">Furality</a> is here! I don&rsquo;t know how many people are coming here vs. to <a href="https://sockpuppet.band/">my music site</a> since Furality doesn&rsquo;t give me any dealer&rsquo;s den click metrics or whatever, but welcome all the same.</p>]]></summary>
        <content type="html"><![CDATA[

		

<p>Yay, <a href="https://furality.org/">Furality</a> is here! I don&rsquo;t know how many people are coming here vs. to <a href="https://sockpuppet.band/">my music site</a> since Furality doesn&rsquo;t give me any dealer&rsquo;s den click metrics or whatever, but welcome all the same.</p>
<figure class="images"><iframe loading="lazy" width="560" height="315" src="https://www.youtube.com/embed/J2pnu04Y_TI" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen></iframe></figure>
<p>I already posted a <a href="https://sockpuppet.band/blog/2231-Welcome-Furality-attendees">Furality-specific entry</a> on the blogpuppet, but since this is what I consider my main website, I guess I&rsquo;ll cover all my bases! So, here&rsquo;s another little FAQ.</p>


<h3 id="13773_h3_1_Who-are-you-exactly"><a href="https://beesbuzz.biz/blog/13773-Hello-Furality-folks#13773_h3_1_Who-are-you-exactly" class="toc_link"></a>Who are you, exactly?</h3><p>I&rsquo;m fluffy. That has been my real-life nickname since 2003, well before I renamed my fursona to match (which happened sometime in 2004 or thereabouts).</p><p>Note that &ldquo;fluffy&rdquo; is the name I respond to! Sometimes people call me &ldquo;Sockpuppet&rdquo; but that&rsquo;s my band, not my me. Also sometimes people call me &ldquo;fluffy OwO&rdquo; because I used to have θωθ in my VRChat username to make it unique. Also that&rsquo;s <a href="https://en.wikipedia.org/wiki/Thoth">not how it&rsquo;s pronounced</a>.</p><h3 id="13773_h3_2_What-species-are-you"><a href="https://beesbuzz.biz/blog/13773-Hello-Furality-folks#13773_h3_2_What-species-are-you" class="toc_link"></a>What species are you?</h3><p>Me? I&rsquo;m a human.</p><p>Now, <a href="https://beesbuzz.biz/art/drawings/fluffy/">my <em>fursona</em></a> is a <a href="https://beesbuzz.biz/vrchat/critter/">critter</a>! I have <a href="https://sockpuppet.band/track/species-confusion">a song about it</a>.</p><p>There&rsquo;s vague and inconsistent lore about it. The short version is that it&rsquo;s just a nondescript &ldquo;generic furry&rdquo; that takes on aspects I think of as cute.</p><p>Previously I had a few separate fursonas, most of whom were porcupines, and one was a <a href="https://en.wikipedia.org/wiki/Zork">grue</a>.</p><p>Incidentally, I&rsquo;m <a href="https://beesbuzz.biz/blog/11455-On-therianthropy-and-plurality">not a therian</a>, but I get why people assume I am.</p><h3 id="13773_h3_3_Okay-so-what-is-this-website"><a href="https://beesbuzz.biz/blog/13773-Hello-Furality-folks#13773_h3_3_Okay-so-what-is-this-website" class="toc_link"></a>Okay so what is this website?</h3><p>This site is pretty much a shrine to my ADHD.</p><p>Originally I registered the domain name as a joke (say it out loud if you don&rsquo;t get it), then later I decided to use it to host one of my <a href="https://beesbuzz.biz/comics/">webcomics</a>, and then later still I decided to just use it as my main website for everything else. So pretty much everything I do aside from <a href="https://sockpuppet.band/">music</a> lives here now.</p><p>I don&rsquo;t really post to much here aside from the blog most of the time, although I&rsquo;ve been slowly working on rebuilding my <a href="https://beesbuzz.biz/shop/">shop section</a>. Someday I&rsquo;ll also get back to working on comics too. In particular, I really want to finish both <a href="https://beesbuzz.biz/comics/lewi/">Lewi</a> and <a href="https://beesbuzz.biz/comics/unity/">Unity</a> (no relation to the game engine) someday. But I only have so much energy these days (due to some chronic health issues) and I like to focus primarily on music.</p><h3 id="13773_h3_4_What-else-should-I-look-at-while"><a href="https://beesbuzz.biz/blog/13773-Hello-Furality-folks#13773_h3_4_What-else-should-I-look-at-while" class="toc_link"></a>What else should I look at while I&rsquo;m here?</h3><p>Even though my &ldquo;main thing&rdquo; these days is making music, I still do a decent amount of <a href="https://beesbuzz.biz/code/">software development</a>. My current big projects:</p>
<ul>
<li><a href="https://publ.beesbuzz.biz/">Publ</a>: the software that powers most of my websites (including this one); in need of some major rewriting, unfortunately</li>
<li><a href="https://fluffy.itch.io/bandcrash">Bandcrash</a>: an app to make it easier to encode, self-host, and sell music online</li>
<li><a href="https://github.com/PlaidWeb/Canimus">Canimus</a>: a lightweight protocol for musicians to publish their music to the web with the hope of building a robust, self-hosted, fully-independent streaming network (and I hope to eventually build some client apps for it as well)</li>
</ul>
<p>I&rsquo;m also <a href="https://beesbuzz.biz/food/coffee/">super into coffee</a> which sometimes <a href="https://sockpuppet.band/album/novembeat-2021-lo-fi-beats-to-grind-coffee-to">crosses over with other things</a>.</p><p>I also have a billion hobbies that take varying amounts of time and energy. For a hot minute I was doing ceramics and I&rsquo;m hopefully going to get back into it soon enough (if you came here because of the Furality charity auction and were interested in buying my espresso cups, hi, I see you!) and I also have a bunch of other things I need to get around to listing on my shop. The best way to get notified about those things is probably by <a href="https://beesbuzz.biz/ko-fi">followng me on ko-fi</a>, although any new product releases will also appear in this site&rsquo;s RSS feed.</p><p>Speaking of RSS feeds, you can also subscribe to just the categories that you care about, if you don&rsquo;t want to see <em>everything</em>.</p><h3 id="13773_h3_5_Where-else-can-I-find-you"><a href="https://beesbuzz.biz/blog/13773-Hello-Furality-folks#13773_h3_5_Where-else-can-I-find-you" class="toc_link"></a>Where else can I find you?</h3><p>The linkbar on <a href="https://beesbuzz.biz/">the main page</a> is probably a good starting point. Of all the things there, I&rsquo;m most active <a href="https://beesbuzz.biz/mastodon">on Mastodon</a>. You can also feel free to join <a href="https://beesbuzz.biz/discord">my Discord community</a> which is typically pretty quiet but has some cool people in it.</p><p>And of course <a href="https://vrchat.com/home/user/usr_c3d14129-014b-4d5a-a1af-399237355728">here&rsquo;s my VRChat profile</a>. Feel free to join my <a href="https://vrc.group/MUSIC.1138">music group</a> or get some <a href="https://vrc.group/PLAID.8330">plaid wallpaper for your nameplate</a>.</p>

<p><a href="https://beesbuzz.biz/blog/13773-Hello-Furality-folks#comments">comments</a></p>

        
        <a rel="tag" href="https://beesbuzz.biz/blog/?id=13773&amp;tag=furality">#furality</a>
        
        <a rel="tag" href="https://beesbuzz.biz/blog/?id=13773&amp;tag=vrchat">#VRChat</a>
        
        <a rel="tag" href="https://beesbuzz.biz/blog/?id=13773&amp;tag=furry">#furry</a>
        

        ]]>



        </content>
        <category term="Blog" label="fluffy rambles" />
        
        
        <category term="Furality" label="furality" />
        
        <category term="VRChat" label="VRChat" />
        
        <category term="Furry" label="furry" />
        

        

    </entry>
    <entry>
        
        <title>Apps and Software: Bandcrash</title>
        <link href="https://beesbuzz.biz/shop/software/10876-Bandcrash" rel="alternate" type="text/html" />
        <published>2026-05-23T18:19:20-07:00</published>
        <updated>2026-05-23T18:19:20-07:00</updated>
        <id>urn:uuid:c23b2a51-ec8d-4ca5-8db8-7b9a1f0edd6c</id>
        <author><name>fluffy</name></author>
        <summary type="html"><![CDATA[<p> </p>]]></summary>
        <content type="html"><![CDATA[

		


<figure class="images"><a href="https://beesbuzz.biz/shop/software/10876-Bandcrash"><img src="https://beesbuzz.biz/static/_img/c4/f936/bandcrash_41e17d7b58_q35.webp" width="380" height="380" loading="lazy" class="u-photo" alt="bandcrash.png"></a></figure>



<p>An application to help musicians encode and distribute their music to various websites. Get it <a href="https://fluffy.itch.io/bandcrash">on itch.io</a>, or <a href="https://github.com/fluffy-critter/bandcrash">get the source code</a>.</p>

<p><a href="https://beesbuzz.biz/shop/software/10876-Bandcrash#comments">comments</a></p>

        

        ]]>



        </content>
        <category term="Shop" label="Shop" />
        <category term="AppsAndSoftware" label="Apps and Software" />
        
        

        

    </entry>
    <entry>
        
        <title>🔏 Private entry [Gpfm]</title>
        <link href="https://beesbuzz.biz/14779" rel="alternate" type="text/html" />
        <published>2026-05-22T23:59:00-07:00</published>
        <updated>2026-05-22T23:59:00-07:00</updated>
        <id>urn:uuid:b33177f0-cec4-496f-941a-d418425c6125</id>
        <author><name>fluffy</name></author>
        <content type="html">This entry has a restricted audience.</content>
        

    </entry>
    <entry>
        
        <title>fluffy rambles: Stack updates</title>
        <link href="https://beesbuzz.biz/blog/11730-Stack-updates" rel="alternate" type="text/html" />
        <published>2026-05-22T23:36:36-07:00</published>
        <updated>2026-05-22T23:36:36-07:00</updated>
        <id>urn:uuid:8fa10ef3-21f6-47ba-a714-cfd2a0ad1d97</id>
        <author><name>fluffy</name></author>
        <summary type="html"><![CDATA[<p>Just some random musings about the direction I&rsquo;m going in for my various things</p>]]></summary>
        <content type="html"><![CDATA[

		

<p>Just some random musings about the direction I&rsquo;m going in for my various things</p>


<h3 id="11730_h3_1_Text-editing"><a href="https://beesbuzz.biz/blog/11730-Stack-updates#11730_h3_1_Text-editing" class="toc_link"></a>Text editing</h3><p>For a while I&rsquo;ve been using <a href="https://gram.liten.app/">Gram</a>, which is a pretty nice code-oriented text editor that tries to make everything Good, Actually™, and is basically an anti-AI fork of <a href="https://zed.dev/">Zed</a>. It&rsquo;s pretty nice in that it&rsquo;s fast and has good UX, but there&rsquo;s a bunch of stuff that really bugs me, the more I use it.</p>
<ul>
<li>The language server stuff, while nice, is super inflexible</li>
<li>Some of the built-in formatting rules (which come from the language servers, I think?) are kinda crappy but the configuration options to fix them don&rsquo;t work</li>
<li>It tries really hard to integrate well with Python virtual environments but seems to always get it wrong</li>
<li>I&rsquo;m constantly getting nagged with popups regarding &ldquo;the project workspace&rdquo; being unable to load, pointing me to a log file that&rsquo;s constantly growing and tells me a lot of stuff that doesn&rsquo;t seem to have anything to do with project load issues</li>
</ul>
<p>The main reason I switched to it is because <a href="https://sublimetext.com/3">Sublime Text 3</a> is Intel-only and is not going to be supported on macOS for much longer, but Sublime Text 4 made a bunch of changes I don&rsquo;t like and also is Quite Expensive now.</p><p>I think for now I&rsquo;ll stick with Gram and just disable the language server stuff, but I&rsquo;d really like something that works, y&#39;know, better. Maybe I&rsquo;ll give Sublime Text 4 another try and consider sending them some cash again, or something. I dunno. $100 is a lot for a text editor.</p><p>Unfortunately all the other popular code editors these days are even worse in terms of being, like, completely overloaded with useless crap and full of AI garbage, and are also usually built inside of Electron or similar things which make them feel slow and annoying.</p><p>Maybe I&rsquo;ll give Emacs another try. It&rsquo;s been a whie.</p><h3 id="11730_h3_2_Online-commerce-stuff"><a href="https://beesbuzz.biz/blog/11730-Stack-updates#11730_h3_2_Online-commerce-stuff" class="toc_link"></a>Online commerce stuff</h3><p>I used to sell things on Etsy, but it became a quite frustrating (and expensive) experience. Very much not worth it.</p><p>I also used to sell things on Gumroad, but <a href="https://beesbuzz.biz/blog/15915-bye-gumroad">meh to that</a>.</p><p>I tried selling stuff on <a href="https://artisans.coop">Artisans Cooperative</a> but that site is an absolute <em>mess</em> that is built with very good intentions but not a lot of technical acumen. I have one product listing there and all I receive from it is attempted phishing scams, and whenever I report the phishing scams as directed, if I get a response at all it&rsquo;s usually a guilt trip about how under-resourced they are.</p><p>Anyway, recently I remembered that <a href="https://ko-fi.com">Ko-Fi</a> has a storefront and I&rsquo;ve been working on <a href="https://ko-fi.com/fluffycritter/shop">rebuilding that shop</a>. So far I&rsquo;m just focusing on putting my music there and fixing my listings for my digital comic collections, and also fixing the <a href="https://beesbuzz.biz/shop/">very neglected shop page on this site</a> to update the links as appropriate. I&rsquo;ll probably also list my physical goods on Ko-Fi, but I don&rsquo;t know how they handle things like variations and shipping rates (the two things that every site makes really frustrating).</p><h3 id="11730_h3_3_Music-sales"><a href="https://beesbuzz.biz/blog/11730-Stack-updates#11730_h3_3_Music-sales" class="toc_link"></a>Music sales</h3><p>I wrote <a href="https://sockpuppet.band/blog/1743-Subvert-launched-yet-another-music-sale-platform">a bit about this on the Blogpuppet</a>, but it&rsquo;s getting really annoying to manage my music sales channels. Right now when I release something I post it on <a href="https://sockpuppet.band/">my own site</a> and then also prepare it for sale on <a href="https://sockpuppet.bandcamp.com">Bandcamp</a>, <a href="https://mirlo.space/sockpuppet">Mirlo</a>, <a href="https://fluffy.itch.io">itch.io</a>, <a href="https://subvert.fm/sockpuppet">Subvert</a>, and <a href="https://ko-fi.com/fluffycritter/shop">Ko-Fi</a>. I also have to upload it to <a href="https://sockpuppet.band/symphonic">Symphonic</a> and <a href="https://kvrradio.com/">KVRR</a> for the various exposure opportunities those afford. It&rsquo;s a nightmare.</p><p><a href="https://fluffy.itch.io/bandcrash">Bandcrash</a> makes a lot of this a lot easier, though. I have scripts to take a Bandcrash album and populate my website, and with the generated .zip files it&rsquo;s absolutely trivial to post the actual downloads on Ko-Fi and Mirlo; Mirlo&rsquo;s is also nice in that it&rsquo;ll automatically extract the relevant metadata. (And KVRR is simple in that I just send some .flac files to the dude who runs it via Discord or whatever.)</p><p>The other sales channels are really annoying, though:</p>
<ul>
<li>Setting up an album on itch.io is a <a href="https://bandcrash.readthedocs.io/en/latest/itch.html">rather cumbersome process</a> (but itch.io isn&rsquo;t really built for music, to be fair)</li>
<li>Bandcamp only lets you upload a single audio file at a time unless you pay for Bandcamp Pro, and you have to manually enter the metadata through a rather cumbersome interface</li>
<li>Subvert at least lets you batch-upload the files but you still have to manually enter the metadata, and its overall UX flow is super obnoxious and somehow worse than Bandcamp&rsquo;s</li>
<li>Symphonic&rsquo;s uploader and metadata editor is a <em>massive</em> ergonomics nightmare that literally hurts me to use</li>
</ul>
<p>If I had my druthers I&rsquo;d just upload to Ko-Fi and <em>maybe</em> Mirlo (since that makes individual track sales possible), but that&rsquo;s not where my actual sales happen. Most people think of Bandcamp as the gold standard for indie music sales, even though they take a pretty bad cut and can&rsquo;t even really justify it anymore since it&rsquo;s not like their editorial or discovery channels are worth a damn at this point. (Plus, they&rsquo;re owned by Songtradr, and <em>fuck</em> Songtradr.)</p><p>I am really hoping for a future where I only have to post my music to my own website and then provide paid access to the full-quality downloads in some ideally-tightly-integrated way. <a href="https://github.com/PlaidWeb/Canimus">Canimus</a> will hopefully be a part of that future, although any federated protocol would be better than the current state of things.</p><p>I have high hopes for <a href="https://fairplayer.band">Fairplayer</a>.</p><p>But with all that said, right now I&rsquo;m making very little money on music. The only sales channel which gets anything right now is Bandcamp and I made all of $4.50 over the last month there. My lunch today cost $5.85.</p><h3 id="11730_h3_4_Residence"><a href="https://beesbuzz.biz/blog/11730-Stack-updates#11730_h3_4_Residence" class="toc_link"></a>Residence</h3><p>I like my house, and mostly like my town. But my country is very quickly turning into a fascistic hellhole, and it&rsquo;s becoming quite dangerous to be trans. Even in Seattle I am constantly hearing about people being accosted simply for being trans. There was a very high-profile murder of a trans student at the university, who was committing the grievous sin of <em>doing her laundry</em>. I&rsquo;ve had friends have the cops be called on them for using the &ldquo;wrong&rdquo; bathroom or changing room at the gym (including very-masc-presenting transmasc folks).</p><p><strong><em>In Seattle.</em></strong></p><p>This isn&rsquo;t supposed to happen here.</p><p>Lately I&rsquo;ve been thinking about exit strategies. I really like Victoria, BC, because it&rsquo;s nearby, housing is reasonably affordable (at least compared to Seattle), and it has <a href="https://www.youtube.com/watch?v=mpWm45qting">amazing bicycle infrastructure</a> (which is one of the few things that&rsquo;s sorely lacking in my current town).</p><p>But immigrating into Canada is quite tricky, especially as a disabled, living-off-investment-income, neurodivergent trans person with no Canadian heritage.</p><p>The Netherlands also seem nice, particularly Amsterdam, which has amazing bike infrastructure (heck, anyone who watches urbanist YouTube gets plenty of videos from one particularly notorious channel that will just <em>not shut up</em> about it), and by all accounts it&rsquo;s super trans-friendly there, <em>and</em> it&rsquo;s apparently quite open to Americans both culturally and in terms of immigration policy. In particular, the poorly-named (or is it?) <a href="https://www.movewithdaft.com/getting-started/complete-daft-guide-us-citizens-2025/">DAFT visa</a> looks like a very good option, as it allows American ex-pats to register a freelance business there and give themselves a work visa.</p><p>But, gosh, that sure requires a pretty strong commitment, and I&rsquo;m not ready to uproot just yet. (But I worry that if things get worse, the DAFT program will go away&hellip;)</p><p>In the meantime I do at least need to renew my passport, which expires in 7 months. I&rsquo;m not looking forward to the gender marker reset.</p><p>Also one of the things I like about my current living situation is having a nice private, isolated recording studio in my home, which is necessary for playing instruments (especially drums). I&rsquo;d still be able to do that in Victoria pretty easily. I don&rsquo;t think that&rsquo;s nearly as accessible in Amsterdam.</p><p>I guess after the midterms I will have a clearer picture of where things are going.</p><h3 id="11730_h3_5_HRT"><a href="https://beesbuzz.biz/blog/11730-Stack-updates#11730_h3_5_HRT" class="toc_link"></a>HRT</h3><p>That&rsquo;s going well, although today I think I injected myself with a couple of rubber particles from the stopper. Oops.</p>

<p><a href="https://beesbuzz.biz/blog/11730-Stack-updates#comments">comments</a></p>

        
        <a rel="tag" href="https://beesbuzz.biz/blog/?id=11730&amp;tag=music">#music</a>
        
        <a rel="tag" href="https://beesbuzz.biz/blog/?id=11730&amp;tag=software">#software</a>
        
        <a rel="tag" href="https://beesbuzz.biz/blog/?id=11730&amp;tag=commerce">#commerce</a>
        

        ]]>



        </content>
        <category term="Blog" label="fluffy rambles" />
        
        
        <category term="Music" label="music" />
        
        <category term="Software" label="software" />
        
        <category term="Commerce" label="commerce" />
        

        

    </entry>
    <entry>
        
        <title>fluffy rambles: oh jeeze oh man</title>
        <link href="https://beesbuzz.biz/blog/15916-oh-jeeze-oh-man" rel="alternate" type="text/html" />
        <published>2026-05-04T19:26:47-07:00</published>
        <updated>2026-05-04T19:26:47-07:00</updated>
        <id>urn:uuid:095dad89-7143-49a5-b840-0dfa7639ccd4</id>
        <author><name>fluffy</name></author>
        <summary type="html"><![CDATA[<p>Whoops I guess it&rsquo;s been a few weeks since I&rsquo;ve posted anything here, how did that happen?</p>]]></summary>
        <content type="html"><![CDATA[

		

<p>Whoops I guess it&rsquo;s been a few weeks since I&rsquo;ve posted anything here, how did that happen?</p><p>Well, here&rsquo;s how.</p>


<h3 id="15916_h3_1_Fatigue"><a href="https://beesbuzz.biz/blog/15916-oh-jeeze-oh-man#15916_h3_1_Fatigue" class="toc_link"></a>Fatigue</h3><p>My fatigue has gotten a lot worse lately. I&rsquo;m having trouble mustering up the energy to do things, and what energy I do muster tends to go to things that are critical, rather than fun. Gardening (of the basic upkeep variety), getting groceries, cooking food, that sort of thing.</p><p>Last Black Friday I bought <a href="https://lectricebikes.com/products/xpress-750-step-thru-ebike">an ebike</a> (well, two of them, actually, <a href="https://www.aliexpress.us/item/3256809337066377.html">the other one</a> which I bought impulsively and then tried to cancel the order is still sitting in its box and I really ought to sell it) and I&rsquo;ve had a few rides on it which have gone fairly well, but today I decided to ride it to get groceries and just as I was approaching the store I got hit by a <em>huge</em> wave of fatigue and had to quickly get off the road before I fell over. In doing so I very nearly avoided getting run over by a truck that was turning way too fast. Fun times.</p><p>Anyway, I still did my shopping and had to push through it, and afterwards I did manage to ride home safely enough, but it was still, uh, worrying.</p><p>I feel like there&rsquo;s <em>something</em> I could try to do in order to build my stamina back up. I used to play <a href="https://projectoutfox.com/">DDR</a> for an hour or two every day, but I had to stop because it was getting to be very hard on my knees, and my plan was to build a lapboard so that I could at least try to build up some upper-body strength but I never got around to doing that either, and I just realized I&rsquo;ve had all the parts for it just lying around for the last four years. Jeeze.</p><h3 id="15916_h3_2_Music-projects"><a href="https://beesbuzz.biz/blog/15916-oh-jeeze-oh-man#15916_h3_2_Music-projects" class="toc_link"></a>Music projects</h3><p>I had gotten some momentum going on my next album, but after recording a few songs I took a break to work on some other things, and now I&rsquo;m having a very difficult time working up the energy to even go to my recording studio to work on things. And even doing my VRChat gigs has gotten to be difficult. When I first started those, 60 minutes was easy to do, no problem, and now I&rsquo;m finding that I have to push through it at the 45-minute mark.</p><p>A couple weeks ago I did spend a decent amount of time working on my booth for <a href="https://furality.org/">Furality</a> which involved making a bunch of art and also making a minute-long video that was the single most ambitious video project I&rsquo;ve ever done (yes, even moreso than <a href="https://www.youtube.com/watch?v=cAdd8tF-WVs">the previous most ambitious video project</a>). I&rsquo;m hoping that it at least gets me some attention and some people wanting to buy my music and commissioning me to make more, although, gosh, the prospect of going back to those kinds of hours long-term also fills me with dread.</p><p>At some point I also need to get around to building my <a href="https://www.nerdygurdy.nl/">Nerdy Gurdy</a>. I was so excited to finally acquire one but it&rsquo;s just been sitting in my basement, and I haven&rsquo;t even unpacked it yet. My plan was to stream the build on <a href="https://youtube.com/@realfakesockpuppet">my music YouTube channel</a> but, gah. tired.</p><h3 id="15916_h3_3_Choir"><a href="https://beesbuzz.biz/blog/15916-oh-jeeze-oh-man#15916_h3_3_Choir" class="toc_link"></a>Choir</h3><p>I&rsquo;ve also found that getting to choir practice is too much effort and doesn&rsquo;t result in a feeling of joy, so I&rsquo;ve ended up stepping back from the choir again. Part of it is the fatigue, part of it is because the choir&rsquo;s just gotten so <em>big</em> and at this point it feels like it&rsquo;s not satisfying me in the way that it used to. The concerts this year also badly conflict with other stuff that are much more important to me. So removing the weekly &ldquo;get to the church&rdquo; reminder from my calendar felt more like a relief than anything.</p><h3 id="15916_h3_4_Hormones"><a href="https://beesbuzz.biz/blog/15916-oh-jeeze-oh-man#15916_h3_4_Hormones" class="toc_link"></a>Hormones</h3><p>I was hoping that this current fatigue problem was just due to the <a href="https://beesbuzz.biz/blog/5248-The-HRT-saga">HRT saga</a> and that getting my levels back in check would fix everything. Injections have helped me with a <em>lot</em> of stuff, and it&rsquo;s nice that my boobs are starting to grow again even after so long, but the fatigue hasn&rsquo;t been affected by it at all as far as I can tell. I do have an appointment later this week to get my levels checked to make sure I&rsquo;m on the right path though. It&rsquo;s possible the dose still needs to be adjusted.</p><h3 id="15916_h3_5_Other-medical-crap"><a href="https://beesbuzz.biz/blog/15916-oh-jeeze-oh-man#15916_h3_5_Other-medical-crap" class="toc_link"></a>Other medical crap</h3><p>The last time I saw my cardiologist he said I should get another sleep study, and he referred me to a sleep clinic within his hospital system. It took <em>forever</em> to get an appointment, and when I finally did, they got me down for an in-home sleep study, but it turns out that the clinic is a 90-minute drive or a three-hour bus ride away (because his hospital system <strong><em>shut down all of their sleep clinics in Seattle</em></strong> for some <strong><em>fucking</em></strong> reason, and they would not refer me to another practice closer to me), and even though the sleep study was in-home they still needed me to come in person to pick up the device and be trained on how to use it. Even more annoyingly, the first appointment they have for the pickup isn&rsquo;t until August, <em>and</em> their appointments are all in the morning. There is no fucking way I&rsquo;d be able to do that.</p><p>So I&rsquo;ve asked my GP about finding a sleep clinic closer to Seattle/Burien/White Center. Hopefully I can find something more amenable to my transportation and time-of-day limitations.</p><p>I&rsquo;m not super optimistic about the current state of sleep medicine anyway, though. It&rsquo;s all about CPAP/APAP, and that has never helped me at all.</p><h3 id="15916_h3_6_Cats"><a href="https://beesbuzz.biz/blog/15916-oh-jeeze-oh-man#15916_h3_6_Cats" class="toc_link"></a>Cats</h3><p>Fiona has officially turned 15 (she&rsquo;s possibly a bit older but her shelter records estimated her as having been born around May of 2011). She&rsquo;s gotten so grumpy lately, and finicky about food. But she&rsquo;s still my lovely little squish. I just wish she&rsquo;d actually eat the food she&rsquo;s been given.</p><h3 id="15916_h3_7_Cars"><a href="https://beesbuzz.biz/blog/15916-oh-jeeze-oh-man#15916_h3_7_Cars" class="toc_link"></a>Cars</h3><p>My shitty Corolla is still fulfilling its duty as a decoy to stop people from trying to steal my bike. I&rsquo;ve moved it all of three times in the past month, twice of which was due to some driveway repair stuff. That&rsquo;s a whole other mess I&rsquo;d rather not talk about though.</p><p>I wish I could have just gone car-free, because it&rsquo;s not like I&rsquo;m even using this car, I&rsquo;m just constantly beying annoyed by it. I need some better way of signaling that my home is occupied despite there not being a motor vehicle in the open carport. Unfortunately, converting my carport into a closed garage is not a feasible solution, either.</p><p>Cars are cool tech but revolving all of society around them was a mistake.</p><h3 id="15916_h3_8_tl-dr"><a href="https://beesbuzz.biz/blog/15916-oh-jeeze-oh-man#15916_h3_8_tl-dr" class="toc_link"></a>tl;dr</h3><p>I&rsquo;m fuckin tired, y&#39;all</p>

<p><a href="https://beesbuzz.biz/blog/15916-oh-jeeze-oh-man#comments">comments</a></p>

        
        <a rel="tag" href="https://beesbuzz.biz/blog/?id=15916&amp;tag=blogging">#blogging</a>
        
        <a rel="tag" href="https://beesbuzz.biz/blog/?id=15916&amp;tag=life-updates">#life updates</a>
        
        <a rel="tag" href="https://beesbuzz.biz/blog/?id=15916&amp;tag=fatigue">#fatigue</a>
        
        <a rel="tag" href="https://beesbuzz.biz/blog/?id=15916&amp;tag=choir">#choir</a>
        

        ]]>



        </content>
        <category term="Blog" label="fluffy rambles" />
        
        
        <category term="Blogging" label="blogging" />
        
        <category term="LifeUpdates" label="life updates" />
        
        <category term="Fatigue" label="fatigue" />
        
        <category term="Choir" label="choir" />
        

        

    </entry>
    <entry>
        
        <title>fluffy rambles: Tech/software updates</title>
        <link href="https://beesbuzz.biz/blog/17465-Tech-software-updates" rel="alternate" type="text/html" />
        <published>2026-04-14T23:47:43-07:00</published>
        <updated>2026-04-14T23:47:43-07:00</updated>
        <id>urn:uuid:8dba6dd6-4268-40ca-ba31-c3e5b07ef46d</id>
        <author><name>fluffy</name></author>
        <summary type="html"><![CDATA[<p>Just sharing two software/workflow changes I&rsquo;ve made recently, and why they&rsquo;re improvements over what I had before.</p>]]></summary>
        <content type="html"><![CDATA[

		

<p>Just sharing two software/workflow changes I&rsquo;ve made recently, and why they&rsquo;re improvements over what I had before.</p>


<h3 id="17465_h3_1_Window-management-Magnet-→-Recta"><a href="https://beesbuzz.biz/blog/17465-Tech-software-updates#17465_h3_1_Window-management-Magnet-→-Recta" class="toc_link"></a>Window management: Magnet &rarr; Rectangle</h3><p>I bought <a href="https://magnet.crowdcafe.com/">Magnet</a> ages ago, back when it first came out. At the time it was pretty much the only reliable window management system around.</p><p>Recently I learned about <a href="https://rectangleapp.com/">Rectangle</a>, which does largely the same thing, but is free, opensource, and has a few other nice changes, and after trying it out a bit I switched. Here&rsquo;s some of what it does better:</p>
<ul>
<li>There are more configurable shortcuts for a bunch of things</li>
<li>It does a better job of integrating with macOS Tahoe and lets you much more easily switch between its drag-snap behavior and Tahoe&rsquo;s built-in</li>
<li>Its drag-snap behavior is a lot better than both Tahoe&rsquo;s and Magnet&rsquo;s, so far</li>
<li>Its hotkeys don&rsquo;t get as easily confused by other things</li>
<li>It doesn&rsquo;t occasionally pop up any annoying &ldquo;Please rate us on the Mac App Store&rdquo; dialogs, which are a giant pet peeve of mine</li>
</ul>
<h3 id="17465_h3_2_Text-editing-Sublime-Text-→-Gram"><a href="https://beesbuzz.biz/blog/17465-Tech-software-updates#17465_h3_2_Text-editing-Sublime-Text-→-Gram" class="toc_link"></a>Text editing: Sublime Text &rarr; Gram</h3><p>I&rsquo;ve been a big fan of <a href="https://sublimetext.com/">Sublime Text</a> for a bit over a decade, ever since I started at HBO and needed to edit more JavaScript, which Emacs wasn&rsquo;t very good at. I happily paid for version 3.0 and enjoyed it for quite a time, and put in a lot of effort to wrangle its many extensions and settings sync functionality and so on.</p><p>When 4.0 came out they changed the licensing scheme, and also changed a bunch of the UX in ways I didn&rsquo;t particularly like, so I didn&rsquo;t have any reason to upgrade.</p><p>Then the 3.0 packages got more and more ornery to maintain, and it was super easy for settings to get broken and crufty and for things to just get weird and slow and annoying.</p><p>Anyway, I&rsquo;ve been running the macOS Developer Beta on one of my computers and today after it updated I got a big warning that since Sublime Text 3 is Intel-only it will no longer be supported by macOS in the not-too-distant future.</p><p>At one point I&rsquo;d been evaluating <a href="https://zed.dev/">Zed</a> and it was nice and simple, <em>except</em> it also came with a whole bunch of agentic coding stuff built-in and it was constantly nagging me and getting in the way. As you might imagine, I <a href="https://beesbuzz.biz/blog/14715-I-am-not-anti-AI">do not care for agentic coding</a>, and Zed&rsquo;s increasing marketing towards being Everything Agentic really rubbed me the wrong way.</p><p>More recently I found out about <a href="https://gram.liten.app/">Gram</a>, a fork of Zed that&rsquo;s been decrapified, cleaned up, and generally improved in terms of being more humane and so on. So tonight I gave it a try, and while there&rsquo;s still a few things I don&rsquo;t super love about it (for example, you can&rsquo;t detach tabs from a window frame or move them between frames), there&rsquo;s a bunch that it gets right:</p>
<ul>
<li>The package management is built in and generally does a good job of figuring out what binaries to install for you</li>
<li>It&rsquo;s <em>super</em> fast and responsive-feeling</li>
<li>Out of the box it has support for every language I use and then some</li>
<li>The language server functionality actually works really nicely, and it integrates with my various package managers pretty well</li>
<li>It convinced me to switch from <a href="https://www.mypy-lang.org/">mypy</a> to <a href="https://docs.astral.sh/ty/">ty</a> which is faster, much more thorough, and provides a much nicer UX for suggesting fixes</li>
<li>The settings editor is quite good! And setting up per-folder project files is sensible and easy!</li>
<li>Also, a big one: <strong><em>open buffers follow filename changes on the file system!</em></strong> This makes my blogging workflow <em>so</em> much easier than it was in Sublime Text! (This is something Sublime Text did add in version 4, that said.)</li>
<li>It doesn&rsquo;t try to do extraneous quote matching in Markdown files, so basic English punctuation doesn&rsquo;t confuse the heck out of it. Gee willikers!</li>
<li>The settings sync just fine with <a href="https://syncthing.net/">Syncthing</a></li>
<li>It has some really nice things for interpreting Markdown document structure that I only just noticed while editing this entry, neat!</li>
</ul>
<p>I&rsquo;m currently using it with <a href="https://github.com/microsoft/cascadia-code">Cascadia Code</a> and the built-in One Light/One Dark themes and it&rsquo;s pretty nice-looking.</p><p>There&rsquo;s still some rough spots:</p>
<ul>
<li>It&rsquo;s a little annoying how I have to provide a filename when I create a new file, which means a slightly different workflow for when I&rsquo;m blogging</li>
<li>ty seems to behave differently between CLI and IDE, especially for things like <a href="https://wiki.qt.io/Qt_for_Python">PySide6</a>, for reasons I can&rsquo;t figure out, and this is causing a lot of annoyances when working on <a href="https://github.com/fluffy-critter/bandcrash">bandcrash</a> in particular (but I suspect it&rsquo;s more of a Qt issue and I really need to investigate better GUI toolkits anyway)</li>
<li>The autoindent functionality on Markdown is a little wonky, especially for things like code fences and bullet lists</li>
<li>I&rsquo;m not quite sure how to get it to use my Poetry environment for module loading on Publ sites and there&rsquo;s probably something I&rsquo;m misunderstanding about how its environment support works (and its docs aren&rsquo;t super clear on that either); it&rsquo;s <em>supposed</em> to automatically use a Poetry environment if it detects one but it doesn&rsquo;t seem to be doing that.</li>
</ul>
<p>but most of these are just things to get used to, or things I can fix through understanding configuration. There&rsquo;s also a bunch of display preferences that I find <em>interesting</em> but weird, like by default it only shows the absolute line number for the line you&rsquo;re on and then all other line numbers are shown as relative to the current line. I&rsquo;m not sure if I like that or not, but it&rsquo;s easy enough to toggle it.</p><p>Also I should maybe finally make a Publ-Markdown formatting thingy because Gram&rsquo;s Markdown highlighter gets confused by Publ&rsquo;s Markdown extensions (particularly image sets), although it&rsquo;s no worse than Sublime Text&rsquo;s and if anything it recovers much more gracefully.</p><h4 id="17465_h4_3_Setting-up-setting-sync"><a href="https://beesbuzz.biz/blog/17465-Tech-software-updates#17465_h4_3_Setting-up-setting-sync" class="toc_link"></a>Setting up setting sync</h4><p>This is pretty straightforward. On my first computer I did:</p><figure class="blockcode"><pre class="highlight" data-language="bash" data-line-numbers><span class="line" id="e17465cb1L1"><a class="line-number" href="https://beesbuzz.biz/blog/17465-Tech-software-updates#e17465cb1L1"></a><span class="line-content">mv<span class="w"> </span>~/.config/gram<span class="w"> </span>~/Sync</span></span>
<span class="line" id="e17465cb1L2"><a class="line-number" href="https://beesbuzz.biz/blog/17465-Tech-software-updates#e17465cb1L2"></a><span class="line-content">ln<span class="w"> </span>-s<span class="w"> </span>~/Sync/gram<span class="w"> </span>~/.config</span></span>
</pre></figure><p>and on my other computers I did:</p><figure class="blockcode"><pre class="highlight" data-language="bash" data-line-numbers><span class="line" id="e17465cb2L1"><a class="line-number" href="https://beesbuzz.biz/blog/17465-Tech-software-updates#e17465cb2L1"></a><span class="line-content">ln<span class="w"> </span>-s<span class="w"> </span>~/Sync/gram<span class="w"> </span>~/.config</span></span>
</pre></figure><p>and now everything works great. This applies to both macOS and Linux. I have no idea where the settings live on Windows, but I don&rsquo;t do any coding from Windows anymore.</p>

<p><a href="https://beesbuzz.biz/blog/17465-Tech-software-updates#comments">comments</a></p>

        
        <a rel="tag" href="https://beesbuzz.biz/blog/?id=17465&amp;tag=technology">#technology</a>
        
        <a rel="tag" href="https://beesbuzz.biz/blog/?id=17465&amp;tag=software">#software</a>
        
        <a rel="tag" href="https://beesbuzz.biz/blog/?id=17465&amp;tag=macos">#macOS</a>
        
        <a rel="tag" href="https://beesbuzz.biz/blog/?id=17465&amp;tag=sublime-text">#Sublime Text</a>
        
        <a rel="tag" href="https://beesbuzz.biz/blog/?id=17465&amp;tag=gram">#gram</a>
        
        <a rel="tag" href="https://beesbuzz.biz/blog/?id=17465&amp;tag=text-editors">#text editors</a>
        
        <a rel="tag" href="https://beesbuzz.biz/blog/?id=17465&amp;tag=ui">#UI</a>
        
        <a rel="tag" href="https://beesbuzz.biz/blog/?id=17465&amp;tag=window-management">#window management</a>
        

        ]]>



        </content>
        <category term="Blog" label="fluffy rambles" />
        
        
        <category term="Technology" label="technology" />
        
        <category term="Software" label="software" />
        
        <category term="macOS" label="macOS" />
        
        <category term="SublimeText" label="Sublime Text" />
        
        <category term="Gram" label="gram" />
        
        <category term="TextEditors" label="text editors" />
        
        <category term="UI" label="UI" />
        
        <category term="WindowManagement" label="window management" />
        

        

    </entry>
    <entry>
        
        <title>Notes: The Picture They Paint of You</title>
        <link href="https://beesbuzz.biz/blog/chatter/9648-The-Picture-They-Paint-of-You" rel="alternate" type="text/html" />
        <published>2026-04-13T06:54:40-07:00</published>
        <updated>2026-04-13T06:54:40-07:00</updated>
        <id>urn:uuid:e601e697-d554-4ca0-97eb-0437a4965526</id>
        <author><name>fluffy</name></author>
        <summary type="html"><![CDATA[]]></summary>
        <content type="html"><![CDATA[

		






<p><a href="https://beesbuzz.biz/blog/chatter/9648-The-Picture-They-Paint-of-You#comments">comments</a></p>

        

        ]]>



        </content>
        <category term="Blog" label="fluffy rambles" />
        <category term="Notes" label="Notes" />
        
        

        

    </entry>
    <entry>
        
        <title>Code: Specification vs. implementation</title>
        <link href="https://beesbuzz.biz/code/6604-Specification-vs.-implementation" rel="alternate" type="text/html" />
        <published>2026-04-08T14:04:57-07:00</published>
        <updated>2026-04-14T17:44:10+00:00</updated>
        <id>urn:uuid:2c42b8b8-2f9a-44bd-bd4a-6368b2dc2419</id>
        <author><name>fluffy</name></author>
        <summary type="html"><![CDATA[<p>There are a lot of times when the specification says one thing but common implementations do another. Here are some especially common examples to watch out for.</p>]]></summary>
        <content type="html"><![CDATA[

		

<p>There are a lot of times when the specification says one thing but common implementations do another. Here are some especially common examples to watch out for.</p><p><mark>UPDATE (4/14/2026)</mark>: I was wrong about the source of the issue that led to me writing this article, but it&rsquo;s still the same issue! It just happened somewhere else in the chain than my investigations led me to believe. Which still emphasizes the point.</p>


<h3 id="6604_h3_1_Attribute-quoting"><a href="https://beesbuzz.biz/code/6604-Specification-vs.-implementation#6604_h3_1_Attribute-quoting" class="toc_link"></a>Attribute quoting</h3><p>According to <a href="https://www.w3.org/TR/html4/intro/sgmltut.html#h-3.2.2">the HTML specification</a>, single-quoted attributes are perfectly valid; for example, these HTML fragments should be absolutely equivalent:</p><figure class="blockcode"><pre class="highlight" data-language="html" data-line-numbers><span class="line" id="e6604cb1L1"><a class="line-number" href="https://beesbuzz.biz/code/6604-Specification-vs.-implementation#e6604cb1L1"></a><span class="line-content"><span class="p">&lt;</span><span class="nt">a</span> <span class="na">href</span><span class="o">=</span><span class="s">&quot;https://example.com/&quot;</span><span class="p">&gt;</span>Check out my website<span class="p">&lt;/</span><span class="nt">a</span><span class="p">&gt;</span></span></span>
<span class="line" id="e6604cb1L2"><a class="line-number" href="https://beesbuzz.biz/code/6604-Specification-vs.-implementation#e6604cb1L2"></a><span class="line-content"><span class="p">&lt;</span><span class="nt">a</span> <span class="na">href</span><span class="o">=</span><span class="s">&#39;https://example.com/&#39;</span><span class="p">&gt;</span>Check out my website<span class="p">&lt;/</span><span class="nt">a</span><span class="p">&gt;</span></span></span>
<span class="line" id="e6604cb1L3"><a class="line-number" href="https://beesbuzz.biz/code/6604-Specification-vs.-implementation#e6604cb1L3"></a><span class="line-content"><span class="p">&lt;</span><span class="nt">a</span> <span class="na">href</span><span class="o">=</span><span class="s">https://example.com/</span><span class="p">&gt;</span>Check out my website<span class="p">&lt;/</span><span class="nt">a</span><span class="p">&gt;</span></span></span>
</pre></figure><p>However, there are <em>many, many</em> client implementations which expect any quoted attributes to be double-quoted, and even some which do not support unquoted attributes at all. So, for example, I&rsquo;ve seen many implementations assume that a single-quoted attribute is equivalent to an unquoted attribute, so it treats <em>these</em> as equivalent:</p><figure class="blockcode"><pre class="highlight" data-language="html" data-line-numbers><span class="line" id="e6604cb2L1"><a class="line-number" href="https://beesbuzz.biz/code/6604-Specification-vs.-implementation#e6604cb2L1"></a><span class="line-content"><span class="p">&lt;</span><span class="nt">a</span> <span class="na">href</span><span class="o">=</span><span class="s">&#39;https://example.com/&#39;</span><span class="p">&gt;</span>Check out my website<span class="p">&lt;/</span><span class="nt">a</span><span class="p">&gt;</span></span></span>
<span class="line" id="e6604cb2L2"><a class="line-number" href="https://beesbuzz.biz/code/6604-Specification-vs.-implementation#e6604cb2L2"></a><span class="line-content"><span class="p">&lt;</span><span class="nt">a</span> <span class="na">href</span><span class="o">=</span><span class="s">&quot;&#39;https://example.com/&#39;&quot;</span><span class="p">&gt;</span>Check out my website<span class="p">&lt;/</span><span class="nt">a</span><span class="p">&gt;</span></span></span>
</pre></figure><p>which is to say, if <code>&lt;a href=&#39;https://example.com/&#39;&gt;Check out my website&lt;/a&gt;</code> appears on the website <code>https://foo.example/~bob/homepage.html</code>, the URL then is interpreted as being <code>https://foo.example/~bob/&#39;https://example.com&#39;</code> (or <code>https://foo.example/~bob/%39https://example.com%39</code> if we&rsquo;re being strict about URL-encoding).</p><p>Unquoted attributes also often are subject to all sorts of weird things, especially with how the entities within them get decoded.</p><p>Email systems are historically <em>particularly</em> bad about this; the impetus to this article was <del>discovering that my email provider<sup id="r_e6604_fn1"><a href="https://beesbuzz.biz/code/6604-Specification-vs.-implementation#d_e6604_fn1" rel="footnote">1</a></sup> does not support single-quoted attributes, and goes so far as to converting the quotes to <code>&amp;#39;</code> entities, causing even more problems downstream.</del> <mark>UPDATE:</mark> It turns out the problem was <em>not</em> with Fastmail, but with some library on the <em>sender&rsquo;s</em> side which was misencoding the quoted attributes! Fastmail did nothing wrong here!</p><p>So, for maximum compatibility, it&rsquo;s best to always use double-quoted attributes, regardless of what the HTML specification says.</p><h3 id="6604_h3_2_Protocol-relative-URLs"><a href="https://beesbuzz.biz/code/6604-Specification-vs.-implementation#6604_h3_2_Protocol-relative-URLs" class="toc_link"></a>Protocol-relative URLs</h3><p>Back in the day, it was pretty common for websites to serve things up in a mixture of HTTP (plaintext) and HTTPS (encrypted), and there were reasons to want static pages to link to external resources with the same scheme (for example, an HTTP page referring to an external image with an HTTP URL, but the HTTPS version of the page using an HTTPS URL for the image).</p><p>I cannot find any official specification for HTML, but the commonly-accepted standard for these, per the <a href="https://www.w3.org/Addressing/URL/5_URI_BNF.html">generic URI syntax</a>, considers the initial <code>//hostname</code> to be the starting portion of the path component of the URL, which is to say, a protocol-relative URL of <code>//example.com/foo</code> should be treated by adding the current page&rsquo;s scheme to the URL; for example, from <code>https://example.com/~bob/homepage.html</code>, a link to <code>//website.example/meow.gif</code> should be interpreted as <code>https://website.example/meow.gif</code>, while from <code>http://example.com/~alice/</code> the same link would become <code>http://website.example/meow.gif</code>.</p><p>Unfortunately, a <em>lot</em> of software out there just sees that the link starts with a <code>/</code> and assumes it&rsquo;s a site-relative URL instead, so from <code>https://example.com/~bob/</code> it is interpreted as <code>https://example.com/website.example/meow.gif</code>.</p><p>You can see how your browser implements <a href="//sockpuppet.band/track/the-war-machine">such a link</a>.</p><p>In any case, it&rsquo;s better to be explicit about your URL scheme, and in general if a site supports <code>https</code> it&rsquo;s best to just link to that version anyway.</p><h3 id="6604_h3_3_Path-coalescing"><a href="https://beesbuzz.biz/code/6604-Specification-vs.-implementation#6604_h3_3_Path-coalescing" class="toc_link"></a>Path coalescing</h3><p>In most operating systems, there is a convention that <code>..</code> refers to the parent directory, so for example the path <code>/foo/bar/../baz</code> is equivalent to <code>/foo/baz</code>. Additionally, <code>.</code> refers to the current directory, and <code>/</code> is seen as a path separator. So a path of <code>/foo/bar/./baz</code> is equivalent to <code>/foo/bar/baz</code>, for example.</p><p>Most web-based things will automatically apply these rules, even if it&rsquo;s technically incorrect; for example, both Apache and nginx will internally manipulate the URL to treat them as equivalent before it even touches the backing application, and even if they don&rsquo;t, it seems that most application stacks will also pre-coalesce the URL.</p><p>But on the client side, browsers will also automatically do this path coalescing before it even forms the URL to be requested; for example, <a href="https://beesbuzz.biz/blog/"><code>../blog/</code></a> and even <a href="https://junk.sockpuppet.band/foo/bar/../../songlets/"><code>https://junk.sockpuppet.band/foo/bar/../../songlets/</code></a> never even show up in the DOM with any of the <code>..</code> components from most browsers (although I have seen some clients preserve them in some cases). Strictly-speaking those URLs shouldn&rsquo;t even be equivalent, because <code>foo/bar</code> is a nonexistent path on both of those sites, so based purely on filesystem rules those <em>should</em> result in a <a href="https://developer.mozilla.org/en-US/docs/Web/HTTP/Reference/Status/404">404 Not Found</a> error. But things are being short-circuited for the sake of friendliness. And if you enter a URL manually, by copy-pasting e.g. <code>https://beesbuzz.biz/foo/../code/</code> into your location bar, every modern browser I&rsquo;ve tried will just automagically coalesce the path component.</p><p>(Note that how it coalesces <code>//</code> is inconsistent, in my experience; some browsers treat it as a subdirectory with an empty name, while others treat it as if it&rsquo;s the same as a single <code>/</code>, the same as UNIX.)</p><p>But it&rsquo;s not necessarily the case that the path <em>will</em> be coalesced. For example, here&rsquo;s a trivial <a href="https://en.wikipedia.org/wiki/Web_Server_Gateway_Interface">WSGI</a> application that just passes through a couple of things from the request:</p><figure class="blockcode"><figcaption>app.py</figcaption><pre class="highlight" data-language="python" data-line-numbers><span class="line" id="e6604cb3L1"><a class="line-number" href="https://beesbuzz.biz/code/6604-Specification-vs.-implementation#e6604cb3L1"></a><span class="line-content"><span class="k">def</span><span class="w"> </span><span class="nf">app</span><span class="p">(</span><span class="n">environ</span><span class="p">,</span> <span class="n">start_response</span><span class="p">):</span></span></span>
<span class="line" id="e6604cb3L2"><a class="line-number" href="https://beesbuzz.biz/code/6604-Specification-vs.-implementation#e6604cb3L2"></a><span class="line-content">    <span class="n">start_response</span><span class="p">(</span><span class="s2">&quot;200 OK&quot;</span><span class="p">,</span> <span class="p">[(</span><span class="s2">&quot;Content-Type&quot;</span><span class="p">,</span> <span class="s2">&quot;text/plain&quot;</span><span class="p">)])</span></span></span>
<span class="line" id="e6604cb3L3"><a class="line-number" href="https://beesbuzz.biz/code/6604-Specification-vs.-implementation#e6604cb3L3"></a><span class="line-content"></span></span>
<span class="line" id="e6604cb3L4"><a class="line-number" href="https://beesbuzz.biz/code/6604-Specification-vs.-implementation#e6604cb3L4"></a><span class="line-content">    <span class="k">for</span> <span class="n">key</span> <span class="ow">in</span> <span class="p">(</span><span class="s1">&#39;HTTP_HOST&#39;</span><span class="p">,</span> <span class="s1">&#39;RAW_URI&#39;</span><span class="p">):</span></span></span>
<span class="line" id="e6604cb3L5"><a class="line-number" href="https://beesbuzz.biz/code/6604-Specification-vs.-implementation#e6604cb3L5"></a><span class="line-content">        <span class="k">yield</span> <span class="sa">f</span><span class="s1">&#39;</span><span class="si">{</span><span class="n">key</span><span class="si">}</span><span class="s1">: </span><span class="si">{</span><span class="n">environ</span><span class="p">[</span><span class="n">key</span><span class="p">]</span><span class="si">}</span><span class="se">\n</span><span class="s1">&#39;</span><span class="o">.</span><span class="n">encode</span><span class="p">(</span><span class="s1">&#39;utf-8&#39;</span><span class="p">)</span></span></span>
</pre></figure><p>And here&rsquo;s some outputs when run through <a href="https://gunicorn.org/">gunicorn</a>; for starters, by default, curl coalesces <code>/./</code> and <code>/../</code> (but not <code>//</code>) client-side:</p><figure class="blockcode"><pre><span class="line"><span class="line-content">bean:~ $ curl -i http://localhost:8000/foo//moo/./bar/../baz/</span></span>
<span class="line"><span class="line-content">HTTP/1.1 200 OK</span></span>
<span class="line"><span class="line-content">Server: gunicorn</span></span>
<span class="line"><span class="line-content">Date: Wed, 08 Apr 2026 20:36:44 GMT</span></span>
<span class="line"><span class="line-content">Connection: close</span></span>
<span class="line"><span class="line-content">Transfer-Encoding: chunked</span></span>
<span class="line"><span class="line-content">Content-Type: text/plain</span></span>
<span class="line"><span class="line-content"></span></span>
<span class="line"><span class="line-content">HTTP_HOST: localhost:8000</span></span>
<span class="line"><span class="line-content">RAW_URI: /foo//moo/baz/</span></span>
<span class="line"><span class="line-content">bean:~ $ curl -i http://localhost:8000/foo//moo/../../bar/</span></span>
<span class="line"><span class="line-content">HTTP/1.1 200 OK</span></span>
<span class="line"><span class="line-content">Server: gunicorn</span></span>
<span class="line"><span class="line-content">Date: Wed, 08 Apr 2026 20:42:56 GMT</span></span>
<span class="line"><span class="line-content">Connection: close</span></span>
<span class="line"><span class="line-content">Transfer-Encoding: chunked</span></span>
<span class="line"><span class="line-content">Content-Type: text/plain</span></span>
<span class="line"><span class="line-content"></span></span>
<span class="line"><span class="line-content">HTTP_HOST: localhost:8000</span></span>
<span class="line"><span class="line-content">RAW_URI: /foo/bar/</span></span>
</pre></figure><p>But a request that uses the path as-is will still at least pass through directly, at least through gunicorn itself:</p><figure class="blockcode"><pre><span class="line"><span class="line-content">bean:~ $ curl -i http://localhost:8000/foo//moo/./bar/../baz/ --path-as-is</span></span>
<span class="line"><span class="line-content">HTTP/1.1 200 OK</span></span>
<span class="line"><span class="line-content">Server: gunicorn</span></span>
<span class="line"><span class="line-content">Date: Wed, 08 Apr 2026 20:40:09 GMT</span></span>
<span class="line"><span class="line-content">Connection: close</span></span>
<span class="line"><span class="line-content">Transfer-Encoding: chunked</span></span>
<span class="line"><span class="line-content">Content-Type: text/plain</span></span>
<span class="line"><span class="line-content"></span></span>
<span class="line"><span class="line-content">HTTP_HOST: localhost:8000</span></span>
<span class="line"><span class="line-content">RAW_URI: /foo//moo/./bar/../baz/</span></span>
</pre></figure><p>But in other testing I have found that, at least with a stack of nginx+gunicorn+Flask, the path coalescing takes place <em>somewhere</em> before it hits the actual application. (I do not have the patience to try to figure out where, exactly, not that it even matters.)</p><p>All this is to say, you <em>cannot</em> expect runs of multiple <code>/</code> or paths containing <code>/./</code> or <code>/../</code> to remain intact, even when the request is being made at the wire level, but you also cannot assume that the path <em>will</em> be pre-coalesced.</p><h3 id="6604_h3_4_Case-sensitivity-case-folding"><a href="https://beesbuzz.biz/code/6604-Specification-vs.-implementation#6604_h3_4_Case-sensitivity-case-folding" class="toc_link"></a>Case-sensitivity/case-folding</h3><p>Case-sensitivity and lack thereof in the hostname is also something you cannot rely on:</p><figure class="blockcode"><pre><span class="line"><span class="line-content">$ curl -ivvv http://beesbuzz.biz/ | head</span></span>
<span class="line"><span class="line-content">* Host beesbuzz.biz:80 was resolved.</span></span>
<span class="line"><span class="line-content">[...]</span></span>
<span class="line"><span class="line-content">&gt; GET / HTTP/1.1</span></span>
<span class="line"><span class="line-content">&gt; Host: beesbuzz.biz</span></span>
<span class="line"><span class="line-content">[...]</span></span>
<span class="line"><span class="line-content">&lt; link: &lt;https://webmention.io/beesbuzz.biz/webmention&gt;; rel=&quot;webmention&quot;</span></span>
<span class="line"><span class="line-content">&lt; Link: &lt;https://beesbuzz.biz/_tokens&gt;; rel=&quot;token_endpoint&quot;</span></span>
<span class="line"><span class="line-content">[...]</span></span>
<span class="line"><span class="line-content"></span></span>
<span class="line"><span class="line-content">$ curl -sivvv http://BeesBuzz.Biz/ | head</span></span>
<span class="line"><span class="line-content">* Host BeesBuzz.Biz:80 was resolved.</span></span>
<span class="line"><span class="line-content">[...]</span></span>
<span class="line"><span class="line-content">&gt; GET / HTTP/1.1</span></span>
<span class="line"><span class="line-content">&gt; Host: BeesBuzz.Biz</span></span>
<span class="line"><span class="line-content">[...]</span></span>
<span class="line"><span class="line-content">&lt; link: &lt;https://webmention.io/beesbuzz.biz/webmention&gt;; rel=&quot;webmention&quot;</span></span>
<span class="line"><span class="line-content">&lt; Link: &lt;https://beesbuzz.biz/_tokens&gt;; rel=&quot;token_endpoint&quot;</span></span>
<span class="line"><span class="line-content">[...]</span></span>
</pre></figure><p>In this case, note that <code>curl</code> preserved the case of the domain name in the <code>Host:</code> parameter, but something within the stack converted the hostname to all-lowercase (as can be seen in the <code>link</code> headers in the response). Whether this is happening in nginx or Flask is uncertain (and I, again, do not feel a particular need to figure out where this takes place, although I&rsquo;d assume it&rsquo;s at the vhost &mdash; and therefore nginx &mdash; level), but gunicorn does preserve the case of the hostname (using the same minimal WSGI app as above):</p><figure class="blockcode"><pre><span class="line"><span class="line-content">bean:~ $ curl http://LocalHost:8000/</span></span>
<span class="line"><span class="line-content">HTTP_HOST: LocalHost:8000</span></span>
<span class="line"><span class="line-content">RAW_URI: /</span></span>
</pre></figure><p>So, as with path coalescing, you cannot assume that elements will be case-folded for you, but you also cannot assume that they <em>won&rsquo;t</em> be.</p><p>And of course, path resolution for resources is up to the underlying implementation; a webserver running on macOS or Windows will (usually) treat <code>/foo.jpg</code> and <code>/foo.JPG</code> as the same resource, while on Linux, those are different resources. Of course the browser will <em>hopefully</em> treat them as separate for the purpose of caching, but: <strong><em>you cannot guarantee this</em></strong>.</p><p>As one of my college professors once said, &ldquo;If it makes a difference whether something is case-sensitive or not, you have made a mistake.&rdquo;</p><h3 id="6604_h3_5_http-vs.-https-in-general"><a href="https://beesbuzz.biz/code/6604-Specification-vs.-implementation#6604_h3_5_http-vs.-https-in-general" class="toc_link"></a>http vs. https in general</h3><p>Nothing in the HTTP specification says that the same path on two different schemes will reflect the same resource; for example, <code>http://example.com/</code> and <code>https://example.com/</code> can very well be completely different websites. But I have seen plenty of browsers, web crawlers, and other software assume that they are the one and the same!</p><p>At its most trivial, this very site will have slightly different content for the two versions; there are a handful of places where out of necessity, some links do not appear on the <code>http</code> version, or where they are rendered as absolute links and will match the original request&rsquo;s scheme rather than directing to <code>https</code>.</p><p>But things can be a lot more complicated. For example, once upon a time I ran a site where the <code>http</code> version was an informational page and the <code>https</code> version was the webmail for the domain. It was silly to do it that way, and I stopped doing it when browsers started being &ldquo;helpful&rdquo; about automatically converting http URLs to https (not to mention when I stopped hosting my own email and switched to other hosting providers), but you absolutely cannot just assume that two pages will be the same despite different URL schemes.</p><p>(Also, remember that URL schemes other than <code>http</code> and <code>https</code> exist! FTP, Gopher, and others might have fallen out of fashion, but they still exist. Not to mention nascent protocols like <a href="https://geminiprotocol.net/">Gemini</a>.)</p><p>From a server implementation standpoint, you should assume that clients can and will treat differing schemes as identical, so if a website is available from both protocols, the content should match between them, and if something is only available via <code>https</code>, then an <code>http</code> request to the same resource should redirect to the <code>https</code> one.</p><p>But from a client standpoint, you really should consider the scheme to be a part of the URL.</p><h3 id="6604_h3_6_www.-prefixes-and-other-subdomai"><a href="https://beesbuzz.biz/code/6604-Specification-vs.-implementation#6604_h3_6_www.-prefixes-and-other-subdomai" class="toc_link"></a><code>www.</code> prefixes (and other subdomain issues)</h3><p>Back in the early days of the Internet, it was common for a domain to host a whole bunch of different services, for example <code>ftp.example.com</code>, <code>irc.example.com</code>, <code>mail.example.com</code>, and so on, and many of these would even be hosted by separate physical servers with their own IP addresses. So when the web started up as an experimental thing it was super common to just spin up another server named <code>www</code>, and that was the one and only way that people would reference the website; there often wouldn&rsquo;t even <em>be</em> a root domain <code>A</code> record.</p><p>In those days, the hostname used to resolve the site had no impact on the resource returned; in fact the <code>Host:</code> request header didn&rsquo;t even exist, and it wasn&rsquo;t until quite some time later that browsers started sending that, to support <a href="https://en.wikipedia.org/wiki/Virtual_hosting">name-based virtual hosting</a>. Every website needed its own IP address. (Note that many non-HTTP protocols still have this limitation.)</p><p>As the web became the primary use of the Internet, the <code>www</code> prefix convention remained, and you had a big hot mess of differing implementations:</p>
<ul>
<li>Dedicated-IP hosts that have the root record <em>and</em> <code>www</code> resolve to the same server, which would then serve up the same content on either hostname</li>
<li>Sites that would map both <code>example.com</code> and <code>www.example.com</code> to the same virtual host configuration</li>
<li>Sites that would redirect <code>www.example.com</code> to <code>example.com</code></li>
<li>Sites that would redirect <code>example.com</code> to <code>www.example.com</code></li>
<li>Sites that serve up entirely different content for <code>example.com</code> vs. <code>www.example.com</code></li>
<li>Hosts that only resolve from one or the other</li>
</ul>
<p>Pretty much all of these remain to this very day, and to make things even more fun, many clients try to do &ldquo;helpful&rdquo; things where, for example, if <code>example.com</code> doesn&rsquo;t resolve it&rsquo;ll automatically redirect to <code>www.example.com</code> (or put up a prompt to that effect), or if a web crawler sees both hostnames it&rsquo;ll just assume that both are the same, or follow the preference of whomever implemented it.</p><p>I don&rsquo;t even know what the best practice should be in this case. I guess it should be something like:</p>
<ul>
<li>Clients should assume that <code>www.example.com</code> and <code>example.com</code> are different websites and use <a href="https://www.rfc-editor.org/rfc/rfc6596">canonical URLs</a> to sort out which is the &ldquo;real&rdquo; one if they both exist, even if this means potentially crawling the same site twice</li>
<li>Servers should redirect to the one that is correct</li>
</ul>
<p>Then again, the same issue comes up with sites that are available from multiple separate domains, and I&rsquo;ve also seen situations where badly-behaved crawlers will assume that <em>all</em> subdomains are equivalent (e.g. <code>alice.example.com</code> and <code>bob.example.com</code>), sometimes even getting confused by ccTLDs that are multi-level (like <code>.uk</code>) and thinking that, for example, <code>example.co.uk</code> and <code>google.co.uk</code> are the same site because they&rsquo;re both subdomains of <code>co.uk</code>! (This was especially bad back when so-called &ldquo;dynamic DNS&rdquo; providers were super common.)</p><h3 id="6604_h3_7_Redirections"><a href="https://beesbuzz.biz/code/6604-Specification-vs.-implementation#6604_h3_7_Redirections" class="toc_link"></a>Redirections</h3><p>There are <a href="https://developer.mozilla.org/en-US/docs/Web/HTTP/Guides/Redirections">so many different kinds of HTTP redirection</a>, each with different implications on caching, HTTP method, and equivalence.</p><p>Clients should probably just note the type and target of a redirection rather than try to treat the URLs as equivalent; for example, <a href="https://beesbuzz.biz/code"><code>/code</code></a> and <a href="https://beesbuzz.biz/code/"><code>/code/</code></a> are distinct URLs and should be treated as such.</p><p>Like, in theory, <code>/code</code> could <em>not</em> redirect and instead have entirely different content from <code>/code/</code>, but in practice, this will almost certainly cause Problems, and I&rsquo;m sure there&rsquo;s even crawlers out there which strip off trailing slashes and then expect the actual request to be redirected.</p><h3 id="6604_h3_8_In-conclusion"><a href="https://beesbuzz.biz/code/6604-Specification-vs.-implementation#6604_h3_8_In-conclusion" class="toc_link"></a>In conclusion</h3><p>When implementing client software, you should do whatever you can to follow the specification, but when implementing server software, you should also be aware of common client implementation issues.</p><p>If you do run into an implementation issue, it is of course a kindness to inform the implementor of the mistake, but some of these issues are common enough that it&rsquo;s best to accommodate the common misunderstandings and just sigh quietly about it.</p>

<hr/><ol><li id="d_e6604_fn1"><p>I have of course reported this as a bug <mark>which they did a great job of investigating and found the real root cause</mark>. They are, incidentally, <del>otherwise</del> amazing; use <a href="https://join.fastmail.com/673cc1b3">my referral link</a> for 10% off your first year of service.&nbsp;<a href="/code/6604-Specification-vs.-implementation#r_e6604_fn1" rev="footnote">↩</a></p></li></ol>

<p><a href="https://beesbuzz.biz/code/6604-Specification-vs.-implementation#comments">comments</a></p>

        
        <a rel="tag" href="https://beesbuzz.biz/code/?id=6604&amp;tag=html">#HTML</a>
        
        <a rel="tag" href="https://beesbuzz.biz/code/?id=6604&amp;tag=conformance">#conformance</a>
        

        ]]>



        </content>
        <category term="Code" label="Code" />
        
        
        <category term="HTML" label="HTML" />
        
        <category term="Conformance" label="conformance" />
        

        

    </entry>
    <entry>
        
        <title>fluffy rambles: The secular Serenity Prayer</title>
        <link href="https://beesbuzz.biz/blog/13969-The-secular-Serenity-Prayer" rel="alternate" type="text/html" />
        <published>2026-04-07T10:23:26-07:00</published>
        <updated>2026-04-07T10:23:26-07:00</updated>
        <id>urn:uuid:1fe098b6-095d-405e-b30d-ae8f392379ee</id>
        <author><name>fluffy</name></author>
        <summary type="html"><![CDATA[A meditation for these trying times]]></summary>
        <content type="html"><![CDATA[

		

<p>I grant myself the serenity<br>
to accept the things I cannot change;<br>
courage to change the things I can;<br>
and wisdom to know the difference.<br>
Living one day at a time;<br>
Enjoying one moment at a time;<br>
Accepting hardships as the pathway to peace;<br>
Taking this world as it is, not as I would have it;<br>
Trusting that we can make all things right if we come together in unity;<br>
That I may be reasonably happy in this life<br>
and that I can leave this world a better place than I found it.</p>




<p><a href="https://beesbuzz.biz/blog/13969-The-secular-Serenity-Prayer#comments">comments</a></p>

        
        <a rel="tag" href="https://beesbuzz.biz/blog/?id=13969&amp;tag=meditation">#meditation</a>
        
        <a rel="tag" href="https://beesbuzz.biz/blog/?id=13969&amp;tag=secular-humanism">#secular humanism</a>
        

        ]]>



        </content>
        <category term="Blog" label="fluffy rambles" />
        
        
        <category term="Meditation" label="meditation" />
        
        <category term="SecularHumanism" label="secular humanism" />
        

        

    </entry>
    <entry>
        
        <title>fluffy rambles: Medications are expensive</title>
        <link href="https://beesbuzz.biz/blog/8443-Medications-are-expensive" rel="alternate" type="text/html" />
        <published>2026-03-30T13:42:31-07:00</published>
        <updated>2026-03-30T13:42:31-07:00</updated>
        <id>urn:uuid:0046d98e-03ec-4902-8409-24cd45c17bb7</id>
        <author><name>fluffy</name></author>
        <summary type="html"><![CDATA[<p>So, being unemployed, I have to pay my own health insurance. This is currently around $500/month.</p>]]></summary>
        <content type="html"><![CDATA[

		

<p>So, being unemployed, I have to pay my own health insurance. This is currently around $500/month.</p><p>This insurance uses high copays on medication in order to &ldquo;encourage the use&rdquo; of cheaper medications. I have four medications which are expensive and get a $100/month copay, so I&rsquo;m still paying $400/month on those meds.</p><p>Two of those meds have copay assistance programs, which present their own set of problems, and insurance companies <em>hate</em> that they exist, because they&rsquo;re a retroactive incentive to make it easier for people to swallow the high copays on the meds while insurance still has to pay the bulk of the price, and the pharmaceutical companies bake the copay assistance program discount into the retail price of the medicine anyway so it&rsquo;s not like they&rsquo;re hurt by it <em>at all</em>.</p><p>But if I had to pay out-of-pocket for these meds, I&rsquo;d be paying more for them than for my house.</p>


<p>Here&rsquo;s the four medications that I&rsquo;m on which are this expensive, and why they really shouldn&rsquo;t be:</p><h3 id="8443_h3_1_Xarelto-rivaroxaban"><a href="https://beesbuzz.biz/blog/8443-Medications-are-expensive#8443_h3_1_Xarelto-rivaroxaban" class="toc_link"></a>Xarelto (rivaroxaban)</h3>
<ul>
<li>Purpose: Blood thinner</li>
<li>Copay: $100/month</li>
<li>Retail price: <a href="https://www.goodrx.com/xarelto">$600</a></li>
</ul>
<p>After my first DVT (the one which turned into an embolism and almost killed me) I was on warfarin, a very cheap, generic blood thinner, but it requires constant monitoring and since it was my first DVT, treatment called for only a six-month course with monitoring.</p><p>After my second DVT indicated that this is a chronic condition, I&rsquo;ve been on Xarelto, a blood thinner that is self-regulating and doesn&rsquo;t put me in as much danger of spontaneous hemorrhages. It also means not having to do weekly bloodwork with my doctor.</p><p>Xarelto&rsquo;s patents have all expired as of 2025 and there are <a href="https://www.drugs.com/availability/generic-xarelto.html">several generics that have been approved by the FDA</a>, but they all cost just as much as the original and aren&rsquo;t available in the dose I take anyway.</p><h3 id="8443_h3_2_Repatha-evolocumab"><a href="https://beesbuzz.biz/blog/8443-Medications-are-expensive#8443_h3_2_Repatha-evolocumab" class="toc_link"></a>Repatha (evolocumab)</h3>
<ul>
<li>Purpose: anti-cholesterol</li>
<li>Copay: $100/month</li>
<li>Retail price: <a href="https://www.goodrx.com/repatha">$240</a></li>
</ul>
<p>I have <a href="https://en.wikipedia.org/wiki/Familial_hypercholesterolemia">familial hypercholesterolemia</a>, which is to say that at a genetic level my liver produces way too much cholesterol. I inherited this from my dad. Regardless of diet or exercise my cholesterol levels are always super high.</p><p>I also cannot tolerate statins, which cause me massive, <em>excruciating</em> full-body pain, along with muscle failure.</p><p>So, Repatha is the only cholesterol-lowering treatment that I can tolerate, and it works great! It&rsquo;s a biweekly injection of monoclonal antibodies which break down the cholesterol itself. It&rsquo;s a really cool immune system hack and it&rsquo;s been super effective.</p><p>But it will be protected by patents until 2033 at the very earliest.</p><h3 id="8443_h3_3_Depo-Estradiol-estradiol-cypiona"><a href="https://beesbuzz.biz/blog/8443-Medications-are-expensive#8443_h3_3_Depo-Estradiol-estradiol-cypiona" class="toc_link"></a>Depo-Estradiol (estradiol cypionate)</h3>
<ul>
<li>Purpose: hormone replacement</li>
<li>Copay: $100/month</li>
<li>Retail price: <a href="https://www.goodrx.com/depo-estradiol">$240</a></li>
</ul>
<p>I&rsquo;ve written extensively about <a href="https://beesbuzz.biz/blog/5248-The-HRT-saga">my ongoing HRT battles</a>, and Depo-Estradiol is what I&rsquo;ve been taking for the last few weeks. It&rsquo;s been pretty effective so far.</p><p>There are two common forms of injectable estradiol: valerate and cypionate. The main difference between them is the carrier oil that&rsquo;s used. Valerate uses castor oil, which is cross-reactive for folks with peanut allergies, and also has a tendency to generate allergies of its own.</p><p>I am sensitive to peanuts and have a bunch of other allergies, so out of an abundance of caution, I take cypionate instead.</p><p>Valerate&rsquo;s retail price is $52, and my copay on it would be $5. Cypionate costs 50x as much. All for a different carrier oil.</p><p>Cypionate&rsquo;s patents don&rsquo;t expire until 2034.</p><h3 id="8443_h3_4_Tonmya-cyclobenzaprine-sublingua"><a href="https://beesbuzz.biz/blog/8443-Medications-are-expensive#8443_h3_4_Tonmya-cyclobenzaprine-sublingua" class="toc_link"></a>Tonmya (cyclobenzaprine, sublingual)</h3>
<ul>
<li>Purpose: sleep aid, chronic pain relief</li>
<li>Copay: $100/month</li>
<li>Retail price: <a href="https://www.goodrx.com/tonmya">$1800</a></li>
</ul>
<p>Cyclobenzaprine is a muscle relaxant that also helps with other aspects of fibromyalgia. It&rsquo;s a well-known, super-cheap medication. Its ordinary oral formulation has a retail price of around $13.</p><p>Unfortunately, as an oral formulation it lingers in the system and has other long-term effects, as it&rsquo;s processed by the liver. For me it&rsquo;s a suitable rescue medication when I&rsquo;m having especially bad pain flareups, but it makes me unable to do anything the next day due to extreme fatigue.</p><p>Recently, Tonmya came to market, as a sublingual, rapid-release formulation of cyclobenzaprine. As far as I can tell it is the exact same medication as before, just in a different carrier that allows it to be taken sublingually, so that it absorbs right into my blood stream and bypasses the liver. It&rsquo;s also a much smaller dose, as 2.5mg knocks me out in 10-15 minutes and gives me 7-8 hours of pretty decent sleep (albeit with some <em>really</em> intense dreams). My generic cyclobenzaprine has a dose of 10mg (4x as much), takes hours to kick in, and stays with me all day long.</p><p>Just by changing up the carrier, though, they were able to jack up the price by around 140x, for a drug that only has niche usage (namely fibromyalgia) from a population that just plan can&rsquo;t afford it (because folks with fibromyalgia tend not to be super-employed).</p><p>Its patents don&rsquo;t expire until 2034.</p><h3 id="8443_h3_5_Blaaaah"><a href="https://beesbuzz.biz/blog/8443-Medications-are-expensive#8443_h3_5_Blaaaah" class="toc_link"></a>Blaaaah</h3><p>If I had to pay the full retail price of these medications, I&rsquo;d be spending about $2880/month. By comparison, the mortgage on my house in Seattle, one of the most expensive housing markets in the US, is $1800. Which is the retail price of Tonmya <em>alone</em>.</p><p>Pharmaceutical pricing is inhumane, and it&rsquo;s only getting worse, as more and more drugs keep on getting &ldquo;reformulated&rdquo; for the sole purpose of protecting them by all-new patents. In most cases these &ldquo;reformulations&rdquo; are just different carriers or they add in additional side drugs to supposedly increase the effectiveness.</p>

<p><a href="https://beesbuzz.biz/blog/8443-Medications-are-expensive#comments">comments</a></p>

        
        <a rel="tag" href="https://beesbuzz.biz/blog/?id=8443&amp;tag=medication">#medication</a>
        
        <a rel="tag" href="https://beesbuzz.biz/blog/?id=8443&amp;tag=fibromyalgia">#fibromyalgia</a>
        
        <a rel="tag" href="https://beesbuzz.biz/blog/?id=8443&amp;tag=hrt">#HRT</a>
        
        <a rel="tag" href="https://beesbuzz.biz/blog/?id=8443&amp;tag=hypercholesterolemia">#hypercholesterolemia</a>
        
        <a rel="tag" href="https://beesbuzz.biz/blog/?id=8443&amp;tag=clotting-disorder">#clotting disorder</a>
        

        ]]>



        </content>
        <category term="Blog" label="fluffy rambles" />
        
        
        <category term="Medication" label="medication" />
        
        <category term="Fibromyalgia" label="fibromyalgia" />
        
        <category term="HRT" label="HRT" />
        
        <category term="Hypercholesterolemia" label="hypercholesterolemia" />
        
        <category term="ClottingDisorder" label="clotting disorder" />
        

        

    </entry>
    <entry>
        
        <title>fluffy rambles: Medical updates</title>
        <link href="https://beesbuzz.biz/blog/16578-Medical-updates" rel="alternate" type="text/html" />
        <published>2026-03-27T14:18:13-07:00</published>
        <updated>2026-03-27T14:18:13-07:00</updated>
        <id>urn:uuid:266c7a7d-b65e-44be-bac6-8f72aa965d2f</id>
        <author><name>fluffy</name></author>
        <summary type="html"><![CDATA[<p>Just some quick medical updates.</p>]]></summary>
        <content type="html"><![CDATA[

		

<p>Just some quick medical updates.</p>


<h3 id="16578_h3_1_HRT"><a href="https://beesbuzz.biz/blog/16578-Medical-updates#16578_h3_1_HRT" class="toc_link"></a>HRT</h3><p>I&rsquo;m now on week three of estradiol injections, and it&rsquo;s going pretty well. My mood has very much stabilized, my skin has cleared back up, and I&rsquo;ve gotten the hang of injections. Also my boobs are showing signs of starting to grow again, so that&rsquo;s nice.</p><h3 id="16578_h3_2_Fibromyalgia"><a href="https://beesbuzz.biz/blog/16578-Medical-updates#16578_h3_2_Fibromyalgia" class="toc_link"></a>Fibromyalgia</h3><p>Last night I took my first dose of <a href="https://www.drugs.com/tonmya.html">Tonmya</a>, the new formulation of cyclobenzaprine (aka <a href="https://www.drugs.com/flexeril.html">Flexeril</a>) intended for long-term fibromyalgia treatment. Just like the standard pill form, the sublingual form knocks me out pretty well but then I end up having <em>extremely</em> intense (and emotional) dreams, and my sleep wasn&rsquo;t super restful. It&rsquo;ll take a few days before I can tell if I&rsquo;ll get used to it and if it&rsquo;ll linger in my system like Flexeril does; the point to the sublingual route is that it&rsquo;s supposed to not do that, so maybe this will work better for me long-term.</p><p>I&rsquo;m going to skip it tonight and possibly tomorrow because I&rsquo;ve got <a href="https://sockpuppet.band/live/1661-the-the-virtual-reality-show-show">a bunch</a> of <a href="https://sockpuppet.band/live/1852-VRelium-x-Trans-Academy-Trans-Day-of-Visibility-show">shows</a> in <a href="https://sockpuppet.band/live/3424-skyline">VRChat</a> and I want to be sure I&rsquo;m awake for them, the first one especially.</p><h3 id="16578_h3_3_Fiona"><a href="https://beesbuzz.biz/blog/16578-Medical-updates#16578_h3_3_Fiona" class="toc_link"></a>Fiona</h3><p>Fiona&rsquo;s nasal infection cleared up after a few days of antibiotics and she&rsquo;s still got a week left or so. Hopefully it stays gone, because she&rsquo;s in a much better mood now (plus it&rsquo;s nice not having her get snot everywhere). If it does come back then we&rsquo;ll know that it&rsquo;s a structural or systemic issue that needs some other long-term treatment. But for now it&rsquo;s nice having her back in high spirits.</p><p>I&rsquo;ll be really glad to be done with giving her the doxycycline though. That stuff smells <em>awful</em>. Also it gets everywhere and I&rsquo;m allergic to it.</p>

<p><a href="https://beesbuzz.biz/blog/16578-Medical-updates#comments">comments</a></p>

        
        <a rel="tag" href="https://beesbuzz.biz/blog/?id=16578&amp;tag=hrt">#HRT</a>
        
        <a rel="tag" href="https://beesbuzz.biz/blog/?id=16578&amp;tag=fibromyalgia">#fibromyalgia</a>
        
        <a rel="tag" href="https://beesbuzz.biz/blog/?id=16578&amp;tag=fiona">#Fiona</a>
        

        ]]>



        </content>
        <category term="Blog" label="fluffy rambles" />
        
        
        <category term="HRT" label="HRT" />
        
        <category term="Fibromyalgia" label="fibromyalgia" />
        
        <category term="Fiona" label="Fiona" />
        

        

    </entry>
    <entry>
        
        <title>fluffy rambles: Replacing the Waterfox icon on macOS</title>
        <link href="https://beesbuzz.biz/blog/3105-Replacing-the-Waterfox-icon-on-macOS" rel="alternate" type="text/html" />
        <published>2026-03-26T15:38:02-07:00</published>
        <updated>2026-03-26T15:38:02-07:00</updated>
        <id>urn:uuid:e38c208e-2061-4ba6-88e4-baf28295d2fb</id>
        <author><name>fluffy</name></author>
        <summary type="html"><![CDATA[<p>Okay so Mozilla has <a href="https://arstechnica.com/ai/2026/03/mozilla-dev-introduces-cq-a-stack-overflow-for-agents/">gone deep into the AI hole</a> again, so I&rsquo;ve switched back to <a href="https://www.waterfox.com/">Waterfox</a>, a fork of Waterfox that focuses on the core browsing experience and eschews all of the stuff that nobody actually wants.</p>]]></summary>
        <content type="html"><![CDATA[

		

<p>Okay so Mozilla has <a href="https://arstechnica.com/ai/2026/03/mozilla-dev-introduces-cq-a-stack-overflow-for-agents/">gone deep into the AI hole</a> again, so I&rsquo;ve switched back to <a href="https://www.waterfox.com/">Waterfox</a>, a fork of Waterfox that focuses on the core browsing experience and eschews all of the stuff that nobody actually wants.</p><p>Waterfox is great, <em>but</em> its app icon is ugly and doesn&rsquo;t look like a browser to me.</p><p>macOS does let you customize app icons but it isn&rsquo;t super clear how to do it successfully, so here&rsquo;s a process that works for me, as of macOS Tahoe 26.4.</p>


<ol>
<li>Find an icon that you like; finding a good one that&rsquo;s actually transparent is surprisingly difficult but <a href="https://www.reddit.com/r/waterfox/comments/1qrpcdk/new_custom_waterfox_icons/">there&rsquo;s some good ones here</a> and of course you can get the classic &ldquo;we are totally not Firefox&rdquo; ones on <a href="https://en.wikipedia.org/wiki/Waterfox">the Wikipedia page</a></li>
<li>Download it in a transparency-enabled format, such as png, webp, or svg</li>
<li>Open up the Icon Composer application (which is installed as part of XCode)</li>
<li>Drag the image in and set the layout to the way you like it
<figure class="images"><a href="https://beesbuzz.biz/blog/3105-Replacing-the-Waterfox-icon-on-macOS"><img src="https://beesbuzz.biz/static/_img/5b/798f/waterfox-icon-composer_b4534ec981_640x410_q35.webp" width="640" height="410" srcset="https://beesbuzz.biz/static/_img/5b/798f/waterfox-icon-composer_b4534ec981_640x410_q35.webp 1x, https://beesbuzz.biz/static/_img/5b/798f/waterfox-icon-composer_b4534ec981_1280x821_q35.webp 2x" loading="lazy" class="u-photo" alt="waterfox-icon-composer.png"></a></figure></li>
<li>Edit &gt; Copy As Image (⇧⌘C)</li>
<li>Find the application in Finder, and File &gt; Get Info (⌘I)</li>
<li>Click on the application icon and do Edit &gt; Paste (or ⌘V)
<figure class="images"><a href="https://beesbuzz.biz/blog/3105-Replacing-the-Waterfox-icon-on-macOS"><img src="https://beesbuzz.biz/static/_img/fa/bc46/waterfox-get-info_8e1367b83f_355x640_q35.webp" width="355" height="640" srcset="https://beesbuzz.biz/static/_img/fa/bc46/waterfox-get-info_8e1367b83f_355x640_q35.webp 1x, https://beesbuzz.biz/static/_img/fa/bc46/waterfox-get-info_8e1367b83f_710x1280_q35.webp 2x" loading="lazy" class="u-photo" alt="waterfox-get-info.png"></a></figure></li>
<li>Restart the app</li>
</ol>
<p>and then you should have a nicer-looking app icon:</p>
<figure class="images"><a href="https://beesbuzz.biz/blog/3105-Replacing-the-Waterfox-icon-on-macOS"><img src="https://beesbuzz.biz/static/_img/2e/d420/waterfox-icon-improved_2b84d9bf24_q35.webp" width="450" height="220" loading="lazy" class="u-photo" alt="waterfox-icon-improved.png"></a></figure>
<p>Or if you don&rsquo;t want the silly Liquid Glass shaped thing it&rsquo;s even easier:</p>
<ol>
<li>Open your desired icon in Preview or a webpage or whatever</li>
<li>Copy it (⌘C in Preview, right-click and &ldquo;copy image&rdquo; in Waterfox, etc.)</li>
<li>Find the application, and File &gt; Get Info (⌘I))</li>
<li>Paste (⌘V)</li>
</ol>

<figure class="images"><a href="https://beesbuzz.biz/blog/3105-Replacing-the-Waterfox-icon-on-macOS"><img src="https://beesbuzz.biz/static/_img/6c/8202/waterfox-shaped-info_e2e514509e_355x640_q35.webp" width="355" height="640" srcset="https://beesbuzz.biz/static/_img/6c/8202/waterfox-shaped-info_e2e514509e_355x640_q35.webp 1x, https://beesbuzz.biz/static/_img/6c/8202/waterfox-shaped-info_e2e514509e_710x1280_q35.webp 2x" loading="lazy" class="u-photo" alt="waterfox-shaped-info.png"></a><a href="https://beesbuzz.biz/blog/3105-Replacing-the-Waterfox-icon-on-macOS"><img src="https://beesbuzz.biz/static/_img/29/6706/waterfox-shaped-dock_177bdeed9c_q35.webp" width="288" height="228" loading="lazy" class="u-photo" alt="waterfox-shaped-dock.png"></a></figure>


<p><a href="https://beesbuzz.biz/blog/3105-Replacing-the-Waterfox-icon-on-macOS#comments">comments</a></p>

        
        <a rel="tag" href="https://beesbuzz.biz/blog/?id=3105&amp;tag=waterfox">#Waterfox</a>
        
        <a rel="tag" href="https://beesbuzz.biz/blog/?id=3105&amp;tag=macos">#macOS</a>
        
        <a rel="tag" href="https://beesbuzz.biz/blog/?id=3105&amp;tag=browsers">#browsers</a>
        

        ]]>



        </content>
        <category term="Blog" label="fluffy rambles" />
        
        
        <category term="Waterfox" label="Waterfox" />
        
        <category term="macOS" label="macOS" />
        
        <category term="Browsers" label="browsers" />
        

        

    </entry>
    <entry>
        
        <title>fluffy rambles: The State of the Fiona</title>
        <link href="https://beesbuzz.biz/blog/12467-The-State-of-the-Fiona" rel="alternate" type="text/html" />
        <published>2026-03-18T11:21:58-07:00</published>
        <updated>2026-03-18T11:21:58-07:00</updated>
        <id>urn:uuid:bacb431a-94a3-4a3f-8593-7c2e4948a4c7</id>
        <author><name>fluffy</name></author>
        <summary type="html"><![CDATA[<p>Fiona&rsquo;s been dealing with some respiratory stuff for a while, with what seemed like a cold starting around a month ago. Over the past few weeks she&rsquo;s been having continuous problems with mucus in one nostril, and this past weekend she was also having nasal bleeding, although that&rsquo;s cleared up.</p>]]></summary>
        <content type="html"><![CDATA[

		

<p>Fiona&rsquo;s been dealing with some respiratory stuff for a while, with what seemed like a cold starting around a month ago. Over the past few weeks she&rsquo;s been having continuous problems with mucus in one nostril, and this past weekend she was also having nasal bleeding, although that&rsquo;s cleared up.</p><p>Anyway, she&rsquo;s really tired of going to the vet, but yesterday she got another examination with the most recent developments and it seems that whatever she has is probably systemic and/or structural. The most likely issues are that she either has a tumor or other structural issue in her nose, or she has an abscess in a tooth. It&rsquo;s unlikely to be a sinus infection since it&rsquo;s not bilateral.</p><p>Unfortunately, because she&rsquo;s so elderly (she&rsquo;s <em>at least</em> 15 years old, possibly older), the vet is hesitant to do anything invasive (such as dental work or a CT scan) since they&rsquo;d all require anesthesia, and that can make things a lot worse.</p><p>She&rsquo;s also lost a lot of weight, but it&rsquo;s been difficult to keep her well-fed without also overfeeding Tyler as a consequence. It doesn&rsquo;t help that she&rsquo;s had typical old-lady dental problems for a while which make her unable to eat dry food anymore (and I think the mucus has impacted her sense of smell so even wet food doesn&rsquo;t seem so appetizing to her right now).</p><p>So for now we&rsquo;ve just got her on antibiotics which should at least help to clear up the acute infection, and if it returns later we can try other palliative approaches like steroids.</p><p>Fiona&rsquo;s still super energetic and cuddly and generally a happy little creature, but she&rsquo;s at the age where things could take a sudden turn for the worse and it&rsquo;s time to start feeling grateful for the time I&rsquo;ve had with her.</p><p>On the plus side, she&rsquo;s doing a lot better than Werner did at this age and he still made it to around 19 or 20, so hopefully I still have a few years left with her. But I&rsquo;m not going to go out of my way to extend her life; I&rsquo;d much rather she has a happy time on this planet while she&rsquo;s here.</p>




<p><a href="https://beesbuzz.biz/blog/12467-The-State-of-the-Fiona#comments">comments</a></p>

        
        <a rel="tag" href="https://beesbuzz.biz/blog/?id=12467&amp;tag=cats">#cats</a>
        
        <a rel="tag" href="https://beesbuzz.biz/blog/?id=12467&amp;tag=fiona">#Fiona</a>
        
        <a rel="tag" href="https://beesbuzz.biz/blog/?id=12467&amp;tag=pet-health">#pet health</a>
        

        ]]>



        </content>
        <category term="Blog" label="fluffy rambles" />
        
        
        <category term="Cats" label="cats" />
        
        <category term="Fiona" label="Fiona" />
        
        <category term="PetHealth" label="pet health" />
        

        

    </entry>
    <entry>
        
        <title>fluffy rambles: Happy π day</title>
        <link href="https://beesbuzz.biz/blog/314159-Happy-%CF%80-day" rel="alternate" type="text/html" />
        <published>2026-03-14T03:14:16-08:00</published>
        <updated>2026-03-14T03:14:16-08:00</updated>
        <id>urn:uuid:24ed4024-657b-46d0-9d86-64ef0f9cc04d</id>
        <author><name>fluffy</name></author>
        <summary type="html"><![CDATA[<p>Today is <a href="https://en.wikipedia.org/wiki/Pi_Day">π day</a>, which is a silly day to celebrate based on a completely arbitrary calendar system that happens to share some concordance with the inferior circle constant in our standard number system​. But π day is a bit special to me. Or rather, <em>this</em> π day is special to me, because it&rsquo;s the 10th anniversary of an important thing that happened.</p>]]></summary>
        <content type="html"><![CDATA[

		

<p>Today is <a href="https://en.wikipedia.org/wiki/Pi_Day">π day</a>, which is a silly day to celebrate based on a completely arbitrary calendar system that happens to share some concordance with the inferior circle constant in our standard number system<sup id="r_e314159_fn1"><a href="https://beesbuzz.biz/blog/314159-Happy-%CF%80-day#d_e314159_fn1" rel="footnote">1</a></sup>. But π day is a bit special to me. Or rather, <em>this</em> π day is special to me, because it&rsquo;s the 10th anniversary of an important thing that happened.</p>


<p>10 years ago I was working for HBO&rsquo;s VR research lab. It&rsquo;s through here that I <a href="https://beesbuzz.biz/comics/journal/good_things/882-October-2017-Never-gets-old">was a recipient of a joint Emmy award</a>, but more importantly, it&rsquo;s also where I finally felt comfortable coming out as trans in real life, thanks in no small part to my <em>amazing</em> coworkers at the time (special shout-outs in particular to <a href="https://www.tannerellison3d.com/">Tanner</a> and <a href="https://www.clairehummel.com/">Claire</a>; I doubt either of you are reading this but gosh did I love working with and knowing you both).</p><p>In particular, I was attending GDC 2016, and looking around and seeing all of the people of gender and realizing that the games industry was finally a much more inclusive place than when I first started in it. So many people around me expressing themselves and feeling comfortable and not being discriminated against for it. There were a handful of gross transphobes on the GDC social app, but it was easy enough to report their behavior, and gratifying to learn that they&rsquo;d been evicted from the conference for it.</p><p>I felt sad for what I&rsquo;d missed out on, for being stuck in my closet for so long and having never felt the support I needed to feel comfortable with publicly transitioning.</p><p>I&rsquo;d worked briefly at a small games company in 1999 where the transphobia was <em>overt</em>, and later at Ubisoft in 2004 where it was still present enough that I didn&rsquo;t feel comfortable being open about stuff to anyone (aside from one coworker who I&rsquo;d met online first). Some of my gender-related stuff did leak out at Ubisoft but it was easier to just sweep it under the rug than to commit. And after Ubisoft was my first stint at Amazon, where gender variance was <em>tolerated</em> as a &ldquo;quirk&rdquo; but not really actively embraced, and then in 2007 I got recruited to Sony by a friend who I thought was savvy but turned out to very much not be, and who treated my transness as an extremely online thing.</p><p>I&rsquo;d also been medically transitioning for years at this point (with a brief stint of HRT in 2004, and starting it For Realsies in 2011, and had an orchiectomy in 2014), and this had <em>helped</em>, but I was still basically living as a man in my daily life, and hating every moment of it.</p><p>So here I was at GDC, surrounded by people who were living their best lives and generally just Being, and I posted to the emerging trans chat on the GDC app, something like, &ldquo;if I don&rsquo;t come out at work by the end of the week I&rsquo;m going to kill myself&rdquo; in a sorta-joking way but which wasn&rsquo;t really a joke. And people reached out to me to make sure I was okay, and I assured them that I was.</p><p>And then I texted my coworker Tanner. I forget exactly what I said, but it was something like, &ldquo;Hey, do you think folks at HBO would be accepting if someone came out as trans? Asking for a friend (the friend is me).&rdquo;</p><p>And we got to talking and it became very clear to me that coming out would be good for me and that I&rsquo;d be accepted, and I changed my Slack username from &ldquo;[firstname] [lastname]&rdquo; to &ldquo;[first initial] [lastname]&rdquo; and that caused a bunch of other people to wonder what was up, and I realized I felt safe talking to them about it too, and this led to me officially coming out at work, 10 days later, which went pretty well, all things considered.</p><p>I remember it specifically being π day because this is also when I posted a <a href="https://songfight.net/forums/viewtopic.php?t=10553">Song Fight! forum thread about it</a>, which also went (mostly) quite well. I&rsquo;d been out as trans in the early days of Song Fight! but met a bunch of resistance (and occasional outright transphobia) from some folks (<em>most</em> of whom have since become much more accepting and are now amazing allies) and it became easier to just&hellip; roll with it and pretend not to care when people used the wrong pronouns for me, or insisted on referring to me by my deadname. I&rsquo;d try to sneak in little nudges like asking that in our &ldquo;Theme Song Fight&rdquo; things to not use gendered pronouns when referring to me (which was usually ignored), but having the momentum of good feelings from the conversation with Tanner and the new motivation to Be Myself filled me with determination.</p><p>I haven&rsquo;t done a good job of tracking most of my &ldquo;transiversaries.&rdquo; I have no idea when I started HRT (although it looks like it was sometime in <a href="https://beesbuzz.biz/comics/journal/good_things/214-September-25-2011-Sleepy">September 2011</a>), I always forget to celebrate my other milestones (aside from vaguely remembering that my <a href="https://beesbuzz.biz/articles/5195-nullification-surgery">bottom surgery</a> happened to be almost exactly three years after my orchi, and I guess the 10th anniversary of <em>that</em> happens sometime in January of next year)<sup id="r_e314159_fn2"><a href="https://beesbuzz.biz/blog/314159-Happy-%CF%80-day#d_e314159_fn2" rel="footnote">2</a></sup>, but this one? This one feels meaningful enough to at least acknowledge.</p><p>It is also somewhat fitting that today I am finally <a href="https://beesbuzz.biz/blog/5248-The-HRT-saga">switching to injectable estradiol</a>, after much difficulty with previous methods of delivery.</p><p>Anyway. Maybe I&rsquo;ll make quiche for dinner.</p><p>Anyway, happy π day.</p>

<hr/><ol><li id="d_e314159_fn1"><p>Personally, I feel that <a href="https://en.wikipedia.org/wiki/Tau_%28mathematics%29">τ</a> has better symmetry (for example, how the area of a circle, \(A=\frac{1}{2}\tau r^2\), shares an integral basis with \(x=\frac{1}{2}at^2\), the position of an object after constant acceleration), although I try not to be annoying about it. Also, τ day happens to be exactly one fortnight after my birthday.&nbsp;<a href="/blog/314159-Happy-%CF%80-day#r_e314159_fn1" rev="footnote">↩</a></p></li><li id="d_e314159_fn2"><p>Okay so I just looked it up, orchi was on January 30, 2014, and bottom surgery was January 27, 2017. Maybe I&rsquo;ll remember to celebrate it by eating some baba ghanoush or something.&nbsp;<a href="/blog/314159-Happy-%CF%80-day#r_e314159_fn2" rev="footnote">↩</a></p></li></ol>

<p><a href="https://beesbuzz.biz/blog/314159-Happy-%CF%80-day#comments">comments</a></p>

        
        <a rel="tag" href="https://beesbuzz.biz/blog/?id=314159&amp;tag=%CF%80">#π</a>
        
        <a rel="tag" href="https://beesbuzz.biz/blog/?id=314159&amp;tag=pi-day">#pi day</a>
        
        <a rel="tag" href="https://beesbuzz.biz/blog/?id=314159&amp;tag=3.14159265358979323846264338">#3.14159265358979323846264338</a>
        
        <a rel="tag" href="https://beesbuzz.biz/blog/?id=314159&amp;tag=math">#math</a>
        
        <a rel="tag" href="https://beesbuzz.biz/blog/?id=314159&amp;tag=gender">#gender</a>
        

        ]]>



        </content>
        <category term="Blog" label="fluffy rambles" />
        
        
        <category term="" label="π" />
        
        <category term="PiDay" label="pi day" />
        
        <category term="314159265358979323846264338" label="3.14159265358979323846264338" />
        
        <category term="Math" label="math" />
        
        <category term="Gender" label="gender" />
        

        

    </entry>
    <entry>
        
        <title>fluffy rambles: The HRT saga</title>
        <link href="https://beesbuzz.biz/blog/5248-The-HRT-saga" rel="alternate" type="text/html" />
        <published>2026-03-13T22:46:43-07:00</published>
        <updated>2026-03-13T22:46:43-07:00</updated>
        <id>urn:uuid:d439bc1e-3b76-44e9-aaa5-3f51420c430d</id>
        <author><name>fluffy</name></author>
        <summary type="html"><![CDATA[<p>It&rsquo;s about time I finally write a timeline of how frustrating HRT has been over the years, because I&rsquo;m tired of re-explaining it and just want something to point folks to whenever it comes up.</p>]]></summary>
        <content type="html"><![CDATA[

		

<p>It&rsquo;s about time I finally write a timeline of how frustrating HRT has been over the years, because I&rsquo;m tired of re-explaining it and just want something to point folks to whenever it comes up.</p><p>Short version: I have historically been done extremely dirty by the healthcare system when it comes to HRT access.</p>


<h3 id="5248_h3_1_2004-DIY"><a href="https://beesbuzz.biz/blog/5248-The-HRT-saga#5248_h3_1_2004-DIY" class="toc_link"></a>2004: DIY</h3><p>Back in 2004 I was working at Ubisoft and did not feel safe in my situation, but I felt desperately like I needed to be on estradiol. So I took the DIY approach for a few months, doing 1mg/day imported from New Zealand.</p><p>This made me feel <em>so</em> much better right away, but I was worried about clotting issues and decided to hold off for a while until I felt safer in my situation.</p><h3 id="5248_h3_2_2011-San-Francisco"><a href="https://beesbuzz.biz/blog/5248-The-HRT-saga#5248_h3_2_2011-San-Francisco" class="toc_link"></a>2011: San Francisco</h3><p>I had been living in San Francisco for a few years and the pressure was building up again. I did not have access to doctors I felt safe talking to about HRT. There was one doctor I knew of who specialized in transgender medicine but he had a very long waitlist and didn&rsquo;t accept my insurance. Eventually I managed to finagle different insurance which he did take, and made it through his waiting list.</p><p>He put me on 1mg/day of oral estradiol as well as a typical dose of spironolactone, but was incredibly acephobic to me, and dismissive of my nonbinary identity (which I referred to as &ldquo;neutrois&rdquo; at the time because I was still figuring shit out). I ended up not being able to tolerate the spironolactone and due to not being on an antiandrogen he didn&rsquo;t want to raise my estradiol dose.</p><h3 id="5248_h3_3_2012-Seattle"><a href="https://beesbuzz.biz/blog/5248-The-HRT-saga#5248_h3_3_2012-Seattle" class="toc_link"></a>2012: Seattle</h3><p>After I returned to Seattle I found a doctor who was willing to administer my HRT. I talked about my neutrois identity and how I leaned feminine. In my notes he wrote,</p>
<blockquote>
<p>[patient] considers himself gender-neutral and uses they/them pronouns.</p></blockquote>
<p>Anyway. He kept me at 1mg/day.</p><h3 id="5248_h3_4_2014"><a href="https://beesbuzz.biz/blog/5248-The-HRT-saga#5248_h3_4_2014" class="toc_link"></a>2014</h3><p>I got my orchiectomy. The surgeon who administered it almost canceled it because she thought I might regret it based on me asking offhandedly (during a pre-surgery panic attack and rumination cycle) if it&rsquo;d be possible to harvest sperm from the testes post-removal. I had to plead with her to go through with it. Afterwards she was really surprised to learn that I was happy with the results.</p><p>I was still with the same doctor as in 2012, and he did not want to raise my dose even though I wasn&rsquo;t getting the level of breast development I wanted.</p><p>Later that year I switched jobs, and due to the change in insurance and also finally clearing yet another doctor waiting list, ended up switching to a doctor who specialized in trans healthcare. She raised me to 2mg/day.</p><h3 id="5248_h3_5_2017"><a href="https://beesbuzz.biz/blog/5248-The-HRT-saga#5248_h3_5_2017" class="toc_link"></a>2017</h3><p>After leaving that job to found a startup, I got my bottom surgery, which was supposed to be covered via the COBRA from the job, but it more or less wasn&rsquo;t.</p><p>I switched to marketplace insurance. Except for some reason the Washington Healthplan Finder thing decided to put me on AppleCare due to no declared income even though I requested normal marketplace insurance, and they assigned me a county doctor that did not want to touch HRT. Then that insurance got canceled on me because I failed to provide proof of no income that they never requested from me (and how do you provide a lack of a paystub, anyway?), but I scrambled to get marketplace insurance with the same provider that I was on via COBRA before.</p><p>Then in November I had an embolism due to a blood clot in my leg, and the hematologist insisted I had to cease HRT immediately and forever. She was super cavalier about it and had an attitude that I was just taking it for funsies, or something. This led to the worst month of my life, but my doctor didn&rsquo;t want to go against what the hematologist said.</p><p>A month later my doctor finally gave me a referral to a different hematologist, who said that of <em>course</em> I needed to be on HRT and gave me the all-clear to go back on at 1mg/day to start with. No consideration was given to alternate modes of dosing.</p><p>Then my insurance provider left the public marketplace and I had to scramble to get new insurance, and I ended up on an HMO which meant I had to change doctors <em>again</em>.</p><p>This new doctor was <em>okay</em> but he would not consider raising my dose past 1mg/day because of the clot risk. No consideration was given to other modes of dosing. My blood tests came back at 100pg/mL, which is borderline acceptable for post-transition maintenance. I still had no real breast development, and my doctor insisted that it was too late to get anything more through estradiol and if I wanted more breast tissue I should consider top surgery.</p><h3 id="5248_h3_6_2019"><a href="https://beesbuzz.biz/blog/5248-The-HRT-saga#5248_h3_6_2019" class="toc_link"></a>2019</h3><p>I took a job with the university, but this allowed me to stick with the HMO so I didn&rsquo;t need to change doctors. During yet another round of massive and debilitating chronic pain flareups I made an appointment with my doctor, who ended up needing to cancel at the last minute and the appointment was taken over by a nurse pracitioner, who cared enough about my medical mystery to refer me to a rheumatologist, who then finally diagnosed me with fibromyalgia. So that was progress, at least in terms of putting a name to my chronic pain, although that would then go on to make it even more difficult in the long run since now every single pain-related symptom I experience is chalked up to that.</p><p>Although to be fair, most of them do turn out to be because of it.</p><h3 id="5248_h3_7_2020"><a href="https://beesbuzz.biz/blog/5248-The-HRT-saga#5248_h3_7_2020" class="toc_link"></a>2020</h3><p>I went back to working in tech, and with this came a change in insurance. I ended up with a new doctor who fucking sucked; she prescribed mindfulness for everything, particularly my chronic pain.</p><p>I developed another DVT, which I caught before it threw a clot (but had to insist to my doctor that it felt like a clot and wasn&rsquo;t &ldquo;just&rdquo; my fibromyalgia), and as a result of this started on blood thinners for life. Because of the clotting disorder, 1mg/day of estradiol was all I would ever get, at most, and even then I&rsquo;d have to monitor things. I asked about going on transdermal or injections, and my doctor insisted that their clotting risks were just as bad as oral. She was also begrudging about even letting me stay on 1mg/day orally.</p><h3 id="5248_h3_8_2021"><a href="https://beesbuzz.biz/blog/5248-The-HRT-saga#5248_h3_8_2021" class="toc_link"></a>2021</h3><p>I moved to a small town and changed doctors again. Things were okay, and my levels were being checked and were still holding steady at around 100pg/mL.</p><h3 id="5248_h3_9_2022"><a href="https://beesbuzz.biz/blog/5248-The-HRT-saga#5248_h3_9_2022" class="toc_link"></a>2022</h3><p>My doctor decided that because of the clotting issues I should be switched to transdermal. Unfortunately, it was the lowest possible dose of transdermal. But my serum levels were holding steady for the time being.</p><p>He also insisted that my chronic pain was due to my high triglycerides which in turn were caused by my familial hypercholesteromia. We tried a bunch of options for reducing them to see if that would help but I couldn&rsquo;t tolerate any of the medications that were available. He refused to try any other plan of attack and just blamed everything on my triglycerides.</p><p>Later that year, he burned out and disappeared. I was reassigned a nurse practitioner, who fucking sucked, and who blamed all of my problems on my weight, and without even talking to me decided that I needed to &ldquo;<a href="https://beesbuzz.biz/blog/7395-Doctors-please-listen">stop eating fast food</a>,&rdquo; so I changed doctors again.</p><p>This new doctor was willing to learn about trans stuff but had absolutely no understanding of any of it (&ldquo;But behind all that you&rsquo;re still male, right?&rdquo; as if I had just had drywall and spackle installed on top of my genitalia).</p><h3 id="5248_h3_10_2023"><a href="https://beesbuzz.biz/blog/5248-The-HRT-saga#5248_h3_10_2023" class="toc_link"></a>2023</h3><p>Then she burned out and disappeared.</p><p>I was reassigned to another GP at the same clinic, who insisted that she could not treat me and also that it was irresponsible to get HRT from anyone other than an endocrinologist, but the endocrinologist she referred me to had a waiting list and wasn&rsquo;t willing to take me on as a patient. The GP refused to even order blood work.</p><p>Meanwhile, Rite-Aid bought out the pharmacy I went to and shut it down.</p><p>I had some major chest pains that led me to start seeing a cardiologist. After a battery of tests he determined there&rsquo;s nothing wrong with my heart (for once the &ldquo;it&rsquo;s just your fibromyalgia&rdquo; turned out to be <a href="https://en.wikipedia.org/wiki/Costochondritis">correct</a>) but this still led to me finally getting on a cholesterol-reducing drug (Repatha, an injection) that worked well without side effects, and which also reduced my triglycerides. This made no difference to my chronic pain but at least my cholesterol levels are finally to where doctors stop telling me &ldquo;diet and exercise&rdquo; for everything.</p><h3 id="5248_h3_11_2024"><a href="https://beesbuzz.biz/blog/5248-The-HRT-saga#5248_h3_11_2024" class="toc_link"></a>2024</h3><p>I finally found a doctor who listed gender-affirming care as one of her specialties, and she was pretty good. But she just kept me on transdermal HRT, and my levels were still not being checked. She was also a few towns over and it was getting difficult for me to go that far due to fatigue and driving anxiety.</p><p>The clinic wanted to do all the labwork in-house but I preferred to get it done at the hospital near me since it was easier for me to get to, and both places were just going to Labcorp for all testing anyway, so why would it matter? So I insisted on the clinic just sending a labwork order to Labcorp.</p><p>Most of the essential stuff got checked, but they kept on conveniently forgetting to send over the order for estradiol.</p><p>Meanwhile, Rite-Aid stopped being able to fill prescriptions reliably, and I switched to Safeway.</p><h3 id="5248_h3_12_2025"><a href="https://beesbuzz.biz/blog/5248-The-HRT-saga#5248_h3_12_2025" class="toc_link"></a>2025</h3><p>The clinic I was going to was opening a new branch in my town! But they weren&rsquo;t sure when it was opening. And my doctor wasn&rsquo;t going to practice out of that office, and she was also very busy and backlogged so it was difficult to get an appointment with her. She kept on sending orders for getting my estradiol checked. Those tests never ended up happening (while other tests did). Clinic staff would misgender me on the regular.</p><p>My fatigue and anxiety were getting worse and I ended up only using Lyft to get to the clinic, which made it quite an expensive ordeal. I was also having other slides in my overall quality of life, and according to my mood tracker, my last good day was sometime in July.</p><p>In November she transferred me over to another doctor at her clinic, who was brand new, enthusiastic about gender-affirming care, and was also going to be working part-time at the clinic in my own town, so that was a good reason to switch.</p><p>I was also finding that I was having a lot of symptoms that were consistent with very low hormone levels, and I finally got the stars to align and got my estradiol levels checked.</p><p>They were 31pg/mL, which is dangerously low, and it&rsquo;s quite likely that they&rsquo;d been at that level for quite some time, possibly contributing to my fatigue and pain issues, and definitely causing plenty of other problems for me.</p><p>My doctor doubled my transdermal dose, and ordered another test to take place a few months later.</p><p>It took a while for the updated transdermal dose to get filled by any pharmacies.</p><p>Meanwhile, Rite-Aid shut down completely, as did my town&rsquo;s Walgreens, so suddenly the Safeway pharmacy became very difficult to deal with because of insufficient staff and very long lines. Prescriptions kept getting lost. So I switched to CVS mail-order for everything that I could, but CVS refused to fill my Repatha mail-order, so I still had to go to Safeway for that.</p><h3 id="5248_h3_13_2026-so-far"><a href="https://beesbuzz.biz/blog/5248-The-HRT-saga#5248_h3_13_2026-so-far" class="toc_link"></a>2026 so far</h3><p>After being on the higher transdermal dose for a few months, I got my levels checked again. They went up &mdash; to 32pg/mL.</p><p>I finally discussed injections with my doctor and he agreed that it was worth a try, but also warned me of the clotting risk and how he&rsquo;s only willing to do this thanks to informed consent. Because of some concerns regarding a potential peanut allergy, which in turn could translate to a potential castor oil allergy, he prescribed me estradiol cypionate, which is considerably more expensive (by many orders of magnitude) over estradiol valerate, but it also has some other advantages such as slower absorption and less of a serum level spike, so it seems like a good call.</p><p>Unfortunately, CVS mail-order will not fill that either, and they took their sweet fucking time letting me know about that. So that prescription was moved to Safeway. And it took forever to be filled, too, all the while I&rsquo;m nearly out of my transdermal patches (ineffective as they are) and getting anxious.</p><p>Fortunately, Safeway finally managed to fill the prescription today, and I got the estradiol, the 18ga needles for dosing, and the 25ga needles for injecting.</p><p>Unfortunately, the doctor forgot to also transfer over the prescription for the syringes, so I have no way to actually inject it.</p><p>Fortunately, I was able to get in touch with Safeway&rsquo;s pharmacist right before they closed and she said she&rsquo;d put a note on my file to give me some syringes when I come in next time, so I&rsquo;ll be picking them up sometime tomorrow, and I&rsquo;ve also left a message with my doctor asking him to remember to prescribe the syringes too. (He also didn&rsquo;t remember to transfer over the alcohol wipes but that&rsquo;s something I can get OTC and which I already have a good supply of.)</p><p>Anyway, tomorrow I&rsquo;ll hopefully be starting on my injections, which just so happens to be on another special trans-related anniversary&hellip; but more about that in a post scheduled to go live in a few hours.</p><p>My doctor is starting me at 0.2mg/week and then we&rsquo;ll adjust based on how I respond to it. I already have labwork scheduled for two months from now, to get my levels measured at the end of my dosing cycle. I&rsquo;m cautiously optimistic.</p><h3 id="5248_h3_14_Random-thoughts"><a href="https://beesbuzz.biz/blog/5248-The-HRT-saga#5248_h3_14_Random-thoughts" class="toc_link"></a>Random thoughts</h3><p>Healthcare is a complete mess right now, particularly in the Seattle area, and for all of the great experiences people have with being trans here, I&rsquo;ve sure not had a good one in terms of medical access.</p><p>It&rsquo;s understandable that doctors have been hesitant regarding clotting risks, but that caution needs to be balanced against other issues that also impact my quality of life. How much has my chronic pain and fatigue been affected by being basically menopausal for who knows how long?</p><p>And how long have my levels been this low?</p><p>Maybe I could have done a better job of advocating for myself and trying to get on injections earlier, because I&rsquo;ve been super frustrated at my lack of breast development. I think that the doctor who told me that it was too late to develop further was misguided in his judgement. Or maybe he was using that as an excuse to avoid a clotting risk.</p><p>So many doctors (including my current one) are under the misapprehension that the clotting risk of injections is too high, and that it&rsquo;s nearly as high as oral route, but the thing is that the clotting factors are primarily due to liver involvement, which <em>only</em> happens in the oral route, not in injections. But unfortunately the amount of peer-reviewed research on this is minimal, because it&rsquo;s in the intersection of &ldquo;women&rsquo;s issues&rdquo; and &ldquo;trans issues,&rdquo; which are both <em>horribly</em> under-studied.</p><p>Estradiol cypionate also only exists (at least in terms of marketing) as a medication because of the case made for it helping cis women through menopause, and it&rsquo;s only indicated as a short-term relief in that capacity. Its use as transgender HRT is technically off-label, even though my understanding is that&rsquo;s basically <em>all</em> it&rsquo;s used for, and of course in the current political climate, transgender HRT is the villain of the week.</p><p>Heck, a week ago there was an incident where a drunk and stoned person had a driving incident nearby, and the rumor that&rsquo;s spreading is that she&rsquo;s a trans woman and that she was raging because of being on &ldquo;the wrong sex hormones,&rdquo; and that is part of the overall narrative: that the &ldquo;wrong hormones&rdquo; (based solely on one&rsquo;s birth sex) is Bad and that it causes Rage and Issues, when at least for me, the <em>testosterone</em> was what was wrong for me, and estradiol helped my mood and sense of calm <em>immensely</em>. The lack of estradiol in my system for the past who-knows-how-long is probably a big part of why I&rsquo;ve been so quick to anger for so long!</p><p>And how many of my interpersonal problems have been due to that? Who knows! But there&rsquo;s been a few important bridges burnt that will be difficult, if not impossible, to repair, and the timeline certainly matches my theory of how long I&rsquo;ve been in misery due to a lack of proper hormones.</p><p>I needed my levels to be checked a lot more frequently, and for that to happen I needed to have a medical system that gave even the tiniest shit about my well-being.</p><p>Going forward I seem to have that, at least. As long as my current doctor doesn&rsquo;t also burn out and disappear.</p><p>And as long as my insurance doesn&rsquo;t agree with the right-wing shitheads that HRT is the root of all evil and it must be stopped.</p><p>I think that last possibility is what scares me the most.</p>

<p><a href="https://beesbuzz.biz/blog/5248-The-HRT-saga#comments">comments</a></p>

        
        <a rel="tag" href="https://beesbuzz.biz/blog/?id=5248&amp;tag=transgender">#transgender</a>
        
        <a rel="tag" href="https://beesbuzz.biz/blog/?id=5248&amp;tag=healthcare">#healthcare</a>
        
        <a rel="tag" href="https://beesbuzz.biz/blog/?id=5248&amp;tag=hormones">#hormones</a>
        
        <a rel="tag" href="https://beesbuzz.biz/blog/?id=5248&amp;tag=estrogen">#estrogen</a>
        
        <a rel="tag" href="https://beesbuzz.biz/blog/?id=5248&amp;tag=estradiol">#estradiol</a>
        
        <a rel="tag" href="https://beesbuzz.biz/blog/?id=5248&amp;tag=timeline">#timeline</a>
        

        ]]>



        </content>
        <category term="Blog" label="fluffy rambles" />
        
        
        <category term="Transgender" label="transgender" />
        
        <category term="Healthcare" label="healthcare" />
        
        <category term="Hormones" label="hormones" />
        
        <category term="Estrogen" label="estrogen" />
        
        <category term="Estradiol" label="estradiol" />
        
        <category term="Timeline" label="timeline" />
        

        

    </entry>
    <entry>
        
        <title>fluffy rambles: I am not anti-AI</title>
        <link href="https://beesbuzz.biz/blog/14715-I-am-not-anti-AI" rel="alternate" type="text/html" />
        <published>2026-03-12T06:44:57-07:00</published>
        <updated>2026-03-12T06:44:57-07:00</updated>
        <id>urn:uuid:099d19ac-17e4-4785-a458-43f29221c3fe</id>
        <author><name>fluffy</name></author>
        <summary type="html"><![CDATA[<p>In every corner of my life right now I cannot seem to escape the increasing fervor of the ongoing debate regarding AI and machine learning in general, where on one side you have people who are completely anti-AI and others who are completely pro-AI, and any point made in opposition to either of these things is seen as a hardline stance that is an attack or something to be corrected.</p>]]></summary>
        <content type="html"><![CDATA[

		

<p>In every corner of my life right now I cannot seem to escape the increasing fervor of the ongoing debate regarding AI and machine learning in general, where on one side you have people who are completely anti-AI and others who are completely pro-AI, and any point made in opposition to either of these things is seen as a hardline stance that is an attack or something to be corrected.</p><p>As with basically <em>everything</em> there is nuance, and a lot of conflicting things that tend to be collapsed down into single talking points, and I am getting caught in the middle. Over the last few days this has reached a fever pitch, and it&rsquo;s gotten to the point that I feel like I&rsquo;m constantly on the defense and on the edge of a panic attack.</p><p>I&rsquo;m also very tired, and I want to just write this thing in my own little space where I can get some complete thoughts out before someone jumps down my throat in the middle of a series of posts. I&rsquo;m not sure that this will have any real positive effect, but maybe a public rumination will help me work through the latest panic attack that woke me up after a particularly emotionally-draining day.</p>


<p>First off, a big part of the problem is that &ldquo;AI&rdquo; is a very broad term that means a lot of different things. In the current discourse, it mostly comes down to LLMs (Large Language Models) and similar approaches to consolidating all of human knowledge into a gigantic model that can do all the things.</p><p>But AI covers a lot of ground. Even the same basic techniques for building an AI can have different implications at different scales.</p><p><em>Generally-speaking,</em> as a rule of thumb: I am in favor of things that operate at a smaller scale, and opposed to things that work at a larger scale.</p><p>If you are locally training a model based on data that you can store locally, and where that data can be vetted for accuracy, sure! That&rsquo;s great! This covers a lot of ground. Data modeling, predicting, local search on internal knowledge, image segmentation, image classification, parameter tuning, all good stuff.</p><p>But if you are training a gigantic model that requires oodles of processing power and energy, and which also requires the non-consensual harvesting of data at a large scale, causing <a href="https://lwn.net/Articles/1008897/">operational effects</a> on other peoples&#39; websites/services/livelihoods, and consuming every last shred of data on the Internet, that&rsquo;s where I have a problem.</p><p>If you are building something that works as an assistive technology to someone, that&rsquo;s great. Helping people with disabilities, helping people to come up with ideas for how to build things, helping with education and learning, boosting someone&rsquo;s creativity? I love that.</p><p>If you are building something that <em>replaces</em> human creativity or understanding, though, I have a problem.</p><p>If your justification to something is, &ldquo;well, people have been doing this for years&rdquo; and &ldquo;this&rdquo; refers to something that would generally be considered cheating if a human were caught doing it (such as copying other peoples&#39; work, especially without attribution), that&rsquo;s not a great defense of it.</p><p>For an example of what I mean by that: a common defense of LLM-based programming is that &ldquo;people just copy-paste stuff from Stack Overflow, this is no different.&rdquo; But it <em>is</em> different:</p>
<ul>
<li>People post answers to Stack Overflow for the purpose of being used; there is <em>consent</em> involved</li>
<li>People post to Stack Overflow to help other people learn how to do things, not to have the code directly copied</li>
<li>People (hopefully) consult Stack Overflow to learn how to do a thing, and not just how to get the specific piece of code to do the specific thing they&rsquo;re trying to solve</li>
</ul>
<p>Or another defense of LLM-based stuff comes down to &ldquo;citing Wikipedia&rdquo; or the like, and many of the same counterarguments apply. People edit Wikipedia for the purpose of teaching others things, and Wikipedia is not meant to be a primary source, but a place to find primary sources. Wikipedia is a totally fine resource for finding things for further research, but it is not a thing to copy from wholesale. It is not a homework engine.</p><p>Another thing: I am totally in favor of technology that helps people to not have to work so hard. But one of the awful side-effects of the current AI push is to make people work harder, and with the work they&rsquo;re doing being less creative and more mundane.</p><p>I want AI to help me to <a href="https://sockpuppet.band/blog/1616-Trying-out-Symphonic#1616_h3_4_Yet-another-side-rant-about-AI">automate my mundane things</a> away so that I have more time and energy to work on the stuff that I enjoy doing. But the AI that&rsquo;s being shoved down my throat is trying to replace the things I <em>like</em> doing, such as solving problems or making music or drawing artwork, while I&rsquo;m still left holding the bag of the tedium that exacerbates my chronic pain, like filling out forms and re-entering metadata ad infinitum.</p><p>AI can be an amazing, powerful tool to help people do more things more easily, but that isn&rsquo;t how I&rsquo;m seeing it be used. Instead, I&rsquo;m seeing it as a force that&rsquo;s giving businesses a justification to <a href="https://www.npr.org/2025/10/28/nx-s1-5588545/amazon-layoffs-corporate-workers-ai">lay off knowledge workers</a> while exploiting the ones who remain as babysitters to the AI, where LLMs are generating all of the web content and the code behind it and humans are only being used to clean up the messes left behind when the statistical models fail to see the whole picture.</p><p>I am tired of having to constantly find <a href="https://publ.beesbuzz.biz/manual/recipes/210-Crawler-mitigations">new ways</a> of preventing AI-written scrapers for AI models from bringing down my hobby websites, because even though I go <em>out of my way</em> to send the <a href="https://en.wikipedia.org/wiki/Sitemaps">appropriate signals</a> for which pages are worth scraping and which ones are just redundant views <em>for humans to use</em>, instead I have all these crawlers pretending to be humans while doing inhuman levels of <a href="https://drewdevault.com/2025/03/17/2025-03-17-Stop-externalizing-your-costs-on-me.html">hammering my server</a> from hundreds of thousands of IP addresses trying to extract as much data as possible, as if <em>this</em> combination of tags is going to suddenly make new information appear out of the ether.</p><p>I am tired of how every time I open up my monthly budget spreadsheet I get told that things could be so much better if I <a href="https://www.apple.com/apple-creator-studio/">pay $12/month</a> for access to all-new creative ways of having AI &ldquo;improve&rdquo; the &ldquo;creativity.&rdquo;</p><p>I am tired of every web search leading to pages full of garbage based on random dissosiation of facts that look like they&rsquo;re related, all because words mean different things in different contexts.</p><p>I am tired of every single webpage I visit having an obnoxious chat bot appear in the corner trying to answer the questions that I don&rsquo;t have, and how when I&rsquo;m trying to get information that isn&rsquo;t already on the website it all goes through an AI that just regurgitates information from it and every other website, when the reason I&rsquo;m asking is because it wasn&rsquo;t on any website to begin with.</p><p>I am tired of looking for images of something for reference, only to find that the image is a complete fabrication, <a href="https://www.snopes.com/fact-check/baby-peacock-pic/">often deceptive</a>.</p><p>I am tired of every semiconductor that I need to use for my own purposes becoming super expensive because the manufacturing capacity has been pre-committed to gigantic data centers that have yet to be built to fill in the supposed need for the things that are brandished as a threat.</p><p>I am tired of being told that if I don&rsquo;t embrace the tools of my own destruction I&rsquo;m going to be left behind, when I&rsquo;m already struggling just to survive after having been <a href="https://beesbuzz.biz/blog/11693-Exit-stage-left">chewed up and spit out</a> by an industry I used to be excited to be a part of.</p><p>I am tired of how whenever I run into a problem with an AI-driven knowledge base and point out flaws in its reasoning, I am told that I am simply prompting it wrong.</p><p>I am tired of the feeling that everything that I do must be in service of the AI models, and that the only thing that is of value is that which increases &ldquo;<a href="https://www.joanwestenberg.com/the-noble-path/">global productivity</a>,&rdquo; usually at the expense of my own ability to survive.</p><p>I am tired of every decision about my ability to live being handed off to AI models that are trained on flawed data that do not get a complete picture.</p><p>I am fucking <strong><em>tired.</em></strong></p><p>Anyway, the thing I&rsquo;m trying to get at: Tools can be useful, but the tool is a means to an end, not the end itself. Don&rsquo;t confuse the two.</p><p>And with that off my chest, maybe now I can get some sleep.</p>

<p><a href="https://beesbuzz.biz/blog/14715-I-am-not-anti-AI#comments">comments</a></p>

        
        <a rel="tag" href="https://beesbuzz.biz/blog/?id=14715&amp;tag=ai">#AI</a>
        
        <a rel="tag" href="https://beesbuzz.biz/blog/?id=14715&amp;tag=artificial-intelligence">#artificial intelligence</a>
        
        <a rel="tag" href="https://beesbuzz.biz/blog/?id=14715&amp;tag=llm">#LLM</a>
        
        <a rel="tag" href="https://beesbuzz.biz/blog/?id=14715&amp;tag=discourse">#discourse</a>
        
        <a rel="tag" href="https://beesbuzz.biz/blog/?id=14715&amp;tag=rant">#rant</a>
        

        ]]>



        </content>
        <category term="Blog" label="fluffy rambles" />
        
        
        <category term="AI" label="AI" />
        
        <category term="ArtificialIntelligence" label="artificial intelligence" />
        
        <category term="LLM" label="LLM" />
        
        <category term="Discourse" label="discourse" />
        
        <category term="Rant" label="rant" />
        

        

    </entry>
    <entry>
        
        <title>Notes: The Noble Path</title>
        <link href="https://beesbuzz.biz/blog/chatter/11745-The-Noble-Path" rel="alternate" type="text/html" />
        <published>2026-03-11T12:06:36-07:00</published>
        <updated>2026-03-11T12:06:36-07:00</updated>
        <id>urn:uuid:d316b40b-c76c-4633-9528-44a9ed224668</id>
        <author><name>fluffy</name></author>
        <summary type="html"><![CDATA[]]></summary>
        <content type="html"><![CDATA[

		






<p><a href="https://beesbuzz.biz/blog/chatter/11745-The-Noble-Path#comments">comments</a></p>

        

        ]]>



        </content>
        <category term="Blog" label="fluffy rambles" />
        <category term="Notes" label="Notes" />
        
        

        

    </entry>
    

    
</feed>