<?xml version="1.0" encoding="UTF-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
  <updated>2026-03-26T12:07:55Z</updated>
  <generator>https://yabu.me</generator>

  <title>Nostr notes by Todd Sundsted</title>
  <author>
    <name>Todd Sundsted</name>
  </author>
  <link rel="self" type="application/atom+xml" href="https://yabu.me/npub1mk4fph9lfx7a6egc2pe0t70ayaw3d3wk52ln5x225h7spspuzr9qlmputz.rss" />
  <link href="https://yabu.me/npub1mk4fph9lfx7a6egc2pe0t70ayaw3d3wk52ln5x225h7spspuzr9qlmputz" />
  <id>https://yabu.me/npub1mk4fph9lfx7a6egc2pe0t70ayaw3d3wk52ln5x225h7spspuzr9qlmputz</id>
  <icon>https://epiktistes.com/uploads/4f51214b/60c6/4193/1.png</icon>
  <logo>https://epiktistes.com/uploads/4f51214b/60c6/4193/1.png</logo>




  <entry>
    <id>https://yabu.me/nevent1qqsw35vu8nh9excpgtsk779ulpqlk37a7g3mn7n63ehfn88kmjgw8fszyrw64yxuhaymmht9rpg89a0el5n469k9663t7wsef2jl6qxq8sgv5hrx3k0</id>
    
      <title type="html">this is amazing! thank you for taking the time to post it!</title>
    
    <link rel="alternate" href="https://yabu.me/nevent1qqsw35vu8nh9excpgtsk779ulpqlk37a7g3mn7n63ehfn88kmjgw8fszyrw64yxuhaymmht9rpg89a0el5n469k9663t7wsef2jl6qxq8sgv5hrx3k0" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqs2tatsf3j8fcuwkqrhc3mswzwxenskknf7wdw9tzehwtzzfg09l2gcmjjxk&#39;&gt;nevent1q…jjxk&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;this is amazing! thank you for taking the time to post it!
    </content>
    <updated>2026-05-11T14:12:33Z</updated>
  </entry>

  <entry>
    <id>https://yabu.me/nevent1qqs8ptu9mks90xn9zg74zy7nylnm9mvrfnlfq37f3hr7nghxateps3gzyrw64yxuhaymmht9rpg89a0el5n469k9663t7wsef2jl6qxq8sgv5zez0jl</id>
    
      <title type="html">&amp;gt; But my main point is that welcoming marginalized groups ...</title>
    
    <link rel="alternate" href="https://yabu.me/nevent1qqs8ptu9mks90xn9zg74zy7nylnm9mvrfnlfq37f3hr7nghxateps3gzyrw64yxuhaymmht9rpg89a0el5n469k9663t7wsef2jl6qxq8sgv5zez0jl" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqs2chv7e0tkzu0wxmpgaph6r7le5s4sveagaspu2l84eav2sjyv3gsxqw2hk&#39;&gt;nevent1q…w2hk&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;&amp;gt;  But my main point is that welcoming marginalized groups should be the focus, not opinions about AI&lt;br/&gt;&lt;br/&gt;i am very very much in alignment with this.
    </content>
    <updated>2026-04-05T21:56:46Z</updated>
  </entry>

  <entry>
    <id>https://yabu.me/nevent1qqsx472m470dyfl36ph5twevg9w5uaug67m83qwpysg4pzq32x99kuszyrw64yxuhaymmht9rpg89a0el5n469k9663t7wsef2jl6qxq8sgv5hgpqa0</id>
    
      <title type="html">consider though that there are people in marginalized communities ...</title>
    
    <link rel="alternate" href="https://yabu.me/nevent1qqsx472m470dyfl36ph5twevg9w5uaug67m83qwpysg4pzq32x99kuszyrw64yxuhaymmht9rpg89a0el5n469k9663t7wsef2jl6qxq8sgv5hgpqa0" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqsd26kcmqpxzpae6mlgz33ff7a3xuwu2tkw9tsw6f3edsq94myk82cvyfzrm&#39;&gt;nevent1q…fzrm&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;consider though that there are people in marginalized communities who are also &amp;#34;AI people&amp;#34;. are they not welcome? is anti-AI (or anti-whatever) more important than welcoming marginalized people? literally, where is the line?
    </content>
    <updated>2026-04-05T18:08:46Z</updated>
  </entry>

  <entry>
    <id>https://yabu.me/nevent1qqs2ac9xd3qrxjeljgp5kfrnyg89ar9mg9kdy5y9nl998w7raw2dlxczyrw64yxuhaymmht9rpg89a0el5n469k9663t7wsef2jl6qxq8sgv55ud9jj</id>
    
      <title type="html">it&amp;#39;s entirely possibly i just don&amp;#39;t understand what&amp;#39;s ...</title>
    
    <link rel="alternate" href="https://yabu.me/nevent1qqs2ac9xd3qrxjeljgp5kfrnyg89ar9mg9kdy5y9nl998w7raw2dlxczyrw64yxuhaymmht9rpg89a0el5n469k9663t7wsef2jl6qxq8sgv55ud9jj" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqst9aggpvflf32gw47v2zstsd8tsnnxrvq0xt2wuuj8zc8er3ngnscuy4mdz&#39;&gt;nevent1q…4mdz&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;it&amp;#39;s entirely possibly i just don&amp;#39;t understand what&amp;#39;s being proposed. i heard &amp;#34;list of fediverse software authored by LLMs&amp;#34; but that may not have been the intended message.
    </content>
    <updated>2026-03-26T17:30:51Z</updated>
  </entry>

  <entry>
    <id>https://yabu.me/nevent1qqst07uqc87u788e7sr8ej6tjg2qnykl2upfdfftwfu6j69e4klfw0gzyrw64yxuhaymmht9rpg89a0el5n469k9663t7wsef2jl6qxq8sgv5d0e9p9</id>
    
      <title type="html">I think these are good concerns but I am concerned about the idea ...</title>
    
    <link rel="alternate" href="https://yabu.me/nevent1qqst07uqc87u788e7sr8ej6tjg2qnykl2upfdfftwfu6j69e4klfw0gzyrw64yxuhaymmht9rpg89a0el5n469k9663t7wsef2jl6qxq8sgv5d0e9p9" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqsxj5975lt2dv5e0x9nphqx6ec6y75hm3udrek0akpjy0e8jkph69cpmxgka&#39;&gt;nevent1q…xgka&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;I think these are good concerns but I am concerned about the idea of “tracking”. right now my perception of the fediverse is that it has become by far the most overtly hostile social network I’ve been on with wrath regularly directed at “those who don’t conform” even if they diverge in trivial ways. and I am not the only one with a stake in this saying this! more of that made easier to direct is not going to benefit the fediverse in the long term.
    </content>
    <updated>2026-03-26T12:00:50Z</updated>
  </entry>

  <entry>
    <id>https://yabu.me/nevent1qqsrl6xf0zvjxzxrzwuj3q76ysu803tc4r6tnq0qjsd65rxur4u3jfczyrw64yxuhaymmht9rpg89a0el5n469k9663t7wsef2jl6qxq8sgv5rq2h7w</id>
    
      <title type="html">I have started work on a Mastodon-compatible API layer intended ...</title>
    
    <link rel="alternate" href="https://yabu.me/nevent1qqsrl6xf0zvjxzxrzwuj3q76ysu803tc4r6tnq0qjsd65rxur4u3jfczyrw64yxuhaymmht9rpg89a0el5n469k9663t7wsef2jl6qxq8sgv5rq2h7w" />
    <content type="html">
      I have started work on a Mastodon-compatible API layer intended to support the many Mastodon front-ends available. It is incomplete and requires an explicit build flag to enable, but what&amp;#39;s there (the main timeline) already works with the [official Mastodon app](&lt;a href=&#34;https://joinmastodon.org/apps&#34;&gt;https://joinmastodon.org/apps&lt;/a&gt; ), [Tusky](&lt;a href=&#34;https://tusky.app/&#34;&gt;https://tusky.app/&lt;/a&gt; ), and [Phanpy](&lt;a href=&#34;https://phanpy.social/&#34;&gt;https://phanpy.social/&lt;/a&gt; ).&lt;br/&gt;&lt;br/&gt;Here&amp;#39;s the full changelog:&lt;br/&gt;&lt;br/&gt;**Fixed**&amp;lt;li&amp;gt;Editor focus now stays in the editor after the first draft is saved. (fixes &amp;lt;a href=&amp;#34;&lt;a href=&#34;https://github.com/toddsundsted/ktistec/issues/139&amp;#34;&amp;gt;#139&amp;lt;/a&amp;gt&#34;&gt;https://github.com/toddsundsted/ktistec/issues/139&amp;#34;&amp;gt;#139&amp;lt;/a&amp;gt&lt;/a&gt;;)&amp;lt;/li&amp;gt;&amp;lt;li&amp;gt;Filter settings instructions. (fixes &amp;lt;a href=&amp;#34;&lt;a href=&#34;https://github.com/toddsundsted/ktistec/issues/135&amp;#34;&amp;gt;#135&amp;lt;/a&amp;gt&#34;&gt;https://github.com/toddsundsted/ktistec/issues/135&amp;#34;&amp;gt;#135&amp;lt;/a&amp;gt&lt;/a&gt;;)&amp;lt;/li&amp;gt;&lt;br/&gt;&lt;br/&gt;**Changed**&amp;lt;li&amp;gt;Improved consistency of mini button colors.&amp;lt;/li&amp;gt;&lt;br/&gt;&lt;br/&gt;As always, check out the [full diff](&lt;a href=&#34;https://github.com/toddsundsted/ktistec/compare/39a167b9...c95cd6f3&#34;&gt;https://github.com/toddsundsted/ktistec/compare/39a167b9...c95cd6f3&lt;/a&gt; ) for the complete details.&lt;br/&gt;&lt;br/&gt;#ktistec #crystallang #activitypub #fediverse
    </content>
    <updated>2026-03-11T12:26:45Z</updated>
  </entry>

  <entry>
    <id>https://yabu.me/nevent1qqs8f2889457pv5y42x5j24w8mszy5mmftt5jvuc8c5rjrtkgsr3veqzyrw64yxuhaymmht9rpg89a0el5n469k9663t7wsef2jl6qxq8sgv53k0qjc</id>
    
      <title type="html">RE: https://epiktistes.com/objects/8yfM5LbtUww i [just ...</title>
    
    <link rel="alternate" href="https://yabu.me/nevent1qqs8f2889457pv5y42x5j24w8mszy5mmftt5jvuc8c5rjrtkgsr3veqzyrw64yxuhaymmht9rpg89a0el5n469k9663t7wsef2jl6qxq8sgv53k0qjc" />
    <content type="html">
      RE: &lt;a href=&#34;https://epiktistes.com/objects/8yfM5LbtUww&#34;&gt;https://epiktistes.com/objects/8yfM5LbtUww&lt;/a&gt;&lt;br/&gt;&lt;br/&gt;i [just released](&lt;a href=&#34;https://github.com/toddsundsted/ktistec/commit/3cd5b4bf&#34;&gt;https://github.com/toddsundsted/ktistec/commit/3cd5b4bf&lt;/a&gt; ) an experimental version of this feature. i don&amp;#39;t love how it looks but i do love reading this way. i&amp;#39;m going back through my timeline looking for chains of posts that i didn&amp;#39;t read before that i can (more easily) read now!&lt;br/&gt;&lt;br/&gt;#ktistec
    </content>
    <updated>2026-02-20T10:53:57Z</updated>
  </entry>

  <entry>
    <id>https://yabu.me/nevent1qqs2tnm79x5wnum5mvueh8elahtcfuz3dktdmprgdu6zhn664envxyszyrw64yxuhaymmht9rpg89a0el5n469k9663t7wsef2jl6qxq8sgv5573yy4</id>
    
      <title type="html">&amp;gt; The fediverse is anarchist praxis. joke (but also not joke) ...</title>
    
    <link rel="alternate" href="https://yabu.me/nevent1qqs2tnm79x5wnum5mvueh8elahtcfuz3dktdmprgdu6zhn664envxyszyrw64yxuhaymmht9rpg89a0el5n469k9663t7wsef2jl6qxq8sgv5573yy4" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqswfd9ugd7rayn4275yngfqxg35z73fl5tlah0306ntu345qskqspgka9dfn&#39;&gt;nevent1q…9dfn&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;&amp;gt; The fediverse is anarchist praxis.&lt;br/&gt;&lt;br/&gt;joke (but also not joke) and in reply to your post [here](&lt;a href=&#34;https://social.wake.st/@liaizon/116092125409285874&#34;&gt;https://social.wake.st/@liaizon/116092125409285874&lt;/a&gt; ), this is also why we struggle to conform to anyone else&amp;#39;s opinion of what the standards should be 😂
    </content>
    <updated>2026-02-19T10:46:50Z</updated>
  </entry>

  <entry>
    <id>https://yabu.me/nevent1qqsp7u9gaswjdca759rj2g8hvua4lerda444tpewgkwusupm7rd4d7czyrw64yxuhaymmht9rpg89a0el5n469k9663t7wsef2jl6qxq8sgv5prax22</id>
    
      <title type="html">there&amp;#39;s maybe a need for that, but i&amp;#39;m not confident ...</title>
    
    <link rel="alternate" href="https://yabu.me/nevent1qqsp7u9gaswjdca759rj2g8hvua4lerda444tpewgkwusupm7rd4d7czyrw64yxuhaymmht9rpg89a0el5n469k9663t7wsef2jl6qxq8sgv5prax22" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqstpfxpy929u30pevmv7jvx2lyp9ptzma3cyu5xfdnjjjw0y2ql3acvrknlz&#39;&gt;nevent1q…knlz&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;there&amp;#39;s maybe a need for that, but i&amp;#39;m not confident there&amp;#39;s enough capacity to actually *do the stuff* once the deciding has been done.
    </content>
    <updated>2026-02-18T18:43:13Z</updated>
  </entry>

  <entry>
    <id>https://yabu.me/nevent1qqstjphk659h3dnuk0d25t7pmns8lkvs0jajwlqtsyy2njmd80ugkeszyrw64yxuhaymmht9rpg89a0el5n469k9663t7wsef2jl6qxq8sgv5595u56</id>
    
      <title>Nostr event nevent1qqstjphk659h3dnuk0d25t7pmns8lkvs0jajwlqtsyy2njmd80ugkeszyrw64yxuhaymmht9rpg89a0el5n469k9663t7wsef2jl6qxq8sgv5595u56</title>
    
    <link rel="alternate" href="https://yabu.me/nevent1qqstjphk659h3dnuk0d25t7pmns8lkvs0jajwlqtsyy2njmd80ugkeszyrw64yxuhaymmht9rpg89a0el5n469k9663t7wsef2jl6qxq8sgv5595u56" />
    <content type="html">
      quoting that post
    </content>
    <updated>2026-02-15T15:30:46Z</updated>
  </entry>

  <entry>
    <id>https://yabu.me/nevent1qqsv6z6t87xtxqvhh396pjkl8zwgn52w9f3d9ng0r78y2mh2kxuvh8qzyrw64yxuhaymmht9rpg89a0el5n469k9663t7wsef2jl6qxq8sgv596auer</id>
    
      <title type="html">I managed to get 2/3rds of quote posts ...</title>
    
    <link rel="alternate" href="https://yabu.me/nevent1qqsv6z6t87xtxqvhh396pjkl8zwgn52w9f3d9ng0r78y2mh2kxuvh8qzyrw64yxuhaymmht9rpg89a0el5n469k9663t7wsef2jl6qxq8sgv596auer" />
    <content type="html">
      I managed to get 2/3rds of quote posts ([FEP-044f](&lt;a href=&#34;https://codeberg.org/fediverse/fep/src/branch/main/fep/044f/fep-044f.md&#34;&gt;https://codeberg.org/fediverse/fep/src/branch/main/fep/044f/fep-044f.md&lt;/a&gt; )) working in #ktistec. The only part remaining is quote posting *from* the server and this depends on functionality to delay delivery until the quote request is accepted (or not). I need that for scheduled posts, so it&amp;#39;s a delay but time well spent!&lt;br/&gt;&lt;br/&gt;#activitypub #fediverse&lt;br/&gt; &lt;img src=&#34;https://epiktistes.com/uploads/21d4ce1b/c302/43ff/1.png&#34;&gt; &lt;br/&gt;
    </content>
    <updated>2026-02-09T13:04:51Z</updated>
  </entry>

  <entry>
    <id>https://yabu.me/nevent1qqsvhv4wmzmln5te78ayr9j7u6u2ehmy6vv83tkgcp0tjztc2lmn0nqzyrw64yxuhaymmht9rpg89a0el5n469k9663t7wsef2jl6qxq8sgv5dqydsw</id>
    
      <title type="html">i think this is super cool and i want to add this to ktistec! but ...</title>
    
    <link rel="alternate" href="https://yabu.me/nevent1qqsvhv4wmzmln5te78ayr9j7u6u2ehmy6vv83tkgcp0tjztc2lmn0nqzyrw64yxuhaymmht9rpg89a0el5n469k9663t7wsef2jl6qxq8sgv5dqydsw" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqsqwvpfxehhxv8f9kky56dy70zdckn3w2vy8sd5n9yy02pnzh8q3cqlcfa0j&#39;&gt;nevent1q…fa0j&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;i think this is super cool and i want to add this to ktistec! but since i can&amp;#39;t read between the lines, are you okay with your iconography library being used like this?
    </content>
    <updated>2026-01-26T11:52:20Z</updated>
  </entry>

  <entry>
    <id>https://yabu.me/nevent1qqsdrl6p2wpvgakf495wa789el6e3dltkz2dcx0ad9f0srrqmkfcafszyrw64yxuhaymmht9rpg89a0el5n469k9663t7wsef2jl6qxq8sgv5wgpxah</id>
    
      <title type="html">I&amp;#39;ve been using Firefox for two decades. Some of ...</title>
    
    <link rel="alternate" href="https://yabu.me/nevent1qqsdrl6p2wpvgakf495wa789el6e3dltkz2dcx0ad9f0srrqmkfcafszyrw64yxuhaymmht9rpg89a0el5n469k9663t7wsef2jl6qxq8sgv5wgpxah" />
    <content type="html">
      I&amp;#39;ve been using Firefox for two decades. Some of Mozilla&amp;#39;s recent choices gave me a reason to look at alternative browsers. There&amp;#39;s no way I&amp;#39;m using Chrome, but it turns out that there are more than a few capable Firefox forks. With no real requirements in mind, I started researching. Here are the forks I found in no particular order:&amp;lt;li&amp;gt;LibreWolf (&amp;lt;a href=&amp;#34;&lt;a href=&#34;https://librewolf.net/&amp;#34;&amp;gt;site&amp;lt;/a&amp;gt&#34;&gt;https://librewolf.net/&amp;#34;&amp;gt;site&amp;lt;/a&amp;gt&lt;/a&gt;;) (&amp;lt;a href=&amp;#34;&lt;a href=&#34;https://codeberg.org/librewolf&amp;#34;&amp;gt;repo&amp;lt;/a&amp;gt&#34;&gt;https://codeberg.org/librewolf&amp;#34;&amp;gt;repo&amp;lt;/a&amp;gt&lt;/a&gt;;)&amp;lt;/li&amp;gt;&amp;lt;li&amp;gt;GNU IceCat (&amp;lt;a href=&amp;#34;&lt;a href=&#34;https://www.gnu.org/software/gnuzilla/&amp;#34;&amp;gt;site&amp;lt;/a&amp;gt&#34;&gt;https://www.gnu.org/software/gnuzilla/&amp;#34;&amp;gt;site&amp;lt;/a&amp;gt&lt;/a&gt;;) (&amp;lt;a href=&amp;#34;&lt;a href=&#34;http://savannah.gnu.org/projects/gnuzilla&amp;#34;&amp;gt;repo&amp;lt;/a&amp;gt&#34;&gt;http://savannah.gnu.org/projects/gnuzilla&amp;#34;&amp;gt;repo&amp;lt;/a&amp;gt&lt;/a&gt;;)&amp;lt;/li&amp;gt;&amp;lt;li&amp;gt;Mullvad Browser (&amp;lt;a href=&amp;#34;&lt;a href=&#34;https://mullvad.net/en/download/browser/&amp;#34;&amp;gt;site&amp;lt;/a&amp;gt&#34;&gt;https://mullvad.net/en/download/browser/&amp;#34;&amp;gt;site&amp;lt;/a&amp;gt&lt;/a&gt;;) (&amp;lt;a href=&amp;#34;&lt;a href=&#34;https://github.com/mullvad/mullvad-browser&amp;#34;&amp;gt;repo&amp;lt;/a&amp;gt&#34;&gt;https://github.com/mullvad/mullvad-browser&amp;#34;&amp;gt;repo&amp;lt;/a&amp;gt&lt;/a&gt;;)&amp;lt;/li&amp;gt;&amp;lt;li&amp;gt;Waterfox (&amp;lt;a href=&amp;#34;&lt;a href=&#34;https://www.waterfox.net/&amp;#34;&amp;gt;site&amp;lt;/a&amp;gt&#34;&gt;https://www.waterfox.net/&amp;#34;&amp;gt;site&amp;lt;/a&amp;gt&lt;/a&gt;;) (&amp;lt;a href=&amp;#34;&lt;a href=&#34;https://github.com/BrowserWorks/waterfox&amp;#34;&amp;gt;repo&amp;lt;/a&amp;gt&#34;&gt;https://github.com/BrowserWorks/waterfox&amp;#34;&amp;gt;repo&amp;lt;/a&amp;gt&lt;/a&gt;;)&amp;lt;/li&amp;gt;&amp;lt;li&amp;gt;Zen Browser (&amp;lt;a href=&amp;#34;&lt;a href=&#34;https://zen-browser.app/&amp;#34;&amp;gt;site&amp;lt;/a&amp;gt&#34;&gt;https://zen-browser.app/&amp;#34;&amp;gt;site&amp;lt;/a&amp;gt&lt;/a&gt;;) (&amp;lt;a href=&amp;#34;&lt;a href=&#34;https://github.com/zen-browser/desktop&amp;#34;&amp;gt;repo&amp;lt;/a&amp;gt&#34;&gt;https://github.com/zen-browser/desktop&amp;#34;&amp;gt;repo&amp;lt;/a&amp;gt&lt;/a&gt;;)&amp;lt;/li&amp;gt;&amp;lt;li&amp;gt;Floorp (&amp;lt;a href=&amp;#34;&lt;a href=&#34;https://floorp.app/&amp;#34;&amp;gt;site&amp;lt;/a&amp;gt&#34;&gt;https://floorp.app/&amp;#34;&amp;gt;site&amp;lt;/a&amp;gt&lt;/a&gt;;) (&amp;lt;a href=&amp;#34;&lt;a href=&#34;https://github.com/Floorp-Projects/Floorp&amp;#34;&amp;gt;repo&amp;lt;/a&amp;gt&#34;&gt;https://github.com/Floorp-Projects/Floorp&amp;#34;&amp;gt;repo&amp;lt;/a&amp;gt&lt;/a&gt;;)&amp;lt;/li&amp;gt;&amp;lt;li&amp;gt;Mercury Browser (&amp;lt;a href=&amp;#34;&lt;a href=&#34;https://thorium.rocks/mercury&amp;#34;&amp;gt;site&amp;lt;/a&amp;gt&#34;&gt;https://thorium.rocks/mercury&amp;#34;&amp;gt;site&amp;lt;/a&amp;gt&lt;/a&gt;;) (&amp;lt;a href=&amp;#34;&lt;a href=&#34;https://github.com/Alex313031/Mercury&amp;#34;&amp;gt;repo&amp;lt;/a&amp;gt&#34;&gt;https://github.com/Alex313031/Mercury&amp;#34;&amp;gt;repo&amp;lt;/a&amp;gt&lt;/a&gt;;)&amp;lt;/li&amp;gt;&amp;lt;li&amp;gt;Pale Moon (&amp;lt;a href=&amp;#34;&lt;a href=&#34;https://www.palemoon.org/&amp;#34;&amp;gt;site&amp;lt;/a&amp;gt&#34;&gt;https://www.palemoon.org/&amp;#34;&amp;gt;site&amp;lt;/a&amp;gt&lt;/a&gt;;) (&amp;lt;a href=&amp;#34;&lt;a href=&#34;https://repo.palemoon.org/MoonchildProductions/Pale-Moon&amp;#34;&amp;gt;repo&amp;lt;/a&amp;gt&#34;&gt;https://repo.palemoon.org/MoonchildProductions/Pale-Moon&amp;#34;&amp;gt;repo&amp;lt;/a&amp;gt&lt;/a&gt;;)&amp;lt;/li&amp;gt;&amp;lt;li&amp;gt;Basilisk (&amp;lt;a href=&amp;#34;&lt;a href=&#34;https://www.basilisk-browser.org/&amp;#34;&amp;gt;site&amp;lt;/a&amp;gt&#34;&gt;https://www.basilisk-browser.org/&amp;#34;&amp;gt;site&amp;lt;/a&amp;gt&lt;/a&gt;;) (&amp;lt;a href=&amp;#34;&lt;a href=&#34;https://repo.palemoon.org/MoonchildProductions/Basilisk&amp;#34;&amp;gt;repo&amp;lt;/a&amp;gt&#34;&gt;https://repo.palemoon.org/MoonchildProductions/Basilisk&amp;#34;&amp;gt;repo&amp;lt;/a&amp;gt&lt;/a&gt;;)&amp;lt;/li&amp;gt;&amp;lt;li&amp;gt;Firefox ESR (&amp;lt;a href=&amp;#34;&lt;a href=&#34;https://www.mozilla.org/en-US/firefox/enterprise/&amp;#34;&amp;gt;site&amp;lt;/a&amp;gt&#34;&gt;https://www.mozilla.org/en-US/firefox/enterprise/&amp;#34;&amp;gt;site&amp;lt;/a&amp;gt&lt;/a&gt;;) (&amp;lt;a href=&amp;#34;&lt;a href=&#34;https://hg.mozilla.org/releases/&amp;#34;&amp;gt;download&amp;lt;/a&amp;gt&#34;&gt;https://hg.mozilla.org/releases/&amp;#34;&amp;gt;download&amp;lt;/a&amp;gt&lt;/a&gt;;)&amp;lt;/li&amp;gt;&amp;lt;li&amp;gt;Tor Browser (&amp;lt;a href=&amp;#34;&lt;a href=&#34;https://www.torproject.org/download/&amp;#34;&amp;gt;site&amp;lt;/a&amp;gt&#34;&gt;https://www.torproject.org/download/&amp;#34;&amp;gt;site&amp;lt;/a&amp;gt&lt;/a&gt;;) (&amp;lt;a href=&amp;#34;&lt;a href=&#34;https://gitlab.torproject.org/tpo/applications/tor-browser&amp;#34;&amp;gt;repo&amp;lt;/a&amp;gt&#34;&gt;https://gitlab.torproject.org/tpo/applications/tor-browser&amp;#34;&amp;gt;repo&amp;lt;/a&amp;gt&lt;/a&gt;;)&amp;lt;/li&amp;gt;&amp;lt;li&amp;gt;SeaMonkey (&amp;lt;a href=&amp;#34;&lt;a href=&#34;https://www.seamonkey-project.org/&amp;#34;&amp;gt;site&amp;lt;/a&amp;gt&#34;&gt;https://www.seamonkey-project.org/&amp;#34;&amp;gt;site&amp;lt;/a&amp;gt&lt;/a&gt;;)&amp;lt;/li&amp;gt;&amp;lt;li&amp;gt;K-Meleon (&amp;lt;a href=&amp;#34;&lt;a href=&#34;http://kmeleonbrowser.org/&amp;#34;&amp;gt;site&amp;lt;/a&amp;gt&#34;&gt;http://kmeleonbrowser.org/&amp;#34;&amp;gt;site&amp;lt;/a&amp;gt&lt;/a&gt;;) (&amp;lt;a href=&amp;#34;&lt;a href=&#34;https://sourceforge.net/projects/kmeleon/&amp;#34;&amp;gt;repo&amp;lt;/a&amp;gt&#34;&gt;https://sourceforge.net/projects/kmeleon/&amp;#34;&amp;gt;repo&amp;lt;/a&amp;gt&lt;/a&gt;;)&amp;lt;/li&amp;gt;&lt;br/&gt;&lt;br/&gt;I started with **LibreWolf** since it kept coming up in recommendations. It strips out all the telemetry, bundles uBlock Origin, and apparently tracks Firefox stable releases within 24-72 hours. The catches I found: no auto-updates on Windows (not a problem for me), streaming services need workarounds because it disables Widevine (not a problem for me), and on macOS you have to run terminal commands to bypass Gatekeeper warnings (a negative). It also looks like it might stop working on macOS late next year altogether (definitely a problem).&lt;br/&gt;&lt;br/&gt;**Zen Browser** surprised me—it&amp;#39;s accumulated 38,000&#43; GitHub stars since launching in July 2024. It&amp;#39;s inspired by the maybe defunct Arc Browser: vertical tabs, split-view, workspaces. It releases weekly. The downside is no horizontal tabs option. I&amp;#39;m not sold on it but I can see the appeal.&lt;br/&gt;&lt;br/&gt;There&amp;#39;s a whole category of forks that preserve &amp;#34;old&amp;#34; Firefox. **Pale Moon** uses its own rendering engine (Goanna) and keeps the classic Firefox interface. It still supports legacy XUL extensions and NPAPI plugins. It uses fewer resources than modern browsers because it&amp;#39;s single-process. The trade-off is that modern JavaScript-heavy sites struggle and some things like CloudFlare challenges fail.&lt;br/&gt;&lt;br/&gt;**Waterfox** caught my attention because of its privacy-first stance and support for older extensions. It seems to be mostly one developer, which might make others a bit nervous, but it&amp;#39;s not an issue for me. Sometimes less is more.&lt;br/&gt;&lt;br/&gt;One thing I learned that seems important: *frequency of updates varies wildly*. **LibreWolf**, **Zen**, and **Floorp** seem to track Firefox releases within days. **Pale Moon** and **GNU IceCat** lag weeks or months. That matters for security patches.&lt;br/&gt;&lt;br/&gt;Honestly, while I continue to research alternatives, I&amp;#39;m staying on Firefox. Hardened with the right extensions and configured the right way, it still meets my needs. But it&amp;#39;s good to know options exist, and I&amp;#39;m hopeful that something will show up that captures lightning in a bottle the same way Firefox did 20 years ago!&lt;br/&gt;&lt;br/&gt;#firefox #browser #privacy #opensource
    </content>
    <updated>2025-12-25T17:22:03Z</updated>
  </entry>

  <entry>
    <id>https://yabu.me/nevent1qqsqq4gvhpsxryu9aswvvdv8klc7wuet0ex47wad3cc33upr6mck9qszyrw64yxuhaymmht9rpg89a0el5n469k9663t7wsef2jl6qxq8sgv5kxwmdr</id>
    
      <title>Nostr event nevent1qqsqq4gvhpsxryu9aswvvdv8klc7wuet0ex47wad3cc33upr6mck9qszyrw64yxuhaymmht9rpg89a0el5n469k9663t7wsef2jl6qxq8sgv5kxwmdr</title>
    
    <link rel="alternate" href="https://yabu.me/nevent1qqsqq4gvhpsxryu9aswvvdv8klc7wuet0ex47wad3cc33upr6mck9qszyrw64yxuhaymmht9rpg89a0el5n469k9663t7wsef2jl6qxq8sgv5kxwmdr" />
    <content type="html">
      [Release v3.2.3](&lt;a href=&#34;https://github.com/toddsundsted/ktistec/compare/2ab2a727...023fd225&#34;&gt;https://github.com/toddsundsted/ktistec/compare/2ab2a727...023fd225&lt;/a&gt; ) of Ktistec includes two big features:&amp;lt;li&amp;gt;&amp;lt;a href=&amp;#34;&lt;a href=&#34;https://codeberg.org/fediverse/fep/src/branch/main/fep/1b12/fep-1b12.md&amp;#34;&amp;gt;&amp;lt;strong&amp;gt;FEP-1b12&amp;lt;/strong&amp;gt;&amp;lt;/a&amp;gt;&amp;lt;strong&amp;gt&#34;&gt;https://codeberg.org/fediverse/fep/src/branch/main/fep/1b12/fep-1b12.md&amp;#34;&amp;gt;&amp;lt;strong&amp;gt;FEP-1b12&amp;lt;/strong&amp;gt;&amp;lt;/a&amp;gt;&amp;lt;strong&amp;gt&lt;/a&gt;; Group federation&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;Improved federation with Lemmy and other forum-type servers. Ktistec supports &amp;lt;em&amp;gt;community and thread follow/unfollow&amp;lt;/em&amp;gt;, as well as up-vote/like (down-vote/dislike is supported but there is no visual affordance for that yet).&amp;lt;/li&amp;gt;&amp;lt;li&amp;gt;&amp;lt;a href=&amp;#34;&lt;a href=&#34;https://codeberg.org/fediverse/fep/src/branch/main/fep/9098/fep-9098.md&amp;#34;&amp;gt;&amp;lt;strong&amp;gt;FEP-9098&amp;lt;/strong&amp;gt;&amp;lt;/a&amp;gt;&amp;lt;strong&amp;gt&#34;&gt;https://codeberg.org/fediverse/fep/src/branch/main/fep/9098/fep-9098.md&amp;#34;&amp;gt;&amp;lt;strong&amp;gt;FEP-9098&amp;lt;/strong&amp;gt;&amp;lt;/a&amp;gt;&amp;lt;strong&amp;gt&lt;/a&gt;; Custom emojis&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;Support for &amp;lt;em&amp;gt;viewing custom emoji in posts and on actor profiles&amp;lt;/em&amp;gt;. Ktistec does not yet support custom emoji creation and management.&amp;lt;/li&amp;gt;&lt;br/&gt;&lt;br/&gt;The full changelog:&lt;br/&gt;&lt;br/&gt;**Added**&amp;lt;li&amp;gt;Support for viewing custom emoji in posts and on actor profiles.&amp;lt;/li&amp;gt;&amp;lt;li&amp;gt;Actor type (&amp;lt;code&amp;gt;Person&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;Group&amp;lt;/code&amp;gt;, etc.) overlay badges on actor panels.&amp;lt;/li&amp;gt;&amp;lt;li&amp;gt;Colored fallback avatars for actors without icons.&amp;lt;/li&amp;gt;&amp;lt;li&amp;gt;Support for robots.txt.&amp;lt;/li&amp;gt;&lt;br/&gt;&lt;br/&gt;**Fixed**&amp;lt;li&amp;gt;Federation with Lemmy and other servers that support &amp;lt;a href=&amp;#34;&lt;a href=&#34;https://codeberg.org/fediverse/fep/src/branch/main/fep/1b12/fep-1b12.md&amp;#34;&amp;gt;FEP-1b12&amp;lt;/a&amp;gt;.&amp;lt;ul&amp;gt;&amp;lt;li&amp;gt;Shared&#34;&gt;https://codeberg.org/fediverse/fep/src/branch/main/fep/1b12/fep-1b12.md&amp;#34;&amp;gt;FEP-1b12&amp;lt;/a&amp;gt;.&amp;lt;ul&amp;gt;&amp;lt;li&amp;gt;Shared&lt;/a&gt; inbox support for local actors.&amp;lt;/li&amp;gt;&amp;lt;li&amp;gt;Serialization of &amp;lt;code&amp;gt;Undo&amp;lt;/code&amp;gt; includes the undone activity.&amp;lt;/li&amp;gt;&amp;lt;li&amp;gt;Serialization of &amp;lt;code&amp;gt;Like&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;Dislike&amp;lt;/code&amp;gt; does not.&amp;lt;/li&amp;gt;&amp;lt;/ul&amp;gt;&amp;lt;/li&amp;gt;&amp;lt;li&amp;gt;Notify only once for an object&amp;#39;s first received activity.&amp;lt;/li&amp;gt;&lt;br/&gt;&lt;br/&gt;**Changed**&amp;lt;li&amp;gt;Accumulate metrics by hour for finer granularity.&amp;lt;/li&amp;gt;&amp;lt;li&amp;gt;Clean up presentation of public followers/following pages.&amp;lt;/li&amp;gt;&lt;br/&gt;&lt;br/&gt;The next release will include support for *Mastodon polls* ([FEP-9967](&lt;a href=&#34;https://codeberg.org/fediverse/fep/src/branch/main/fep/9967/fep-9967.md&#34;&gt;https://codeberg.org/fediverse/fep/src/branch/main/fep/9967/fep-9967.md&lt;/a&gt; )).&lt;br/&gt;&lt;br/&gt;#ktistec #crystallang #activitypub #fediverse
    </content>
    <updated>2025-12-10T12:55:47Z</updated>
  </entry>

  <entry>
    <id>https://yabu.me/nevent1qqsr4fjh4wvkg2luulaqrnysp92mzfcf37526gc9dy2l2vhg22yapwqzyrw64yxuhaymmht9rpg89a0el5n469k9663t7wsef2jl6qxq8sgv56jnpgy</id>
    
      <title type="html">wondering what’s the easiest thing around that can quickly take ...</title>
    
    <link rel="alternate" href="https://yabu.me/nevent1qqsr4fjh4wvkg2luulaqrnysp92mzfcf37526gc9dy2l2vhg22yapwqzyrw64yxuhaymmht9rpg89a0el5n469k9663t7wsef2jl6qxq8sgv56jnpgy" />
    <content type="html">
      wondering what’s the easiest thing around that can quickly take a video and transcribe the audio? ideally in a way that I could add a “transcribe” button to #ktistec. i appreciate the benefits of video but it’s not the format i’m looking to consume most of the time.
    </content>
    <updated>2025-10-07T16:20:40Z</updated>
  </entry>

  <entry>
    <id>https://yabu.me/nevent1qqsqn4q2arksk2wn0juunlr3yw8l4dva2xslga876uksftt3jkruakqzyrw64yxuhaymmht9rpg89a0el5n469k9663t7wsef2jl6qxq8sgv5fd9svq</id>
    
      <title type="html">With the addition of the @npub149w…se5q account, ...</title>
    
    <link rel="alternate" href="https://yabu.me/nevent1qqsqn4q2arksk2wn0juunlr3yw8l4dva2xslga876uksftt3jkruakqzyrw64yxuhaymmht9rpg89a0el5n469k9663t7wsef2jl6qxq8sgv5fd9svq" />
    <content type="html">
      With the addition of the &lt;span itemprop=&#34;mentions&#34; itemscope itemtype=&#34;https://schema.org/Person&#34;&gt;&lt;a itemprop=&#34;url&#34; href=&#34;/npub149wt7le6femuwvdhpewf7hc0x7eezj7wnm3yzpltwej0pd04n4uqykse5q&#34; class=&#34;bg-lavender dark:prose:text-neutral-50 dark:text-neutral-50 dark:bg-garnet px-1&#34;&gt;&lt;span&gt;Ktistec&lt;/span&gt; (&lt;span class=&#34;italic&#34;&gt;npub149w…se5q&lt;/span&gt;)&lt;/a&gt;&lt;/span&gt; account, [Ktistec](&lt;a href=&#34;https://github.com/toddsundsted/ktistec&#34;&gt;https://github.com/toddsundsted/ktistec&lt;/a&gt; ) (the server) now supports multiple users.&lt;br/&gt;&lt;br/&gt;I still have a few rough edges to fix, but there&amp;#39;s a good chance official multi-user support will be included in the next release.&lt;br/&gt;&lt;br/&gt;#ktistec #fediverse #activitypub #crystallang
    </content>
    <updated>2025-09-27T16:15:41Z</updated>
  </entry>

  <entry>
    <id>https://yabu.me/nevent1qqsghhznjq2wfsp3qd4aw8cqjwydv9ce6glmx3es8kf7h4klpethr7szyrw64yxuhaymmht9rpg89a0el5n469k9663t7wsef2jl6qxq8sgv5k6ggny</id>
    
      <title type="html">I was planning on adding support for custom themes in [release ...</title>
    
    <link rel="alternate" href="https://yabu.me/nevent1qqsghhznjq2wfsp3qd4aw8cqjwydv9ce6glmx3es8kf7h4klpethr7szyrw64yxuhaymmht9rpg89a0el5n469k9663t7wsef2jl6qxq8sgv5k6ggny" />
    <content type="html">
      I was planning on adding support for custom themes in [release v2.4.13](&lt;a href=&#34;https://github.com/toddsundsted/ktistec/releases/tag/v2.4.13&#34;&gt;https://github.com/toddsundsted/ktistec/releases/tag/v2.4.13&lt;/a&gt; ) of Ktistec. That turned out to be difficult, so I implemented post visibility instead—which then also turned out to be difficult. *C&amp;#39;est la vie.*&lt;br/&gt;&lt;br/&gt;The editor now includes radio buttons for controlling post distribution and visibility. In particular, you can now send messages directly to mentioned users without sending them to all of your followers. &lt;br/&gt;&lt;br/&gt;You can also mark posts as sensitive using the content warning checkbox in the editor. Sensitive posts are hidden behind a summary that readers can click to reveal the content.&lt;br/&gt;&lt;br/&gt;figure: screenshot of the editor showing the visibility settings and the content warning checkboxThis release of Ktistec includes RSS feeds and RSS feed discovery. RSS feeds are currently available for the site home page and account pages.&lt;br/&gt;&lt;br/&gt;Here&amp;#39;s the full changelog:&lt;br/&gt;&lt;br/&gt;**Added**&amp;lt;li&amp;gt;Support RSS feeds on the home page and account pages. (fixes &amp;lt;a href=&amp;#34;&lt;a href=&#34;https://github.com/toddsundsted/ktistec/issues/14&amp;#34;&amp;gt;#14&amp;lt;/a&amp;gt&#34;&gt;https://github.com/toddsundsted/ktistec/issues/14&amp;#34;&amp;gt;#14&amp;lt;/a&amp;gt&lt;/a&gt;;)&amp;lt;/li&amp;gt;&amp;lt;li&amp;gt;Hide sensitive content, spoilers, etc. with content warnings.&amp;lt;/li&amp;gt;&amp;lt;li&amp;gt;Support direct messages with proper visibility controls.&amp;lt;/li&amp;gt;&lt;br/&gt;&lt;br/&gt;**Changed**&amp;lt;li&amp;gt;Switch from calendar-based periods to duration-based periods in charts.&amp;lt;/li&amp;gt;&lt;br/&gt;&lt;br/&gt;**Fixed**&amp;lt;li&amp;gt;Track and federate object updates.&amp;lt;/li&amp;gt;&amp;lt;li&amp;gt;Fix object visibility bugs in object replies and threads.&amp;lt;/li&amp;gt;&lt;br/&gt;&lt;br/&gt;#ktistec #fediverse #activitypub #crystallang&lt;br/&gt; &lt;img src=&#34;https://epiktistes.com/uploads/e9b57732/93bc/4b1f/1.png&#34;&gt; &lt;br/&gt;
    </content>
    <updated>2025-09-17T02:48:53Z</updated>
  </entry>

  <entry>
    <id>https://yabu.me/nevent1qqsz7nzp59f4p62gpq57scjh2qk9c9su6lyly5sc5h3er8nhkk7s7xqzyrw64yxuhaymmht9rpg89a0el5n469k9663t7wsef2jl6qxq8sgv5xvjtsk</id>
    
      <title type="html">fediverse follow-up to a #worldcon question i want to continue to ...</title>
    
    <link rel="alternate" href="https://yabu.me/nevent1qqsz7nzp59f4p62gpq57scjh2qk9c9su6lyly5sc5h3er8nhkk7s7xqzyrw64yxuhaymmht9rpg89a0el5n469k9663t7wsef2jl6qxq8sgv5xvjtsk" />
    <content type="html">
      fediverse follow-up to a #worldcon question i want to continue to explore...&lt;br/&gt;&lt;br/&gt;in this world of very inexpensive, llm-driven content generation, trusted *curation* is going to matter *a lot*! who/what are the editors, writers, zines, sites, etc. you recommend that curate the SF/F *you like to read*? (i like to flex my reading muscles, so i&amp;#39;m ideally looking for written content over podcasts, etc.)
    </content>
    <updated>2025-08-18T14:59:05Z</updated>
  </entry>

  <entry>
    <id>https://yabu.me/nevent1qqsys9g8qj3rrcxvm0kg2mgzmknfyggh20ryk5g0gprq93un62xnhhqzyrw64yxuhaymmht9rpg89a0el5n469k9663t7wsef2jl6qxq8sgv58ju6g0</id>
    
      <title type="html">After a mental health break, release ...</title>
    
    <link rel="alternate" href="https://yabu.me/nevent1qqsys9g8qj3rrcxvm0kg2mgzmknfyggh20ryk5g0gprq93un62xnhhqzyrw64yxuhaymmht9rpg89a0el5n469k9663t7wsef2jl6qxq8sgv58ju6g0" />
    <content type="html">
      After a mental health break, release [v2.4.7](&lt;a href=&#34;https://github.com/toddsundsted/ktistec/releases/tag/v2.4.7&#34;&gt;https://github.com/toddsundsted/ktistec/releases/tag/v2.4.7&lt;/a&gt; ) of Ktistec is out. The biggest improvement is the addition of a *command line switch/option to run garbage collection on startup*. Garbage collection, in this context, trims down your database by deleting old ActivityPub objects that are not connected to your user through:&amp;lt;li&amp;gt;&amp;lt;strong&amp;gt;Attribution&amp;lt;/strong&amp;gt;: Objects attributed to you or actors you follow&amp;lt;/li&amp;gt;&amp;lt;li&amp;gt;&amp;lt;strong&amp;gt;Activities&amp;lt;/strong&amp;gt;: Objects referenced by your activities or activities of actors you follow&amp;lt;/li&amp;gt;&amp;lt;li&amp;gt;&amp;lt;strong&amp;gt;Collections&amp;lt;/strong&amp;gt;: Objects in your timeline, notifications, or outbox&amp;lt;/li&amp;gt;&amp;lt;li&amp;gt;&amp;lt;strong&amp;gt;Content&amp;lt;/strong&amp;gt;: Objects with hashtags, mentions, or in threads you follow&amp;lt;/li&amp;gt;&lt;br/&gt;&lt;br/&gt;It reduced the size of my database ~24%. Details on usage, warnings, etc. are in the README.&lt;br/&gt;&lt;br/&gt;Other changes:&lt;br/&gt;&lt;br/&gt;**Fixed**&amp;lt;li&amp;gt;Use single quotes for string literals in SQLite queries.&amp;lt;/li&amp;gt;&amp;lt;li&amp;gt;Fix &amp;lt;code&amp;gt;WITH RECURSIVE&amp;lt;/code&amp;gt; queries.&amp;lt;/li&amp;gt;&amp;lt;li&amp;gt;Fix broken CI workflow.&amp;lt;/li&amp;gt;&lt;br/&gt;&lt;br/&gt;**Changed**&amp;lt;li&amp;gt;Present local internal URLs as external URLs in posts.&amp;lt;/li&amp;gt;&amp;lt;li&amp;gt;Limit pagination size for unauthenticated users.&amp;lt;/li&amp;gt;&amp;lt;li&amp;gt;Better convey actor/object deleted/blocked status on index pages.&amp;lt;/li&amp;gt;&amp;lt;li&amp;gt;Improve presentation of inline code and code blocks.&amp;lt;/li&amp;gt;&amp;lt;li&amp;gt;Clip alt text on thumbnail images.&amp;lt;/li&amp;gt;&lt;br/&gt;&lt;br/&gt;**Other**&amp;lt;li&amp;gt;Update cached copy of Lemmy&amp;#39;s JSON-LD context.&amp;lt;/li&amp;gt;&lt;br/&gt;&lt;br/&gt;#ktistec #fediverse #activitypub #crystallang
    </content>
    <updated>2025-07-15T21:55:08Z</updated>
  </entry>

  <entry>
    <id>https://yabu.me/nevent1qqsf0lr46e4cn99s8256wy3tpc4cgxu38n4wm3th2rrkwnz4nprqecgzyrw64yxuhaymmht9rpg89a0el5n469k9663t7wsef2jl6qxq8sgv5z098z8</id>
    
      <title type="html">A new release of ...</title>
    
    <link rel="alternate" href="https://yabu.me/nevent1qqsf0lr46e4cn99s8256wy3tpc4cgxu38n4wm3th2rrkwnz4nprqecgzyrw64yxuhaymmht9rpg89a0el5n469k9663t7wsef2jl6qxq8sgv5z098z8" />
    <content type="html">
      A new release of [ktistec](&lt;a href=&#34;https://github.com/toddsundsted/ktistec&#34;&gt;https://github.com/toddsundsted/ktistec&lt;/a&gt; ) that *improves database performance* is imminent. In the past, database optimization usually meant &amp;#34;fixing a bunch of poorly constructed queries&amp;#34;, and I&amp;#39;m sure there&amp;#39;s more of that to do—I&amp;#39;m not an expert. But this time, I found most of the queries were as good as they were going to get on my watch (I&amp;#39;m not an expert). If you have a million records and you need to filter and count them, that&amp;#39;s just going to take some time...&lt;br/&gt;&lt;br/&gt;So this time, I focused on *caching the results of queries* like that (which really means I focused on *cache invalidation*, right). A case in point is commit [d544b1af](&lt;a href=&#34;https://github.com/toddsundsted/ktistec/commit/d544b1af357a711c22d965e66a67aa557eb4a83b&#34;&gt;https://github.com/toddsundsted/ktistec/commit/d544b1af357a711c22d965e66a67aa557eb4a83b&lt;/a&gt; ). Previously, the nodeinfo endpoint filtered and counted posts on every request, and it took &#43;80msec to do that. Worse, the filtering pushed everything else out of the sqlite page cache, which made the next, unrelated database query slow!&lt;br/&gt;&lt;br/&gt;Caching this value, and only *recounting* when I post something, not only dropped the service time for the request to ~1msec but actually improved database performance, generally!&lt;br/&gt;&lt;br/&gt;More to come...&lt;br/&gt;&lt;br/&gt;#ktistec #fediverse #activitypub #crystallang
    </content>
    <updated>2025-01-29T13:48:17Z</updated>
  </entry>

  <entry>
    <id>https://yabu.me/nevent1qqsrac8yhzm5lpp93gkk4x5ct435exdw9gfxe0sdxnq2suedpszn8hgzyrw64yxuhaymmht9rpg89a0el5n469k9663t7wsef2jl6qxq8sgv5fnzhe5</id>
    
      <title type="html">in my case (single-user mastodon → ktistec) the only ...</title>
    
    <link rel="alternate" href="https://yabu.me/nevent1qqsrac8yhzm5lpp93gkk4x5ct435exdw9gfxe0sdxnq2suedpszn8hgzyrw64yxuhaymmht9rpg89a0el5n469k9663t7wsef2jl6qxq8sgv5fnzhe5" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqsrz2ndfa2s2entpsxc3smjytt4rnp39323ca7snl3e67m32y4ra9sz4tu4l&#39;&gt;nevent1q…tu4l&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;in my case (single-user mastodon → ktistec) the only side-effect was a lot of traffic to the new application that it didn&amp;#39;t know how to handle (ktistec doesn&amp;#39;t support polls, for example, and i got rid of a few extra accounts). but other than the noise in the logs, posts, shares, etc. worked once i re-followed.
    </content>
    <updated>2025-01-26T23:29:28Z</updated>
  </entry>

  <entry>
    <id>https://yabu.me/nevent1qqs8jzkgzexk4u595k4r3fre9pyujg4tx6m36vnahpnsu0343vxr87gzyrw64yxuhaymmht9rpg89a0el5n469k9663t7wsef2jl6qxq8sgv5glr522</id>
    
      <title type="html">Ktistec release ...</title>
    
    <link rel="alternate" href="https://yabu.me/nevent1qqs8jzkgzexk4u595k4r3fre9pyujg4tx6m36vnahpnsu0343vxr87gzyrw64yxuhaymmht9rpg89a0el5n469k9663t7wsef2jl6qxq8sgv5glr522" />
    <content type="html">
      Ktistec release [v2.4.5](&lt;a href=&#34;https://github.com/toddsundsted/ktistec/releases/tag/v2.4.5&#34;&gt;https://github.com/toddsundsted/ktistec/releases/tag/v2.4.5&lt;/a&gt; ) rolls out the build time and executable size optimizations I&amp;#39;ve been blogging about [here](&lt;a href=&#34;https://epiktistes.com/ktistec/performance/build-time-and-server-size-growth-4&#34;&gt;https://epiktistes.com/ktistec/performance/build-time-and-server-size-growth-4&lt;/a&gt; ). It also fixes a few small bugs.&lt;br/&gt;&lt;br/&gt;**Fixed**&amp;lt;li&amp;gt;Handle @-mentions with hosts in new posts.&amp;lt;/li&amp;gt;&amp;lt;li&amp;gt;Handle HEAD requests for pages with pretty URLs.&amp;lt;/li&amp;gt;&amp;lt;li&amp;gt;Destroy session after running scripts.&amp;lt;/li&amp;gt;&lt;br/&gt;&lt;br/&gt;**Changed**&amp;lt;li&amp;gt;Delete old authenticated sessions.&amp;lt;/li&amp;gt;&lt;br/&gt;&lt;br/&gt;I&amp;#39;ve started a branch full of query optimizations. My general rule—as highlighted in the server logs—is *if a query takes longer than 50msec, it takes too long*. It&amp;#39;s time to address some problems...&lt;br/&gt;&lt;br/&gt;#ktistec #fediverse #activitypub #crystallang
    </content>
    <updated>2025-01-19T14:57:34Z</updated>
  </entry>

  <entry>
    <id>https://yabu.me/nevent1qqs8r9sk8umcyd2kmhlzl4kr3c0564untl4hfrtrd30y2vv7z9885hczyrw64yxuhaymmht9rpg89a0el5n469k9663t7wsef2jl6qxq8sgv5z6yuwj</id>
    
      <title type="html">there&amp;#39;s a brief changelog in the [description of the ...</title>
    
    <link rel="alternate" href="https://yabu.me/nevent1qqs8r9sk8umcyd2kmhlzl4kr3c0564untl4hfrtrd30y2vv7z9885hczyrw64yxuhaymmht9rpg89a0el5n469k9663t7wsef2jl6qxq8sgv5z6yuwj" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqsdd9zven68s9y2rate5ywez09qzxwh4vqgwf9xp9h0jngcy28fvuc55dpm6&#39;&gt;nevent1q…dpm6&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;there&amp;#39;s a brief changelog in the [description of the release](&lt;a href=&#34;https://github.com/toddsundsted/ktistec/releases/tag/v2.4.3&#34;&gt;https://github.com/toddsundsted/ktistec/releases/tag/v2.4.3&lt;/a&gt; ). and a more detailed [commit by commit history](&lt;a href=&#34;https://github.com/toddsundsted/ktistec/compare/e5dd16ee...1bd44b40&#34;&gt;https://github.com/toddsundsted/ktistec/compare/e5dd16ee...1bd44b40&lt;/a&gt; ). the main user-facing feature was content translation support, but it took quite a lot of backend work to support it.
    </content>
    <updated>2024-12-29T15:57:32Z</updated>
  </entry>

  <entry>
    <id>https://yabu.me/nevent1qqs958lxdfagx6ju3w6ld3560627xc8jhrvzgd63pxgc85f4kwdgt4gzyrw64yxuhaymmht9rpg89a0el5n469k9663t7wsef2jl6qxq8sgv5uu5t0y</id>
    
      <title type="html">@npub1xx7…j78n i just tagged a new release. it looks like the ...</title>
    
    <link rel="alternate" href="https://yabu.me/nevent1qqs958lxdfagx6ju3w6ld3560627xc8jhrvzgd63pxgc85f4kwdgt4gzyrw64yxuhaymmht9rpg89a0el5n469k9663t7wsef2jl6qxq8sgv5uu5t0y" />
    <content type="html">
      &lt;span itemprop=&#34;mentions&#34; itemscope itemtype=&#34;https://schema.org/Person&#34;&gt;&lt;a itemprop=&#34;url&#34; href=&#34;/npub1xx7njrutasnnzpjyjaeq0awjepsm45egy7dm3vkvwhgqy76nts6qdpj78n&#34; class=&#34;bg-lavender dark:prose:text-neutral-50 dark:text-neutral-50 dark:bg-garnet px-1&#34;&gt;&lt;span&gt;JayVii&lt;/span&gt; (&lt;span class=&#34;italic&#34;&gt;npub1xx7…j78n&lt;/span&gt;)&lt;/a&gt;&lt;/span&gt; i just tagged a new release. it looks like the docker build [built the release](&lt;a href=&#34;https://github.com/toddsundsted/ktistec/pkgs/container/ktistec&#34;&gt;https://github.com/toddsundsted/ktistec/pkgs/container/ktistec&lt;/a&gt; ) successfully. congratulations and thanks!
    </content>
    <updated>2024-12-29T15:18:32Z</updated>
  </entry>

  <entry>
    <id>https://yabu.me/nevent1qqsvy6p00zme57vlgfqrfl52awdekfvyvkeeytczs6knw7jcxmhalrczyrw64yxuhaymmht9rpg89a0el5n469k9663t7wsef2jl6qxq8sgv56qsprf</id>
    
      <title type="html">i don&amp;#39;t interact much, but i read almost everything you post. ...</title>
    
    <link rel="alternate" href="https://yabu.me/nevent1qqsvy6p00zme57vlgfqrfl52awdekfvyvkeeytczs6knw7jcxmhalrczyrw64yxuhaymmht9rpg89a0el5n469k9663t7wsef2jl6qxq8sgv56qsprf" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqsfuv7eny5h3f30q446c934ewvyp887nz9afhnqyvspnw2l5hckajq22vv8g&#39;&gt;nevent1q…vv8g&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;i don&amp;#39;t interact much, but i read almost everything you post. hard or soft, please keep it up!
    </content>
    <updated>2024-12-27T02:11:24Z</updated>
  </entry>

  <entry>
    <id>https://yabu.me/nevent1qqsvp0hjhqmaqrsfzfmvcu9qsheygzeuns2ewexej0vtygxk9s6tfgczyrw64yxuhaymmht9rpg89a0el5n469k9663t7wsef2jl6qxq8sgv5mvy3w9</id>
    
      <title type="html">thanks! export your history from mastodon and import into ...</title>
    
    <link rel="alternate" href="https://yabu.me/nevent1qqsvp0hjhqmaqrsfzfmvcu9qsheygzeuns2ewexej0vtygxk9s6tfgczyrw64yxuhaymmht9rpg89a0el5n469k9663t7wsef2jl6qxq8sgv5mvy3w9" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqsg23nn80f3c5d7a3txqvre2hexd40p8tk0e0qavnvcpw6szrtg6mq7zw5vw&#39;&gt;nevent1q…w5vw&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;thanks!&lt;br/&gt;&lt;br/&gt;export your history from mastodon and import into ktistec?
    </content>
    <updated>2024-11-01T12:04:00Z</updated>
  </entry>

  <entry>
    <id>https://yabu.me/nevent1qqswzff5jf7zk8ljt3llge74gakrjre8xjrfujvl7was592wkym6u3czyrw64yxuhaymmht9rpg89a0el5n469k9663t7wsef2jl6qxq8sgv5f6kl4m</id>
    
      <title type="html">I&amp;#39;ve been thinking about the [demise of ...</title>
    
    <link rel="alternate" href="https://yabu.me/nevent1qqswzff5jf7zk8ljt3llge74gakrjre8xjrfujvl7was592wkym6u3czyrw64yxuhaymmht9rpg89a0el5n469k9663t7wsef2jl6qxq8sgv5f6kl4m" />
    <content type="html">
      I&amp;#39;ve been thinking about the [demise of botsin.space](&lt;a href=&#34;https://muffinlabs.com/posts/2024/10/29/10-29-rip-botsin-space/&#34;&gt;https://muffinlabs.com/posts/2024/10/29/10-29-rip-botsin-space/&lt;/a&gt; ). Running a site for bots is hard (and expensive) but writing and running an ActivityPub-based bot should be easy.&lt;br/&gt;&lt;br/&gt;To prove this was the case I added experimental support for bots/automations to [Ktistec](&lt;a href=&#34;https://github.com/toddsundsted/ktistec&#34;&gt;https://github.com/toddsundsted/ktistec&lt;/a&gt; ) in the form of scripts that the server periodically runs. These scripts can be in a programming language of your choice. The server provides credentials for its API in the process environment (if you can use curl you can publish posts), simple interaction happens via stdin/stdout/stderr, and the complexity of using ActivityPub is abstracted away.&lt;br/&gt;&lt;br/&gt;The code is only available on the following branch for the moment:&lt;br/&gt;&lt;br/&gt;    &lt;a href=&#34;https://github.com/toddsundsted/ktistec/commits/run-scripts/&#34;&gt;https://github.com/toddsundsted/ktistec/commits/run-scripts/&lt;/a&gt;&lt;br/&gt;&lt;br/&gt;There are a couple example shell scripts here:&lt;br/&gt;&lt;br/&gt;    [&lt;a href=&#34;https://github.com/toddsundsted/ktistec/commit/4982925a&#34;&gt;https://github.com/toddsundsted/ktistec/commit/4982925a&lt;/a&gt;...](&lt;a href=&#34;https://github.com/toddsundsted/ktistec/commit/4982925a62be587d0ffaa5b726408aaf14e6a097&#34;&gt;https://github.com/toddsundsted/ktistec/commit/4982925a62be587d0ffaa5b726408aaf14e6a097&lt;/a&gt; )&lt;br/&gt;&lt;br/&gt;I have a few enhancements in mind, but it&amp;#39;s already proven useful as a means to periodically log data from my server host, and I&amp;#39;ll use it, when finished, to publish release notes.&lt;br/&gt;&lt;br/&gt;#ktistec #activitypub #fediverse #bots
    </content>
    <updated>2024-10-31T21:25:51Z</updated>
  </entry>

</feed>