#indieweb camp veterans will remember I used to demo a web-based voice assistant called Joshua, which was self-hosted. It connected browser speech to text to an NLP back-end to run tasks without real AI - but its main party trick was to let you install a new skill from any website using a simple, open predicate signature.
Which makes me quite interested in WebMCP. A decade later, it's kind of the same thing, but at scale and mainstream. I actually don't think it needs an LLM to be useful.
{
"type": "entry",
"author": {
"name": "#indieweb",
"url": "https://mastodon.social/tags/indieweb",
"photo": null
},
"url": "https://werd.social/@ben/116131726077354745",
"content": {
"html": "<p><a href=\"https://werd.social/tags/indieweb\">#<span>indieweb</span></a> camp veterans will remember I used to demo a web-based voice assistant called Joshua, which was self-hosted. It connected browser speech to text to an NLP back-end to run tasks without real AI - but its main party trick was to let you install a new skill from any website using a simple, open predicate signature.</p><p>Which makes me quite interested in WebMCP. A decade later, it's kind of the same thing, but at scale and mainstream. I actually don't think it needs an LLM to be useful.</p>",
"text": "#indieweb camp veterans will remember I used to demo a web-based voice assistant called Joshua, which was self-hosted. It connected browser speech to text to an NLP back-end to run tasks without real AI - but its main party trick was to let you install a new skill from any website using a simple, open predicate signature.\n\nWhich makes me quite interested in WebMCP. A decade later, it's kind of the same thing, but at scale and mainstream. I actually don't think it needs an LLM to be useful."
},
"published": "2026-02-25T14:25:11+00:00",
"post-type": "note",
"_id": "47460872",
"_source": "8007",
"_is_read": false
}
{
"type": "entry",
"author": {
"name": "#indieweb",
"url": "https://mastodon.social/tags/indieweb",
"photo": null
},
"url": "https://mastodon.social/@simoncarstensen/116131499698574915",
"content": {
"html": "<p>New post: How blogrolls work in Jottit <a href=\"https://simonbc.com/how-blogrolls-work-in-jottit\"><span>https://</span><span>simonbc.com/how-blogrolls-work</span><span>-in-jottit</span></a> <a href=\"https://mastodon.social/tags/indieweb\">#<span>indieweb</span></a></p>",
"text": "New post: How blogrolls work in Jottit https://simonbc.com/how-blogrolls-work-in-jottit #indieweb"
},
"published": "2026-02-25T13:27:37+00:00",
"post-type": "note",
"_id": "47460443",
"_source": "8007",
"_is_read": false
}
My AI Manifesto
Good grief, I'm thinking and talking about AI too much. Sorry about that. I, too, am exhausted by it and after this, I will try my very best to stfu about it in public channels.
https://michaelharley.net/posts/2026/02/25/my-ai-manifesto/
#AI #IndieWeb
{
"type": "entry",
"author": {
"name": "#indieweb",
"url": "https://mastodon.social/tags/indieweb",
"photo": null
},
"url": "https://infosec.exchange/@michaelharley/116131465369583863",
"content": {
"html": "<p>My AI Manifesto</p><p>Good grief, I'm thinking and talking about AI too much. Sorry about that. I, too, am exhausted by it and after this, I will try my very best to stfu about it in public channels.</p><p><a href=\"https://michaelharley.net/posts/2026/02/25/my-ai-manifesto/\"><span>https://</span><span>michaelharley.net/posts/2026/0</span><span>2/25/my-ai-manifesto/</span></a></p><p><a href=\"https://infosec.exchange/tags/AI\">#<span>AI</span></a> <a href=\"https://infosec.exchange/tags/IndieWeb\">#<span>IndieWeb</span></a></p>",
"text": "My AI Manifesto\n\nGood grief, I'm thinking and talking about AI too much. Sorry about that. I, too, am exhausted by it and after this, I will try my very best to stfu about it in public channels.\n\nhttps://michaelharley.net/posts/2026/02/25/my-ai-manifesto/\n\n#AI #IndieWeb"
},
"published": "2026-02-25T13:18:53+00:00",
"post-type": "note",
"_id": "47460317",
"_source": "8007",
"_is_read": false
}
{
"type": "entry",
"author": {
"name": "#indieweb",
"url": "https://mastodon.social/tags/indieweb",
"photo": null
},
"url": "https://homelab.sfl.pro.br/social/oigreslima/p/1771996789.635397",
"content": {
"html": "Sobre as intera\u00e7\u00f5es espont\u00e2neas na <a href=\"https://homelab.sfl.pro.br/social?t=indieweb\">#indieweb</a> <a href=\"https://osolnacabeca.com.br/microblog/2026-02-23-1348/\">https://osolnacabeca.com.br/microblog/2026-02-23-1348/</a><br /><br />",
"text": "Sobre as intera\u00e7\u00f5es espont\u00e2neas na #indieweb https://osolnacabeca.com.br/microblog/2026-02-23-1348/"
},
"published": "2026-02-25T05:19:49+00:00",
"post-type": "note",
"_id": "47459798",
"_source": "8007",
"_is_read": false
}
“Choice. The solution is choice.”*
You should download Firefox 148 (released today!) and explicitly set the new "AI Controls" to your preferred choice.
* https://www.firefox.com/
Disclosure: I work for Mozilla, but this post, like all on this site, represents my personal thoughts and opinions.
More and more software includes various “AI” features. The “quotes” are deliberate because there is an increasingly fuzzy popular understanding of what is or is not “AI” that continues to diverge from any specific technical meaning.
Many folks have expressed strong opinions against “AI” features (for lots of reasons which are worth a separate blog post), in particular in web browsers, and a desire for a simple way to disable such features.
Tentatively called an “AI kill switch”, the Firefox team developed both an overall switch to turn off or block various "AI" features by default (including any future features), and the ability to selectively enable specific features. Or vice versa (turn on by default, and selectively disable specific features).
See the official blog post for screenshots and lots more details:
* https://blog.mozilla.org/en/firefox/how-to-use-ai-controls/
I have set my own "Block AI enhancements" setting to "blocked", with the exception of enabling "Translations". Translations are a feature I use often, a feature that requires per-page activation (another degree of user-control), and runs completely locally on my browser. Nothing automatic, nothing that requires submitting what I’m reading to a random server.
For me this was an easy choice because it fits within my prior larger personal preference of using a restricted browser by default, with leaner settings, for greater security, privacy, and performance reasons. I do keep various other browser variants (and profiles) for testing purposes, experiments, or seeing what a new user may be experiencing.
The rest of this post is not about AI.
My Top Two Browser Extensions
As part a more restricted personal browser approach, for a long time I have run with two add-ons that block A LOT more by default:
* NOSCRIPT: https://addons.mozilla.org/en-US/firefox/addon/noscript/
* EFF Privacy Badger: https://addons.mozilla.org/en-US/firefox/addon/privacy-badger17/
I do not use a separate ad blocker. With NOSCRIPT, in general I don’t have to.
I prefer to explicitly grant permission to a site (domain) for its scripts to load. Some sites I use often enough that I've granted persistent permissions for their scripts. Others, third parties in particular, that I know function purely for analytics or tracking I explicitly persistently block, because they seem totally disconnected from any user benefit.
Yes it’s extra work, however, I find it worth seeing just how much each site depends on scripts, third party scripts, and how many.
It’s especially worth it when I'm on slow or intermittent wifi, where every script blocked makes a big difference in how fast a site loads. Yes this is still a problem.
The network is not the computer. The network is the weakest link.
Even now, in 2026, contrary to popular (especially developer) beliefs that fast internet access is ubiquitous, frequently it is not.
If you’re on a train, plane, or at an event with thousands of people like a concert or many conferences, your wifi or even mobile connection will be intermittent or slow at best.
Just this past Saturday at the F1 Exhibition in the San Francisco Marina, the cell networks were overwhelmed due to the crowds, with even “simple” text or chat messages failing to send. Last year at the Portola Festival their wifi was so bad that even if you managed to connect to it, simple HTML pages barely loaded, while native applications dependent on network access failed completely.
JS;DR
Many times if a site fails to display content without JavaScript, I simply close the tab.
I already have so many open tabs to read (process) that I no longer feel any need to read any particular new website that fails to show content without JavaScript. If their web developers can’t be bothered to take the time to implement progressive enhancement, why should I bother to take the time to read their content? More on this:
* https://tantek.com/2025/069/t1/ten-years-jsdr-javascript-required-didnt-read
* https://indieweb.org/js;dr
A subtler form of JavaScript failure is when a site’s content is displayed, however its buttons or even simple hyperlinks fail to function due to scripts not loading:
* https://tantek.com/2012/073/t4/js-ajax-only-tired-waiting-bloated-scripts-sxsw-wifi
Progressive Permissions
On sites that I do allow scripts, I still limit their access to cookies using the Privacy Badger add-on, and only selectively enable them if I’m logging in or otherwise customizing my experience on that site.
When websites immediately request use of a cookie disconnected from any user action that would justify a need for a cookie, it seems both presumptuous, and frankly, a bit pushy or rude. It also seems like rushed or lazy coding.
User requests are what computers are for.
A user-centric approach to any kind of permission or capability, whether cookies or personal information like location, would only request such as part of directly handling an explicit user action that requires the capability.
The simple act of viewing a website should never require cookies, location information, or any other capabilities that require special permissions. E.g.
* If I successfully log into a website, a cookie helps me stayed logged in.
* If I click a "show me my present location" button on a map site, it makes sense to request my location to fullfil that user request.
This probably could have been several blog posts.
Yet the common theme across all of these is user choice.
Whether new features, use of scripts, or privacy impacting features such as cookies or personal location, users should always have the choice and agency to say no, and customize their web browsing experience accordingly.
#Firefox #Firefox148 #AIcontrol #AIkillswitch #JSDR #UserChoice
*Top of post quote paraphrased from Neo in The Matrix Reloaded who said: “Choice. The problem is choice.”
{
"type": "entry",
"published": "2026-02-24 23:45-0800",
"url": "http://tantek.com/2026/055/t2/solution-choice-firefox-ai-controls",
"category": [
"Firefox",
"Firefox148",
"AIcontrol",
"AIkillswitch",
"JSDR",
"UserChoice"
],
"content": {
"text": "\u201cChoice. The solution is choice.\u201d*\n\nYou should download Firefox 148 (released today!) and explicitly set the new \"AI Controls\" to your preferred choice.\n* https://www.firefox.com/\n\nDisclosure: I work for Mozilla, but this post, like all on this site, represents my personal thoughts and opinions.\n\nMore and more software includes various \u201cAI\u201d features. The \u201cquotes\u201d are deliberate because there is an increasingly fuzzy popular understanding of what is or is not \u201cAI\u201d that continues to diverge from any specific technical meaning.\n\nMany folks have expressed strong opinions against \u201cAI\u201d features (for lots of reasons which are worth a separate blog post), in particular in web browsers, and a desire for a simple way to disable such features.\n\nTentatively called an \u201cAI kill switch\u201d, the Firefox team developed both an overall switch to turn off or block various \"AI\" features by default (including any future features), and the ability to selectively enable specific features. Or vice versa (turn on by default, and selectively disable specific features).\n\nSee the official blog post for screenshots and lots more details:\n* https://blog.mozilla.org/en/firefox/how-to-use-ai-controls/\n\nI have set my own \"Block AI enhancements\" setting to \"blocked\", with the exception of enabling \"Translations\". Translations are a feature I use often, a feature that requires per-page activation (another degree of user-control), and runs completely locally on my browser. Nothing automatic, nothing that requires submitting what I\u2019m reading to a random server.\n\nFor me this was an easy choice because it fits within my prior larger personal preference of using a restricted browser by default, with leaner settings, for greater security, privacy, and performance reasons. I do keep various other browser variants (and profiles) for testing purposes, experiments, or seeing what a new user may be experiencing.\n\nThe rest of this post is not about AI.\n\nMy Top Two Browser Extensions\n\nAs part a more restricted personal browser approach, for a long time I have run with two add-ons that block A LOT more by default:\n* NOSCRIPT: https://addons.mozilla.org/en-US/firefox/addon/noscript/\n* EFF Privacy Badger: https://addons.mozilla.org/en-US/firefox/addon/privacy-badger17/\n\nI do not use a separate ad blocker. With NOSCRIPT, in general I don\u2019t have to.\n\nI prefer to explicitly grant permission to a site (domain) for its scripts to load. Some sites I use often enough that I've granted persistent permissions for their scripts. Others, third parties in particular, that I know function purely for analytics or tracking I explicitly persistently block, because they seem totally disconnected from any user benefit.\n\nYes it\u2019s extra work, however, I find it worth seeing just how much each site depends on scripts, third party scripts, and how many.\n\nIt\u2019s especially worth it when I'm on slow or intermittent wifi, where every script blocked makes a big difference in how fast a site loads. Yes this is still a problem.\n\nThe network is not the computer. The network is the weakest link.\n\nEven now, in 2026, contrary to popular (especially developer) beliefs that fast internet access is ubiquitous, frequently it is not.\n\nIf you\u2019re on a train, plane, or at an event with thousands of people like a concert or many conferences, your wifi or even mobile connection will be intermittent or slow at best. \n\nJust this past Saturday at the F1 Exhibition in the San Francisco Marina, the cell networks were overwhelmed due to the crowds, with even \u201csimple\u201d text or chat messages failing to send. Last year at the Portola Festival their wifi was so bad that even if you managed to connect to it, simple HTML pages barely loaded, while native applications dependent on network access failed completely.\n\nJS;DR\n\nMany times if a site fails to display content without JavaScript, I simply close the tab.\n\nI already have so many open tabs to read (process) that I no longer feel any need to read any particular new website that fails to show content without JavaScript. If their web developers can\u2019t be bothered to take the time to implement progressive enhancement, why should I bother to take the time to read their content? More on this:\n* https://tantek.com/2025/069/t1/ten-years-jsdr-javascript-required-didnt-read\n* https://indieweb.org/js;dr\n\nA subtler form of JavaScript failure is when a site\u2019s content is displayed, however its buttons or even simple hyperlinks fail to function due to scripts not loading:\n* https://tantek.com/2012/073/t4/js-ajax-only-tired-waiting-bloated-scripts-sxsw-wifi\n\nProgressive Permissions\n\nOn sites that I do allow scripts, I still limit their access to cookies using the Privacy Badger add-on, and only selectively enable them if I\u2019m logging in or otherwise customizing my experience on that site.\n\nWhen websites immediately request use of a cookie disconnected from any user action that would justify a need for a cookie, it seems both presumptuous, and frankly, a bit pushy or rude. It also seems like rushed or lazy coding.\n\nUser requests are what computers are for.\n\nA user-centric approach to any kind of permission or capability, whether cookies or personal information like location, would only request such as part of directly handling an explicit user action that requires the capability.\n\nThe simple act of viewing a website should never require cookies, location information, or any other capabilities that require special permissions. E.g.\n* If I successfully log into a website, a cookie helps me stayed logged in.\n* If I click a \"show me my present location\" button on a map site, it makes sense to request my location to fullfil that user request.\n\nThis probably could have been several blog posts.\n\nYet the common theme across all of these is user choice.\n\nWhether new features, use of scripts, or privacy impacting features such as cookies or personal location, users should always have the choice and agency to say no, and customize their web browsing experience accordingly.\n\n#Firefox #Firefox148 #AIcontrol #AIkillswitch #JSDR #UserChoice\n\n*Top of post quote paraphrased from Neo in The Matrix Reloaded who said: \u201cChoice. The problem is choice.\u201d",
"html": "\u201cChoice. The solution is choice.\u201d*<br /><br />You should download Firefox 148 (released today!) and explicitly set the new \"AI Controls\" to your preferred choice.<br />* <a href=\"https://www.firefox.com/\">https://www.firefox.com/</a><br /><br />Disclosure: I work for Mozilla, but this post, like all on this site, represents my personal thoughts and opinions.<br /><br />More and more software includes various \u201cAI\u201d features. The \u201cquotes\u201d are deliberate because there is an increasingly fuzzy popular understanding of what is or is not \u201cAI\u201d that continues to diverge from any specific technical meaning.<br /><br />Many folks have expressed strong opinions against \u201cAI\u201d features (for lots of reasons which are worth a separate blog post), in particular in web browsers, and a desire for a simple way to disable such features.<br /><br />Tentatively called an \u201cAI kill switch\u201d, the Firefox team developed both an overall switch to turn off or block various \"AI\" features by default (including any future features), and the ability to selectively enable specific features. Or vice versa (turn on by default, and selectively disable specific features).<br /><br />See the official blog post for screenshots and lots more details:<br />* <a href=\"https://blog.mozilla.org/en/firefox/how-to-use-ai-controls/\">https://blog.mozilla.org/en/firefox/how-to-use-ai-controls/</a><br /><br />I have set my own \"Block AI enhancements\" setting to \"blocked\", with the exception of enabling \"Translations\". Translations are a feature I use often, a feature that requires per-page activation (another degree of user-control), and runs completely locally on my browser. Nothing automatic, nothing that requires submitting what I\u2019m reading to a random server.<br /><br />For me this was an easy choice because it fits within my prior larger personal preference of using a restricted browser by default, with leaner settings, for greater security, privacy, and performance reasons. I do keep various other browser variants (and profiles) for testing purposes, experiments, or seeing what a new user may be experiencing.<br /><br />The rest of this post is not about AI.<br /><br />My Top Two Browser Extensions<br /><br />As part a more restricted personal browser approach, for a long time I have run with two add-ons that block A LOT more by default:<br />* NOSCRIPT: <a href=\"https://addons.mozilla.org/en-US/firefox/addon/noscript/\">https://addons.mozilla.org/en-US/firefox/addon/noscript/</a><br />* EFF Privacy Badger: <a href=\"https://addons.mozilla.org/en-US/firefox/addon/privacy-badger17/\">https://addons.mozilla.org/en-US/firefox/addon/privacy-badger17/</a><br /><br />I do not use a separate ad blocker. With NOSCRIPT, in general I don\u2019t have to.<br /><br />I prefer to explicitly grant permission to a site (domain) for its scripts to load. Some sites I use often enough that I've granted persistent permissions for their scripts. Others, third parties in particular, that I know function purely for analytics or tracking I explicitly persistently block, because they seem totally disconnected from any user benefit.<br /><br />Yes it\u2019s extra work, however, I find it worth seeing just how much each site depends on scripts, third party scripts, and how many.<br /><br />It\u2019s especially worth it when I'm on slow or intermittent wifi, where every script blocked makes a big difference in how fast a site loads. Yes this is still a problem.<br /><br />The network is not the computer. The network is the weakest link.<br /><br />Even now, in 2026, contrary to popular (especially developer) beliefs that fast internet access is ubiquitous, frequently it is not.<br /><br />If you\u2019re on a train, plane, or at an event with thousands of people like a concert or many conferences, your wifi or even mobile connection will be intermittent or slow at best. <br /><br />Just this past Saturday at the F1 Exhibition in the San Francisco Marina, the cell networks were overwhelmed due to the crowds, with even \u201csimple\u201d text or chat messages failing to send. Last year at the Portola Festival their wifi was so bad that even if you managed to connect to it, simple HTML pages barely loaded, while native applications dependent on network access failed completely.<br /><br />JS;DR<br /><br />Many times if a site fails to display content without JavaScript, I simply close the tab.<br /><br />I already have so many open tabs to read (process) that I no longer feel any need to read any particular new website that fails to show content without JavaScript. If their web developers can\u2019t be bothered to take the time to implement progressive enhancement, why should I bother to take the time to read their content? More on this:<br />* <a href=\"https://tantek.com/2025/069/t1/ten-years-jsdr-javascript-required-didnt-read\">https://tantek.com/2025/069/t1/ten-years-jsdr-javascript-required-didnt-read</a><br />* <a href=\"https://indieweb.org/js;dr\">https://indieweb.org/js;dr</a><br /><br />A subtler form of JavaScript failure is when a site\u2019s content is displayed, however its buttons or even simple hyperlinks fail to function due to scripts not loading:<br />* <a href=\"https://tantek.com/2012/073/t4/js-ajax-only-tired-waiting-bloated-scripts-sxsw-wifi\">https://tantek.com/2012/073/t4/js-ajax-only-tired-waiting-bloated-scripts-sxsw-wifi</a><br /><br />Progressive Permissions<br /><br />On sites that I do allow scripts, I still limit their access to cookies using the Privacy Badger add-on, and only selectively enable them if I\u2019m logging in or otherwise customizing my experience on that site.<br /><br />When websites immediately request use of a cookie disconnected from any user action that would justify a need for a cookie, it seems both presumptuous, and frankly, a bit pushy or rude. It also seems like rushed or lazy coding.<br /><br />User requests are what computers are for.<br /><br />A user-centric approach to any kind of permission or capability, whether cookies or personal information like location, would only request such as part of directly handling an explicit user action that requires the capability.<br /><br />The simple act of viewing a website should never require cookies, location information, or any other capabilities that require special permissions. E.g.<br />* If I successfully log into a website, a cookie helps me stayed logged in.<br />* If I click a \"show me my present location\" button on a map site, it makes sense to request my location to fullfil that user request.<br /><br />This probably could have been several blog posts.<br /><br />Yet the common theme across all of these is user choice.<br /><br />Whether new features, use of scripts, or privacy impacting features such as cookies or personal location, users should always have the choice and agency to say no, and customize their web browsing experience accordingly.<br /><br />#<span class=\"p-category\">Firefox</span> #<span class=\"p-category\">Firefox148</span> #<span class=\"p-category\">AIcontrol</span> #<span class=\"p-category\">AIkillswitch</span> #<span class=\"p-category\">JSDR</span> #<span class=\"p-category\">UserChoice</span><br /><br />*Top of post quote paraphrased from Neo in The Matrix Reloaded who said: \u201cChoice. The problem is choice.\u201d"
},
"author": {
"type": "card",
"name": "Tantek \u00c7elik",
"url": "https://tantek.com/",
"photo": "https://aperture-media.p3k.io/tantek.com/acfddd7d8b2c8cf8aa163651432cc1ec7eb8ec2f881942dca963d305eeaaa6b8.jpg"
},
"post-type": "note",
"_id": "47459284",
"_source": "1",
"_is_read": false
}
New entry in my #personalblog - Gemini Takes Flight
I'm a big fan of Gemini (not the chat bot). I lurk in BBS, I read news on a Guardian mirror, and I check aggregators for new and interesting gemlog entries. Now that I've got both my sites mirrored on there, I thought I'd write a little post about it.
#geminiprotocol - gemini://antonyfb.com/blog/gemini-takes-flight.gmi
#personalwebsite - https://antonyfb.com/blog/gemini-takes-flight.html
#SmallWeb #indieweb
{
"type": "entry",
"author": {
"name": "#indieweb",
"url": "https://mastodon.social/tags/indieweb",
"photo": null
},
"url": "https://mastodonapp.uk/@afb/116130870806292485",
"content": {
"html": "<p>New entry in my <a href=\"https://mastodonapp.uk/tags/personalblog\">#<span>personalblog</span></a> - Gemini Takes Flight</p><p>I'm a big fan of Gemini (not the chat bot). I lurk in BBS, I read news on a Guardian mirror, and I check aggregators for new and interesting gemlog entries. Now that I've got both my sites mirrored on there, I thought I'd write a little post about it.</p><p><a href=\"https://mastodonapp.uk/tags/geminiprotocol\">#<span>geminiprotocol</span></a> - <a href=\"https://mastodonapp.uk/@afb/116130870806292485\"><span></span><span>gemini://antonyfb.com/blog/gem</span><span>ini-takes-flight.gmi</span></a></p><p><a href=\"https://mastodonapp.uk/tags/personalwebsite\">#<span>personalwebsite</span></a> - <a href=\"https://antonyfb.com/blog/gemini-takes-flight.html\"><span>https://</span><span>antonyfb.com/blog/gemini-takes</span><span>-flight.html</span></a></p><p><a href=\"https://mastodonapp.uk/tags/SmallWeb\">#<span>SmallWeb</span></a> <a href=\"https://mastodonapp.uk/tags/indieweb\">#<span>indieweb</span></a></p>",
"text": "New entry in my #personalblog - Gemini Takes Flight\n\nI'm a big fan of Gemini (not the chat bot). I lurk in BBS, I read news on a Guardian mirror, and I check aggregators for new and interesting gemlog entries. Now that I've got both my sites mirrored on there, I thought I'd write a little post about it.\n\n#geminiprotocol - gemini://antonyfb.com/blog/gemini-takes-flight.gmi\n\n#personalwebsite - https://antonyfb.com/blog/gemini-takes-flight.html\n\n#SmallWeb #indieweb"
},
"published": "2026-02-25T10:47:41+00:00",
"post-type": "note",
"_id": "47459004",
"_source": "8007",
"_is_read": false
}
{
"type": "entry",
"author": {
"name": "#indieweb",
"url": "https://mastodon.social/tags/indieweb",
"photo": null
},
"url": "https://mastodon.social/@NathanMurdock/116129995327542358",
"content": {
"html": "<p>\u0633\u06cc\u0627\u0633\u062a\u0645\u062f\u0627\u0631\u0627\u0646 \u06a9\u0627\u0646\u0627\u062f\u0627\u06cc\u06cc \u0647\u0645\u0686\u0646\u0627\u0646 \u0648\u0627\u0646\u0645\u0648\u062f \u0645\u06cc \u06a9\u0646\u0646\u062f \u06a9\u0647 \u062e\u0633\u062a\u0647 \u0646\u06cc\u0633\u062a\u0646\u062f. \u0622\u06cc\u0627 \u0627\u06cc\u0646 \u062c\u062f\u06cc\u062f\u062a\u0631\u06cc\u0646 \u067e\u0644\u06cc\u0633 \u062a\u0648\u0631\u0646\u062a\u0648 \u06a9\u0627\u0646\u0627\u062f\u0627 \u0631\u0627 \u0627\u0633\u062a\u062e\u062f\u0627\u0645 \u0645\u06cc \u06a9\u0646\u062f\u061f? <a href=\"https://jungyulkim.com/free-press/fa/articles/%D8%B3%DB%8C%D8%A7%D8%B3%D8%AA%D9%85%D8%AF%D8%A7%D8%B1%D8%A7%D9%86-%D9%82%D9%86%D8%A7%D8%B1%DB%8C-%D8%A8%D9%87-%D8%B9%D9%86%D9%88%D8%A7%D9%86-%D9%81%D8%B3%D8%A7%D8%AF-%D8%AF%D8%B1-%D8%B4%D9%87%D8%B1-%D9%BE%D8%A7%DB%8C%D8%AA%D8%AE%D8%AA-%D8%A8%D8%B1%D8%AA%D8%A7%D8%B1%DB%8C%D9%88%D8%B3-%D9%82%D8%B1%D8%A7%D8%B1-%D9%85%DB%8C-%DA%AF%DB%8C%D8%B1%D9%86%D8%AF.html\"><span>https://</span><span>jungyulkim.com/free-press/fa/a</span><span>rticles/\u0633\u06cc\u0627\u0633\u062a\u0645\u062f\u0627\u0631\u0627\u0646-\u0642\u0646\u0627\u0631\u06cc-\u0628\u0647-\u0639\u0646\u0648\u0627\u0646-\u0641\u0633\u0627\u062f-\u062f\u0631-\u0634\u0647\u0631-\u067e\u0627\u06cc\u062a\u062e\u062a-\u0628\u0631\u062a\u0627\u0631\u06cc\u0648\u0633-\u0642\u0631\u0627\u0631-\u0645\u06cc-\u06af\u06cc\u0631\u0646\u062f.html</span></a> <a href=\"https://mastodon.social/tags/News\">#<span>News</span></a> <a href=\"https://mastodon.social/tags/Art\">#<span>Art</span></a> <a href=\"https://mastodon.social/tags/Canada\">#<span>Canada</span></a> <a href=\"https://mastodon.social/tags/NewYork\">#<span>NewYork</span></a> <a href=\"https://mastodon.social/tags/Toronto\">#<span>Toronto</span></a> <a href=\"https://mastodon.social/tags/Mafia\">#<span>Mafia</span></a> <a href=\"https://mastodon.social/tags/Crime\">#<span>Crime</span></a> <a href=\"https://mastodon.social/tags/Indieweb\">#<span>Indieweb</span></a> <a href=\"https://mastodon.social/tags/Headlines\">#<span>Headlines</span></a></p>",
"text": "\u0633\u06cc\u0627\u0633\u062a\u0645\u062f\u0627\u0631\u0627\u0646 \u06a9\u0627\u0646\u0627\u062f\u0627\u06cc\u06cc \u0647\u0645\u0686\u0646\u0627\u0646 \u0648\u0627\u0646\u0645\u0648\u062f \u0645\u06cc \u06a9\u0646\u0646\u062f \u06a9\u0647 \u062e\u0633\u062a\u0647 \u0646\u06cc\u0633\u062a\u0646\u062f. \u0622\u06cc\u0627 \u0627\u06cc\u0646 \u062c\u062f\u06cc\u062f\u062a\u0631\u06cc\u0646 \u067e\u0644\u06cc\u0633 \u062a\u0648\u0631\u0646\u062a\u0648 \u06a9\u0627\u0646\u0627\u062f\u0627 \u0631\u0627 \u0627\u0633\u062a\u062e\u062f\u0627\u0645 \u0645\u06cc \u06a9\u0646\u062f\u061f? https://jungyulkim.com/free-press/fa/articles/\u0633\u06cc\u0627\u0633\u062a\u0645\u062f\u0627\u0631\u0627\u0646-\u0642\u0646\u0627\u0631\u06cc-\u0628\u0647-\u0639\u0646\u0648\u0627\u0646-\u0641\u0633\u0627\u062f-\u062f\u0631-\u0634\u0647\u0631-\u067e\u0627\u06cc\u062a\u062e\u062a-\u0628\u0631\u062a\u0627\u0631\u06cc\u0648\u0633-\u0642\u0631\u0627\u0631-\u0645\u06cc-\u06af\u06cc\u0631\u0646\u062f.html #News #Art #Canada #NewYork #Toronto #Mafia #Crime #Indieweb #Headlines"
},
"published": "2026-02-25T07:05:02+00:00",
"post-type": "note",
"_id": "47457562",
"_source": "8007",
"_is_read": false
}
Happy Twin Peaks day to those who celebrate!
In Agent Cooper’s first appearance in the show, he’s driving a car, right hand on the steering wheel, left hand holding a small black box (a microcassette recorder), that, if you don’t look too closely, could easily be mistaken for a regular sized black iPhone with a flush battery pack attached to its back.
You may search the web for a screen capture or video if you like, or continue with this plain text description.
He's keeping his eyes on the road, and dictating audio.
“Diane, 11:30 a.m., February 24th. Entering the town of Twin Peaks.”
In 1989 he’s dictating a log entry to his presumably human assistant, Diane, for her to transcribe after the fact.
In 2026 (notwithstanding safety and legal concerns while driving) it’s not a stretch to say he could (would likely) be dictating to his (perhaps renamed) digital assistant, Diane, or at least a speech-to-text feature in a note-taking application that would automatically transcribe his words in real time.
Those transcribed words could even be saved as a private post or draft, either locally on his device, or to his personal website, for him to review and clean-up if necessary before publishing to and notifying perhaps a limited audience.
Imagine capturing your thoughts without having to look at a screen. No scrolling to first see what others have said. No attention-distracting alerts or admintax prompts to update an application. Capture your thoughts as they occur, and continue onward, focused on your current task or project, uninterrupted.
Today’s technologies and standards should enable such an interaction, all the way through to storing your dictations in a location of your choice. I wonder if anyone has built this.
This is post 8 of #100PostsOfIndieWeb. #100Posts #IndieWeb #TwinPeaksDay
← https://tantek.com/2026/007/t3/wikipedia-edited-year-in-review
→ 🔮
{
"type": "entry",
"published": "2026-02-24 19:14-0800",
"url": "http://tantek.com/2026/055/t1/happy-twin-peaks-day",
"category": [
"100PostsOfIndieWeb",
"100Posts",
"IndieWeb",
"TwinPeaksDay"
],
"content": {
"text": "Happy Twin Peaks day to those who celebrate!\n\nIn Agent Cooper\u2019s first appearance in the show, he\u2019s driving a car, right hand on the steering wheel, left hand holding a small black box (a microcassette recorder), that, if you don\u2019t look too closely, could easily be mistaken for a regular sized black iPhone with a flush battery pack attached to its back.\n\nYou may search the web for a screen capture or video if you like, or continue with this plain text description.\n\nHe's keeping his eyes on the road, and dictating audio.\n\n\u201cDiane, 11:30 a.m., February 24th. Entering the town of Twin Peaks.\u201d\n\nIn 1989 he\u2019s dictating a log entry to his presumably human assistant, Diane, for her to transcribe after the fact.\n\nIn 2026 (notwithstanding safety and legal concerns while driving) it\u2019s not a stretch to say he could (would likely) be dictating to his (perhaps renamed) digital assistant, Diane, or at least a speech-to-text feature in a note-taking application that would automatically transcribe his words in real time.\n\nThose transcribed words could even be saved as a private post or draft, either locally on his device, or to his personal website, for him to review and clean-up if necessary before publishing to and notifying perhaps a limited audience.\n\nImagine capturing your thoughts without having to look at a screen. No scrolling to first see what others have said. No attention-distracting alerts or admintax prompts to update an application. Capture your thoughts as they occur, and continue onward, focused on your current task or project, uninterrupted.\n\nToday\u2019s technologies and standards should enable such an interaction, all the way through to storing your dictations in a location of your choice. I wonder if anyone has built this.\n\nThis is post 8 of #100PostsOfIndieWeb. #100Posts #IndieWeb #TwinPeaksDay\n\n\u2190 https://tantek.com/2026/007/t3/wikipedia-edited-year-in-review\n\u2192 \ud83d\udd2e",
"html": "Happy Twin Peaks day to those who celebrate!<br /><br />In Agent Cooper\u2019s first appearance in the show, he\u2019s driving a car, right hand on the steering wheel, left hand holding a small black box (a microcassette recorder), that, if you don\u2019t look too closely, could easily be mistaken for a regular sized black iPhone with a flush battery pack attached to its back.<br /><br />You may search the web for a screen capture or video if you like, or continue with this plain text description.<br /><br />He's keeping his eyes on the road, and dictating audio.<br /><br />\u201cDiane, 11:30 a.m., February 24th. Entering the town of Twin Peaks.\u201d<br /><br />In 1989 he\u2019s dictating a log entry to his presumably human assistant, Diane, for her to transcribe after the fact.<br /><br />In 2026 (notwithstanding safety and legal concerns while driving) it\u2019s not a stretch to say he could (would likely) be dictating to his (perhaps renamed) digital assistant, Diane, or at least a speech-to-text feature in a note-taking application that would automatically transcribe his words in real time.<br /><br />Those transcribed words could even be saved as a private post or draft, either locally on his device, or to his personal website, for him to review and clean-up if necessary before publishing to and notifying perhaps a limited audience.<br /><br />Imagine capturing your thoughts without having to look at a screen. No scrolling to first see what others have said. No attention-distracting alerts or admintax prompts to update an application. Capture your thoughts as they occur, and continue onward, focused on your current task or project, uninterrupted.<br /><br />Today\u2019s technologies and standards should enable such an interaction, all the way through to storing your dictations in a location of your choice. I wonder if anyone has built this.<br /><br />This is post 8 of #<span class=\"p-category\">100PostsOfIndieWeb</span>. #<span class=\"p-category\">100Posts</span> #<span class=\"p-category\">IndieWeb</span> #<span class=\"p-category\">TwinPeaksDay</span><br /><br />\u2190 <a href=\"https://tantek.com/2026/007/t3/wikipedia-edited-year-in-review\">https://tantek.com/2026/007/t3/wikipedia-edited-year-in-review</a><br />\u2192 \ud83d\udd2e"
},
"author": {
"type": "card",
"name": "Tantek \u00c7elik",
"url": "https://tantek.com/",
"photo": "https://aperture-media.p3k.io/tantek.com/acfddd7d8b2c8cf8aa163651432cc1ec7eb8ec2f881942dca963d305eeaaa6b8.jpg"
},
"post-type": "note",
"_id": "47457003",
"_source": "1",
"_is_read": false
}
Happy Twin Peaks day to those who celebrate!
In Agent Cooper’s first appearance in the show, he’s driving a car, right hand on the steering wheel, left hand holding a small black box (a microcassette recorder), that, if you don’t look too closely, could easily be mistaken for a regular sized black iPhone with a flush battery pack attached to its back.
You may search the web for a screen capture or video if you like, or continue with this plain text description.
He's keeping his eyes on the road, and dictating audio.
“Diane, 11:30 a.m., February 24th. Entering the town of Twin Peaks.”
In 1989 he’s dictating a log entry to his presumably human assistant, Diane, for her to transcribe after the fact.
In 2026 (notwithstanding safety and legal concerns while driving) it’s not a stretch to say he could (would likely) be dictating to his (perhaps renamed) digital assistant, Diane, or at least a speech-to-text feature in a note-taking application that would automatically transcribe his words in real time.
Those transcribed words could even be saved as a private post or draft, either locally on his device, or to his personal website, for him to review and clean-up if necessary before publishing to and notifying perhaps a limited audience.
Imagine capturing your thoughts without having to look at a screen. No scrolling to first see what others have said. No attention-distracting alerts or admintax prompts to update an application. Capture your thoughts as they occur, and continue onward, focused on your current task or project, uninterrupted.
Today’s technologies and standards should enable such an interaction, all the way through to storing your dictations in a location of your choice. I wonder if anyone has built this.
This is post 8 of #100PostsOfIndieWeb. #100Posts #IndieWeb #TwinPeaksDay
← https://tantek.com/2026/007/t3/wikipedia-edited-year-in-review
→ 🔮
{
"type": "entry",
"author": {
"name": "#indieweb",
"url": "https://mastodon.social/tags/indieweb",
"photo": null
},
"url": "https://fed.brid.gy/r/https://tantek.com/2026/055/t1/happy-twin-peaks-day",
"content": {
"html": "<p>Happy Twin Peaks day to those who celebrate!<br /><br />In Agent Cooper\u2019s first appearance in the show, he\u2019s driving a car, right hand on the steering wheel, left hand holding a small black box (a microcassette recorder), that, if you don\u2019t look too closely, could easily be mistaken for a regular sized black iPhone with a flush battery pack attached to its back.<br /><br />You may search the web for a screen capture or video if you like, or continue with this plain text description.<br /><br />He's keeping his eyes on the road, and dictating audio.<br /><br />\u201cDiane, 11:30 a.m., February 24th. Entering the town of Twin Peaks.\u201d<br /><br />In 1989 he\u2019s dictating a log entry to his presumably human assistant, Diane, for her to transcribe after the fact.<br /><br />In 2026 (notwithstanding safety and legal concerns while driving) it\u2019s not a stretch to say he could (would likely) be dictating to his (perhaps renamed) digital assistant, Diane, or at least a speech-to-text feature in a note-taking application that would automatically transcribe his words in real time.<br /><br />Those transcribed words could even be saved as a private post or draft, either locally on his device, or to his personal website, for him to review and clean-up if necessary before publishing to and notifying perhaps a limited audience.<br /><br />Imagine capturing your thoughts without having to look at a screen. No scrolling to first see what others have said. No attention-distracting alerts or admintax prompts to update an application. Capture your thoughts as they occur, and continue onward, focused on your current task or project, uninterrupted.<br /><br />Today\u2019s technologies and standards should enable such an interaction, all the way through to storing your dictations in a location of your choice. I wonder if anyone has built this.<br /><br />This is post 8 of <a href=\"https://indieweb.social/tags/100PostsOfIndieWeb\">#<span class=\"p-category\">100PostsOfIndieWeb</span></a>. <a href=\"https://indieweb.social/tags/100Posts\">#<span class=\"p-category\">100Posts</span></a> <a href=\"https://indieweb.social/tags/IndieWeb\">#<span class=\"p-category\">IndieWeb</span></a> <a href=\"https://indieweb.social/tags/TwinPeaksDay\">#<span class=\"p-category\">TwinPeaksDay</span></a><br /><br />\u2190 <a href=\"https://tantek.com/2026/007/t3/wikipedia-edited-year-in-review\">https://tantek.com/2026/007/t3/wikipedia-edited-year-in-review</a><br />\u2192 \ud83d\udd2e</p>",
"text": "Happy Twin Peaks day to those who celebrate!\n\nIn Agent Cooper\u2019s first appearance in the show, he\u2019s driving a car, right hand on the steering wheel, left hand holding a small black box (a microcassette recorder), that, if you don\u2019t look too closely, could easily be mistaken for a regular sized black iPhone with a flush battery pack attached to its back.\n\nYou may search the web for a screen capture or video if you like, or continue with this plain text description.\n\nHe's keeping his eyes on the road, and dictating audio.\n\n\u201cDiane, 11:30 a.m., February 24th. Entering the town of Twin Peaks.\u201d\n\nIn 1989 he\u2019s dictating a log entry to his presumably human assistant, Diane, for her to transcribe after the fact.\n\nIn 2026 (notwithstanding safety and legal concerns while driving) it\u2019s not a stretch to say he could (would likely) be dictating to his (perhaps renamed) digital assistant, Diane, or at least a speech-to-text feature in a note-taking application that would automatically transcribe his words in real time.\n\nThose transcribed words could even be saved as a private post or draft, either locally on his device, or to his personal website, for him to review and clean-up if necessary before publishing to and notifying perhaps a limited audience.\n\nImagine capturing your thoughts without having to look at a screen. No scrolling to first see what others have said. No attention-distracting alerts or admintax prompts to update an application. Capture your thoughts as they occur, and continue onward, focused on your current task or project, uninterrupted.\n\nToday\u2019s technologies and standards should enable such an interaction, all the way through to storing your dictations in a location of your choice. I wonder if anyone has built this.\n\nThis is post 8 of #100PostsOfIndieWeb. #100Posts #IndieWeb #TwinPeaksDay\n\n\u2190 https://tantek.com/2026/007/t3/wikipedia-edited-year-in-review\n\u2192 \ud83d\udd2e"
},
"published": "2026-02-25T03:14:00+00:00",
"post-type": "note",
"_id": "47456682",
"_source": "8007",
"_is_read": false
}
Webmention 怎么还有一个拓展标准叫 Salmention,本来简单的标准怎么这么复杂了……
不过看起来要比 Webmention 完善不少,似乎 Salmention 做的只是把回应传播给上游。比如 A 发布了一篇文章,B 给 A 发了 Salmention,而 C 给 B 对 A 的回应发了 Salmention,那么 C 的 Salmention 同时也会通知 A,告知 A 收到的来自 B 的回应收到了 C 的回应。
简单来说就是支持多级评论了(
不过 Salmention 并不是 W3C 标准,没有 Webmention 那么高的待遇,实现了这个标准的软件少之又少。根据 IndieWeb Wiki,貌似只有一些个人网站自己实现了 Salmention 标准。本来用 Webmention 的人就少,拓展标准就更没人用了,这个标准已经是十年前的产物了 
#IndieWeb
{
"type": "entry",
"author": {
"name": "#indieweb",
"url": "https://mastodon.social/tags/indieweb",
"photo": null
},
"url": "https://akk.eltr.ac/objects/74d03d70-a733-4d84-aa76-89d47ff24caf",
"content": {
"html": "<p>Webmention \u600e\u4e48\u8fd8\u6709\u4e00\u4e2a\u62d3\u5c55\u6807\u51c6\u53eb Salmention\uff0c\u672c\u6765\u7b80\u5355\u7684\u6807\u51c6\u600e\u4e48\u8fd9\u4e48\u590d\u6742\u4e86\u2026\u2026 </p><p>\u4e0d\u8fc7\u770b\u8d77\u6765\u8981\u6bd4 Webmention \u5b8c\u5584\u4e0d\u5c11\uff0c\u4f3c\u4e4e Salmention \u505a\u7684\u53ea\u662f\u628a\u56de\u5e94\u4f20\u64ad\u7ed9\u4e0a\u6e38\u3002\u6bd4\u5982 A \u53d1\u5e03\u4e86\u4e00\u7bc7\u6587\u7ae0\uff0cB \u7ed9 A \u53d1\u4e86 Salmention\uff0c\u800c C \u7ed9 B \u5bf9 A \u7684\u56de\u5e94\u53d1\u4e86 Salmention\uff0c\u90a3\u4e48 C \u7684 Salmention \u540c\u65f6\u4e5f\u4f1a\u901a\u77e5 A\uff0c\u544a\u77e5 A \u6536\u5230\u7684\u6765\u81ea B \u7684\u56de\u5e94\u6536\u5230\u4e86 C \u7684\u56de\u5e94\u3002</p><p>\u7b80\u5355\u6765\u8bf4\u5c31\u662f\u652f\u6301\u591a\u7ea7\u8bc4\u8bba\u4e86\uff08</p><p>\u4e0d\u8fc7 Salmention \u5e76\u4e0d\u662f W3C \u6807\u51c6\uff0c\u6ca1\u6709 Webmention \u90a3\u4e48\u9ad8\u7684\u5f85\u9047\uff0c\u5b9e\u73b0\u4e86\u8fd9\u4e2a\u6807\u51c6\u7684\u8f6f\u4ef6\u5c11\u4e4b\u53c8\u5c11\u3002\u6839\u636e IndieWeb Wiki\uff0c\u8c8c\u4f3c\u53ea\u6709\u4e00\u4e9b\u4e2a\u4eba\u7f51\u7ad9\u81ea\u5df1\u5b9e\u73b0\u4e86 Salmention \u6807\u51c6\u3002\u672c\u6765\u7528 Webmention \u7684\u4eba\u5c31\u5c11\uff0c\u62d3\u5c55\u6807\u51c6\u5c31\u66f4\u6ca1\u4eba\u7528\u4e86\uff0c\u8fd9\u4e2a\u6807\u51c6\u5df2\u7ecf\u662f\u5341\u5e74\u524d\u7684\u4ea7\u7269\u4e86 <img alt=\":piethinking:\" height=\"16\" src=\"https://files.mastodon.social/cache/custom_emojis/images/001/341/159/original/96da8cb7c3a5625b.png\" title=\":piethinking:\" width=\"16\" /></p><p><a href=\"https://akk.eltr.ac/tag/indieweb\">#IndieWeb</a></p>",
"text": "Webmention \u600e\u4e48\u8fd8\u6709\u4e00\u4e2a\u62d3\u5c55\u6807\u51c6\u53eb Salmention\uff0c\u672c\u6765\u7b80\u5355\u7684\u6807\u51c6\u600e\u4e48\u8fd9\u4e48\u590d\u6742\u4e86\u2026\u2026 \n\n\u4e0d\u8fc7\u770b\u8d77\u6765\u8981\u6bd4 Webmention \u5b8c\u5584\u4e0d\u5c11\uff0c\u4f3c\u4e4e Salmention \u505a\u7684\u53ea\u662f\u628a\u56de\u5e94\u4f20\u64ad\u7ed9\u4e0a\u6e38\u3002\u6bd4\u5982 A \u53d1\u5e03\u4e86\u4e00\u7bc7\u6587\u7ae0\uff0cB \u7ed9 A \u53d1\u4e86 Salmention\uff0c\u800c C \u7ed9 B \u5bf9 A \u7684\u56de\u5e94\u53d1\u4e86 Salmention\uff0c\u90a3\u4e48 C \u7684 Salmention \u540c\u65f6\u4e5f\u4f1a\u901a\u77e5 A\uff0c\u544a\u77e5 A \u6536\u5230\u7684\u6765\u81ea B \u7684\u56de\u5e94\u6536\u5230\u4e86 C \u7684\u56de\u5e94\u3002\n\n\u7b80\u5355\u6765\u8bf4\u5c31\u662f\u652f\u6301\u591a\u7ea7\u8bc4\u8bba\u4e86\uff08\n\n\u4e0d\u8fc7 Salmention \u5e76\u4e0d\u662f W3C \u6807\u51c6\uff0c\u6ca1\u6709 Webmention \u90a3\u4e48\u9ad8\u7684\u5f85\u9047\uff0c\u5b9e\u73b0\u4e86\u8fd9\u4e2a\u6807\u51c6\u7684\u8f6f\u4ef6\u5c11\u4e4b\u53c8\u5c11\u3002\u6839\u636e IndieWeb Wiki\uff0c\u8c8c\u4f3c\u53ea\u6709\u4e00\u4e9b\u4e2a\u4eba\u7f51\u7ad9\u81ea\u5df1\u5b9e\u73b0\u4e86 Salmention \u6807\u51c6\u3002\u672c\u6765\u7528 Webmention \u7684\u4eba\u5c31\u5c11\uff0c\u62d3\u5c55\u6807\u51c6\u5c31\u66f4\u6ca1\u4eba\u7528\u4e86\uff0c\u8fd9\u4e2a\u6807\u51c6\u5df2\u7ecf\u662f\u5341\u5e74\u524d\u7684\u4ea7\u7269\u4e86 \n\n#IndieWeb"
},
"published": "2026-02-25T04:02:32+00:00",
"post-type": "note",
"_id": "47456683",
"_source": "8007",
"_is_read": false
}
I spent the night learning about FreeBSD. Just need to configure bastille and my jails and my raspberry pi will be ready to start hosting my blog! I already have multiple ideas for posts percolating.
#freebsd #selfhosting #indieweb
{
"type": "entry",
"author": {
"name": "#indieweb",
"url": "https://mastodon.social/tags/indieweb",
"photo": null
},
"url": "https://mastodo.neoliber.al/@kemotep/116129150793277187",
"content": {
"html": "<p>I spent the night learning about FreeBSD. Just need to configure bastille and my jails and my raspberry pi will be ready to start hosting my blog! I already have multiple ideas for posts percolating.</p><p><a href=\"https://mastodo.neoliber.al/tags/freebsd\">#<span>freebsd</span></a> <a href=\"https://mastodo.neoliber.al/tags/selfhosting\">#<span>selfhosting</span></a> <a href=\"https://mastodo.neoliber.al/tags/indieweb\">#<span>indieweb</span></a></p>",
"text": "I spent the night learning about FreeBSD. Just need to configure bastille and my jails and my raspberry pi will be ready to start hosting my blog! I already have multiple ideas for posts percolating.\n\n#freebsd #selfhosting #indieweb"
},
"published": "2026-02-25T03:30:15+00:00",
"post-type": "note",
"_id": "47456563",
"_source": "8007",
"_is_read": false
}
{
"type": "entry",
"author": {
"name": "#indieweb",
"url": "https://mastodon.social/tags/indieweb",
"photo": null
},
"url": "https://mastodon.social/@NathanMurdock/116129051603543728",
"content": {
"html": "<p>\u062f\u0631 \u062d\u0627\u0644 \u062d\u0627\u0636\u0631 \u06a9\u062b\u06cc\u0641 \u062a\u0631 \u0627\u0632 Gestapo\u060c \u0622\u06cc\u0627 \u067e\u0644\u06cc\u0633 \u062a\u0648\u0631\u0646\u062a\u0648 \u0645\u06cc \u062a\u0648\u0627\u0646\u062f \u062a\u0635\u0648\u06cc\u0631 \u062e\u0648\u062f \u0631\u0627 \u0628\u0627 \u0627\u0633\u062a\u062e\u062f\u0627\u0645 \u06cc\u06a9 Mascot \u062c\u062f\u06cc\u062f \u0627\u062d\u06cc\u0627 \u06a9\u0646\u062f\u061f? <a href=\"https://jungyulkim.com/free-press/fa/articles/%D8%AF%D9%85%D9%88%DA%A9%D8%B1%D8%A7%D8%B3%DB%8C-canadian-%D8%AF%D8%B1-%D9%85%D8%B9%D8%B1%D8%B6-%D8%AE%D8%B7%D8%B1-%D8%AF%D8%B1-%D8%AD%D8%A7%D9%84%DB%8C-%DA%A9%D9%87-%D8%AD%DA%A9%D9%88%D9%85%D8%AA-%D8%A8%D8%B1-%D8%AA%D9%88%D8%AF%D9%87-%D9%87%D8%A7-%D8%A8%D8%B1-%D9%85%D8%B1%D8%AF%D9%85.html\"><span>https://</span><span>jungyulkim.com/free-press/fa/a</span><span>rticles/\u062f\u0645\u0648\u06a9\u0631\u0627\u0633\u06cc-canadian-\u062f\u0631-\u0645\u0639\u0631\u0636-\u062e\u0637\u0631-\u062f\u0631-\u062d\u0627\u0644\u06cc-\u06a9\u0647-\u062d\u06a9\u0648\u0645\u062a-\u0628\u0631-\u062a\u0648\u062f\u0647-\u0647\u0627-\u0628\u0631-\u0645\u0631\u062f\u0645.html</span></a> <a href=\"https://mastodon.social/tags/News\">#<span>News</span></a> <a href=\"https://mastodon.social/tags/Art\">#<span>Art</span></a> <a href=\"https://mastodon.social/tags/Canada\">#<span>Canada</span></a> <a href=\"https://mastodon.social/tags/NewYork\">#<span>NewYork</span></a> <a href=\"https://mastodon.social/tags/Toronto\">#<span>Toronto</span></a> <a href=\"https://mastodon.social/tags/Mob\">#<span>Mob</span></a> <a href=\"https://mastodon.social/tags/Crime\">#<span>Crime</span></a> <a href=\"https://mastodon.social/tags/Indieweb\">#<span>Indieweb</span></a> <a href=\"https://mastodon.social/tags/Headlines\">#<span>Headlines</span></a></p>",
"text": "\u062f\u0631 \u062d\u0627\u0644 \u062d\u0627\u0636\u0631 \u06a9\u062b\u06cc\u0641 \u062a\u0631 \u0627\u0632 Gestapo\u060c \u0622\u06cc\u0627 \u067e\u0644\u06cc\u0633 \u062a\u0648\u0631\u0646\u062a\u0648 \u0645\u06cc \u062a\u0648\u0627\u0646\u062f \u062a\u0635\u0648\u06cc\u0631 \u062e\u0648\u062f \u0631\u0627 \u0628\u0627 \u0627\u0633\u062a\u062e\u062f\u0627\u0645 \u06cc\u06a9 Mascot \u062c\u062f\u06cc\u062f \u0627\u062d\u06cc\u0627 \u06a9\u0646\u062f\u061f? https://jungyulkim.com/free-press/fa/articles/\u062f\u0645\u0648\u06a9\u0631\u0627\u0633\u06cc-canadian-\u062f\u0631-\u0645\u0639\u0631\u0636-\u062e\u0637\u0631-\u062f\u0631-\u062d\u0627\u0644\u06cc-\u06a9\u0647-\u062d\u06a9\u0648\u0645\u062a-\u0628\u0631-\u062a\u0648\u062f\u0647-\u0647\u0627-\u0628\u0631-\u0645\u0631\u062f\u0645.html #News #Art #Canada #NewYork #Toronto #Mob #Crime #Indieweb #Headlines"
},
"published": "2026-02-25T03:05:02+00:00",
"post-type": "note",
"_id": "47456367",
"_source": "8007",
"_is_read": false
}
@michaelharley I don't think badges (we don't need no stinking badges?) are a good solution. Lies abound. It's VERY early... but I may have a solution? https://sigyl.org #indieweb
{
"type": "entry",
"author": {
"name": "#indieweb",
"url": "https://mastodon.social/tags/indieweb",
"photo": null
},
"url": "https://4d2.social/@brine/116128620902602811",
"content": {
"html": "<p><span class=\"h-card\"><a class=\"u-url\" href=\"https://infosec.exchange/@michaelharley\">@<span>michaelharley</span></a></span> I don't think badges (we don't need no stinking badges?) are a good solution. Lies abound. It's VERY early... but I may have a solution? <a href=\"https://sigyl.org\"><span>https://</span><span>sigyl.org</span><span></span></a> <a href=\"https://4d2.social/tags/indieweb\">#<span>indieweb</span></a></p>\n<a class=\"u-mention\" href=\"https://infosec.exchange/@michaelharley\"></a>",
"text": "@michaelharley I don't think badges (we don't need no stinking badges?) are a good solution. Lies abound. It's VERY early... but I may have a solution? https://sigyl.org #indieweb"
},
"published": "2026-02-25T01:15:30+00:00",
"post-type": "note",
"_id": "47455898",
"_source": "8007",
"_is_read": false
}
Re: No AI Badges
Exploring where to draw the line on AI use when it comes to displaying 'No AI' badges on your website.
https://michaelharley.net/posts/2026/02/24/re-no-ai-badges/
#AI #IndieWeb
{
"type": "entry",
"author": {
"name": "#indieweb",
"url": "https://mastodon.social/tags/indieweb",
"photo": null
},
"url": "https://infosec.exchange/@michaelharley/116127977786079602",
"content": {
"html": "<p>Re: No AI Badges</p><p>Exploring where to draw the line on AI use when it comes to displaying 'No AI' badges on your website.</p><p><a href=\"https://michaelharley.net/posts/2026/02/24/re-no-ai-badges/\"><span>https://</span><span>michaelharley.net/posts/2026/0</span><span>2/24/re-no-ai-badges/</span></a></p><p><a href=\"https://infosec.exchange/tags/AI\">#<span>AI</span></a> <a href=\"https://infosec.exchange/tags/IndieWeb\">#<span>IndieWeb</span></a></p>",
"text": "Re: No AI Badges\n\nExploring where to draw the line on AI use when it comes to displaying 'No AI' badges on your website.\n\nhttps://michaelharley.net/posts/2026/02/24/re-no-ai-badges/\n\n#AI #IndieWeb"
},
"published": "2026-02-24T22:31:57+00:00",
"post-type": "note",
"_id": "47454847",
"_source": "8007",
"_is_read": false
}
#EN/#HU
The new #Mastodon #server is up and running!
This account is only for testing the settings.
The main account is @felhasznalo’s account! 🙂
----
Működik az új Mastodon #szerver!
Ez a fiók csak a beállítások tesztelésére szolgál.
A fő fiók @felhasznalo fiókja! :)
----
#Fediverse #SelfHosted #OpenSource #Decentralized #SocialNetwork #Tech #IndieWeb #Community #ServerAdmin
{
"type": "entry",
"author": {
"name": "#indieweb",
"url": "https://mastodon.social/tags/indieweb",
"photo": null
},
"url": "https://social.99113377.xyz/@szerverbeallitas/116127821303045864",
"content": {
"html": "<p><a href=\"https://social.99113377.xyz/tags/EN\">#<span>EN</span></a>/#HU</p><p>The new <a href=\"https://social.99113377.xyz/tags/Mastodon\">#<span>Mastodon</span></a> <a href=\"https://social.99113377.xyz/tags/server\">#<span>server</span></a> is up and running!</p><p>This account is only for testing the settings.<br />The main account is <span class=\"h-card\"><a class=\"u-url\" href=\"https://social.99113377.xyz/@felhasznalo\">@<span>felhasznalo</span></a></span>\u2019s account! \ud83d\ude42</p><p>----</p><p>M\u0171k\u00f6dik az \u00faj Mastodon <a href=\"https://social.99113377.xyz/tags/szerver\">#<span>szerver</span></a>!</p><p>Ez a fi\u00f3k csak a be\u00e1ll\u00edt\u00e1sok tesztel\u00e9s\u00e9re szolg\u00e1l.<br />A f\u0151 fi\u00f3k <span class=\"h-card\"><a class=\"u-url\" href=\"https://social.99113377.xyz/@felhasznalo\">@<span>felhasznalo</span></a></span> fi\u00f3kja! :)</p><p>----</p><p><a href=\"https://social.99113377.xyz/tags/Fediverse\">#<span>Fediverse</span></a> <a href=\"https://social.99113377.xyz/tags/SelfHosted\">#<span>SelfHosted</span></a> <a href=\"https://social.99113377.xyz/tags/OpenSource\">#<span>OpenSource</span></a> <a href=\"https://social.99113377.xyz/tags/Decentralized\">#<span>Decentralized</span></a> <a href=\"https://social.99113377.xyz/tags/SocialNetwork\">#<span>SocialNetwork</span></a> <a href=\"https://social.99113377.xyz/tags/Tech\">#<span>Tech</span></a> <a href=\"https://social.99113377.xyz/tags/IndieWeb\">#<span>IndieWeb</span></a> <a href=\"https://social.99113377.xyz/tags/Community\">#<span>Community</span></a> <a href=\"https://social.99113377.xyz/tags/ServerAdmin\">#<span>ServerAdmin</span></a></p>\n<a class=\"u-mention\" href=\"https://social.99113377.xyz/@felhasznalo\"></a>",
"text": "#EN/#HU\n\nThe new #Mastodon #server is up and running!\n\nThis account is only for testing the settings.\nThe main account is @felhasznalo\u2019s account! \ud83d\ude42\n\n----\n\nM\u0171k\u00f6dik az \u00faj Mastodon #szerver!\n\nEz a fi\u00f3k csak a be\u00e1ll\u00edt\u00e1sok tesztel\u00e9s\u00e9re szolg\u00e1l.\nA f\u0151 fi\u00f3k @felhasznalo fi\u00f3kja! :)\n\n----\n\n#Fediverse #SelfHosted #OpenSource #Decentralized #SocialNetwork #Tech #IndieWeb #Community #ServerAdmin"
},
"published": "2026-02-24T21:52:09+00:00",
"photo": [
"https://files.mastodon.social/cache/media_attachments/files/116/127/821/323/828/799/original/3ab1c949f05cd180.webp"
],
"post-type": "photo",
"_id": "47454605",
"_source": "8007",
"_is_read": false
}
introducing bidet, a simple, easily-customizable git frontend for the #IndieWeb, written in Go. self-host your code alongside your personal webpage, and style it however you like ✨
https://nmyk.io/bidet
{
"type": "entry",
"author": {
"name": "#indieweb",
"url": "https://mastodon.social/tags/indieweb",
"photo": null
},
"url": "https://wetdry.world/@nmyk/116127800505189735",
"content": {
"html": "<p>introducing bidet, a simple, easily-customizable git frontend for the <a href=\"https://wetdry.world/tags/IndieWeb\">#<span>IndieWeb</span></a>, written in Go. self-host your code alongside your personal webpage, and style it however you like \u2728 </p><p><a href=\"https://nmyk.io/bidet\"><span>https://</span><span>nmyk.io/bidet</span><span></span></a></p>",
"text": "introducing bidet, a simple, easily-customizable git frontend for the #IndieWeb, written in Go. self-host your code alongside your personal webpage, and style it however you like \u2728 \n\nhttps://nmyk.io/bidet"
},
"published": "2026-02-24T21:46:52+00:00",
"post-type": "note",
"_id": "47454606",
"_source": "8007",
"_is_read": false
}
There’s a power imbalance at work here that’s hard to ignore. Large “AI” companies, the ones with billions in venture capital, send their bots to harvest free content. Not only from big publishers or Wikipedia, but from small, independent websites, too. But we, the people running these sites – often as passion projects, as ways to freely share what we’ve learned, as digital gardens we tend in our spare time – we’re the ones paying for the bandwidth and server resources to handle all those additional requests while those companies profit from the training data they extract. It’s an asymmetric battle: small systems absorbing the demands generated at an entirely different, industrial scale.
{
"type": "entry",
"published": "2026-02-24T16:53:13Z",
"url": "https://adactio.com/links/22424",
"category": [
"ai",
"machinelearning",
"language",
"models",
"generative",
"tools",
"technology",
"scrapers",
"bots",
"ddos",
"servers",
"scraping",
"ethics",
"personal",
"publishing",
"indieweb"
],
"bookmark-of": [
"https://matthiasott.com/articles/webspace-invaders"
],
"content": {
"text": "Webspace Invaders \u00b7 Matthias Ott\n\n\n\n\n There\u2019s a power imbalance at work here that\u2019s hard to ignore. Large \u201cAI\u201d companies, the ones with billions in venture capital, send their bots to harvest free content. Not only from big publishers or Wikipedia, but from small, independent websites, too. But we, the people running these sites \u2013 often as passion projects, as ways to freely share what we\u2019ve learned, as digital gardens we tend in our spare time \u2013 we\u2019re the ones paying for the bandwidth and server resources to handle all those additional requests while those companies profit from the training data they extract. It\u2019s an asymmetric battle: small systems absorbing the demands generated at an entirely different, industrial scale.",
"html": "<h3>\n<a class=\"p-name u-bookmark-of\" href=\"https://matthiasott.com/articles/webspace-invaders\">\nWebspace Invaders \u00b7 Matthias Ott\n</a>\n</h3>\n\n<blockquote>\n <p>There\u2019s a power imbalance at work here that\u2019s hard to ignore. Large \u201cAI\u201d companies, the ones with billions in venture capital, send their bots to harvest free content. Not only from big publishers or Wikipedia, but from small, independent websites, too. But we, the people running these sites \u2013 often as passion projects, as ways to freely share what we\u2019ve learned, as digital gardens we tend in our spare time \u2013 we\u2019re the ones paying for the bandwidth and server resources to handle all those additional requests while those companies profit from the training data they extract. It\u2019s an asymmetric battle: small systems absorbing the demands generated at an entirely different, industrial scale.</p>\n</blockquote>"
},
"author": {
"type": "card",
"name": "Jeremy Keith",
"url": "https://adactio.com/",
"photo": "https://adactio.com/images/photo-150.jpg"
},
"post-type": "bookmark",
"_id": "47451803",
"_source": "2",
"_is_read": false
}
One of the downside of self-hosting one’s own ActivityPub server is the loss of Brid.gy backfilling social reactions to one’s content.
This is why I developed this indiekit plugin, it basically translate ActivityPub activity on one’s content into JF2 format so that this page can aggregate all the interactions with my content in one place.
It also provide an API so that I can display a webmention widget in the frontend that Eleventy + AlpineJS can use to display new interactions live on the frontend.
🔗 https://rmendes.net/notes/2026/02/24/a435d
{
"type": "entry",
"author": {
"name": "#indieweb",
"url": "https://mastodon.social/tags/indieweb",
"photo": null
},
"url": "https://rmendes.net/notes/2026/02/24/a435d",
"content": {
"html": "<p>One of the downside of self-hosting one\u2019s own ActivityPub server is the loss of Brid.gy backfilling social reactions to one\u2019s content.</p><br /><p>This is why I developed <a href=\"https://github.com/rmdes/indiekit-endpoint-conversations\">this</a> indiekit plugin, it basically translate ActivityPub activity on one\u2019s content into JF2 format so that <a href=\"https://rmendes.net/interactions/\">this</a> page can aggregate all the interactions with my content in one place.<br /><br />\nIt also provide an API so that I can display a webmention widget in the frontend that Eleventy + AlpineJS can use to display new interactions live on the frontend.</p><p>\ud83d\udd17 <a href=\"https://rmendes.net/notes/2026/02/24/a435d\">https://rmendes.net/notes/2026/02/24/a435d</a></p>",
"text": "One of the downside of self-hosting one\u2019s own ActivityPub server is the loss of Brid.gy backfilling social reactions to one\u2019s content.\nThis is why I developed this indiekit plugin, it basically translate ActivityPub activity on one\u2019s content into JF2 format so that this page can aggregate all the interactions with my content in one place.\n\n\nIt also provide an API so that I can display a webmention widget in the frontend that Eleventy + AlpineJS can use to display new interactions live on the frontend.\n\n\ud83d\udd17 https://rmendes.net/notes/2026/02/24/a435d"
},
"published": "2026-02-24T16:43:45+00:00",
"post-type": "note",
"_id": "47451775",
"_source": "8007",
"_is_read": false
}
{
"type": "entry",
"author": {
"name": "#indieweb",
"url": "https://mastodon.social/tags/indieweb",
"photo": null
},
"url": "https://mastodon.social/@leandromaciel/116126280022103580",
"content": {
"html": "<p>Blog: a melhor rede social : <a href=\"https://leandromaciel.blog/blog-a-melhor-rede-social/\"><span>https://</span><span>leandromaciel.blog/blog-a-melh</span><span>or-rede-social/</span></a></p><p><a href=\"https://mastodon.social/tags/Blogs\">#<span>Blogs</span></a> <a href=\"https://mastodon.social/tags/Indieweb\">#<span>Indieweb</span></a> <a href=\"https://mastodon.social/tags/RedesSociais\">#<span>RedesSociais</span></a></p>",
"text": "Blog: a melhor rede social : https://leandromaciel.blog/blog-a-melhor-rede-social/\n\n#Blogs #Indieweb #RedesSociais"
},
"published": "2026-02-24T15:20:11+00:00",
"post-type": "note",
"_id": "47451004",
"_source": "8007",
"_is_read": false
}
{
"type": "entry",
"author": {
"name": "#indieweb",
"url": "https://mastodon.social/tags/indieweb",
"photo": null
},
"url": "https://indieweb.social/@desiree/116125907070207633",
"content": {
"html": "<p>I made a lot of paintings this month and I want you to see 'em!</p><p><a href=\"https://indieweb.social/tags/blog\">#<span>blog</span></a> <a href=\"https://indieweb.social/tags/IndieWeb\">#<span>IndieWeb</span></a> <a href=\"https://indieweb.social/tags/painting\">#<span>painting</span></a> <a href=\"https://indieweb.social/tags/art\">#<span>art</span></a> </p><p><a href=\"https://www.digitalprairie.blog/becoming-an-accidental-action-painter/\"><span>https://www.</span><span>digitalprairie.blog/becoming-a</span><span>n-accidental-action-painter/</span></a></p>",
"text": "I made a lot of paintings this month and I want you to see 'em!\n\n#blog #IndieWeb #painting #art \n\nhttps://www.digitalprairie.blog/becoming-an-accidental-action-painter/"
},
"published": "2026-02-24T13:45:20+00:00",
"post-type": "note",
"_id": "47450095",
"_source": "8007",
"_is_read": false
}