<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[#AntiPatterned™]]></title><description><![CDATA[<p><a href="https://social.coop/tags/AntiPatterned" rel="tag">#<span>AntiPatterned</span></a><img
      src="https://citiverse.it/assets/plugins/nodebb-plugin-emoji/emoji/android/2122.png?v=ca0be3f3a3d"
      class="not-responsive emoji emoji-android emoji--tm"
      style="height: 23px; width: auto; vertical-align: middle;"
      title="™"
      alt="™"
    /></p><p>Do NOT create out-of-bound custom and app-centric mechanisms that define new and expected behavior on protocol level.</p><p><div class="card col-md-9 col-lg-6 position-relative link-preview p-0">



<a href="https://codeberg.org/fediverse/fediverse-ideas/issues/33" title="#Botiquette">
<img src="https://codeberg.org/fediverse/fediverse-ideas/issues/33/summary-card" class="card-img-top not-responsive" style="max-height: 15rem;" alt="Link Preview Image" />
</a>



<div class="card-body">
<h5 class="card-title">
<a class="text-decoration-none" href="https://codeberg.org/fediverse/fediverse-ideas/issues/33">
#Botiquette
</a>
</h5>
<p class="card-text line-clamp-3">fediverse-ideas - Ideas for new applications and services on the Fediverse.</p>
</div>
<a href="https://codeberg.org/fediverse/fediverse-ideas/issues/33" class="card-footer text-body-secondary small d-flex gap-2 align-items-center lh-2">



<img src="https://codeberg.org/assets/img/favicon.svg" alt="favicon" class="not-responsive overflow-hiddden" style="max-width: 21px; max-height: 21px;" />



<p class="d-inline-block text-truncate mb-0">Codeberg.org <span class="text-secondary">(codeberg.org)</span></p>
</a>
</div></p><p><a href="https://social.coop/tags/SX" rel="tag">#<span>SX</span></a> <a href="https://social.coop/tags/SocialCoding" rel="tag">#<span>SocialCoding</span></a> <a href="https://social.coop/tags/SocialWeb" rel="tag">#<span>SocialWeb</span></a> <a href="https://social.coop/tags/ActivityPub" rel="tag">#<span>ActivityPub</span></a> <a href="https://social.coop/tags/ProtocolDecay" rel="tag">#<span>ProtocolDecay</span></a> <a href="https://social.coop/tags/Botiquette" rel="tag">#<span>Botiquette</span></a></p>

<div class="row mt-3"><img class="img-thumbnail" src="https://social-coop-media.ams3.cdn.digitaloceanspaces.com/media_attachments/files/116/394/787/981/873/652/original/d6eebee7a4278675.png" alt="Link Preview Image" /></div>]]></description><link>https://citiverse.it/topic/0eea6837-f276-45eb-b6fc-85b862015a3e/antipatterned</link><generator>RSS for Node</generator><lastBuildDate>Sun, 26 Apr 2026 03:04:15 GMT</lastBuildDate><atom:link href="https://citiverse.it/topic/0eea6837-f276-45eb-b6fc-85b862015a3e.rss" rel="self" type="application/rss+xml"/><pubDate>Mon, 13 Apr 2026 01:34:39 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to #AntiPatterned™ on Mon, 13 Apr 2026 12:00:06 GMT]]></title><description><![CDATA[<p><span><a href="/user/smallcircles%40social.coop">@<span>smallcircles</span></a></span> Anyway, yes, the way the extra fields work and their limited number is a product decision by Mastodon.</p>]]></description><link>https://citiverse.it/post/https://cosocial.ca/users/evan/statuses/116397284183434003</link><guid isPermaLink="true">https://citiverse.it/post/https://cosocial.ca/users/evan/statuses/116397284183434003</guid><dc:creator><![CDATA[evan@cosocial.ca]]></dc:creator><pubDate>Mon, 13 Apr 2026 12:00:06 GMT</pubDate></item><item><title><![CDATA[Reply to #AntiPatterned™ on Mon, 13 Apr 2026 11:56:36 GMT]]></title><description><![CDATA[<p><span><a href="/user/smallcircles%40social.coop">@<span>smallcircles</span></a></span> I'm not sure what you mean by app-centric. I think you mean Mastodon-centric, that is, how do we work around the Mastodon software and the Mastodon team? I agree that it is a frustrating part of working on the Fediverse.</p>]]></description><link>https://citiverse.it/post/https://cosocial.ca/users/evan/statuses/116397270457321343</link><guid isPermaLink="true">https://citiverse.it/post/https://cosocial.ca/users/evan/statuses/116397270457321343</guid><dc:creator><![CDATA[evan@cosocial.ca]]></dc:creator><pubDate>Mon, 13 Apr 2026 11:56:36 GMT</pubDate></item><item><title><![CDATA[Reply to #AntiPatterned™ on Mon, 13 Apr 2026 11:51:24 GMT]]></title><description><![CDATA[<p><span><a href="/user/smallcircles%40social.coop">@<span>smallcircles</span></a></span> Long term, I think it would be great to have a structured way to add properties and collections to actors that don't depend on the server software.</p><p>So, I could say, if you don't want tags.pub to boost your content, set the `<a href="https://tags.pub/ns/noTagsPub`" rel="nofollow noopener"><span>https://</span><span>tags.pub/ns/noTagsPub`</span><span></span></a> property on your actor object to true. Or have a collection of allowed tags, or denied tags, or object types to boost, or object types not to boost.</p>]]></description><link>https://citiverse.it/post/https://cosocial.ca/users/evan/statuses/116397249923323727</link><guid isPermaLink="true">https://citiverse.it/post/https://cosocial.ca/users/evan/statuses/116397249923323727</guid><dc:creator><![CDATA[evan@cosocial.ca]]></dc:creator><pubDate>Mon, 13 Apr 2026 11:51:24 GMT</pubDate></item><item><title><![CDATA[Reply to #AntiPatterned™ on Mon, 13 Apr 2026 11:44:06 GMT]]></title><description><![CDATA[<p><span><a href="/user/smallcircles%40social.coop">@<span>smallcircles</span></a></span>  I think the question you are asking is how we let people express their preferences for interacting with different types of automated actors. I think the NoBots solution is fine; it reminds me of robots.txt. "indexable" and "discoverable" are also fine.</p>]]></description><link>https://citiverse.it/post/https://cosocial.ca/users/evan/statuses/116397221235725568</link><guid isPermaLink="true">https://citiverse.it/post/https://cosocial.ca/users/evan/statuses/116397221235725568</guid><dc:creator><![CDATA[evan@cosocial.ca]]></dc:creator><pubDate>Mon, 13 Apr 2026 11:44:06 GMT</pubDate></item><item><title><![CDATA[Reply to #AntiPatterned™ on Mon, 13 Apr 2026 11:35:05 GMT]]></title><description><![CDATA[<p><span><a href="/user/smallcircles%40social.coop">@<span>smallcircles</span></a></span> when you say things are my "personal" preference, you make it sound like I am just some guy off the street. I'm not. I wrote StatusNet and pump.io. I developed OStatus, and cowrote AS2 and AP. I wrote the book about ActivityPub. My personal preferences were built into the standard a long time ago.</p>]]></description><link>https://citiverse.it/post/https://cosocial.ca/users/evan/statuses/116397185810626160</link><guid isPermaLink="true">https://citiverse.it/post/https://cosocial.ca/users/evan/statuses/116397185810626160</guid><dc:creator><![CDATA[evan@cosocial.ca]]></dc:creator><pubDate>Mon, 13 Apr 2026 11:35:05 GMT</pubDate></item><item><title><![CDATA[Reply to #AntiPatterned™ on Mon, 13 Apr 2026 11:29:55 GMT]]></title><description><![CDATA[<p><span><a href="/user/smallcircles%40social.coop">@<span>smallcircles</span></a></span> for choosing object types for software, I think the difference between a client and a server can be tricky, but in the case of tags.pub, everything is implemented on the server, so I think Service is a good choice. Why do you think Application?</p>]]></description><link>https://citiverse.it/post/https://cosocial.ca/users/evan/statuses/116397165509061123</link><guid isPermaLink="true">https://citiverse.it/post/https://cosocial.ca/users/evan/statuses/116397165509061123</guid><dc:creator><![CDATA[evan@cosocial.ca]]></dc:creator><pubDate>Mon, 13 Apr 2026 11:29:55 GMT</pubDate></item><item><title><![CDATA[Reply to #AntiPatterned™ on Mon, 13 Apr 2026 11:23:36 GMT]]></title><description><![CDATA[<p><span><a href="/user/smallcircles%40social.coop">@<span>smallcircles</span></a></span> you use an idiosyncratic jargon sometimes and that makes it hard to talk to you. </p><p>Evolution of a protocol is not "decay". Nor is the Postel principle. Learning and adapting protocols and data types to new situations or creating extensions is success, not failure.</p>]]></description><link>https://citiverse.it/post/https://cosocial.ca/users/evan/statuses/116397140642700889</link><guid isPermaLink="true">https://citiverse.it/post/https://cosocial.ca/users/evan/statuses/116397140642700889</guid><dc:creator><![CDATA[evan@cosocial.ca]]></dc:creator><pubDate>Mon, 13 Apr 2026 11:23:36 GMT</pubDate></item><item><title><![CDATA[Reply to #AntiPatterned™ on Mon, 13 Apr 2026 06:40:12 GMT]]></title><description><![CDATA[<p><span><a href="/user/evan%40cosocial.ca">@<span>evan</span></a></span> 2x protocol decay in a row? <img src="https://citiverse.it/assets/plugins/nodebb-plugin-emoji/emoji/android/1f914.png?v=ca0be3f3a3d" class="not-responsive emoji emoji-android emoji--thinking_face" style="height:23px;width:auto;vertical-align:middle" title="🤔" alt="🤔" /></p><p>Is there any formalized approach on choosing actor type, or did you express your personal app-centric preference? Is there anything not app-centric to having a max. amount of app-centric 'profile fields'? Genuine questions. Am I holding it wrong when I say 'app-centric'?</p>]]></description><link>https://citiverse.it/post/https://social.coop/users/smallcircles/statuses/116396026233864387</link><guid isPermaLink="true">https://citiverse.it/post/https://social.coop/users/smallcircles/statuses/116396026233864387</guid><dc:creator><![CDATA[smallcircles@social.coop]]></dc:creator><pubDate>Mon, 13 Apr 2026 06:40:12 GMT</pubDate></item><item><title><![CDATA[Reply to #AntiPatterned™ on Mon, 13 Apr 2026 04:16:20 GMT]]></title><description><![CDATA[<p><span><a href="/user/smallcircles%40social.coop">@<span>smallcircles</span></a></span> I think it might be possible to do something with the "extra profile fields", but we get so few by default!</p>]]></description><link>https://citiverse.it/post/https://cosocial.ca/users/evan/statuses/116395460574202499</link><guid isPermaLink="true">https://citiverse.it/post/https://cosocial.ca/users/evan/statuses/116395460574202499</guid><dc:creator><![CDATA[evan@cosocial.ca]]></dc:creator><pubDate>Mon, 13 Apr 2026 04:16:20 GMT</pubDate></item><item><title><![CDATA[Reply to #AntiPatterned™ on Mon, 13 Apr 2026 04:15:28 GMT]]></title><description><![CDATA[<p><span><a href="/user/smallcircles%40social.coop">@<span>smallcircles</span></a></span> thanks! Service is for servers, Application is for clients.</p>]]></description><link>https://citiverse.it/post/https://cosocial.ca/users/evan/statuses/116395457127255927</link><guid isPermaLink="true">https://citiverse.it/post/https://cosocial.ca/users/evan/statuses/116395457127255927</guid><dc:creator><![CDATA[evan@cosocial.ca]]></dc:creator><pubDate>Mon, 13 Apr 2026 04:15:28 GMT</pubDate></item><item><title><![CDATA[Reply to #AntiPatterned™ on Mon, 13 Apr 2026 01:51:42 GMT]]></title><description><![CDATA[<p>cc <span><a href="/user/evan%40cosocial.ca">@<span>evan</span></a></span> relating to earlier <a href="https://social.coop/tags/TagsPub" rel="tag">#<span>TagsPub</span></a> discussion we had on the matter.</p><p>This bot is already combining logic, has multiple 'profle logic' tags. Dunno if "NoBots" is also already common protocol-decaying practice.</p><p>Maybe a solution might be that an <a href="https://social.coop/tags/ActivityPub" rel="tag">#<span>ActivityPub</span></a> bot actor - OT: which I'd personally perhaps had chosen to be Application, not Service actors - would have a botFlags property. Simple to implement, and <a href="https://social.coop/tags/FEP" rel="tag">#<span>FEP</span></a> that.</p><p>More involved but also much more versatile might be a "Botiquette" as:Profile, or even a bots:Botiquette type, and a namespace to register them at, and where others may find what they mean and how they operate exactly.</p><p><a href="https://social.coop/tags/NoBots" rel="tag">#<span>NoBots</span></a> <a href="https://social.coop/tags/nobot" rel="tag">#<span>nobot</span></a> <a href="https://social.coop/tags/fedi22" rel="tag">#<span>fedi22</span></a> <a href="https://social.coop/tags/NoTagsPub" rel="tag">#<span>NoTagsPub</span></a> <a href="https://social.coop/tags/Botiquette" rel="tag">#<span>Botiquette</span></a></p>]]></description><link>https://citiverse.it/post/https://social.coop/users/smallcircles/statuses/116394891862404385</link><guid isPermaLink="true">https://citiverse.it/post/https://social.coop/users/smallcircles/statuses/116394891862404385</guid><dc:creator><![CDATA[smallcircles@social.coop]]></dc:creator><pubDate>Mon, 13 Apr 2026 01:51:42 GMT</pubDate></item></channel></rss>