{ "type": "entry", "published": "2021-11-12T20:04:20+0000", "url": "https://seblog.nl/2021/11/12/1/yak-strangling-php-with-phoenix-and-nginx", "category": [ "yak" ], "name": "Yak, strangling PHP with Phoenix and NGINX", "content": { "text": "At the time of writing this blogpost, my site is written in PHP, and most of the code is many years old. One could call it a legacy application: I was not very good at organising code back when I started it, so it is a bit of a mess.\nLike any legacy application, rewriting it would be costly. There are many features I don\u2019t want to lose, but at the same time I don\u2019t want to lock myself up and rewrite them all before I can show and use any work. This kind of \u2018Big Bang release\u2019 would eat up all my free time for the next months and my motivation probably won\u2019t make it all the way through.\nA Yak to shave\nYesterday I attended the first IndieWebCamp since \u2018March 2020\u2019 and I didn\u2019t want to come empty handed. I forced myself to start a new project called Yak.\nThis is actually the fifth project called \u2018Yak\u2019 on my system, but it\u2019s the first one I actually deployed. All the Yak-projects focus on a different part of the app, since there is always something you think you should do first before the rest can start.\nThe newest and deployed Yak consists of a new IndieAuth endpoint. I was able to shave off this part since IndieAuth tries to be decoupled from the rest of the site: its endpoint might even be on a different domain.\nI didn\u2019t go that route though: I decided to strangle.\nThe simple strangle\nWith \u2018strangle\u2019 I refer to the \u2018Strangler Pattern\u2019, after the now more friendly(?) Named term \u2019Strangler Fig Application\u2019 by Martin Fowler. This plant grows around another tree, slowly taking over its shape and killing it in the process, so that eventually, all that remains is the fig.\nIn terms of Seblog.nl, I would like Yak to take over more and more features from the PHP-version, until finally Yak is my new CMS. I say \u2018PHP-version\u2019, be because yes, Yak is written in Elixir now. How would I go about taking over features then? My first attempt was this:\nindex index.html index.php;\n\nlocation /auth {\n # ... proxy headers\n proxy_pass http://localhost:4001;\n}\n\nlocation / {\n try_files $uri $uri/ index.php$is_args$query_string;\n}\n\nlocation ~ \\.php$ {\n fastcgi_pass unix:/var/run/php/php7.4-fpm.sock;\n fastcgi_index /var/www/seblog.nl/index.php;\n fastcgi_param SCRIPT_FILENAME $request_filename;\n fastcgi_param PATH_INFO $fastcgi_script_name;\n include fastcgi_params;\n}\nThat\u2019s a pretty normal PHP setup, but with one path as a proxy. Yak is listening to port 4001 and NGINX sends all traffic for /auth and sub-folders to it. (A firewall keeps visitors for 4001 from outside away, don\u2019t worry.) This way I can have my IndieAuth endpoint be in a different application while still maintaining one domain to the outside.\nBut since this is my hobby project, I can get niftier.\nProxy all the things\nThe IndieAuth route is fairly well scoped and easily separated from the rest of the app. For creating posts via Micropub, I can also separate a route and then store the created posts in the same file folder (or database) since both apps run on the same machine. But not all features are that easily separated.\nTo make it myself easier to add new routes to Yak, I created the following monster:\nindex index.html;\n\nlocation @yak {\n # ... proxy headers\n proxy_pass http://localhost:4001;\n proxy_intercept_errors on;\n error_page 404 = /index.php$is_args$query_string;\n error_page 502 = /index.php$is_args$query_string;\n}\n\nlocation / {\n try_files $uri @yak;\n}\n\nlocation ~ \\.php$ {\n # same as previous PHP\n}\nSince Yak is pretty fast (the Phoenix framework logs its response times in microseconds instead of milliseconds), I decided to just route all traffic through Yak. If Yak has the answer, that answer will be the final answer. But all routes that get a 404 Not Found error from Yak, are given to PHP afterwards.\nThis way the old site still functions: PHP is not even aware that someone has looked at the request before it. I also added the 502 Bad Gateway just in case Yak is down, which I expect only to happen for brief moments during big configuration changing deployments.\nA few details to note: it all starts by adding @yak as a final location to try_files. Only the last location can be a virtual one, otherwise I would have put PHP directly in that list. I did remove the $uri/ and removed index.php from the index directive at the top: without this the homepage was not delivered to Yak.\nThe other crucial bit is the proxy_intercept_errors on, because that traps the errors in the proxy and enables you to add cases for certain errors. With error_page 404 = /index.php$is_args$query_string I send them to PHP. Other errors from Yak, like 401 and 403, are still just rendered as they came from Yak.\nFixing my POST to Micropub\nWhile the above does work for most of my site, it broke my Webmentions and Micropub. (Yes, I tried posting this a few hours ago.) The previously described method makes all requests in PHP come in as GET, which makes sense for rendering an error page.\nAfter a lot of trial and error, reading NGINX documentation and even trying to get Yak to proxy, I decided to localise the few POST requests I needed to be PHP and added those explicit in NGINX.\nlocation /webmention {\n try_files $uri $uri/ /index.php$is_args$args;\n}\nlocation /micropub {\n try_files $uri $uri/ /index.php$is_args$args;\n}\nOnce I moved these endpoints to Yak, I can remove them from my NGINX.", "html": "<p>At the time of writing this blogpost, my site is written in PHP, and most of the code is many years old. One could call it a legacy application: I was not very good at organising code back when I started it, so it is a bit of a mess.</p>\n<p>Like any legacy application, rewriting it would be costly. There are many features I don\u2019t want to lose, but at the same time I don\u2019t want to lock myself up and rewrite them all before I can show and use any work. This kind of \u2018Big Bang release\u2019 would eat up all my free time for the next months and my motivation probably won\u2019t make it all the way through.</p>\n<h2>A Yak to shave</h2>\n<p>Yesterday I attended the <a href=\"https://events.indieweb.org/2021/11/indiewebcamp-d%C3%BCsseldorf-Z6z8DpkikdxI\">first IndieWebCamp since \u2018March 2020\u2019</a> and I didn\u2019t want to come empty handed. I forced myself to start a new project called Yak.</p>\n<p>This is actually the fifth project called \u2018Yak\u2019 on my system, but it\u2019s the first one I actually deployed. All the Yak-projects focus on a different part of the app, since there is always something you think you should do first before the rest can start.</p>\n<p>The newest and deployed Yak consists of a new <a href=\"https://indieauth.net/\">IndieAuth</a> endpoint. I was able to shave off this part since IndieAuth tries to be decoupled from the rest of the site: its endpoint might even be on a different domain.</p>\n<p>I didn\u2019t go that route though: I decided to strangle.</p>\n<h2>The simple strangle</h2>\n<p>With \u2018strangle\u2019 I refer to the \u2018Strangler Pattern\u2019, after the now more friendly(?) Named term <a href=\"https://martinfowler.com/bliki/StranglerFigApplication.html\">\u2019Strangler Fig Application\u2019</a> by Martin Fowler. This plant grows around another tree, slowly taking over its shape and killing it in the process, so that eventually, all that remains is the fig.</p>\n<p>In terms of Seblog.nl, I would like Yak to take over more and more features from the PHP-version, until finally Yak is my new CMS. I say \u2018PHP-version\u2019, be because yes, Yak is written in Elixir now. How would I go about taking over features then? My first attempt was this:</p>\n<pre><code>index index.html index.php;\n\nlocation /auth {\n # ... proxy headers\n proxy_pass http://localhost:4001;\n}\n\nlocation / {\n try_files $uri $uri/ index.php$is_args$query_string;\n}\n\nlocation ~ \\.php$ {\n fastcgi_pass unix:/var/run/php/php7.4-fpm.sock;\n fastcgi_index /var/www/seblog.nl/index.php;\n fastcgi_param SCRIPT_FILENAME $request_filename;\n fastcgi_param PATH_INFO $fastcgi_script_name;\n include fastcgi_params;\n}</code></pre>\n<p>That\u2019s a pretty normal PHP setup, but with one path as a proxy. Yak is listening to port 4001 and NGINX sends all traffic for <code>/auth</code> and sub-folders to it. (A firewall keeps visitors for 4001 from outside away, don\u2019t worry.) This way I can have my IndieAuth endpoint be in a different application while still maintaining one domain to the outside.</p>\n<p>But since this is my hobby project, I can get niftier.</p>\n<h2>Proxy all the things</h2>\n<p>The IndieAuth route is fairly well scoped and easily separated from the rest of the app. For creating posts via Micropub, I can also separate a route and then store the created posts in the same file folder (or database) since both apps run on the same machine. But not all features are that easily separated.</p>\n<p>To make it myself easier to add new routes to Yak, I created the following monster:</p>\n<pre><code>index index.html;\n\nlocation @yak {\n # ... proxy headers\n proxy_pass http://localhost:4001;\n proxy_intercept_errors on;\n error_page 404 = /index.php$is_args$query_string;\n error_page 502 = /index.php$is_args$query_string;\n}\n\nlocation / {\n try_files $uri @yak;\n}\n\nlocation ~ \\.php$ {\n # same as previous PHP\n}</code></pre>\n<p>Since Yak is pretty fast (the Phoenix framework logs its response times in microseconds instead of milliseconds), I decided to just route all traffic through Yak. If Yak has the answer, that answer will be the final answer. But all routes that get a <code>404 Not Found</code> error from Yak, are given to PHP afterwards.</p>\n<p>This way the old site still functions: PHP is not even aware that someone has looked at the request before it. I also added the <code>502 Bad Gateway</code> just in case Yak is down, which I expect only to happen for brief moments during big configuration changing deployments.</p>\n<p>A few details to note: it all starts by adding <code>@yak</code> as a final location to <code>try_files</code>. Only the last location can be a virtual one, otherwise I would have put PHP directly in that list. I did remove the <code>$uri/</code> and removed <code>index.php</code> from the <code>index</code> directive at the top: without this the homepage was not delivered to Yak.</p>\n<p>The other crucial bit is the <code>proxy_intercept_errors on</code>, because that traps the errors in the proxy and enables you to add cases for certain errors. With <code>error_page 404 = /index.php$is_args$query_string</code> I send them to PHP. Other errors from Yak, like 401 and 403, are still just rendered as they came from Yak.</p>\n<h2>Fixing my POST to Micropub</h2>\n<p>While the above does work for most of my site, it broke my Webmentions and Micropub. (Yes, I tried posting this a few hours ago.) The previously described method makes all requests in PHP come in as GET, which makes sense for rendering an error page.</p>\n<p>After a lot of trial and error, reading NGINX documentation and even trying to get Yak to proxy, I decided to localise the few POST requests I needed to be PHP and added those explicit in NGINX.</p>\n<pre><code>location /webmention {\n try_files $uri $uri/ /index.php$is_args$args;\n}\nlocation /micropub {\n try_files $uri $uri/ /index.php$is_args$args;\n}</code></pre>\n<p>Once I moved these endpoints to Yak, I can remove them from my NGINX.</p>" }, "author": { "type": "card", "name": "Sebastiaan Andeweg", "url": "https://seblog.nl/", "photo": "https://seblog.nl/photo.jpg" }, "post-type": "article", "_id": "25101551", "_source": "1366", "_is_read": true }
{ "type": "entry", "published": "2021-03-31T19:49:24+0000", "url": "https://seblog.nl/2021/03/31/1/homebrew-website-club-london", "category": [ "indieweb" ], "name": "Homebrew Website Club London", "content": { "text": "So, I am not in London and I am not even in the precise timezone as London, but since The Situation is still keeping us home, I got to attend Homebrew Website Club London.\nIt was mostly just some chatting about smoke detectors, automated blinds and visits to city water reservoirs, as one does on a HWC. We had a few on-topic points as well.\nI told about the upcoming birthday of Seblog.nl, tomorrow, which got us down the path of looking up old versions of websites. Much is saved, but many things are lost as well. One thing we came to: if you are starting to code your own website, please learn how to use version control as soon as possible. I (and others) have lost old versions of our sites because we kept overwriting the old files with new changes. If I had discovered Git (or any other version control) earlier, I would have had the oldest versions still.\nAs a note to myself: I should read Peter's article that he mentioned, which is about this 'content archeology': bringing back old home-pages. I doubt I have enough time to excavate my own first version of Seblog.nl before tomorrow.\nCalum also showed his new bookshelf page. It reminded me of my own page called /bieb (short Dutch for 'library'), and now I want to revisit that page as well. The past month, I've been playing around with Obsidian and this would be one of those places where my site could integrate with it. (Both Obsidian and the current iteration of my site run on raw text files.)\nI also shared some of my plans around this integration but I am not ready to share those here. (Most of my projects become vaporware, sadly.) However, I feel encouraged that my idea was not totally a bad idea. (Only slightly.) That's why I like going to HWC's: they spark ideas and / or bring them further.", "html": "<p>So, I am not in London and I am not even in the precise timezone as London, but since The Situation is still keeping us home, I got to attend <a href=\"https://events.indieweb.org/2021/03/homebrew-website-club-europe-london-wYwkGmxUeyO1\">Homebrew Website Club London</a>.</p>\n<p>It was mostly just some chatting about smoke detectors, automated blinds and visits to <a href=\"https://david.shanske.com/2021/03/31/visiting-the-ashokan-reservoir/\">city water reservoirs</a>, as one does on a HWC. We had a few on-topic points as well.</p>\n<p>I told about the upcoming birthday of Seblog.nl, tomorrow, which got us down the path of looking up old versions of websites. Much is saved, but many things are lost as well. One thing we came to: if you are starting to code your own website, please learn how to use version control as soon as possible. I (and others) have lost old versions of our sites because we kept overwriting the old files with new changes. If I had discovered Git (or any other version control) earlier, I would have had the oldest versions still.</p>\n<p>As a note to myself: I should read <a href=\"https://petermolnar.net/article/content-archeology/\">Peter's article</a> that he mentioned, which is about this 'content archeology': bringing back old home-pages. I doubt I have enough time to excavate my own first version of Seblog.nl before tomorrow.</p>\n<p>Calum also showed his new <a href=\"https://calumryan.com/bookshelf\">bookshelf page</a>. It reminded me of my own page called <a href=\"https://seblog.nl/bieb\">/bieb</a> (short Dutch for 'library'), and now I want to revisit that page as well. The past month, I've been playing around with <a href=\"https://obsidian.md/\">Obsidian</a> and this would be one of those places where my site could integrate with it. (Both Obsidian and the current iteration of my site run on raw text files.)</p>\n<p>I also shared some of my plans around this integration but I am not ready to share those here. (Most of my projects become vaporware, sadly.) However, I feel encouraged that my idea was not totally a bad idea. (Only slightly.) That's why I like going to HWC's: they spark ideas and / or bring them further.</p>" }, "author": { "type": "card", "name": "Sebastiaan Andeweg", "url": "https://seblog.nl/", "photo": "https://seblog.nl/photo.jpg" }, "post-type": "note", "_id": "25101552", "_source": "1366", "_is_read": true }
{ "type": "entry", "published": "2021-11-11 03:38-0800", "rsvp": "yes", "url": "http://tantek.com/2021/315/t1/indiewebcamp-dusseldorf", "category": [ "D", "Zentralbibliothek", "IndieWebCamp", "IndieWeb" ], "in-reply-to": [ "https://2021.indieweb.org/dusseldorf" ], "content": { "text": "attending @IndieWebCamp #D\u00fcsseldorf!\n\ud83d\uddd3 11/11\n\ud83d\udccd #Zentralbibliothek\n\ud83c\udf9f https://2021.indieweb.org/dusseldorf\n\nOn holiday in Germany, popped over to see friends @btconf & help with the #IndieWebCamp side-event!\n\nMore on the #IndieWeb wiki: https://indieweb.org/2021/D%C3%BCsseldorf", "html": "attending <a class=\"h-cassis-username\" href=\"https://twitter.com/IndieWebCamp\">@IndieWebCamp</a> #<span class=\"p-category\">D</span>\u00fcsseldorf!<br />\ud83d\uddd3 11/11<br />\ud83d\udccd #<span class=\"p-category\">Zentralbibliothek</span><br />\ud83c\udf9f <a href=\"https://2021.indieweb.org/dusseldorf\">https://2021.indieweb.org/dusseldorf</a><br /><br />On holiday in Germany, popped over to see friends <a class=\"h-cassis-username\" href=\"https://twitter.com/btconf\">@btconf</a> & help with the #<span class=\"p-category\">IndieWebCamp</span> side-event!<br /><br />More on the #<span class=\"p-category\">IndieWeb</span> wiki: <a href=\"https://indieweb.org/2021/D%C3%BCsseldorf\">https://indieweb.org/2021/D%C3%BCsseldorf</a>" }, "author": { "type": "card", "name": "Tantek \u00c7elik", "url": "http://tantek.com/", "photo": "https://aperture-media.p3k.io/tantek.com/acfddd7d8b2c8cf8aa163651432cc1ec7eb8ec2f881942dca963d305eeaaa6b8.jpg" }, "post-type": "rsvp", "refs": { "https://2021.indieweb.org/dusseldorf": { "type": "entry", "url": "https://2021.indieweb.org/dusseldorf", "name": "an IndieWeb event", "post-type": "article" } }, "_id": "24989776", "_source": "1", "_is_read": true }
My Hugo theme is getting down to bare bones. Perhaps I could pull out and plugify the favicons or the IndieWeb Ring stuff.
{ "type": "entry", "author": { "name": "Jason Cardwell", "url": "https://moondeer.blog/", "photo": "https://micro.blog/Moondeer/avatar.jpg" }, "url": "https://moondeer.blog/2021/11/04/my-hugo-theme.html", "content": { "html": "<p>My Hugo theme is getting down to bare bones. Perhaps I could pull out and plugify the favicons or the IndieWeb Ring stuff.</p>", "text": "My Hugo theme is getting down to bare bones. Perhaps I could pull out and plugify the favicons or the IndieWeb Ring stuff." }, "published": "2021-11-04T22:18:34+00:00", "post-type": "note", "_id": "33380015", "_source": "7224", "_is_read": true }
{ "type": "entry", "author": { "name": "Today I Learned", "url": "https://today-i-learned.net", "photo": "https://avatars.micro.blog/avatars/2021/10400.jpg" }, "url": "https://til.micro.blog/2021/11/04/define-indieweb-indeeweb.html", "content": { "html": "\ud83d\udc40 <strong>DEFINE: IndieWeb</strong>\n \n\n<ul><li>(in-dee-web)</li>\n<li>\n<em>Noun</em>\n\n<ul><li>Collective alternative to the corporate, mainstream web.</li>\n<li>Technologies developed within the stated ethos of the collective.</li>\n</ul></li>\n<li>Portmanteau of <strong>independent web</strong>.</li>\n</ul><a href=\"https://til.micro.blog/2021/11/04/define-indieweb-indeeweb.html\">til.micro.blog</a>", "text": "\ud83d\udc40 DEFINE: IndieWeb\n \n\n(in-dee-web)\n\nNoun\n\nCollective alternative to the corporate, mainstream web.\nTechnologies developed within the stated ethos of the collective.\n\nPortmanteau of independent web.\ntil.micro.blog" }, "published": "2021-11-04T20:29:00+00:00", "post-type": "note", "_id": "33380016", "_source": "7224", "_is_read": true }
I love reading about how—and why—people tinker with their personal sites. This resonates a lot.
This website is essentially a repository of my memories, lessons I’ve learnt, insights I’ve discovered, a changelog of my previous selves. Most people build a map of things they have learnt, I am building a map of how I have come to be, in case I may get lost again. Maybe someone else interested in a similar lonely path will feel less alone with my documented footprints. Maybe that someone else would be me in the future.
Oh, and Winnie, I can testify that having an “on this day” page is well worth it!
{ "type": "entry", "published": "2021-11-02T14:01:31Z", "url": "https://adactio.com/links/18578", "category": [ "indieweb", "personal", "publishing", "writing", "sharing", "notes", "onthisday", "history", "archives", "stories", "learning", "reflection" ], "bookmark-of": [ "https://winnielim.org/experiments/website/this-website-as-a-learning-and-reflection-tool/" ], "content": { "text": "Winnie Lim \u00bb this website as a learning and reflection tool\n\n\n\nI love reading about how\u2014and why\u2014people tinker with their personal sites. This resonates a lot.\n\n\n This website is essentially a repository of my memories, lessons I\u2019ve learnt, insights I\u2019ve discovered, a changelog of my previous selves. Most people build a map of things they have learnt, I am building a map of how I have come to be, in case I may get lost again. Maybe someone else interested in a similar lonely path will feel less alone with my documented footprints. Maybe that someone else would be me in the future.\n\n\nOh, and Winnie, I can testify that having an \u201con this day\u201d page is well worth it!", "html": "<h3>\n<a class=\"p-name u-bookmark-of\" href=\"https://winnielim.org/experiments/website/this-website-as-a-learning-and-reflection-tool/\">\nWinnie Lim \u00bb this website as a learning and reflection tool\n</a>\n</h3>\n\n<p>I love reading about how\u2014and why\u2014people tinker with their personal sites. This resonates a lot.</p>\n\n<blockquote>\n <p>This website is essentially a repository of my memories, lessons I\u2019ve learnt, insights I\u2019ve discovered, a changelog of my previous selves. Most people build a map of things they have learnt, I am building a map of how I have come to be, in case I may get lost again. Maybe someone else interested in a similar lonely path will feel less alone with my documented footprints. Maybe that someone else would be me in the future.</p>\n</blockquote>\n\n<p>Oh, and Winnie, I can testify that having an \u201c<a href=\"https://adactio.com/archive/onthisday\">on this day</a>\u201d page is well worth it!</p>" }, "author": { "type": "card", "name": "Jeremy Keith", "url": "https://adactio.com/", "photo": "https://adactio.com/images/photo-150.jpg" }, "post-type": "bookmark", "_id": "24758535", "_source": "2", "_is_read": true }
His properties for what might make what you could call ‘convivial tools for thought’ are all pretty IndieWebby.
Also on:{ "type": "entry", "author": { "name": "Neil Mather", "url": "https://doubleloop.net/", "photo": null }, "url": "https://doubleloop.net/2021/11/01/7628/", "published": "2021-11-01T20:05:13+00:00", "content": { "html": "Gordon Brander\u2019s article \"Building a Second Subconscious\" is nice.\n<p>His properties for what might make what you could call \u2018convivial tools for thought\u2019 are all pretty IndieWebby.</p>\n<p><a href=\"https://subconscious.substack.com/p/second-subconscious\">https://subconscious.substack.com/p/second-subconscious</a></p>\nAlso on:<p><a href=\"https://social.coop/@neil/107203599864031211\"> social.coop</a></p>", "text": "Gordon Brander\u2019s article \"Building a Second Subconscious\" is nice.\nHis properties for what might make what you could call \u2018convivial tools for thought\u2019 are all pretty IndieWebby.\nhttps://subconscious.substack.com/p/second-subconscious\nAlso on: social.coop" }, "post-type": "note", "_id": "24739762", "_source": "1895", "_is_read": true }
{ "type": "entry", "published": "2021-10-30T22:48:45+00:00", "url": "https://werd.io/2021/told-my-sister-i-was-building-a", "content": { "text": "Told my sister I was building a new website for a writing project and she asked me how anyone was supposed to find it if it was its own independent website instead of a bigger site and boy howdy I\u2019ve been failing in my indieweb duties" }, "author": { "type": "card", "name": "Ben Werdm\u00fcller", "url": "https://werd.io/profile/benwerd", "photo": "https://werd.io/file/5d388c5fb16ea14aac640912/thumb.jpg" }, "post-type": "note", "_id": "24698804", "_source": "191", "_is_read": true }
– Follow people wherever they are (including the big silos).
– Write locally, in my ‘digital garden’, first.
– Publish on my own site. I for sure own the data this way.
– Syndicate things elsewhere, wherever the community best fits for my post. But don’t feed the big tech beasts.
– Interact with people wherever they are.
At present, a combo of org-mode, IndieWeb, Fediverse, Agora make this possible for me.
Also on:{ "type": "entry", "author": { "name": "Neil Mather", "url": "https://doubleloop.net/", "photo": null }, "url": "https://doubleloop.net/2021/10/30/7622/", "published": "2021-10-30T09:07:14+00:00", "content": { "html": "My social media usage is something like this.\n<p>\u2013 Follow people wherever they are (including the big silos).<br />\u2013 Write locally, in my \u2018digital garden\u2019, first.<br />\u2013 Publish on my own site. I for sure own the data this way.<br />\u2013 Syndicate things elsewhere, wherever the community best fits for my post. But don\u2019t feed the big tech beasts.<br />\u2013 Interact with people wherever they are.</p>\n<p>At present, a combo of org-mode, IndieWeb, Fediverse, Agora make this possible for me.</p>\nAlso on:<p><a href=\"https://social.coop/@neil/107189687984880668\"> social.coop</a></p>", "text": "My social media usage is something like this.\n\u2013 Follow people wherever they are (including the big silos).\n\u2013 Write locally, in my \u2018digital garden\u2019, first.\n\u2013 Publish on my own site. I for sure own the data this way.\n\u2013 Syndicate things elsewhere, wherever the community best fits for my post. But don\u2019t feed the big tech beasts.\n\u2013 Interact with people wherever they are.\nAt present, a combo of org-mode, IndieWeb, Fediverse, Agora make this possible for me.\nAlso on: social.coop" }, "post-type": "note", "_id": "24685261", "_source": "1895", "_is_read": true }
{ "type": "entry", "author": { "name": "fluffy", "url": "http://beesbuzz.biz/", "photo": null }, "url": "http://beesbuzz.biz/blog/1327-Some-thoughts-on-comments-and-interaction", "published": "2021-10-24T23:10:07-07:00", "content": { "html": "<p>Recently I\u2019ve been thinking a lot about some of the differences between self-hosted vs. silo spaces. One thing that really stood out to me is that in self-hosted spaces, the tendency is to allow complete control over which comments are visible, and silos almost never allow that, or if they do it\u2019s <em>at best</em> an in-retrospect thing.</p><p>For example, most self-hosted blogging systems give you the ability to moderate all comments (as I do), or give easy access to deleting comments which got posted, or any number of mechanisms for curating the community.</p><p>But most silo systems don\u2019t give you that access; you might be able to block recurring trolls, or flag a comment for third-party review (usually to no effect), but all posts are set to allow anyone (with access to the post) the ability to post anything at any time, and by default everything gets floated to everyone else.</p><p>This came especially to mind today because of this unfortunate video:</p>\n\n<p>I\u2019ve seen so many creators get burned out on what they like doing, because even if 99% of the comments are positive, that 1% really gets under their skin, and they stop creating.</p><p>I\u2019ve seen so many creators get burned out on their communities, because even if 99% of it is positive, that 1% really gets under their skin, and they stop interacting with the community, turning it into a toxic cesspool.</p><p>I\u2019ve seen so many creators decide to capitulate to the communities and set up a personal SubReddit that they designate other people to moderate, just to keep it contained somewhere else.</p><p>I know so many creators who are on the verge of burnout and getting really tired of the dark side of having an audience.</p><p>I\u2019m not sure if giving people the ability to require commentary to be opt-in rather than opt-out would solve these problems, but I do know anecdotally that the random snipe-type responses I get from Twitter or Mastodon are way more annoying to me than the comments I opt not to post when submitted to my site. They\u2019re <em>out there</em> and visible and I have to take extra steps to get rid of them, and it\u2019s taken out of my hands as to whether I even <em>can</em> get rid of them.</p><p>I don\u2019t think I like how webmention works.</p>\n\n\n<p>Preemptive clarifications:</p>\n<ul><li>Yes, even without webmention folks can post public acknowledgement/responses to my blog entries on their own sites</li>\n<li>Webmention itself doesn\u2019t indicate anything about how it should be displayed on my site, or if it should be displayed at all; it\u2019s just a notification mechanism</li>\n<li>My point is just that if webmentions ever get overwhelming, I\u2019m gonna just like\u2026 stop displaying them. Or at least finally write an endpoint that works <a href=\"http://beesbuzz.biz/blog/6982-My-webmention-endpoint-wish-list\">the way I want it to</a>.</li>\n</ul><p><a href=\"http://beesbuzz.biz/blog/1327-Some-thoughts-on-comments-and-interaction#comments\">comments</a></p>", "text": "Recently I\u2019ve been thinking a lot about some of the differences between self-hosted vs. silo spaces. One thing that really stood out to me is that in self-hosted spaces, the tendency is to allow complete control over which comments are visible, and silos almost never allow that, or if they do it\u2019s at best an in-retrospect thing.For example, most self-hosted blogging systems give you the ability to moderate all comments (as I do), or give easy access to deleting comments which got posted, or any number of mechanisms for curating the community.But most silo systems don\u2019t give you that access; you might be able to block recurring trolls, or flag a comment for third-party review (usually to no effect), but all posts are set to allow anyone (with access to the post) the ability to post anything at any time, and by default everything gets floated to everyone else.This came especially to mind today because of this unfortunate video:\n\nI\u2019ve seen so many creators get burned out on what they like doing, because even if 99% of the comments are positive, that 1% really gets under their skin, and they stop creating.I\u2019ve seen so many creators get burned out on their communities, because even if 99% of it is positive, that 1% really gets under their skin, and they stop interacting with the community, turning it into a toxic cesspool.I\u2019ve seen so many creators decide to capitulate to the communities and set up a personal SubReddit that they designate other people to moderate, just to keep it contained somewhere else.I know so many creators who are on the verge of burnout and getting really tired of the dark side of having an audience.I\u2019m not sure if giving people the ability to require commentary to be opt-in rather than opt-out would solve these problems, but I do know anecdotally that the random snipe-type responses I get from Twitter or Mastodon are way more annoying to me than the comments I opt not to post when submitted to my site. They\u2019re out there and visible and I have to take extra steps to get rid of them, and it\u2019s taken out of my hands as to whether I even can get rid of them.I don\u2019t think I like how webmention works.\n\n\nPreemptive clarifications:\nYes, even without webmention folks can post public acknowledgement/responses to my blog entries on their own sites\nWebmention itself doesn\u2019t indicate anything about how it should be displayed on my site, or if it should be displayed at all; it\u2019s just a notification mechanism\nMy point is just that if webmentions ever get overwhelming, I\u2019m gonna just like\u2026 stop displaying them. Or at least finally write an endpoint that works the way I want it to.\ncomments" }, "name": "fluffy rambles: Some thoughts on comments and interaction", "post-type": "article", "_id": "24544063", "_source": "3782", "_is_read": true }
{ "type": "entry", "published": "2021-10-24T19:46:00+0100", "url": "https://www.jvt.me/mf2/2021/10/qj6yr/", "category": [ "rss", "personal-website", "indieweb", "blogging" ], "bookmark-of": [ "https://quakkels.com/posts/rss-is-wonderful/" ], "author": { "type": "card", "name": "Jamie Tanna", "url": "https://www.jvt.me", "photo": "https://www.jvt.me/img/profile.png" }, "post-type": "bookmark", "_id": "24535713", "_source": "2169", "_is_read": true }
{ "type": "entry", "published": "2021-10-21 14:15-0700", "url": "https://gregorlove.com/2021/10/check-meta-headers-for-http-status/", "syndication": [ "https://github.com/gRegorLove/ProcessWire-Webmention/issues/25" ], "in-reply-to": [ "https://github.com/gRegorLove/ProcessWire-Webmention/issues" ], "name": "Check meta headers for HTTP Status", "content": { "text": "#indieweb-dev chat reminded me that HTTP Status can be returned in <meta> tags. Verify and test that this module can handle that scenario.", "html": "<p><a href=\"https://chat.indieweb.org/dev/2021-10-21#t1634847014060400\">#indieweb-dev chat</a> reminded me that HTTP Status can be returned in <meta> tags. Verify and test that this module can handle that scenario.</p>" }, "author": { "type": "card", "name": "gRegor Morrill", "url": "https://gregorlove.com/", "photo": "https://gregorlove.com/site/assets/files/3473/profile-2016-med.jpg" }, "post-type": "reply", "_id": "24473066", "_source": "95", "_is_read": true }
Say you’re into the indie web without saying you’re into the indie web…
The internet wasn’t really convenient in 1994 or 1995, but it was a very collaborative space.
There was a moment where we replaced this idea of the internet being a medium that we can all write to and participate in to one that is mediated. That happened at some point after social networks started to arrive and when the smartphone started to arrive. It’s a combination of the nature of those platforms and the prevalence of the technologies, which meant the economic rewards of getting this right rose significantly.
And so there’s a really distinctly different feel in the 2013, or 2014, internet to the one that you might have had in 1997, or 1998. It’s not just that it’s easier and I’m yearning for a world of cars with manual choke and manual transmission and crank-up starter handles, but it’s that the programmability of the internet and its endpoints has turned into something that is increasingly permissioned by major platforms.
{ "type": "entry", "published": "2021-10-20T20:37:51Z", "url": "https://adactio.com/links/18545", "category": [ "indieweb", "platforms", "publishing", "decentralisation", "silos", "regulation", "governance", "facebook" ], "bookmark-of": [ "https://restofworld.org/2021/conversation-with-azeem-azhar-exponential-age/" ], "content": { "text": "\u201cThe internet wasn\u2019t designed to breach national boundaries\u201d - Rest of World\n\n\n\nSay you\u2019re into the indie web without saying you\u2019re into the indie web\u2026\n\n\n The internet wasn\u2019t really convenient in 1994 or 1995, but it was a very collaborative space. \n \n There was a moment where we replaced this idea of the internet being a medium that we can all write to and participate in to one that is mediated. That happened at some point after social networks started to arrive and when the smartphone started to arrive. It\u2019s a combination of the nature of those platforms and the prevalence of the technologies, which meant the economic rewards of getting this right rose significantly.\n \n And so there\u2019s a really distinctly different feel in the 2013, or 2014, internet to the one that you might have had in 1997, or 1998. It\u2019s not just that it\u2019s easier and I\u2019m yearning for a world of cars with manual choke and manual transmission and crank-up starter handles, but it\u2019s that the programmability of the internet and its endpoints has turned into something that is increasingly permissioned by major platforms.", "html": "<h3>\n<a class=\"p-name u-bookmark-of\" href=\"https://restofworld.org/2021/conversation-with-azeem-azhar-exponential-age/\">\n\u201cThe internet wasn\u2019t designed to breach national boundaries\u201d - Rest of World\n</a>\n</h3>\n\n<p>Say you\u2019re into the indie web without saying you\u2019re into the indie web\u2026</p>\n\n<blockquote>\n <p>The internet wasn\u2019t really convenient in 1994 or 1995, but it was a very collaborative space. </p>\n \n <p>There was a moment where we replaced this idea of the internet being a medium that we can all write to and participate in to one that is mediated. That happened at some point after social networks started to arrive and when the smartphone started to arrive. It\u2019s a combination of the nature of those platforms and the prevalence of the technologies, which meant the economic rewards of getting this right rose significantly.</p>\n \n <p>And so there\u2019s a really distinctly different feel in the 2013, or 2014, internet to the one that you might have had in 1997, or 1998. It\u2019s not just that it\u2019s easier and I\u2019m yearning for a world of cars with manual choke and manual transmission and crank-up starter handles, but it\u2019s that the programmability of the internet and its endpoints has turned into something that is increasingly permissioned by major platforms. </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": "24442821", "_source": "2", "_is_read": true }
Seems like a fun way of catching up with some IndieWeb folks!
{ "type": "entry", "published": "2021-10-19T19:38:25-0400", "rsvp": "maybe", "url": "https://martymcgui.re/2021/10/19/193825/", "in-reply-to": [ "https://events.indieweb.org/2021/10/indieweb-friday-funday-halloween-edition-jlycDSXyQ8UL" ], "content": { "text": "I'm interested.Seems like a fun way of catching up with some IndieWeb folks!", "html": "I'm interested.<p>Seems like a fun way of catching up with some IndieWeb folks!</p>" }, "author": { "type": "card", "name": "Marty McGuire", "url": "https://martymcgui.re/", "photo": "https://martymcgui.re/images/logo.jpg" }, "post-type": "rsvp", "refs": { "https://events.indieweb.org/2021/10/indieweb-friday-funday-halloween-edition-jlycDSXyQ8UL": { "type": "entry", "summary": "What's Friday Funday?", "url": "https://events.indieweb.org/2021/10/indieweb-friday-funday-halloween-edition-jlycDSXyQ8UL", "photo": [ "https://res.cloudinary.com/schmarty/image/fetch/w_960,c_fill/https://events.indieweb.org/storage/events/20211016-KJKJeVsEv4uMPg5Y88PsOtBT7SyKOF.jpg" ], "name": "IndieWeb Friday Funday - Halloween Edition", "author": { "type": "card", "name": "events.indieweb.org", "url": "http://events.indieweb.org", "photo": null }, "post-type": "photo" } }, "_id": "24419640", "_source": "175", "_is_read": true }
{ "type": "entry", "published": "2021-10-18 16:31-0700", "url": "http://tantek.com/2021/291/b1/bridgy-backfeed-reacji-on-comments", "in-reply-to": [ "https://github.com/snarfed/bridgy/issues" ], "name": "Feature request: Bridgy backfeed reacjis on POSSEd comments", "content": { "text": "In \nBridgy backfeed documentation it says \"Bridgy detects and sends webmentions for \u2026 GitHub comments and emoji reactions on your issues and pull requests\" which would seem to imply that Bridgy does not yet send webmentions for emoji reactions (reacjis) on POSSEd comments on GitHub issues and pull requests, e.g. the reacjis on \nthis comment POSSEd by Bridgy.\n\nAccording to \nGitHub API docs: List reactions for an issue comment \nit looks like this information is available in the GitHub API. It would be great if Bridgy could add support for backfeeding reacjis on POSSEd comments! Thanks for your consideration.", "html": "<p>\nIn \n<a href=\"https://brid.gy/about#which\">Bridgy backfeed documentation</a> it says \"Bridgy detects and sends webmentions for \u2026 GitHub comments and emoji reactions on your issues and pull requests\" which would seem to imply that Bridgy does not yet send webmentions for emoji reactions (reacjis) on POSSEd <em>comments</em> on GitHub issues and pull requests, e.g. the reacjis on \n<a href=\"https://github.com/mozilla/standards-positions/issues/453#issuecomment-888225596\">this comment POSSEd by Bridgy</a>.\n</p>\n<p>According to \n<a href=\"https://docs.github.com/en/rest/reference/reactions#list-reactions-for-an-issue-comment\">GitHub API docs: List reactions for an issue comment</a> \nit looks like this information is available in the GitHub API. It would be great if Bridgy could add support for backfeeding reacjis on POSSEd comments! Thanks for your consideration.\n</p>" }, "author": { "type": "card", "name": "Tantek \u00c7elik", "url": "http://tantek.com/", "photo": "https://aperture-media.p3k.io/tantek.com/acfddd7d8b2c8cf8aa163651432cc1ec7eb8ec2f881942dca963d305eeaaa6b8.jpg" }, "post-type": "reply", "refs": { "https://github.com/snarfed/bridgy/issues": { "type": "entry", "url": "https://github.com/snarfed/bridgy/issues", "name": "GitHub project \u201cbridgy\u201d", "post-type": "article" } }, "_id": "24393073", "_source": "1", "_is_read": true }
{ "type": "entry", "published": "2021-03-08 12:21-0800", "url": "http://tantek.com/2021/067/t1/last-year-last-times", "category": [ "IndieWeb" ], "content": { "text": "Last year last times:\nMar 2\n* lunch with co-workers\nMar 4\n* bus ride\n* in the office\n* #IndieWeb HWC @MozSF tantek.com/b/5BX1\n* train ride\nMar 5\n* haircut\n* indoor yoga @YogaFlowSF\nMar 7 \n* movie @AMCTheatres (Knives Out)\n& @Benihana for nephew1 bday", "html": "Last year last times:<br />Mar 2<br />* lunch with co-workers<br />Mar 4<br />* bus ride<br />* in the office<br />* #<span class=\"p-category\">IndieWeb</span> HWC <a class=\"h-cassis-username\" href=\"https://twitter.com/MozSF\">@MozSF</a> <a href=\"http://tantek.com/b/5BX1\">tantek.com/b/5BX1</a><br />* train ride<br />Mar 5<br />* haircut<br />* indoor yoga <a class=\"h-cassis-username\" href=\"https://twitter.com/YogaFlowSF\">@YogaFlowSF</a><br />Mar 7 <br />* movie <a class=\"h-cassis-username\" href=\"https://twitter.com/AMCTheatres\">@AMCTheatres</a> (Knives Out)<br />& <a class=\"h-cassis-username\" href=\"https://twitter.com/Benihana\">@Benihana</a> for nephew1 bday" }, "author": { "type": "card", "name": "Tantek \u00c7elik", "url": "http://tantek.com/", "photo": "https://aperture-media.p3k.io/tantek.com/acfddd7d8b2c8cf8aa163651432cc1ec7eb8ec2f881942dca963d305eeaaa6b8.jpg" }, "post-type": "note", "_id": "24393086", "_source": "1", "_is_read": true }
{ "type": "entry", "published": "2021-03-05 18:43-0800", "url": "http://tantek.com/2021/064/b1/one-year-since-homebrew-website-club", "featured": "https://fastly.4sqi.net/img/general/width960/476_qJUWdNuuOixrSpY_D3DMlHrFgi4oOr1BhQv5VK27d5Q.jpg", "syndication": [ "https://news.indieweb.org/en/tantek.com/2021/064/b1/one-year-since-homebrew-website-club" ], "name": "One Year Since The #IndieWeb Homebrew Website Club Met In Person And Other Last Times", "content": { "text": "March 2021 is the second March in a row where so many of us are still in countries & cities doing our best to avoid getting sick (or worse), slow the spread, and otherwise living very different lives than we did in the before times. Every day here forward will be an anniversary of sorts for an unprecedented event, experience, change, or loss. Or the last time we did something. Rather than ignore them, it\u2019s worth remembering what we had, what we used to do, both appreciating what we have lost (allowing ourselves to mourn), and considering potential upsides of adaptations we have made.\n\n\nA year ago yesterday (2020-03-04) we hosted the last \nin-person Homebrew Website Club meetups \nin \nNottingham \n(by Jamie Tanna in a caf\u00e9)\nand \nSan Francisco \n(by me at Mozilla).\n\n\nNormally I go into the office on Wednesdays but I had worked from home that morning. I took the bus (#5736) inbound to work in the afternoon, the last time I rode a bus. I setup a laptop on the podium in the main community room to show demos on the displays as usual.\n\n\nAround 17:34 we kicked off our local Homebrew Website Club meetup with four of us which grew to seven before we took a photo. As usual we took turns \ntaking notes in IRC during the meetup as participants demonstrated their websites, something new they had gotten working, ideas being developed, or inspiring independent websites they\u2019d found. \n\nCan you see the joy (maybe with a little goofiness, a little seriousness) in our faces?\n\n\n\nWe wrapped up the meeting, and as usual a few (or in this case two) of us decided to grab a bite and keep chatting. I did not even consider the possibility that it would be the last time I would see my office for over a year (still haven\u2019t been back), and left my desk upstairs in whatever condition it happened to be. I remember thinking I\u2019d likely be back in a couple days.\n\n\nWe walked a few blocks to Super Duper Burgers on Mission near Spear. That would be the last time I went to that Super Duper Burgers. Glad I decided to indulge in a chocolate milkshake.\n\n\n\nAfterwards Katherine and I went to the Embarcadero MUNI station and took the outbound MUNI N-Judah light rail. I distinctly remember noticing people were quieter than usual on the train. There was a palpable sense of increased anxiety.\n\n\n\nInstinctually I felt compelled to put on my mask, despite only two cases of Covid having been reported in San Francisco (of course now we know that it was already spreading, especially by the asymptomatic, undetected in the community). Later that night the \ntotal reported would be 6.\n\n\nYes I was carrying a mask in March of 2020. Since the previous 2+ years of seasonal fires and subsequent unpredictable days of unbreathable smoke in the Bay Area, I\u2019ve traveled with a compact N-95 respirator in my backpack.\n\n\nSide note: the CDC had yet to recommend that people wear masks. However I had been reading and watching enough global media to know that the accepted practice and recommendation in the East was quite different. It seemed people in Taiwan, China, and Hong Kong were already regularly wearing masks (including N95 respirators) in close public quarters such as transit. Since \nSARS had hit those regions much harder \nthan the U.S. I figured they had learned from the experience and thus it made sense to follow their lead, not the CDC (which was already under pressure from a criminally incompetent neglectful administration to not scare people). Turned out my instinct (and analysis and conclusions based on watching & reading global behaviors) was more correct than the U.S. CDC at the time (they eventually got there).\n\n\nShortly after the train doors closed I donned my mask and checked the seals. The other useful advantage of a properly fitted N95 is that it won\u2019t (shouldn\u2019t) let in any funky public transit smells (perfume, patchouli, or worse), like none of it. No one blinked at seeing someone put on a mask.\n\n\nWe reached our disembarkation stop and stepped off. I put my mask away. We hugged and said our goodbyes. Didn\u2019t think it would be the last time I\u2019d ride MUNI light rail. Or hug a friend without a second thought.\n\n\nAlso posted on IndieNews.", "html": "<p>\nMarch 2021 is the second March in a row where so many of us are still in countries & cities doing our best to avoid getting sick (or worse), slow the spread, and otherwise living very different lives than we did in the before times. Every day here forward will be an anniversary of sorts for an unprecedented event, experience, change, or loss. Or the last time we did something. Rather than ignore them, it\u2019s worth remembering what we had, what we used to do, both appreciating what we have lost (allowing ourselves to mourn), and considering potential upsides of adaptations we have made.\n</p>\n<p>\nA year ago yesterday (2020-03-04) we hosted the last \n<a href=\"https://events.indieweb.org/2020/03/04\">in-person Homebrew Website Club meetups</a> \nin \n<a href=\"https://events.indieweb.org/2020/03/homebrew-website-club-nottingham-FWdZAqhKZBnq\">Nottingham</a> \n(<a href=\"https://www.jvt.me/mf2/2020/02/qriob/\">by Jamie Tanna</a> in a caf\u00e9)\nand \n<a href=\"https://events.indieweb.org/2020/03/homebrew-website-club-san-francisco-KTBJlSw7JJKm\">San Francisco</a> \n(by me at <a href=\"https://wiki.mozilla.org/SF\">Mozilla</a>).\n</p>\n<p>\nNormally I go into the office on Wednesdays but I had worked from home that morning. I took the bus (#5736) inbound to work in the afternoon, the last time I rode a bus. I setup a laptop on the podium in the main community room to show demos on the displays as usual.\n</p>\n<p>\nAround 17:34 we kicked off our local Homebrew Website Club meetup with four of us which grew to seven before we took a photo. As usual we took turns \n<a href=\"https://chat.indieweb.org/2020-03-05#t1583372099486000\">taking notes in IRC</a> during the meetup as participants demonstrated their websites, something new they had gotten working, ideas being developed, or inspiring independent websites they\u2019d found. </p>\n<p>\nCan you see the joy (maybe with a little goofiness, a little seriousness) in our faces?\n<a href=\"https://events.indieweb.org/2020/03/homebrew-website-club-san-francisco-KTBJlSw7JJKm#photos\"><img class=\"u-featured\" src=\"https://aperture-media.p3k.io/fastly.4sqi.net/b4440473fe3ab4ddb27c7799ae83c4cc8d51303d97cce4ebd824c307af074dc9.jpg\" alt=\"Participants of HWC San Francisco pose in two rows in front of a large screen displaying an 80s style Homebrew Website Club logo in the commons room at Mozilla San Francisco.\" /></a>\n</p>\n<p>\nWe wrapped up the meeting, and as usual a few (or in this case two) of us decided to grab a bite and keep chatting. I did not even consider the possibility that it would be the last time I would see my office for over a year (still haven\u2019t been back), and left my desk upstairs in whatever condition it happened to be. I remember thinking I\u2019d likely be back in a couple days.\n</p>\n<p>\nWe walked a few blocks to Super Duper Burgers on Mission near Spear. That would be the last time I went to that Super Duper Burgers. Glad I decided to indulge in a chocolate milkshake.\n<a href=\"https://fastly.4sqi.net/img/general/original/476_6rKnpO8ESoeRf8WsiSIBEa_j7TvhDNVvtZm7BVT0p60.jpg\"><img src=\"https://aperture-media.p3k.io/fastly.4sqi.net/af4efa45a510e349e56e5cfe590679e265dfb490e1efc7901355bc7145a82f8b.jpg\" alt=\"veggie burger, chocolate milkshake with an unopened straw on top, and a small container of kethcup on a tray with napkins\" /></a>\n</p>\n<p>\nAfterwards Katherine and I went to the Embarcadero MUNI station and took the outbound MUNI N-Judah light rail. I distinctly remember noticing people were quieter than usual on the train. There was a palpable sense of increased anxiety.\n<a href=\"https://fastly.4sqi.net/img/general/original/476_qDEijUuizENp3pKrOcO153YlwZowtIm857nysyIq_JQ.jpg\"><img src=\"https://aperture-media.p3k.io/fastly.4sqi.net/c800da5e8bfb62a17a0e874bb1884df173b5bab99d06de2299b20db9005608f6.jpg\" alt=\"Underground in the Embarcadero MUNI rail station, dirty rafters above with pipes along the far wall, etched with a diagonal geometric design, covered with a series of five panels of advertising, a portion of track visible below in the lower left corner.\" /></a>\n</p>\n<p>\nInstinctually I felt compelled to put on my mask, despite only two cases of Covid having been reported in San Francisco (of course now we know that it was already spreading, especially by the asymptomatic, undetected in the community). Later that night the \n<a href=\"https://en.wikipedia.org/wiki/Template:COVID-19_pandemic_data/United_States/California/San_Francisco_County_medical_cases_chart\">total reported would be 6</a>.\n</p>\n<p>\nYes I was carrying a mask in March of 2020. Since the previous 2+ years of seasonal fires and subsequent unpredictable days of unbreathable smoke in the Bay Area, I\u2019ve traveled with a compact N-95 respirator in my backpack.\n</p>\n<p>\nSide note: the CDC had yet to recommend that people wear masks. However I had been reading and watching enough global media to know that the accepted practice and recommendation in the East was quite different. It seemed people in Taiwan, China, and Hong Kong were already regularly wearing masks (including N95 respirators) in close public quarters such as transit. Since \n<a href=\"https://en.wikipedia.org/wiki/Severe_acute_respiratory_syndrome#Epidemiology\">SARS had hit those regions much harder</a> \nthan the U.S. I figured they had learned from the experience and thus it made sense to follow their lead, not the CDC (which was already under pressure from a criminally incompetent neglectful administration to not scare people). Turned out my instinct (and analysis and conclusions based on watching & reading global behaviors) was more correct than the U.S. CDC at the time (they eventually got there).\n</p>\n<p>\nShortly after the train doors closed I donned my mask and checked the seals. The other useful advantage of a properly fitted N95 is that it won\u2019t (shouldn\u2019t) let in any funky public transit smells (perfume, patchouli, or worse), like none of it. No one blinked at seeing someone put on a mask.\n</p>\n<p>\nWe reached our disembarkation stop and stepped off. I put my mask away. We hugged and said our goodbyes. Didn\u2019t think it would be the last time I\u2019d ride MUNI light rail. Or hug a friend without a second thought.\n</p>\n<p>\n<a href=\"https://news.indieweb.org/en/tantek.com/2021/064/b1/one-year-since-homebrew-website-club\" class=\"u-syndication\">Also posted on IndieNews</a>.\n</p>" }, "author": { "type": "card", "name": "Tantek \u00c7elik", "url": "http://tantek.com/", "photo": "https://aperture-media.p3k.io/tantek.com/acfddd7d8b2c8cf8aa163651432cc1ec7eb8ec2f881942dca963d305eeaaa6b8.jpg" }, "post-type": "article", "_id": "24393087", "_source": "1", "_is_read": true }
{ "type": "entry", "published": "2021-02-20 14:37-0800", "url": "http://tantek.com/2021/051/b1/life-happens", "syndication": [ "https://news.indieweb.org/en/tantek.com/2021/051/b1/life-happens" ], "name": "Life Happens: Towards Community Support For Prioritizing Life Events And Mutual Care, Starting With The #IndieWeb", "content": { "text": "Foreword\n\nA couple of weeks ago I noticed one of our newer IndieWeb community participants found an example on the IndieWeb wiki that no longer worked, and it was from someone who hasn\u2019t been around for a while.\n\nI knew that person had various things come up in their personal life, thus left without warning, and was unable to maintain their site (with said example) as well. This wasn\u2019t the first time this has happened. I noted in our community chat that there were community care, repair, and supportiveness issues worth discussing, summarized with: \ntl;dr: life happens, and expressed a goal:\n\n\nI\u2019d like to figure out how we as a community can 1) provide support to folks who have \u201clife happens\u201d events and not feel \u201cguilty\u201d about being absent or abruptly having to stop participating, and 2) do \u201crepair\u201d on our pages in a kind and respectful way that doesn't exacerbate their guilt/shame, and ideally makes it clear they are welcome back any time\n\n\nWhat followed was my stream of consciousness and braindump on the subject matter, which after seeing it resonated with and being encouraged by several members of the community, I collected into an IndieWeb wiki page:\nlife happens. I\u2019m blogging most of what I wrote there because I think it\u2019s worth its own post and wanted to capture my thoughts & feelings on this matters while I remember the context.\n\n\n\u201cLife Happens\u201d is an acknowledgement that there are numerous things that people experience in their actual physical lives that suddenly take higher priority than nearly anything else (like participation in volunteer-based communities), and those communities (like the IndieWeb) should acknowledge, accept, and be supportive of community members experiencing such events.\n\nWhat Happens\n\nWhat kind of events? Off the top of my head I came up with several that I\u2019ve witnessed community members (including a few myself) experience, like:\n\n\ngetting married \u2014 not having experienced this myself, I can only imagine that for some folks it causes a priorities reset\n\n\nhaving a child \u2014 from what I've seen this pretty much causes nearly everything else that isn\u2019t essential to get dropped, acknowledging that there are many family shapes, without judgment of any\n\n\ngoing through a bad breakup or divorce \u2014 the trauma, depression etc. experienced can make you want to not show up for anything, sometimes not even get out of bed\n\n\nstarting a new job \u2014 that takes up all your time, and/or polices what you can say online, or where you may participate\n\n\nbecoming an essential caregiver \u2014 caring for an aging, sick, or critically ill parent, family member, or other person\n\n\nbuying a house \u2014 often associated with a shift in focus of personal project time \n(hat tip: Marty McGuire)\n\n\nhome repairs or renovations \u2014 similar to \u201cnew house\u201d project time, or urgent repairs. This is one that I\u2019ve been personally both \u201cdealing with\u201d and somewhat embracing since December 2019 (with maybe a few weeks off at times), due to an infrastructure failure the previous month, which turned into an inspired series of renovations\n\n\ndeath of a family member, friend, pet\n\n\u2026 more examples of \n how life happens on the wiki\n\nValues, People, and Making It Explicit\n\nWhen these things happen, as a community, I feel we should respond with kindness, support, and understanding when someone steps back from community participation or projects. We should not shame or guilt them in any way, and ideally act in such a way that welcomes their return whenever they are able to do so.\n\n\nMany projects (especially open source software) often talk about their \n\u201cbus factor\u201d (or more positively worded \u201clottery factor\u201d). However that framing focuses on the robustness of the project (or company) rather than those contributing to it. Right there in IndieWeb\u2019s motto is an encouragement to reframe: be a \u201cpeople-focused alternative to the corporate [\u2026]\u201d.\n\n\nThe point of \u201clife happens\u201d is to decenter the corporation or project when it comes to such matters, and instead focus on the good of the people in the community. Resiliency of humanity over resiliency of any particular project or organization.\n\n\nAdopting such values and practices explicitly is more robust than depending on accidental good faith or informal cultural support. Such emotional care should be the clearly written default, rather than something everyone has to notice and figure out on their own. I want to encourage more mutual care-taking as a form of community-based resiliency, and make it less work for folks experiencing \u201clife happens\u201d moments. Through such care, I believe you get actually sustainable community resiliency, without having to sacrifice or burn people out.\n\nAcknowledging Life Happens And You Should Take Care\n\nIt\u2019s important to communicate to community members, and especially new community members that a community believes in mutual care-taking. That yes, if and when \u201clife happens\u201d to you that:\n\nwe want you to take care of what you need to take care of\n\nyou are encouraged to prioritize those things most important to you, and that the community will not judge or shame you in any way\n\nyou should not feel guilty about being absent, or abruptly having to stop participating\n\nit is ok to ask for help in the community with any of your community projects or areas of participation, no matter what size or importance\n\nthe community will be here for you when you\u2019re able to and want to return\n\n\nIt\u2019s an incomplete & imperfect list, yet hopefully captures the values and general feeling of support. More suggestions welcome.\n\nHow to Help\n\nSimilarly, if you notice someone active in the community is missing, if you feel you know them well enough, you\u2019re encouraged to reach out and unobtrusively check on them, and ask (within your capacity) if there\u2019s anything you can do to help out with any community projects or areas of participation.\n\n\nThanks to \nChris Aldrich \nfor expanding upon \nHow to help and encouraging folks to Keep in mind that on top of these life changes and stresses, the need to make changes to social activities (like decreasing or ceasing participation in the IndieWeb community) can be an added additional compounding stress on top of the others. Our goal should be to mitigate this additional stress as much as possible.\n\nHow to Repair\n\nAbsence(s) from the community can result in shared resources or projects falling behind or breaking. It\u2019s important to provide guidance to the community with how to help repair such things, especially in a caring way without any shame or guilt. Speaking to a second person voice:\n\n\nYou might notice that one or more projects, wiki pages, or sections appear to be abandoned or in disrepair. This could be for any number of reasons, so it\u2019s best to ask about it in a \ndiscussion \nchannel to see if anyone knows what\u2019s going on. If it appears someone is missing (for any reason), you may do kind and respectful repairs on related pages \n(wikifying), \nin a manner that attempts to minimize or avoid any guilt or shame, and ideally makes it clear they are welcome back any time.\n\n\nIf you come across an \nIndieWeb Examples section on a page where the links either don\u2019t work (404, broken in some other way, or support appears to have been dropped), move that specific IndieWeb Example to a \u201cPast Examples\u201d section, and fix the links with Internet Archive versions, perhaps at a point in time of when the links were published (e.g. permalinks with dates in their paths), or by viewing history on the wiki page and determining when the broken links were added.\n\nEncouraging More Communities To Be Supportive When Life Happens\n\nWhen I shared these thoughts with the IndieWeb chat and wiki a couple of weeks ago, no one knew of any other open (source, standards, etc.) communities that had such an explicit \u201cLife Happens\u201d statement or otherwise explicitly captured such a sentiment.\n\n\nMy hope is that the IndieWeb community can set a good example here for making a community more humane and caring (rather than the \u201cjust work harder\u201d capitalist default, or quiet unemotional detached neglect of an abandoned GitHub repo).\n\n\nThat being said, we\u2019re definitely interested in knowing about other intentional creative communities with any similar explicit sentiments or statements of community care, especially those that acknowledge that members of a community may experience things which are more important to them than their participation in that community, and being supportive of that.\n\n\nThis blog post is a snapshot in time and my own expression, most of which is shared freely on the IndieWeb wiki.\n\n\nIf this kind of statement resonates with you and your communities, you\u2019re encouraged to write one of your own, borrowing freely from the latest (and CC0 licensed) version on the wiki: life happens. Attribution optional. Either way, let us know, as it would be great to collect other examples of communities with explicit \u201clife happens\u201d statements.\n\nThanks\n\nThanks to early feedback & review in chat from \nKevin Marks, \nJacky Alcine,\nAnthony Ciccarello, \nBen Werdm\u00fcller, and\ngRegor Morrill.\nOn the wiki page, thanks for\nexcellent additions from \nChris Aldrich, \nand proofreading & precise fixes from \nJeremy Cherfas. \nThanks for the kind tweets \nAna Rodrigues \nand \nBarry Frost.\n\n\nNow back to some current \u201clife happens\u201d things\u2026\n(also posted on IndieNews)\n\nResponses\n\nMurray Adcock on 2021-02-21:\nThere's a lot I like about the IndieWeb community, but one of the best elements is a constant determination to strive to be better. Their recent adoption of an official \"Life Happens\" policy is a great example. It's a commitment to recognise that, well, life happens and that being part of an online community, or volunteering time/effort, is never a requirement. That slipping out for a bit is not just okay, but encouraged, whatever the reason. And providing a framework for supporting individuals in the community to whom life is happening.\n\n\nKimberly Hirsh on 2021-03-28:\nBeing in a \u201clife happens\u201d moment myself (finishing my dissertation), I originally missed Tantek \u00c7elik\u2019s chat conversations & blog post about developing a \u201clife happens\u201d approach to community participation & care on the IndieWeb. I love this idea.", "html": "<h2>Foreword</h2>\n<p>\nA couple of weeks ago I noticed one of our newer IndieWeb community participants found an example on the IndieWeb wiki that no longer worked, and it was from someone who hasn\u2019t been around for a while.\n</p>\n<p>I knew that person had various things come up in their personal life, thus left without warning, and was unable to maintain their site (with said example) as well. This wasn\u2019t the first time this has happened. I noted in our community chat that there were community care, repair, and supportiveness issues worth discussing, summarized with: <br /><q>tl;dr: life happens</q>, and expressed a goal:\n</p>\n<blockquote><p>\nI\u2019d like to figure out how we as a community can 1) provide support to folks who have \u201clife happens\u201d events and not feel \u201cguilty\u201d about being absent or abruptly having to stop participating, and 2) do \u201crepair\u201d on our pages in a kind and respectful way that doesn't exacerbate their guilt/shame, and ideally makes it clear they are welcome back any time\n</p></blockquote>\n<p>\nWhat followed was my stream of consciousness and braindump on the subject matter, which after seeing it resonated with and being encouraged by several members of the community, I collected into an IndieWeb wiki page:\n<a href=\"https://indieweb.org/life_happens\">life happens</a>. I\u2019m blogging most of what I wrote there because I think it\u2019s worth its own post and wanted to capture my thoughts & feelings on this matters while I remember the context.\n</p>\n<p>\n\u201cLife Happens\u201d is an acknowledgement that there are numerous things that people experience in their actual physical lives that suddenly take higher priority than nearly anything else (like participation in volunteer-based communities), and those communities (like the IndieWeb) should acknowledge, accept, and be supportive of community members experiencing such events.\n</p>\n<h2>What Happens</h2>\n<p>\nWhat kind of events? Off the top of my head I came up with several that I\u2019ve witnessed community members (including a few myself) experience, like:\n</p>\n<ul><li>\n<strong>getting married</strong> \u2014 not having experienced this myself, I can only imagine that for some folks it causes a priorities reset\n</li>\n<li>\n<strong>having a child</strong> \u2014 from what I've seen this pretty much causes nearly everything else that isn\u2019t essential to get dropped, acknowledging that there are many family shapes, without judgment of any\n</li>\n<li>\n<strong>going through a bad breakup or divorce</strong> \u2014 the trauma, depression etc. experienced can make you want to not show up for anything, sometimes not even get out of bed\n</li>\n<li>\n<strong>starting a new job</strong> \u2014 that takes up all your time, and/or polices what you can say online, or where you may participate\n</li>\n<li>\n<strong>becoming an essential caregiver</strong> \u2014 caring for an aging, sick, or critically ill parent, family member, or other person\n</li>\n<li>\n<strong>buying a house</strong> \u2014 often associated with a shift in focus of personal project time \n(hat tip: <a class=\"h-card\" href=\"https://martymcgui.re/\">Marty McGuire</a>)\n</li>\n<li>\n<strong>home repairs or renovations</strong> \u2014 similar to \u201cnew house\u201d project time, or urgent repairs. This is one that I\u2019ve been personally both \u201cdealing with\u201d and somewhat embracing since December 2019 (with maybe a few weeks off at times), due to an infrastructure failure the previous month, which turned into an inspired series of renovations\n</li>\n<li>\n<strong>death of a family member, friend, pet</strong>\n</li>\n<li>\u2026 more examples of \n <a href=\"https://indieweb.org/life_happens#How_life_happens\">how life happens on the wiki</a>\n</li>\n</ul><h2>Values, People, and Making It Explicit</h2>\n<p>\nWhen these things happen, as a community, I feel we should respond with kindness, support, and understanding when someone steps back from community participation or projects. We should not shame or guilt them in any way, and ideally act in such a way that welcomes their return whenever they are able to do so.\n</p>\n<p>\nMany projects (especially open source software) often talk about their \n\u201c<a href=\"https://en.wikipedia.org/wiki/Bus_factor\">bus factor</a>\u201d (or more positively worded \u201clottery factor\u201d). However that framing focuses on the robustness of the project (or company) rather than those contributing to it. Right there in IndieWeb\u2019s motto is an encouragement to reframe: be a \u201cpeople-focused alternative to the corporate [\u2026]\u201d.\n</p>\n<p>\nThe point of \u201clife happens\u201d is to decenter the corporation or project when it comes to such matters, and instead focus on the good of the people in the community. Resiliency of humanity over resiliency of any particular project or organization.\n</p>\n<p>\nAdopting such values and practices explicitly is more robust than depending on accidental good faith or informal cultural support. Such emotional care should be the clearly written default, rather than something everyone has to notice and figure out on their own. I want to encourage more mutual care-taking as a form of community-based resiliency, and make it less work for folks experiencing \u201clife happens\u201d moments. Through such care, I believe you get actually sustainable community resiliency, without having to sacrifice or burn people out.\n</p>\n<h2>Acknowledging Life Happens And You Should Take Care</h2>\n<p>\nIt\u2019s important to communicate to community members, and especially new community members that a community believes in mutual care-taking. That yes, if and when \u201clife happens\u201d to you that:\n</p>\n<ul><li>we want you to take care of what you need to take care of\n</li>\n<li>you are encouraged to prioritize those things most important to you, and that the community will not judge or shame you in any way\n</li>\n<li>you should not feel guilty about being absent, or abruptly having to stop participating\n</li>\n<li>it is ok to ask for help in the community with any of your community projects or areas of participation, no matter what size or importance\n</li>\n<li>the community will be here for you when you\u2019re able to and want to return\n</li>\n</ul><p>\nIt\u2019s an incomplete & imperfect list, yet hopefully captures the values and general feeling of support. More <a href=\"https://indieweb.org/life_happens#Why\">suggestions welcome</a>.\n</p>\n<h2>How to Help</h2>\n<p>\nSimilarly, if you notice someone active in the community is missing, if you feel you know them well enough, you\u2019re encouraged to reach out and unobtrusively check on them, and ask (within your capacity) if there\u2019s anything you can do to help out with any community projects or areas of participation.\n</p>\n<p>\nThanks to \n<a class=\"h-card\" href=\"https://boffosocko.com/\">Chris Aldrich</a> \nfor expanding upon \n<a href=\"https://indieweb.org/life_happens#How_to_help\">How to help</a> and encouraging folks to <q>Keep in mind that on top of these life changes and stresses, the need to make changes to social activities (like decreasing or ceasing participation in the IndieWeb community) can be an added additional compounding stress on top of the others. Our goal should be to mitigate this additional stress as much as possible.</q>\n</p>\n<h2>How to Repair</h2>\n<p>\nAbsence(s) from the community can result in shared resources or projects falling behind or breaking. It\u2019s important to provide guidance to the community with how to help repair such things, especially in a caring way without any shame or guilt. Speaking to a second person voice:\n</p>\n<p>\nYou might notice that one or more projects, wiki pages, or sections appear to be abandoned or in disrepair. This could be for any number of reasons, so it\u2019s best to ask about it in a \n<a href=\"https://indieweb.org/discussion\">discussion</a> \nchannel to see if anyone knows what\u2019s going on. If it appears someone is missing (for any reason), you may do kind and respectful repairs on related pages \n(<a href=\"https://indieweb.org/wikify\">wikifying</a>), \nin a manner that attempts to minimize or avoid any guilt or shame, and ideally makes it clear they are welcome back any time.\n</p>\n<p>\nIf you come across an \n<a href=\"https://indieweb.org/IndieWeb_Examples\">IndieWeb Examples</a> section on a page where the links either don\u2019t work (404, broken in some other way, or support appears to have been dropped), move that specific IndieWeb Example to a \u201cPast Examples\u201d section, and fix the links with Internet Archive versions, perhaps at a point in time of when the links were published (e.g. permalinks with dates in their paths), or by viewing history on the wiki page and determining when the broken links were added.\n</p>\n<h2>Encouraging More Communities To Be Supportive When Life Happens</h2>\n<p>\nWhen I shared these thoughts with the IndieWeb chat and wiki a couple of weeks ago, no one knew of any other open (source, standards, etc.) communities that had such an explicit \u201cLife Happens\u201d statement or otherwise explicitly captured such a sentiment.\n</p>\n<p>\nMy hope is that the IndieWeb community can set a good example here for making a community more humane and caring (rather than the \u201cjust work harder\u201d capitalist default, or quiet unemotional detached neglect of an abandoned GitHub repo).\n</p>\n<p>\nThat being said, we\u2019re definitely interested in knowing about other intentional creative communities with any similar explicit sentiments or <strong>statements of community care</strong>, especially those that acknowledge that <strong>members of a community may experience things which are more important to them than their participation in that community</strong>, and being supportive of that.\n</p>\n<p>\nThis blog post is a snapshot in time and my own expression, most of which is shared freely on the IndieWeb wiki.\n</p>\n<p>\nIf this kind of statement resonates with you and your communities, you\u2019re encouraged to write one of your own, borrowing freely from the latest (and CC0 licensed) version on the wiki: <a href=\"https://indieweb.org/life_happens\">life happens</a>. Attribution optional. Either way, let us know, as it would be great to collect other examples of communities with explicit \u201clife happens\u201d statements.\n</p>\n<h2>Thanks</h2>\n<p>\nThanks to early feedback & review in chat from \n<a class=\"h-card\" href=\"https://kevinmarks.com/\">Kevin Marks</a>, \n<a class=\"h-card\" href=\"https://jacky.wtf/\">Jacky Alcine</a>,\n<a class=\"h-card\" href=\"https://www.ciccarello.me/\">Anthony Ciccarello</a>, \n<a class=\"h-card\" href=\"https://werd.io/\">Ben Werdm\u00fcller</a>, and\n<a class=\"h-card\" href=\"https://gregorlove.com/\">gRegor Morrill</a>.\nOn the wiki page, thanks for\nexcellent additions from \n<a class=\"h-card\" href=\"https://boffosocko.com/\">Chris Aldrich</a>, \nand proofreading & precise fixes from \n<a class=\"h-card\" href=\"https://jeremycherfas.net/\">Jeremy Cherfas</a>. \nThanks for the kind tweets \n<a class=\"h-cite\" href=\"https://twitter.com/ohhelloana/status/1362393194772762624\"><abbr title=\"Ana Rodrigues\u2019s tweet 2021-02-18\">Ana Rodrigues</abbr></a> \nand \n<a class=\"h-cite\" href=\"https://twitter.com/barryf/status/1362458632705740800\"><abbr title=\"Barry Frost\u2019s tweet 2021-02-18\">Barry Frost</abbr></a>.\n</p>\n<p>\nNow back to some current \u201clife happens\u201d things\u2026\n(<a href=\"https://news.indieweb.org/en/tantek.com/2021/051/b1/life-happens\" class=\"u-syndication\">also posted on IndieNews</a>)\n</p>\n<h2>Responses</h2>\n<ol><li class=\"u-comment h-cite\">\n<a class=\"u-author h-card\" href=\"https://theadhocracy.co.uk/\">Murray Adcock</a> on <a class=\"u-url dt-published\" href=\"https://theadhocracy.co.uk/note/life-happens/\">2021-02-21</a>:\n<p class=\"p-summary\">There's a lot I like about the IndieWeb community, but one of the best elements is a constant determination to strive to be better. Their recent adoption of an official \"Life Happens\" policy is a great example. It's a commitment to recognise that, well, life happens and that being part of an online community, or volunteering time/effort, is never a requirement. That slipping out for a bit is not just okay, but encouraged, whatever the reason. And providing a framework for supporting individuals in the community to whom life is happening.</p>\n</li>\n<li class=\"u-comment h-cite\">\n<a class=\"u-author h-card\" href=\"https://kimberlyhirsh.com/\">Kimberly Hirsh</a> on <a class=\"u-url dt-published\" href=\"https://kimberlyhirsh.com/2021/03/28/being-in-a.html\">2021-03-28</a>:\n<p class=\"p-summary\">Being in a \u201clife happens\u201d moment myself (finishing my dissertation), I originally missed Tantek \u00c7elik\u2019s chat conversations & blog post about developing a \u201clife happens\u201d approach to community participation & care on the IndieWeb. I love this idea.</p>\n</li>\n</ol>" }, "author": { "type": "card", "name": "Tantek \u00c7elik", "url": "http://tantek.com/", "photo": "https://aperture-media.p3k.io/tantek.com/acfddd7d8b2c8cf8aa163651432cc1ec7eb8ec2f881942dca963d305eeaaa6b8.jpg" }, "post-type": "article", "_id": "24393088", "_source": "1", "_is_read": true }
{ "type": "entry", "published": "2021-03-28 17:39-0700", "url": "http://tantek.com/2021/087/t4/essentially-all-you-have-to-do-is-trivializers", "category": [ "IndieWeb" ], "in-reply-to": [ "https://twitter.com/toddbarnard/status/1376331509548920846" ], "content": { "text": "@toddbarnard indeed.\n\nAlso mentioned in #IndieWeb chat^:\n\n\u201call you have to do is\u201d\n\u201cessentially\u201d\n\nStill looking for a category for these words/phrases.\n\nMaybe \u201ctrivializers\u201d?\n\n^https://chat.indieweb.org/2021-03-29#t1616977040780000", "html": "<a class=\"h-cassis-username\" href=\"https://twitter.com/toddbarnard\">@toddbarnard</a> indeed.<br /><br />Also mentioned in #<span class=\"p-category\">IndieWeb</span> chat^:<br /><br />\u201call you have to do is\u201d<br />\u201cessentially\u201d<br /><br />Still looking for a category for these words/phrases.<br /><br />Maybe \u201ctrivializers\u201d?<br /><br />^<a href=\"https://chat.indieweb.org/2021-03-29#t1616977040780000\">https://chat.indieweb.org/2021-03-29#t1616977040780000</a>" }, "author": { "type": "card", "name": "Tantek \u00c7elik", "url": "http://tantek.com/", "photo": "https://aperture-media.p3k.io/tantek.com/acfddd7d8b2c8cf8aa163651432cc1ec7eb8ec2f881942dca963d305eeaaa6b8.jpg" }, "post-type": "reply", "refs": { "https://twitter.com/toddbarnard/status/1376331509548920846": { "type": "entry", "url": "https://twitter.com/toddbarnard/status/1376331509548920846", "name": "@toddbarnard\u2019s tweet", "post-type": "article" } }, "_id": "24387066", "_source": "1", "_is_read": true }
{ "type": "entry", "published": "2021-03-25 17:49-0700", "url": "http://tantek.com/2021/084/t1/ownyourlinks-indieweb-github-redirect", "category": [ "OwnYourLinks", "IndieWeb" ], "content": { "text": "Minor #OwnYourLinks #IndieWeb trick I setup a while ago:\n\nTop level /github redirect to my profile so I can link to:\nhttps://tantek.com/github/cassis instead of linking to @Github directly.\n\nEnables eventual moving/selfhosting repos/issues without breaking links.", "html": "Minor #<span class=\"p-category\">OwnYourLinks</span> #<span class=\"p-category\">IndieWeb</span> trick I setup a while ago:<br /><br />Top level /github redirect to my profile so I can link to:<br /><a href=\"https://tantek.com/github/cassis\">https://tantek.com/github/cassis</a> instead of linking to <a class=\"h-cassis-username\" href=\"https://twitter.com/Github\">@Github</a> directly.<br /><br />Enables eventual moving/selfhosting repos/issues without breaking links." }, "author": { "type": "card", "name": "Tantek \u00c7elik", "url": "http://tantek.com/", "photo": "https://aperture-media.p3k.io/tantek.com/acfddd7d8b2c8cf8aa163651432cc1ec7eb8ec2f881942dca963d305eeaaa6b8.jpg" }, "post-type": "note", "_id": "24387071", "_source": "1", "_is_read": true }