Related: this is a really fun listen from Doug Belshaw. He discusses IndieWeb and the issues he sees with it.
Microcast #081 – Anarchy, Federation, and the IndieWeb
Doug has a preference for the Fediverse as an approach to an open web, and says the political philosophy of the IndieWeb is a type of right-libertarianism, because it lacks social equality, and without that it is just a focus on individual freedom.
My gut response is that I disagree of course. But it’s a great jumping off point for some thought and reflection…
Also on: social.coop
{
"type": "entry",
"author": {
"name": "Neil Mather",
"url": "https://doubleloop.net/",
"photo": null
},
"url": "https://doubleloop.net/2020/08/28/7109/",
"published": "2020-08-28T21:47:29+00:00",
"content": {
"html": "Related: this is a really fun listen from Doug Belshaw. He discusses IndieWeb and the issues he sees with it.\n<blockquote><p><a href=\"https://thoughtshrapnel.com/2020/01/01/microcast-81/\">Microcast #081 \u2013 Anarchy, Federation, and the IndieWeb</a></p></blockquote>\n\n<p>Doug has a preference for the Fediverse as an approach to an open web, and says the political philosophy of the IndieWeb is a type of right-libertarianism, because it lacks social equality, and without that it is just a focus on individual freedom.</p>\n<p>My gut response is that I disagree of course. But it\u2019s a great jumping off point for some thought and reflection\u2026</p>\nAlso on:<p><a href=\"https://social.coop/@neil/104769213095468630\"> social.coop</a></p>",
"text": "Related: this is a really fun listen from Doug Belshaw. He discusses IndieWeb and the issues he sees with it.\nMicrocast #081 \u2013 Anarchy, Federation, and the IndieWeb\n\nDoug has a preference for the Fediverse as an approach to an open web, and says the political philosophy of the IndieWeb is a type of right-libertarianism, because it lacks social equality, and without that it is just a focus on individual freedom.\nMy gut response is that I disagree of course. But it\u2019s a great jumping off point for some thought and reflection\u2026\nAlso on: social.coop"
},
"post-type": "note",
"_id": "14355225",
"_source": "1895",
"_is_read": true
}
{
"type": "entry",
"author": {
"name": "fluffy",
"url": "http://beesbuzz.biz/",
"photo": null
},
"url": "http://beesbuzz.biz/blog/3876-Incremental-progress",
"published": "2020-08-28T12:17:50-07:00",
"content": {
"html": "<p>Lately I\u2019ve been seeing a lot of criticism about the <a href=\"https://indieweb.org/\">IndieWeb</a> movement based on the notion that everything that comes out of it is biased towards people with technology privilege; that it\u2019s all well and good for people who know how to run a website to build their own thing, but that the vast majority of the Internet is made up of people who\u2019d have nowhere to begin. And that it follows that the IndieWeb movement is inherently flawed.</p><p>I agree with the issues of tech privilege and access, but I disagree with the conclusions.</p>\n\n\n<p>There are two major aspects to IndieWeb: making it possible for people to own their own data and Internet presence, and making the tools for this accessible. For the most part, the developers have, being developers, focused on the protocol side of things. There are so many amazing protocols which have come about from IndieWeb; in particular, <a href=\"https://indieweb.org/Webmention\">Webmention</a> and <a href=\"https://indieweb.org/microformats2\">mf2</a> form the backbone of the communications aspects, and <a href=\"https://indieweb.org/IndieAuth\">IndieAuth</a> forms a fundamental identity component.</p><p>There is <em>absolutely</em> a lot more that needs to be done. While it\u2019s getting <em>easier</em> for people to join in (via the <a href=\"https://wordpress.org/plugins/indieweb/\">IndieWeb WordPress plugin</a> or hosted services like <a href=\"https://micro.blog/\">micro.blog</a>), it still requires a lot of people to want to overcome the technical hump of joining in, as well as the loss of network effect around the locked-in major social networks (notably Facebook and Twitter). There\u2019s also still a distinct lack of availability of private posting; while I\u2019ve focused on that for my own tooling, it\u2019s not a core feature in any of the other IndieWeb publishing platforms that I know of, nor are there any reader mechanisms that yet support <a href=\"https://indieweb.org/IndieAuth_Ticket_Auth\">Ticket Auth</a>. Plus, there\u2019s also the overarching problem that IndieWeb more or less requires that people own their own domain name, which is also a major technical hurdle for people to overcome.</p><p>But none of this means that this work isn\u2019t worth doing! Building new things takes a lot of incremental process, especially when it comes from hobbyists who are trying to do, in their spare time, what major multi-billion companies have built with huge amounts of investment capital. As a result, much of it is itch-scratch software; we build the stuff that we need in the immediate term, and don\u2019t have the time, energy, or resources to build what makes things accessible.</p><p>To me, the ideal situation would be the commercial social networks embracing open interoperability standards, but I don\u2019t see that coming any time soon. Sure, Jack has <a href=\"https://www.theverge.com/2019/12/12/21012553/twitter-bluesky-decentralized-social-network-developers-reaction-mastodon-activitypub\">paid lip service to the idea</a> but so far hasn\u2019t actually shown any signs of actually wanting to participate in anything meaningful. There just isn\u2019t money in this.</p><p>What I\u2019d love to see more of is the easy-to-host blogging platforms like <a href=\"https://wordpress.com/\">hosted WordPress</a>, <a href=\"https://medium.com/\">Medium</a>, and <a href=\"https://tumblr.com/\">Tumblr</a> embrace these protocols; their power isn\u2019t in being a locked-in Entire Social Experience platform so much as in being places where people can post online and interact with other Internet users. They have other monetization strategies that make more sense than requiring complete lock-in. What\u2019s even better is that due to the nature of how IndieWeb protocols work, they don\u2019t even need to add any specific platform support for the vast majority of protocols; they just need people to be able to add various bits of HTML markup to their page templates. (Which is already allowed in varying forms by Tumblr and WordPress, at least!)</p><p>Anyway. All this is to say that IndieWeb people are, as a whole, very much aware of our respective privilege and we all want to get to a point where anyone can join in with as little friction and technical know-how as possible. Users of IndieWeb platforms shouldn\u2019t have to know anything about the different protocols in play; they should just be able to post, follow, and react and it should all Just Work. And there\u2019s absolutely a long way to go from here, but that\u2019s the sort of bridge we\u2019re trying to build.</p><p>Much of the criticism I see comes from people who want to focus on one particular aspect, like how certain outspoken IndieWeb-adjacent people (who aren\u2019t even part of IndieWeb and don\u2019t want to be!) have exclusionary codes of conduct, or how some of the earliest IndieWebCamp gathering photos are filled primarily with cis white men. Diversity is absolutely a problem in tech, but IndieWeb folks are, from my experience, absolutely doing what they can to rectify that; bringing in people from all sorts of backgrounds, trying to boost the minority voices, and being supportive of everyone who is trying to make the world, or at least the Internet, a better place.</p><p>Another form of criticism seems to come from people who are concern trolling about how difficult it is to get in right now, and because \u201c<Facebook|Google|Twitter> has won\u201d there\u2019s no point in even trying, privacy is dead, things are Just Too Hard. Or they might focus on the fact that we\u2019re building things on simple HTML-based structures and then strawman that into \u201cHTML frameworks are hard\u201d or \u201cbuilding a webpage is hard\u201d and like\u2026 that\u2019s skipping several levels of what\u2019s going on here. Yes, HTML <em>as it has evolved in corporate web stacks</em> is \u201chard,\u201d but that doesn\u2019t mean building HTML is hard, and just because we\u2019re HTML-focused doesn\u2019t mean people should have to touch HTML themselves in the first place. And we\u2019re also focused on keeping it simple and not being locked into a single framework or distribution mechanism or whatever, and we\u2019re <em>absolutely</em> avoiding things that require building things in terms of active JavaScript stuff.</p><p>Basically, while the criticism has a kernel of validity and possibly even comes from a good place, it always feels like it\u2019s heavily distorted in bad-faith ways, from people who seem to have an agenda against trying to improve things. I don\u2019t know if they\u2019re actively trying to maintain the status quo, but their rhetoric does a really good job of it all the same.</p><p>It\u2019s easier to criticize and tear down than to work to improve things.</p><p>Some analogies to consider:</p>\n<ul><li>Payments processing is hard. Therefore, nobody should try to build a new retail store; after all, Wal-Mart and Amazon exist already.</li>\n<li>Designing a building is hard. Therefore, nobody should even think about making their own house, and instead they should just move into pre-existing apartment buildings.</li>\n<li>Mass transit is less-than-perfect and electric cars don\u2019t have infinite range; therefore everyone should own a gas-powered SUV and drive themselves everywhere.</li>\n</ul><p>I\u2019d like to share this particularly good video by Tech Connections, about this tendency:</p>\n\n<p>Yes, things currently aren\u2019t perfect. But just because a solution isn\u2019t perfect, or still has a ways to go, doesn\u2019t mean it isn\u2019t worth taking steps in the right direction. You can\u2019t run a marathon in a single step.</p><p>Don\u2019t get caught up in the <a href=\"https://en.wikipedia.org/wiki/Nirvana_fallacy\">Nirvana fallacy</a>.</p>\n\n<p><a href=\"http://beesbuzz.biz/blog/3876-Incremental-progress#comments\">comments</a></p>",
"text": "Lately I\u2019ve been seeing a lot of criticism about the IndieWeb movement based on the notion that everything that comes out of it is biased towards people with technology privilege; that it\u2019s all well and good for people who know how to run a website to build their own thing, but that the vast majority of the Internet is made up of people who\u2019d have nowhere to begin. And that it follows that the IndieWeb movement is inherently flawed.I agree with the issues of tech privilege and access, but I disagree with the conclusions.\n\n\nThere are two major aspects to IndieWeb: making it possible for people to own their own data and Internet presence, and making the tools for this accessible. For the most part, the developers have, being developers, focused on the protocol side of things. There are so many amazing protocols which have come about from IndieWeb; in particular, Webmention and mf2 form the backbone of the communications aspects, and IndieAuth forms a fundamental identity component.There is absolutely a lot more that needs to be done. While it\u2019s getting easier for people to join in (via the IndieWeb WordPress plugin or hosted services like micro.blog), it still requires a lot of people to want to overcome the technical hump of joining in, as well as the loss of network effect around the locked-in major social networks (notably Facebook and Twitter). There\u2019s also still a distinct lack of availability of private posting; while I\u2019ve focused on that for my own tooling, it\u2019s not a core feature in any of the other IndieWeb publishing platforms that I know of, nor are there any reader mechanisms that yet support Ticket Auth. Plus, there\u2019s also the overarching problem that IndieWeb more or less requires that people own their own domain name, which is also a major technical hurdle for people to overcome.But none of this means that this work isn\u2019t worth doing! Building new things takes a lot of incremental process, especially when it comes from hobbyists who are trying to do, in their spare time, what major multi-billion companies have built with huge amounts of investment capital. As a result, much of it is itch-scratch software; we build the stuff that we need in the immediate term, and don\u2019t have the time, energy, or resources to build what makes things accessible.To me, the ideal situation would be the commercial social networks embracing open interoperability standards, but I don\u2019t see that coming any time soon. Sure, Jack has paid lip service to the idea but so far hasn\u2019t actually shown any signs of actually wanting to participate in anything meaningful. There just isn\u2019t money in this.What I\u2019d love to see more of is the easy-to-host blogging platforms like hosted WordPress, Medium, and Tumblr embrace these protocols; their power isn\u2019t in being a locked-in Entire Social Experience platform so much as in being places where people can post online and interact with other Internet users. They have other monetization strategies that make more sense than requiring complete lock-in. What\u2019s even better is that due to the nature of how IndieWeb protocols work, they don\u2019t even need to add any specific platform support for the vast majority of protocols; they just need people to be able to add various bits of HTML markup to their page templates. (Which is already allowed in varying forms by Tumblr and WordPress, at least!)Anyway. All this is to say that IndieWeb people are, as a whole, very much aware of our respective privilege and we all want to get to a point where anyone can join in with as little friction and technical know-how as possible. Users of IndieWeb platforms shouldn\u2019t have to know anything about the different protocols in play; they should just be able to post, follow, and react and it should all Just Work. And there\u2019s absolutely a long way to go from here, but that\u2019s the sort of bridge we\u2019re trying to build.Much of the criticism I see comes from people who want to focus on one particular aspect, like how certain outspoken IndieWeb-adjacent people (who aren\u2019t even part of IndieWeb and don\u2019t want to be!) have exclusionary codes of conduct, or how some of the earliest IndieWebCamp gathering photos are filled primarily with cis white men. Diversity is absolutely a problem in tech, but IndieWeb folks are, from my experience, absolutely doing what they can to rectify that; bringing in people from all sorts of backgrounds, trying to boost the minority voices, and being supportive of everyone who is trying to make the world, or at least the Internet, a better place.Another form of criticism seems to come from people who are concern trolling about how difficult it is to get in right now, and because \u201c<Facebook|Google|Twitter> has won\u201d there\u2019s no point in even trying, privacy is dead, things are Just Too Hard. Or they might focus on the fact that we\u2019re building things on simple HTML-based structures and then strawman that into \u201cHTML frameworks are hard\u201d or \u201cbuilding a webpage is hard\u201d and like\u2026 that\u2019s skipping several levels of what\u2019s going on here. Yes, HTML as it has evolved in corporate web stacks is \u201chard,\u201d but that doesn\u2019t mean building HTML is hard, and just because we\u2019re HTML-focused doesn\u2019t mean people should have to touch HTML themselves in the first place. And we\u2019re also focused on keeping it simple and not being locked into a single framework or distribution mechanism or whatever, and we\u2019re absolutely avoiding things that require building things in terms of active JavaScript stuff.Basically, while the criticism has a kernel of validity and possibly even comes from a good place, it always feels like it\u2019s heavily distorted in bad-faith ways, from people who seem to have an agenda against trying to improve things. I don\u2019t know if they\u2019re actively trying to maintain the status quo, but their rhetoric does a really good job of it all the same.It\u2019s easier to criticize and tear down than to work to improve things.Some analogies to consider:\nPayments processing is hard. Therefore, nobody should try to build a new retail store; after all, Wal-Mart and Amazon exist already.\nDesigning a building is hard. Therefore, nobody should even think about making their own house, and instead they should just move into pre-existing apartment buildings.\nMass transit is less-than-perfect and electric cars don\u2019t have infinite range; therefore everyone should own a gas-powered SUV and drive themselves everywhere.\nI\u2019d like to share this particularly good video by Tech Connections, about this tendency:\n\nYes, things currently aren\u2019t perfect. But just because a solution isn\u2019t perfect, or still has a ways to go, doesn\u2019t mean it isn\u2019t worth taking steps in the right direction. You can\u2019t run a marathon in a single step.Don\u2019t get caught up in the Nirvana fallacy.\n\ncomments"
},
"name": "Plaidophile: Incremental progress",
"post-type": "article",
"_id": "14352879",
"_source": "3782",
"_is_read": true
}
Diversity is absolutely a problem in tech, but IndieWeb folks are, from my experience, absolutely doing what they can to rectify that; bringing in people from all sorts of backgrounds, trying to boost the minority voices, and being supportive of everyone who is trying to make the world, or at least the Internet, a better place.
This is a really good article by Fluffy on the state of the IndieWeb and making it more accessible for wider adoption. Just because we’re not there yet, doesn’t mean that we’re not trying.
https://beesbuzz.biz/blog/3876-Incremental-progress
Also on: social.coop
{
"type": "entry",
"author": {
"name": "Neil Mather",
"url": "https://doubleloop.net/",
"photo": null
},
"url": "https://doubleloop.net/2020/08/28/7107/",
"published": "2020-08-28T19:46:05+00:00",
"content": {
"html": "<blockquote><p>Diversity is absolutely a problem in tech, but IndieWeb folks are, from my experience, absolutely doing what they can to rectify that; bringing in people from all sorts of backgrounds, trying to boost the minority voices, and being supportive of everyone who is trying to make the world, or at least the Internet, a better place.</p></blockquote>\n<p>This is a really good article by Fluffy on the state of the <a href=\"https://commonplace.doubleloop.net/indieweb.html\">IndieWeb</a> and making it more accessible for wider adoption. Just because we\u2019re not there yet, doesn\u2019t mean that we\u2019re not trying.</p>\n<p><a href=\"https://beesbuzz.biz/blog/3876-Incremental-progress\">https://beesbuzz.biz/blog/3876-Incremental-progress</a></p>\n\n\n\n\nAlso on:<p><a href=\"https://social.coop/@neil/104768731299250273\"> social.coop</a></p>",
"text": "Diversity is absolutely a problem in tech, but IndieWeb folks are, from my experience, absolutely doing what they can to rectify that; bringing in people from all sorts of backgrounds, trying to boost the minority voices, and being supportive of everyone who is trying to make the world, or at least the Internet, a better place.\nThis is a really good article by Fluffy on the state of the IndieWeb and making it more accessible for wider adoption. Just because we\u2019re not there yet, doesn\u2019t mean that we\u2019re not trying.\nhttps://beesbuzz.biz/blog/3876-Incremental-progress\n\n\n\n\nAlso on: social.coop"
},
"post-type": "note",
"_id": "14349347",
"_source": "1895",
"_is_read": true
}
{
"type": "entry",
"author": {
"name": "Neil Mather",
"url": "https://doubleloop.net/",
"photo": null
},
"url": "https://doubleloop.net/2020/08/28/i-haza-autonomy/",
"published": "2020-08-28T17:29:39+00:00",
"content": {
"html": "<p>Couple of IndieWeb links \u2013 a nice article by <a href=\"https://commonplace.doubleloop.net/20200828182233-ana.html\">Ana</a> on the <a href=\"https://commonplace.doubleloop.net/indieweb.html\">IndieWeb</a> as a space for online <a href=\"https://commonplace.doubleloop.net/20200721194732-autonomy.html\">autonomy</a>. <a href=\"https://www.smashingmagazine.com/2020/08/autonomy-online-indieweb/\">Autonomy Online: A Case For The IndieWeb</a></p>\n<p>It is on Smashing Magazine, so aimed at web developers building their own sites. For hosted IndieWeb services, where you get a site without needing to build it, I noticed that <a href=\"https://commonplace.doubleloop.net/20200828182550-malcolm.html\">Malcolm</a> has added a way to use Haza.Website without needing to register a domain straight away \u2013 <a href=\"https://no.haza.website/\">https://no.haza.website/</a>.</p>",
"text": "Couple of IndieWeb links \u2013 a nice article by Ana on the IndieWeb as a space for online autonomy. Autonomy Online: A Case For The IndieWeb\nIt is on Smashing Magazine, so aimed at web developers building their own sites. For hosted IndieWeb services, where you get a site without needing to build it, I noticed that Malcolm has added a way to use Haza.Website without needing to register a domain straight away \u2013 https://no.haza.website/."
},
"name": "I Haza Autonomy",
"post-type": "article",
"_id": "14349350",
"_source": "1895",
"_is_read": true
}
{
"type": "entry",
"published": "2020-08-28T16:29:37+00:00",
"url": "https://werd.io/2020/my-daily-writing-process",
"name": "My daily writing process",
"content": {
"text": "I've been writing at least a post a day during my short social media hiatus. Although I'm a little bit worried about flooding the folks who subscribe via email - it's occurred to me to limit the mailing list to a couple of days a week and send as a digest - I find it meditative. I tend to write first thing in the morning, right after reading through my feeds in Reeder. I compose on my iPad in markdown using iA Writer and then copy to my site using its \"copy as HTML\" function. iA Writer uses micropub, so theoretically I could publish directly, but I like the opportunity to read over the piece in context before I push the button.As I mentioned on Monday, I've been writing more fiction, which has mostly meant fleshing out a book in Scrivener. I've also been submitting some short stories for publication - my rejection-proof skin has been thickening steadily - and taking part in a few competitions. My round one piece for the NYC Midnight flash fiction challenge placed first in its group. To be honest, I needed the encouragement - and tonight I'll move on to round two with my head held high.I have an iPad Pro with a magic keyboard case, which is strictly for creative work. My work accounts are nowhere to be seen, and notifications are switched off across the board. You can't develop software on an iPad - at least, not really - and I don't use it for coding projects. It's just for writing and drawing. While the OS is locked down to the extent that Apple may be legally forced to open it up sometime soon, I find it makes for a pretty good distraction-free environment. It's one of the best gadget purchases I've ever made. (Who would have thought I'd be so bought into the Apple ecosystem a decade ago? Not me.)But even more importantly, cultivating the space to write and reflect has been an important habit for me. Like regular exercise and eating well, it sets me up for the rest of the day. In a world where we're expected to be always on and instantly reactive, some nearly-offline slow thinking time has proven to be a very good thing indeed. Getting that in first, over a cup of coffee while the morning is still quiet, has been lovely.",
"html": "<p>I've been writing at least a post a day during my short social media hiatus. Although I'm a little bit worried about flooding the folks who subscribe via email - it's occurred to me to limit the mailing list to a couple of days a week and send as a digest - I find it meditative. I tend to write first thing in the morning, right after reading through my feeds in <a href=\"https://reederapp.com/\">Reeder</a>. I compose on my iPad in markdown using <a href=\"https://ia.net/writer\">iA Writer</a> and then copy to my site using its \"copy as HTML\" function. iA Writer uses <a href=\"https://indieweb.org/Micropub\">micropub</a>, so theoretically I could publish directly, but I like the opportunity to read over the piece in context before I push the button.</p><p>As I mentioned on Monday, I've been <a href=\"https://werd.io/2020/another-day-in-hellsville\">writing more fiction</a>, which has mostly meant fleshing out a book in <a href=\"https://www.literatureandlatte.com/scrivener/overview\">Scrivener</a>. I've also been submitting some short stories for publication - my rejection-proof skin has been thickening steadily - and taking part in a few competitions. My round one piece for the <a href=\"http://www.nycmidnight.com/Competitions/FFC/Challenge.htm\">NYC Midnight flash fiction challenge</a> placed first in its group. To be honest, I needed the encouragement - and tonight I'll move on to round two with my head held high.</p><p>I have <a href=\"https://www.apple.com/ipad-pro/\">an iPad Pro</a> with <a href=\"https://www.apple.com/ipad-keyboards/\">a magic keyboard case</a>, which is strictly for creative work. My work accounts are nowhere to be seen, and notifications are switched off across the board. You can't develop software on an iPad - at least, not really - and I don't use it for coding projects. It's just for writing and drawing. While the OS is locked down to the extent that Apple may be legally forced to open it up sometime soon, I find it makes for a pretty good distraction-free environment. It's one of the best gadget purchases I've ever made. (Who would have thought I'd be so bought into the Apple ecosystem a decade ago? Not me.)</p><p>But even more importantly, cultivating the space to write and reflect has been an important habit for me. Like regular exercise and eating well, it sets me up for the rest of the day. In a world where we're expected to be always on and instantly reactive, some nearly-offline slow thinking time has proven to be a very good thing indeed. Getting that in first, over a cup of coffee while the morning is still quiet, has been lovely.</p>"
},
"author": {
"type": "card",
"name": "Ben Werdm\u00fcller",
"url": "https://werd.io/profile/benwerd",
"photo": "https://werd.io/file/5d388c5fb16ea14aac640912/thumb.jpg"
},
"post-type": "article",
"_id": "14346325",
"_source": "191",
"_is_read": true
}
I believe in the #webPlatform (#EngineDiversityAbsolutist)
And the web as *your platform* (#IndieWeb over #BigTech #socialMedia corporate web)
#webDeveloper @ohhelloana @smashingmag:
“Autonomy Online: A Case For The IndieWeb” https://www.smashingmagazine.com/2020/08/autonomy-online-indieweb/
{
"type": "entry",
"published": "2020-08-27 17:38-0700",
"url": "http://tantek.com/2020/240/t1/webplatform-web-as-platform-indieweb",
"category": [
"webPlatform",
"BigTech",
"socialMedia",
"webDeveloper"
],
"content": {
"text": "I believe in the #webPlatform (#EngineDiversityAbsolutist)\nAnd the web as *your platform* (#IndieWeb over #BigTech #socialMedia corporate web)\n\n#webDeveloper @ohhelloana @smashingmag:\n\u201cAutonomy Online: A Case For The IndieWeb\u201d https://www.smashingmagazine.com/2020/08/autonomy-online-indieweb/",
"html": "I believe in the #<span class=\"p-category\">webPlatform</span> (#EngineDiversityAbsolutist)<br />And the web as *your platform* (#IndieWeb over #<span class=\"p-category\">BigTech</span> #<span class=\"p-category\">socialMedia</span> corporate web)<br /><br />#<span class=\"p-category\">webDeveloper</span> <a class=\"h-cassis-username\" href=\"https://twitter.com/ohhelloana\">@ohhelloana</a> <a class=\"h-cassis-username\" href=\"https://twitter.com/smashingmag\">@smashingmag</a>:<br />\u201cAutonomy Online: A Case For The IndieWeb\u201d <a href=\"https://www.smashingmagazine.com/2020/08/autonomy-online-indieweb/\">https://www.smashingmagazine.com/2020/08/autonomy-online-indieweb/</a>"
},
"author": {
"type": "card",
"name": "Tantek \u00c7elik",
"url": "http://tantek.com/",
"photo": "https://aperture-media.p3k.io/tantek.com/acfddd7d8b2c8cf8aa163651432cc1ec7eb8ec2f881942dca963d305eeaaa6b8.jpg"
},
"post-type": "note",
"_id": "14330586",
"_source": "1",
"_is_read": true
}
{
"type": "entry",
"published": "2020-08-27T21:54:00+01:00",
"url": "https://www.jvt.me/mf2/2020/08/ebdoi/",
"category": [
"indieweb",
"personal-website"
],
"bookmark-of": [
"https://www.smashingmagazine.com/2020/08/autonomy-online-indieweb/"
],
"author": {
"type": "card",
"name": "Jamie Tanna",
"url": "https://www.jvt.me",
"photo": "https://www.jvt.me/img/profile.png"
},
"post-type": "bookmark",
"_id": "14326735",
"_source": "2169",
"_is_read": true
}
{
"type": "entry",
"published": "2020-08-27T13:06:54.01766-07:00",
"url": "https://v2.jacky.wtf/post/53b25db0-e163-40dd-8365-f304b1d4de1e",
"content": {
"text": "Autonomy Online: A Case For The IndieWeb https://www.smashingmagazine.com/2020/08/autonomy-online-indieweb/",
"html": "<p>Autonomy Online: A Case For The IndieWeb <a href=\"https://www.smashingmagazine.com/2020/08/autonomy-online-indieweb/\">https://www.smashingmagazine.com/2020/08/autonomy-online-indieweb/</a></p>"
},
"author": {
"type": "card",
"name": "",
"url": "https://v2.jacky.wtf",
"photo": null
},
"post-type": "note",
"_id": "14325632",
"_source": "1886",
"_is_read": true
}
This article at Smashing Magazine is a great introduction to the IndieWeb by Ana Rodrigues. Covers the principles, community, and tech building blocks. Perfectly captures the “why” of owning your own content and blogging.
{
"type": "entry",
"author": {
"name": "Manton Reece",
"url": "https://www.manton.org/",
"photo": "https://micro.blog/manton/avatar.jpg"
},
"url": "https://www.manton.org/2020/08/27/this-article-at.html",
"content": {
"html": "<p>This article at Smashing Magazine is a <a href=\"https://www.smashingmagazine.com/2020/08/autonomy-online-indieweb/\">great introduction to the IndieWeb</a> by Ana Rodrigues. Covers the principles, community, and tech building blocks. Perfectly captures the \u201cwhy\u201d of owning your own content and blogging.</p>",
"text": "This article at Smashing Magazine is a great introduction to the IndieWeb by Ana Rodrigues. Covers the principles, community, and tech building blocks. Perfectly captures the \u201cwhy\u201d of owning your own content and blogging."
},
"published": "2020-08-27T14:42:34-05:00",
"post-type": "note",
"_id": "14325223",
"_source": "12",
"_is_read": true
}
A wonderful introduction to the indie web—Ana really conveys her sense of excitement!
{
"type": "entry",
"published": "2020-08-27T14:25:15Z",
"url": "https://adactio.com/links/17339",
"category": [
"indieweb",
"independent",
"publishing",
"ownership",
"posse",
"webmentions",
"syndication",
"personal",
"smashingmag",
"blogs",
"blogging"
],
"bookmark-of": [
"https://www.smashingmagazine.com/2020/08/autonomy-online-indieweb/"
],
"content": {
"text": "Autonomy Online: A Case For The IndieWeb \u2014 Smashing Magazine\n\n\n\nA wonderful introduction to the indie web\u2014Ana really conveys her sense of excitement!",
"html": "<h3>\n<a class=\"p-name u-bookmark-of\" href=\"https://www.smashingmagazine.com/2020/08/autonomy-online-indieweb/\">\nAutonomy Online: A Case For The IndieWeb \u2014 Smashing Magazine\n</a>\n</h3>\n\n<p>A wonderful introduction to the indie web\u2014Ana really conveys her sense of excitement!</p>"
},
"author": {
"type": "card",
"name": "Jeremy Keith",
"url": "https://adactio.com/",
"photo": "https://adactio.com/images/photo-150.jpg"
},
"post-type": "bookmark",
"_id": "14318197",
"_source": "2",
"_is_read": true
}
Discussing the options available for posts that require authentication while using a static site, using my own personal requirements.
{
"type": "entry",
"published": "2020-08-26 22:08:28 +0100 +0100",
"summary": "Discussing the options available for posts that require authentication while using a static site, using my own personal requirements.",
"url": "https://www.jvt.me/posts/2020/08/26/static-site-private-posts/",
"category": [
"www.jvt.me",
"indieweb",
"indieauth",
"micropub",
"www-private.jvt.me"
],
"name": "Investigating Solutions for Private/Friends-Only Posts on a Static Website",
"author": {
"type": "card",
"name": "Jamie Tanna",
"url": "https://www.jvt.me",
"photo": "https://www.jvt.me/img/profile.png"
},
"post-type": "article",
"_id": "14301286",
"_source": "2169",
"_is_read": true
}
Roel asked if there was a post detailing how I set up the posting form. There is now...
Firstly, I've slimmed down the form a bit further by adding placeholder values rather than labels and adjusting the spacing. It now takes up less room at the top of the page. I've also added a toggle to show/hide the form with a quick bit of JavaScript and CSS.
So, how does it work?
It's all relatively straightforward.
As mentioned yesterday, the elements are contained within if (current_user_can('edit posts'))
checks. The original form page had everything permanently visible but required a "key" to be entered so that only I could post. With this now being at the top of the home page (unless your default is the Today view) I obviously don't want it visible all the time. Hiding it with the current user check also means I can do away with the key.
The form is just regular HTML with its method set to "post" and no action so that it redirects back to the same page on submit. Inspired by micro.blog, the Title field is only shown if I change the post format to 'Post' rather than 'Status'.
Once submitted and after a quick sanity check I pull the required form values from the standard PHP $_POST
variable and set up my core details:
$title = stripslashes($_POST['title']);
$body = stripslashes($_POST['body']);
$status = $_POST['status'];
$format = $_POST['format'];
$author_id = '346';
$comment_status = 'open';
$ping_status = 'open';
$post_date = gmdate("Y-m-d H:i");
If I am sending a "Like" webmention I enter the URL and the required text is added to the post as per my "Likes and Replies plugin" so I won't go in to those details here. Suffice it to say that this uses a custom field on posting.
With all the information in place I construct an array of 'post data'
$post_data = array(
'post_type' => 'post',
'post_title' => $title,
'post_content' => $body,
'post_status' => $status,
'tax_input' => array('post_format' => $format),
'post_author' => $author_id,
'comment_status' => $comment_status,
'ping_status' => $ping_status,
'post_date_gmt' => $post_date,
);
and then use this at the parameter to insert a new post
$postID = wp_insert_post($post_data);
If the post is a draft I then redirect to the post preview, otherwise I just stay on the Daily page which will then have the shiny new post.
And that's it - there's not much to it and it's simpler this was than with the standalone page.
If I did decide to go the AJAX route things would get considerably more complex but I don't think I really need to. Besides, I've not done anything of that ilk for what seems like an eternity.
{
"type": "entry",
"author": {
"name": "Colin Walker",
"url": "https://colinwalker.blog/",
"photo": null
},
"url": "https://colinwalker.blog/26-08-2020-1114/",
"published": "2020-08-26T10:32:56+00:00",
"content": {
"html": "<p><a href=\"https://colinwalker.blog/25-08-2020-1815/#55900\">Roel asked</a> if there was a post detailing how I set up the posting form. There is now...</p>\n<p>Firstly, I've slimmed down the form a bit further by adding placeholder values rather than labels and adjusting the spacing. It now takes up less room at the top of the page. I've also added a toggle to show/hide the form with a quick bit of JavaScript and CSS.</p>\n<p><img src=\"https://colinwalker.blog/wp-content/uploads/2020/08/20200826_094536.png\" alt=\"Post Form\" title=\"Post Form\" /></p>\n<p>So, how does it work?</p>\n<p>It's all relatively straightforward.</p>\n<p>As mentioned yesterday, the elements are contained within <code>if (current_user_can('edit posts'))</code> checks. The original form page had everything permanently visible but required a \"key\" to be entered so that only I could post. With this now being at the top of the home page (unless your default is the Today view) I obviously don't want it visible all the time. Hiding it with the current user check also means I can do away with the key.</p>\n<p>The form is just regular HTML with its method set to \"post\" and no action so that it redirects back to the same page on submit. Inspired by micro.blog, the Title field is only shown if I change the post format to 'Post' rather than 'Status'.</p>\n<p>Once submitted and after a quick sanity check I pull the required form values from the standard PHP <code>$_POST</code> variable and set up my core details:</p>\n<pre><code>$title = stripslashes($_POST['title']);\n$body = stripslashes($_POST['body']);\n$status = $_POST['status'];\n$format = $_POST['format'];\n$author_id = '346';\n$comment_status = 'open';\n$ping_status = 'open';\n$post_date = gmdate(\"Y-m-d H:i\");\n</code></pre>\n<p>If I am sending a \"Like\" webmention I enter the URL and the required text is added to the post as per my \"<a href=\"https://colinwalker.blog/tag/plugin/\">Likes and Replies plugin</a>\" so I won't go in to those details here. Suffice it to say that this uses a custom field on posting.</p>\n<p>With all the information in place I construct an array of 'post data'</p>\n<pre><code>$post_data = array(\n 'post_type' => 'post',\n 'post_title' => $title,\n 'post_content' => $body,\n 'post_status' => $status,\n 'tax_input' => array('post_format' => $format),\n 'post_author' => $author_id,\n 'comment_status' => $comment_status,\n 'ping_status' => $ping_status,\n 'post_date_gmt' => $post_date,\n);\n</code></pre>\n<p>and then use this at the parameter to insert a new post</p>\n<pre><code>$postID = wp_insert_post($post_data);\n</code></pre>\n<p>If the post is a draft I then redirect to the post preview, otherwise I just stay on the Daily page which will then have the shiny new post.</p>\n<p>And that's it - there's not much to it and it's simpler this was than with the standalone page.</p>\n<p>If I did decide to go the AJAX route things would get considerably more complex but I don't think I really need to. Besides, I've not done anything of that ilk for what seems like an eternity.</p>",
"text": "Roel asked if there was a post detailing how I set up the posting form. There is now...\nFirstly, I've slimmed down the form a bit further by adding placeholder values rather than labels and adjusting the spacing. It now takes up less room at the top of the page. I've also added a toggle to show/hide the form with a quick bit of JavaScript and CSS.\n\nSo, how does it work?\nIt's all relatively straightforward.\nAs mentioned yesterday, the elements are contained within if (current_user_can('edit posts')) checks. The original form page had everything permanently visible but required a \"key\" to be entered so that only I could post. With this now being at the top of the home page (unless your default is the Today view) I obviously don't want it visible all the time. Hiding it with the current user check also means I can do away with the key.\nThe form is just regular HTML with its method set to \"post\" and no action so that it redirects back to the same page on submit. Inspired by micro.blog, the Title field is only shown if I change the post format to 'Post' rather than 'Status'.\nOnce submitted and after a quick sanity check I pull the required form values from the standard PHP $_POST variable and set up my core details:\n$title = stripslashes($_POST['title']);\n$body = stripslashes($_POST['body']);\n$status = $_POST['status'];\n$format = $_POST['format'];\n$author_id = '346';\n$comment_status = 'open';\n$ping_status = 'open';\n$post_date = gmdate(\"Y-m-d H:i\");\n\nIf I am sending a \"Like\" webmention I enter the URL and the required text is added to the post as per my \"Likes and Replies plugin\" so I won't go in to those details here. Suffice it to say that this uses a custom field on posting.\nWith all the information in place I construct an array of 'post data'\n$post_data = array(\n 'post_type' => 'post',\n 'post_title' => $title,\n 'post_content' => $body,\n 'post_status' => $status,\n 'tax_input' => array('post_format' => $format),\n 'post_author' => $author_id,\n 'comment_status' => $comment_status,\n 'ping_status' => $ping_status,\n 'post_date_gmt' => $post_date,\n);\n\nand then use this at the parameter to insert a new post\n$postID = wp_insert_post($post_data);\n\nIf the post is a draft I then redirect to the post preview, otherwise I just stay on the Daily page which will then have the shiny new post.\nAnd that's it - there's not much to it and it's simpler this was than with the standalone page.\nIf I did decide to go the AJAX route things would get considerably more complex but I don't think I really need to. Besides, I've not done anything of that ilk for what seems like an eternity."
},
"post-type": "note",
"_id": "14287909",
"_source": "237",
"_is_read": true
}
Being the strictly plain text/Markdown kinda guy I am I've always resisted the move to the block editor in WordPress (aka Gutenberg) but have been curious about it for a while.
I decided to take a quick look earlier but my theme (a highly customised version of an old, old Automattic offering) isn't compatible with blocks.
I could probably make it compatible but think it wouldn't be worth the effort and I've yet to find a clear and concise guide to building block compatibility into existing themes. I could also move to a newer theme with compatibility built in but would then have to spend far too much time and effort reintroducing all the indieweb elements.
Again, it's just not worth it.
So, as the old saying says, if it ain't broke...
{
"type": "entry",
"author": {
"name": "Colin Walker",
"url": "https://colinwalker.blog/",
"photo": null
},
"url": "https://colinwalker.blog/19-08-2020-2017/",
"published": "2020-08-19T19:17:44+00:00",
"content": {
"html": "<p>Being the strictly plain text/Markdown kinda guy I am I've always resisted the move to the block editor in WordPress (aka Gutenberg) but have been curious about it for a while.</p>\n<p>I decided to take a quick look earlier but my theme (a highly customised version of an old, old Automattic offering) isn't compatible with blocks.</p>\n<p>I could <em>probably</em> make it compatible but think it wouldn't be worth the effort and I've yet to find a clear and concise guide to building block compatibility into existing themes. I could also move to a newer theme with compatibility built in but would then have to spend far too much time and effort reintroducing all the indieweb elements.</p>\n<p>Again, it's just not worth it.</p>\n<p>So, as the old saying says, if it ain't broke... </p>",
"text": "Being the strictly plain text/Markdown kinda guy I am I've always resisted the move to the block editor in WordPress (aka Gutenberg) but have been curious about it for a while.\nI decided to take a quick look earlier but my theme (a highly customised version of an old, old Automattic offering) isn't compatible with blocks.\nI could probably make it compatible but think it wouldn't be worth the effort and I've yet to find a clear and concise guide to building block compatibility into existing themes. I could also move to a newer theme with compatibility built in but would then have to spend far too much time and effort reintroducing all the indieweb elements.\nAgain, it's just not worth it.\nSo, as the old saying says, if it ain't broke..."
},
"post-type": "note",
"_id": "14277637",
"_source": "237",
"_is_read": true
}
{
"type": "entry",
"published": "2020-08-23T11:02:00+01:00",
"url": "https://www.jvt.me/mf2/2020/08/babno/",
"category": [
"web",
"indieweb"
],
"bookmark-of": [
"https://macwright.com/2020/08/22/clean-starts-for-the-web.html?s=09"
],
"author": {
"type": "card",
"name": "Jamie Tanna",
"url": "https://www.jvt.me",
"photo": "https://www.jvt.me/img/profile.png"
},
"post-type": "bookmark",
"_id": "14217882",
"_source": "2169",
"_is_read": true
}
I'm going!Looking forward to more IndieAuth discussions!
{
"type": "entry",
"published": "2020-08-21T14:04:17-0400",
"rsvp": "yes",
"url": "https://martymcgui.re/2020/08/21/140417/",
"in-reply-to": [
"https://events.indieweb.org/2020/08/indieauth-1-1-identity-protocol-standards-session-2-uCtG38aoJyju"
],
"content": {
"text": "I'm going!Looking forward to more IndieAuth discussions!",
"html": "I'm going!<p>Looking forward to more IndieAuth discussions!</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/2020/08/indieauth-1-1-identity-protocol-standards-session-2-uCtG38aoJyju": {
"type": "entry",
"summary": "IndieAuth is the most implemented decentralized identity protocol, built on top of OAuth 2.0.",
"url": "https://events.indieweb.org/2020/08/indieauth-1-1-identity-protocol-standards-session-2-uCtG38aoJyju",
"photo": [
"https://res.cloudinary.com/schmarty/image/fetch/w_960,c_fill/https://events.indieweb.org/storage/events/20200714-sff83XIg3Y3uKlGhPdRDUumBYgsl7O.jpg"
],
"name": "IndieAuth 1.1 Identity Protocol Standards Session 2",
"author": {
"type": "card",
"name": "events.indieweb.org",
"url": "http://events.indieweb.org",
"photo": null
},
"post-type": "photo"
}
},
"_id": "14185546",
"_source": "175",
"_is_read": true
}
{
"type": "entry",
"published": "2020-08-19T12:25:35.323Z",
"url": "https://www.jvt.me/mf2/2020/08/ovfl6/",
"category": [
"homebrew-website-club"
],
"content": {
"text": "Looking forward to seeing folks tonight at 1730 for #HomebrewWebsiteClub Nottingham! https://events.indieweb.org/2020/08/homebrew-website-club-nottingham-yPtwtlpRRU0p",
"html": "<p>Looking forward to seeing folks tonight at 1730 for <a href=\"https://www.jvt.me/tags/homebrew-website-club/\">#HomebrewWebsiteClub</a> Nottingham! <a href=\"https://events.indieweb.org/2020/08/homebrew-website-club-nottingham-yPtwtlpRRU0p\">https://events.indieweb.org/2020/08/homebrew-website-club-nottingham-yPtwtlpRRU0p</a></p>"
},
"author": {
"type": "card",
"name": "Jamie Tanna",
"url": "https://www.jvt.me",
"photo": "https://www.jvt.me/img/profile.png"
},
"post-type": "note",
"_id": "14126573",
"_source": "2169",
"_is_read": true
}
A very broken desktop client for Mastodon (probably could support Pleroma and Pixelfed) and Microsub (IndieWeb so it can support silos like Twitter).
In the works.
{
"type": "entry",
"published": "2020-08-18T21:34:47.72648-07:00",
"url": "https://v2.jacky.wtf/post/d1cd7c38-f9a1-4be6-bec0-4165a01e5eb0",
"category": [
"activitydesk",
"kde"
],
"photo": [
"https://v2.jacky.wtf/media/image/entry%24d1cd7c38-f9a1-4be6-bec0-4165a01e5eb0/Screenshot_20200818_213341-ActivityDesk.png?v=original"
],
"content": {
"text": "A very broken desktop client for Mastodon (probably could support Pleroma and Pixelfed) and Microsub (IndieWeb so it can support silos like Twitter).In the works.",
"html": "<p>A very broken desktop client for Mastodon (probably could support Pleroma and Pixelfed) and Microsub (IndieWeb so it can support silos like Twitter).</p><p>In the works.</p>"
},
"author": {
"type": "card",
"name": "",
"url": "https://v2.jacky.wtf",
"photo": null
},
"post-type": "photo",
"_id": "14118628",
"_source": "1886",
"_is_read": true
}
Going to spend this week only on Rust/Qt stuff and take a break from explicit Web development. Mainly going to see if I can get some light support for Microformats2 + IndieAuth + Micropub in ActivityDesk at https://git.jacky.wtf/fediverse/activitydesk. Looks like I got a pull request for it at https://invent.kde.org/jalcine/activitydesk/-/merge_requests/2/diffs
{
"type": "entry",
"published": "2020-08-17T12:58:06.39335-07:00",
"url": "https://v2.jacky.wtf/post/dd921c27-0392-4af3-9bea-97b8de577256",
"category": [
"kde"
],
"content": {
"text": "Going to spend this week only on Rust/Qt stuff and take a break from explicit Web development. Mainly going to see if I can get some light support for Microformats2 + IndieAuth + Micropub in ActivityDesk at https://git.jacky.wtf/fediverse/activitydesk. Looks like I got a pull request for it at https://invent.kde.org/jalcine/activitydesk/-/merge_requests/2/diffs",
"html": "<p>Going to spend this week only on Rust/Qt stuff and take a break from explicit Web development. Mainly going to see if I can get some light support for Microformats2 + IndieAuth + Micropub in ActivityDesk at <a href=\"https://git.jacky.wtf/fediverse/activitydesk\">https://git.jacky.wtf/fediverse/activitydesk</a>. Looks like I got a pull request for it at <a href=\"https://invent.kde.org/jalcine/activitydesk/-/merge_requests/2/diffs\">https://invent.kde.org/jalcine/activitydesk/-/merge_requests/2/diffs</a></p>"
},
"author": {
"type": "card",
"name": "",
"url": "https://v2.jacky.wtf",
"photo": null
},
"post-type": "note",
"_id": "14082970",
"_source": "1886",
"_is_read": true
}
Reminder that it's #HomebrewWebsiteClub Nottingham on Wednesday! I hope to see you there at 1730 for some website stuff! https://events.indieweb.org/2020/08/homebrew-website-club-nottingham-yPtwtlpRRU0p
{
"type": "entry",
"published": "2020-08-17T16:12:55.143Z",
"url": "https://www.jvt.me/mf2/2020/08/nrcle/",
"category": [
"homebrew-website-club"
],
"content": {
"text": "Reminder that it's #HomebrewWebsiteClub Nottingham on Wednesday! I hope to see you there at 1730 for some website stuff! https://events.indieweb.org/2020/08/homebrew-website-club-nottingham-yPtwtlpRRU0p",
"html": "<p>Reminder that it's <a href=\"https://www.jvt.me/tags/homebrew-website-club/\">#HomebrewWebsiteClub</a> Nottingham on Wednesday! I hope to see you there at 1730 for some website stuff! <a href=\"https://events.indieweb.org/2020/08/homebrew-website-club-nottingham-yPtwtlpRRU0p\">https://events.indieweb.org/2020/08/homebrew-website-club-nottingham-yPtwtlpRRU0p</a></p>"
},
"author": {
"type": "card",
"name": "Jamie Tanna",
"url": "https://www.jvt.me",
"photo": "https://www.jvt.me/img/profile.png"
},
"post-type": "note",
"_id": "14077786",
"_source": "2169",
"_is_read": true
}
Is rel=sponsored
known to the Microformats community? Or is this a Google-ism? https://twitter.com/cramforce/status/1295371010124939265
{
"type": "entry",
"published": "2020-08-17T07:58:00.00000-07:00",
"url": "https://v2.jacky.wtf/post/6bb65297-3a8a-4875-93e3-bf96ec457491",
"content": {
"text": "Is rel=sponsored known to the Microformats community? Or is this a Google-ism? https://twitter.com/cramforce/status/1295371010124939265",
"html": "<p>Is <code>rel=sponsored</code> known to the Microformats community? Or is this a Google-ism? <a href=\"https://twitter.com/cramforce/status/1295371010124939265\">https://twitter.com/cramforce/status/1295371010124939265</a></p>"
},
"author": {
"type": "card",
"name": "",
"url": "https://v2.jacky.wtf",
"photo": null
},
"post-type": "note",
"_id": "14076099",
"_source": "1886",
"_is_read": true
}