The .new
domains are pretty cool, and I am tempted to look at something like indieauth.new
or oauth.new
, especially to hook it into tokens-pls
{
"type": "entry",
"published": "2021-12-17T12:01:17.734810958Z",
"url": "https://www.jvt.me/mf2/2021/12/8pt18/",
"bookmark-of": [
"https://whats.new/shortcuts/"
],
"content": {
"text": "The .new domains are pretty cool, and I am tempted to look at something like indieauth.new or oauth.new, especially to hook it into tokens-pls",
"html": "<p>The <code>.new</code> domains are pretty cool, and I am tempted to look at something like <code>indieauth.new</code> or <code>oauth.new</code>, especially to hook it into <a href=\"https://tokens-pls.herokuapp.com/\">tokens-pls</a></p>"
},
"author": {
"type": "card",
"name": "Jamie Tanna",
"url": "https://www.jvt.me",
"photo": "https://www.jvt.me/img/profile.png"
},
"post-type": "bookmark",
"_id": "25866983",
"_source": "2169",
"_is_read": true
}
{
"type": "entry",
"url": "https://david.shanske.com/2021/12/11/indieauth-for-wordpress-4-2-0-released/",
"name": "IndieAuth for WordPress 4.2.0 Released - December 11, 2021",
"author": {
"type": "card",
"name": "David Shanske",
"url": "https://david.shanske.com/",
"photo": "https://david.shanske.com/avatar/dshanske?s=96"
},
"post-type": "article",
"_id": "25726304",
"_source": "5",
"_is_read": true
}
{
"type": "entry",
"published": "2021-12-11T00:09:54+00:00",
"url": "https://werd.io/2021/building-activitypub-into-known",
"name": "Building ActivityPub into Known",
"content": {
"text": "ActivityPub is the protocol standard of the Fediverse: a set of interoperable, open source social networking platforms that notably includes Mastodon and Write.as. It\u2019s the closest we have to a vibrant, distributed social networking ecosystem.Known has supported Indieweb standards since the beginning, but Fediverse has been notably missing. I think that\u2019s a big omission, but also not something I\u2019ve had bandwidth to fix. I\u2019d love to have more time and space to work on Known, but try as I might, I just don\u2019t.Today I added a substantial Gitcoin bounty to this work, which will be funded by the Known OpenCollective. My hope is that a developer can help us add this functionality. Today the bounty is funded in USD, but I\u2019d be happy to exchange that for a proof of stake crypto bounty on request.",
"html": "<p>ActivityPub is the protocol standard of <a href=\"https://fediverse.party/\">the Fediverse</a>: a set of interoperable, open source social networking platforms that notably includes <a href=\"https://werd.io/entry/edit/mastodon.social/\">Mastodon</a> and <a href=\"https://write.as/\">Write.as</a>. It\u2019s the closest we have to a vibrant, distributed social networking ecosystem.</p><p><a href=\"https://withknown.com\">Known</a> has supported <a href=\"https://indieweb.org\">Indieweb</a> standards since the beginning, but Fediverse has been notably missing. I think that\u2019s a big omission, but also not something I\u2019ve had bandwidth to fix. I\u2019d love to have more time and space to work on Known, but try as I might, I just don\u2019t.</p><p>Today <a href=\"https://github.com/idno/known/issues/2615\">I added a substantial Gitcoin bounty to this work</a>, which will be funded by <a href=\"https://opencollective.com/known\">the Known OpenCollective</a>. My hope is that a developer can help us add this functionality. Today the bounty is funded in USD, but I\u2019d be happy to exchange that for a proof of stake crypto bounty on request.</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": "25705174",
"_source": "191",
"_is_read": true
}
RSS / Atom / WebSub, IndieWeb, and ActivityPub aside, am I missing actively-used open protocols and standards for subscribing to published content?
{
"type": "entry",
"published": "2021-12-09T05:56:07+00:00",
"url": "https://werd.io/2021/rss-atom-websub-indieweb-and",
"content": {
"text": "RSS / Atom / WebSub, IndieWeb, and ActivityPub aside, am I missing actively-used open protocols and standards for subscribing to published content?"
},
"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": "25655090",
"_source": "191",
"_is_read": true
}
Why I decided to treat hashtags in my (syndicated) content as tags on my site.
{
"type": "entry",
"published": "2021-12-08 09:00:26 +0000 GMT",
"summary": "Why I decided to treat hashtags in my (syndicated) content as tags on my site.",
"url": "https://www.jvt.me/posts/2021/12/08/owning-hashtags/",
"category": [
"indieweb"
],
"name": "Owning my Hashtags",
"author": {
"type": "card",
"name": "Jamie Tanna",
"url": "https://www.jvt.me",
"photo": "https://www.jvt.me/img/profile.png"
},
"post-type": "article",
"_id": "25630930",
"_source": "2169",
"_is_read": true
}
James is featuring a different blog every day of Christmas and he chose mine for day three. What a lovely project!
I love writing this series. For the last three days, one of the first things on my mind after waking up is “what blog am I going to feature today?” I have seen so many interesting websites in the last few years. If you ever feel like the web is all the same, I’d recommend checking out the IndieWeb or clicking through the websites I feature in this series. You’ll realise there is still a great deal of creative content on the web written by independent bloggers: you just have to know where to start looking.
{
"type": "entry",
"published": "2021-12-07T10:50:34Z",
"url": "https://adactio.com/links/18672",
"category": [
"indieweb",
"blogs",
"blogging",
"sharing",
"writing",
"personal",
"publishing",
"websites",
"advent",
"bloggers"
],
"bookmark-of": [
"https://jamesg.blog/2021/12/03/advent-of-bloggers-3/"
],
"content": {
"text": "Advent of Bloggers 2021: Day 3 | James\u2019 Coffee Blog\n\n\n\nJames is featuring a different blog every day of Christmas and he chose mine for day three. What a lovely project!\n\n\n I love writing this series. For the last three days, one of the first things on my mind after waking up is \u201cwhat blog am I going to feature today?\u201d I have seen so many interesting websites in the last few years. If you ever feel like the web is all the same, I\u2019d recommend checking out the IndieWeb or clicking through the websites I feature in this series. You\u2019ll realise there is still a great deal of creative content on the web written by independent bloggers: you just have to know where to start looking.",
"html": "<h3>\n<a class=\"p-name u-bookmark-of\" href=\"https://jamesg.blog/2021/12/03/advent-of-bloggers-3/\">\nAdvent of Bloggers 2021: Day 3 | James\u2019 Coffee Blog\n</a>\n</h3>\n\n<p>James is featuring a different blog every day of Christmas and he chose mine for day three. What a lovely project!</p>\n\n<blockquote>\n <p>I love writing this series. For the last three days, one of the first things on my mind after waking up is \u201cwhat blog am I going to feature today?\u201d I have seen so many interesting websites in the last few years. If you ever feel like the web is all the same, I\u2019d recommend checking out the IndieWeb or clicking through the websites I feature in this series. You\u2019ll realise there is still a great deal of creative content on the web written by independent bloggers: you just have to know where to start looking.</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": "25603568",
"_source": "2",
"_is_read": true
}
Writing has been essential for focus, planning, catharsis, anger management, etc. Get it down, get it out. Writing is hard, but it’s also therapy: give order to a pile of thoughts to understand them better and move on.
I concur! Though it’s worth adding that it feels qualitatively different (and better!) to do this on your own site rather than contributing to someone else’s silo, like Twitter or Facebook.
{
"type": "entry",
"published": "2021-12-07T10:40:18Z",
"url": "https://adactio.com/links/18671",
"category": [
"blogging",
"writing",
"sharing",
"indieweb",
"blogs",
"personal",
"publishing",
"stream",
"notes",
"tagging"
],
"bookmark-of": [
"https://colly.com/articles/stream-on"
],
"content": {
"text": "Simon Collison | Stream on\n\n\n\n\n Writing has been essential for focus, planning, catharsis, anger management, etc. Get it down, get it out. Writing is hard, but it\u2019s also therapy: give order to a pile of thoughts to understand them better and move on.\n\n\nI concur! Though it\u2019s worth adding that it feels qualitatively different (and better!) to do this on your own site rather than contributing to someone else\u2019s silo, like Twitter or Facebook.",
"html": "<h3>\n<a class=\"p-name u-bookmark-of\" href=\"https://colly.com/articles/stream-on\">\nSimon Collison | Stream on\n</a>\n</h3>\n\n<blockquote>\n <p>Writing has been essential for focus, planning, catharsis, anger management, etc. Get it down, get it out. Writing is hard, but it\u2019s also therapy: give order to a pile of thoughts to understand them better and move on.</p>\n</blockquote>\n\n<p>I concur! Though it\u2019s worth adding that it feels qualitatively different (and better!) to do this on your own site rather than contributing to someone else\u2019s silo, like Twitter or Facebook.</p>"
},
"author": {
"type": "card",
"name": "Jeremy Keith",
"url": "https://adactio.com/",
"photo": "https://adactio.com/images/photo-150.jpg"
},
"post-type": "bookmark",
"_id": "25603569",
"_source": "2",
"_is_read": true
}
Recording for future reference: I need easy access to creating new channels in Kittybox. The update for the top bar has made all of the channels accessible, so I want to separate my feeds to keep some of the in-the-moment things out of the main feed - for that I need to create a channel, and I don’t know of any Micropub clients that are capable of creating feeds the Kittybox way (specifically, posting an h-feed
with a name property as a JSON object).
{
"type": "entry",
"published": "2021-12-07T02:10:54.037323898+03:00",
"url": "https://fireburn.ru/posts/a7Z6Mfc",
"category": [
"Kittybox"
],
"content": {
"text": "Recording for future reference: I need easy access to creating new channels in Kittybox. The update for the top bar has made all of the channels accessible, so I want to separate my feeds to keep some of the in-the-moment things out of the main feed - for that I need to create a channel, and I don\u2019t know of any Micropub clients that are capable of creating feeds the Kittybox way (specifically, posting an h-feed with a name property as a JSON object).",
"html": "<p>Recording for future reference: I need easy access to creating new channels in Kittybox. The update for the top bar has made all of the channels accessible, so I want to separate my feeds to keep some of the in-the-moment things out of the main feed - for that I need to create a channel, and I don\u2019t know of any Micropub clients that are capable of creating feeds the Kittybox way (specifically, posting an <code>h-feed</code> with a name property as a JSON object).</p>"
},
"post-type": "note",
"_id": "25595049",
"_source": "1371",
"_is_read": true
}
Inspired by the mess I’ve made through the years and petermolnar.net’s post I have decided to make all of my previous posts unlisted. The permalinks are not broken - I have preserved what I currently have in the database.
So, I guess I might as well introduce myself once again.
Hello. I’m Vika. I’m currently residing in Russia and I’m the developer of Kittybox, an IndieWeb-enabled all-in-one blogging solution. My favorite thing is homemade burgers and one of the most hated things in my life is all the mild inconveniences caused by capitalism crawling into our lives like a Ctulhu horror. They really add up.
{
"type": "entry",
"published": "2021-12-05T23:54:07.638388859+03:00",
"url": "https://fireburn.ru/posts/a7RoN7J",
"category": [
"personal"
],
"content": {
"text": "Inspired by the mess I\u2019ve made through the years and petermolnar.net\u2019s post I have decided to make all of my previous posts unlisted. The permalinks are not broken - I have preserved what I currently have in the database.\n\nSo, I guess I might as well introduce myself once again.\n\nHello. I\u2019m Vika. I\u2019m currently residing in Russia and I\u2019m the developer of Kittybox, an IndieWeb-enabled all-in-one blogging solution. My favorite thing is homemade burgers and one of the most hated things in my life is all the mild inconveniences caused by capitalism crawling into our lives like a Ctulhu horror. They really add up.",
"html": "<p>Inspired by the mess I\u2019ve made through the years and <a href=\"https://petermolnar.net/article/making-things-private/index.html\">petermolnar.net\u2019s post</a> I have decided to make all of my previous posts unlisted. The permalinks are not broken - I have preserved what I currently have in the database.</p>\n\n<p>So, I guess I might as well introduce myself once again.</p>\n\n<p>Hello. I\u2019m Vika. I\u2019m currently residing in Russia and I\u2019m the developer of <a href=\"https://gitlab.com/kittybox/kittybox\">Kittybox</a>, an IndieWeb-enabled all-in-one blogging solution. My favorite thing is homemade burgers and one of the most hated things in my life is all the mild inconveniences caused by capitalism crawling into our lives like a Ctulhu horror. They really add up.</p>"
},
"post-type": "note",
"_id": "25566694",
"_source": "1371",
"_is_read": true
}
{
"type": "entry",
"published": "2021-12-01T09:10:23+01:00",
"url": "https://notiz.blog/2021/12/01/amp-open-web/",
"featured": "https://notiz.blog/wp-content/uploads/2021/11/Bildschirmfoto-2021-11-13-um-13.16.59-900x394.png",
"name": "Open Web?",
"content": {
"text": "Google hat aktuell eine Klage am Hals. Der Konzern soll AMP genutzt haben, um sein eigenes Werbenetzwerk gegen\u00fcber der Konkurrenz zu bevorzugen.\n\n\n\n\nGoogle soll sein Format AMP (Accelerated Mobile Pages) zur Webseiten-Beschleunigung nur eingef\u00fchrt haben, um die Verleger dazu zu bewegen, letztlich mehr Geld im Google-internen Werbenetzwerk auszugeben. Das ist einer der Vorw\u00fcrfe von zw\u00f6lf US-Bundesstaaten, die k\u00fcrzlich Klage gegen den US-Konzern eingereicht haben.\nKartellklage: Google soll AMP f\u00fcr Wettbewerbsvorteile eingef\u00fchrt haben (heise online)\n\n\n\n\nLeider ist das nur einer von vielen Kritikpunkten an AMP, toppt in meinen Augen aber alle Bisherigen um l\u00e4ngen!\n\n\n\nIch m\u00f6chte aber gar nicht zu sehr auf die F\u00e4lle eingehen, weil sie schon zu Gen\u00fcge thematisiert wurden. Was mich dagegen triggert, ist die st\u00e4ndige Erw\u00e4hnung von \u201eOpen Web\u201c im Kontext von AMP, speziell auch im WordPress Umfeld!\n\n\n\nSarah Gooding hat auf WP Tavern einen sehr lesenswerten Artikel zu dem AMP Skandal ver\u00f6ffentlicht, in dem sie auch auf die Rolle von WordPress bzw. Automattic eingeht: AMP Has Irreparably Damaged Publishers\u2019 Trust in Google-led Initiatives.\n\n\n\nIn dem Abschnitt \u201eAutomattic Denies Prior Knowledge of Google Throttling Non-Amp Ads\u201c schreibt sie:\n\n\n\nIn 2016, Automattic, one of the most influential companies in the WordPress ecosystem, partnered with Google to promote AMP as an early adopter. WordPress.com added AMP support and Automattic built the first versions of the AMP plugin for self-hosted WordPress sites. The company has played a significant role in driving AMP adoption forward, giving it an entrance into the WordPress ecosystem.\n\n\n\nAuf eine Nachfrage bei Automattic, bekommt sie folgende Antwort:\n\n\n\nAs part of our mission to make the web a better place, we are always testing new technologies including AMP\n\n\n\nAuf die konkrete Frage, ob sie von der Wettbewerbsverzerrung wussten, antwortet Automattic mit:\n\n\n\nWe chose to partner with Google because we believed that we had a shared vision of advancing the open web. Additionally, we wanted to offer the benefit of the latest technology to WordPress users and publishers including AMP.\n\n\n\nDa steht tats\u00e4chlich \u201ewe believed that we had a shared vision of advancing the open web\u201e!\n\n\n\nSelbst nach all der Kritik an einem propriet\u00e4res Format, einem subset von HTML5, welches die Nutzung von JavaScript limitiert, Webseiten-Betreibern aufgezwungen wurde, damit sie ihren Page-Rank behalten/verbessern, um ihnen dann die Besucher durch ein heftiges Caching der AMP Seiten abzugraben, um sich dann wohl auch noch einen Wettbewerbsvorteil im Bereich der Werbung zu sichern, sprechen Automattic und Google von \u201eOpen Web\u201e?!?!\n\n\n\nWarum mich das triggert?\n\n\n\nIch investiere jetzt knapp 15 Jahre meiner Freizeit in wirkliche \u201eOpen Web\u201c Plugins f\u00fcr WordPress, welche seit Jahren unbeachtet oder als \u201emaybe later\u201c gekennzeichnet im Trac vor sich hin siechen, aber insgeheim hatte ich trotzdem die Hoffnung, dass vielleicht Google oder Automattic irgendwann Interesse zeigen k\u00f6nnten, wenn ihnen das Thema \u201eOpen Web\u201c (und WordPress) anscheinend doch so wichtig ist\u2026\n\n\n\nWenn jetzt aber AMP der Ma\u00dfstab f\u00fcr \u201eOpen Web\u201c ist, dann sehe ich schwarz f\u00fcr Webmentions oder ActivityPub.",
"html": "<p>Google hat aktuell eine Klage am Hals. Der Konzern soll AMP genutzt haben, um sein eigenes Werbenetzwerk gegen\u00fcber der Konkurrenz zu bevorzugen.</p>\n\n\n\n<blockquote>\n<p>Google soll sein Format AMP (Accelerated Mobile Pages) zur Webseiten-Beschleunigung nur eingef\u00fchrt haben, um die Verleger dazu zu bewegen, letztlich mehr Geld im Google-internen Werbenetzwerk auszugeben. Das ist einer der Vorw\u00fcrfe von zw\u00f6lf US-Bundesstaaten, die k\u00fcrzlich Klage gegen den US-Konzern eingereicht haben.</p>\n<a>Kartellklage: Google soll AMP f\u00fcr Wettbewerbsvorteile eingef\u00fchrt haben (heise online)</a>\n</blockquote>\n\n\n\n<p>Leider ist das nur einer von vielen Kritikpunkten an AMP, toppt in meinen Augen aber alle Bisherigen um l\u00e4ngen!</p>\n\n\n\n<p>Ich m\u00f6chte aber gar nicht zu sehr auf die F\u00e4lle eingehen, weil sie schon zu Gen\u00fcge thematisiert wurden. Was mich dagegen triggert, ist die st\u00e4ndige Erw\u00e4hnung von \u201eOpen Web\u201c im Kontext von AMP, speziell auch im WordPress Umfeld!</p>\n\n\n\n<img width=\"900\" height=\"287\" src=\"https://notiz.blog/wp-content/uploads/2021/11/Bildschirmfoto-2021-11-13-um-13.20.28-900x287.png\" alt=\"\" /><p>Sarah Gooding hat auf <a href=\"https://wptavern.com\">WP Tavern</a> einen sehr lesenswerten Artikel zu dem AMP Skandal ver\u00f6ffentlicht, in dem sie auch auf die Rolle von WordPress bzw. Automattic eingeht: <a href=\"https://wptavern.com/amp-has-irreparably-damaged-publishers-trust-in-google-led-initiatives\">AMP Has Irreparably Damaged Publishers\u2019 Trust in Google-led Initiatives</a>.</p>\n\n\n\n<p>In dem Abschnitt \u201e<a href=\"https://wptavern.com/amp-has-irreparably-damaged-publishers-trust-in-google-led-initiatives#automattic-denies-prior-knowledge-of-google-throttling-non-amp-ads\">Automattic Denies Prior Knowledge of Google Throttling Non-Amp Ads</a>\u201c schreibt sie:</p>\n\n\n\n<blockquote><p>In 2016, Automattic, one of the most influential companies in the WordPress ecosystem, partnered with Google to promote AMP as an early adopter. WordPress.com added AMP support and Automattic built the first versions of the AMP plugin for self-hosted WordPress sites. The company has played a significant role in driving AMP adoption forward, giving it an entrance into the WordPress ecosystem.</p></blockquote>\n\n\n\n<p>Auf eine Nachfrage bei Automattic, bekommt sie folgende Antwort:</p>\n\n\n\n<blockquote><p>As part of our mission to make the web a better place, we are always testing new technologies including AMP</p></blockquote>\n\n\n\n<p>Auf die konkrete Frage, ob sie von der Wettbewerbsverzerrung wussten, antwortet Automattic mit:</p>\n\n\n\n<blockquote><p>We chose to partner with Google because we believed that we had a shared vision of advancing the open web. Additionally, we wanted to offer the benefit of the latest technology to WordPress users and publishers including AMP.</p></blockquote>\n\n\n\n<p>Da steht tats\u00e4chlich \u201e<strong>we believed that we had a shared vision of advancing the open web</strong>\u201e!</p>\n\n\n\n<p>Selbst nach all der Kritik an einem propriet\u00e4res Format, einem subset von HTML5, welches die Nutzung von JavaScript limitiert, Webseiten-Betreibern aufgezwungen wurde, damit sie ihren Page-Rank behalten/verbessern, um ihnen dann die Besucher durch ein heftiges Caching der AMP Seiten abzugraben, um sich dann wohl auch noch einen Wettbewerbsvorteil im Bereich der Werbung zu sichern, sprechen Automattic und Google von \u201e<strong>Open Web</strong>\u201e?!?!</p>\n\n\n\n<p>Warum mich das triggert?</p>\n\n\n\n<p>Ich investiere jetzt knapp 15 Jahre meiner <strong>Freizeit</strong> in wirkliche <a href=\"https://profiles.wordpress.org/pfefferle/#content-plugins\">\u201eOpen Web\u201c Plugins</a> f\u00fcr WordPress, welche seit Jahren <a href=\"https://core.trac.wordpress.org/ticket/35435\">unbeachtet</a> oder als \u201e<a href=\"https://core.trac.wordpress.org/ticket/51413\">maybe later</a>\u201c gekennzeichnet im Trac vor sich hin siechen, aber insgeheim hatte ich trotzdem die Hoffnung, dass vielleicht Google oder Automattic irgendwann Interesse zeigen k\u00f6nnten, wenn ihnen das Thema \u201eOpen Web\u201c (und WordPress) anscheinend doch so wichtig ist\u2026</p>\n\n\n\n<p>Wenn jetzt aber AMP der Ma\u00dfstab f\u00fcr \u201eOpen Web\u201c ist, dann sehe ich schwarz f\u00fcr Webmentions oder ActivityPub.</p>"
},
"author": {
"type": "card",
"name": "Matthias Pfefferle",
"url": "https://notiz.blog/author/matthias-pfefferle/",
"photo": "https://secure.gravatar.com/avatar/75512bb584bbceae57dfc503692b16b2?s=40&d=mm&r=g"
},
"post-type": "article",
"_id": "25453834",
"_source": "206",
"_is_read": true
}
{
"type": "entry",
"url": "https://david.shanske.com/2021/11/27/indieauth-popup-2-2021/",
"name": "IndieAuth Popup 2 2021 - November 27, 2021",
"author": {
"type": "card",
"name": "David Shanske",
"url": "https://david.shanske.com/",
"photo": "https://david.shanske.com/avatar/dshanske?s=96"
},
"post-type": "article",
"_id": "25378513",
"_source": "5",
"_is_read": true
}
Just pushed a bug fix: During install it now adds the role "indieauth". Assign this role to any users that should be able to authenticate / authorize IndieAuth clients. The README has been updated accordingly.
{
"type": "entry",
"published": "2021-11-27 17:40-0800",
"url": "https://gregorlove.com/2021/11/just-pushed-a-bug-fix/",
"in-reply-to": [
"https://gregorlove.com/2021/10/indieauth-for-processwire-development/"
],
"content": {
"text": "Just pushed a bug fix: During install it now adds the role \"indieauth\". Assign this role to any users that should be able to authenticate / authorize IndieAuth clients. The README has been updated accordingly.",
"html": "<p>Just pushed a bug fix: During install it now adds the role \"indieauth\". Assign this role to any users that should be able to authenticate / authorize IndieAuth clients. The README has been updated accordingly.</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": "25377889",
"_source": "95",
"_is_read": true
}
IndieWeb Committment for New Year’s Eve 2021 boffosocko.com
{
"type": "entry",
"author": {
"name": "Chris Aldrich",
"url": "https://www.boffosocko.com/",
"photo": "https://www.gravatar.com/avatar/d5fb4e498fe609cc29b04e5b7ad688c4?s=96&d=https%3A%2F%2Fmicro.blog%2Fimages%2Fblank_avatar.png"
},
"url": "https://boffosocko.com/2021/11/26/indieweb-committment-for-new-years-eve-2021/",
"content": {
"html": "IndieWeb Committment for New Year\u2019s Eve 2021 <a href=\"https://boffosocko.com/2021/11/26/indieweb-committment-for-new-years-eve-2021/\">boffosocko.com</a>",
"text": "IndieWeb Committment for New Year\u2019s Eve 2021 boffosocko.com"
},
"published": "2021-11-26T20:31:53+00:00",
"post-type": "note",
"_id": "33380014",
"_source": "7224",
"_is_read": true
}
Replied to
[[Thanksgiving]] [[Plan]]
1. Understand the [[indieweb]] to it's fullest
1.2. and how @loopdouble's doublescores theme connects to it
1.3. and then begin implementing it for myself
2. make a @lesswrong reading list
2.2. I swear I will do this
— Evan (@Scaledish) November 23, 2021
Happy to help with this! My theme mostly adds microformats (which other themes also do, I just wanted to customise my looknfeel a bit). Majority of the IndieWeb heavy lifting comes from the IndieWeb WordPress plugins. https://indieweb.org/WordPress/Plugins
Also on: Twitter
{
"type": "entry",
"author": {
"name": "Neil Mather",
"url": "https://doubleloop.net/",
"photo": null
},
"url": "https://doubleloop.net/2021/11/23/7655/",
"published": "2021-11-23T10:33:00+00:00",
"content": {
"html": "Replied to \n<blockquote><blockquote><p>[[Thanksgiving]] [[Plan]]<br />1. Understand the [[indieweb]] to it's fullest<br />1.2. and how <a href=\"https://twitter.com/loopdouble?ref_src=twsrc%5Etfw\">@loopdouble</a>'s doublescores theme connects to it<br />1.3. and then begin implementing it for myself<br />2. make a <a href=\"https://twitter.com/lesswrong?ref_src=twsrc%5Etfw\">@lesswrong</a> reading list<br />2.2. I swear I will do this</p>\u2014 Evan (@Scaledish) <a href=\"https://twitter.com/Scaledish/status/1463024048707973120?ref_src=twsrc%5Etfw\">November 23, 2021</a></blockquote><a href=\"https://twitter.com/Scaledish/status/1463024048707973120\"></a></blockquote>\n\nHappy to help with this! My theme mostly adds microformats (which other themes also do, I just wanted to customise my looknfeel a bit). Majority of the IndieWeb heavy lifting comes from the IndieWeb WordPress plugins. <a href=\"https://indieweb.org/WordPress/Plugins\">https://indieweb.org/WordPress/Plugins</a>\nAlso on:<p><a href=\"https://twitter.com/loopdouble/status/1463093419413315586\"> Twitter</a></p>",
"text": "Replied to \n[[Thanksgiving]] [[Plan]]\n1. Understand the [[indieweb]] to it's fullest\n1.2. and how @loopdouble's doublescores theme connects to it\n1.3. and then begin implementing it for myself\n2. make a @lesswrong reading list\n2.2. I swear I will do this\u2014 Evan (@Scaledish) November 23, 2021\n\nHappy to help with this! My theme mostly adds microformats (which other themes also do, I just wanted to customise my looknfeel a bit). Majority of the IndieWeb heavy lifting comes from the IndieWeb WordPress plugins. https://indieweb.org/WordPress/Plugins\nAlso on: Twitter"
},
"post-type": "note",
"_id": "25266705",
"_source": "1895",
"_is_read": true
}
{
"type": "entry",
"published": "2021-11-21T17:02:16-0500",
"url": "https://martymcgui.re/2021/11/21/saving-the-caturday-with-a-video-proxy/",
"category": [
"site-update",
"imageproxy",
"video",
"proxy",
"cloudinary"
],
"name": "Saving the Caturday with a video proxy",
"content": {
"text": "Since at least 2018 I\u2019ve been hooked on using iOS Shortcuts to post things to my site.\nWith IndieWeb building blocks like IndieAuth and Micropub, it\u2019s more or less possible to create Shortcuts do post any content you want to your personal site, mixing in images and video, and a lot more, all without needing third party apps running on your phone - or even in a browser!\nThe most important IndieWeb shortcut in my life the last couple of years is the one with which I have posted an animated cat photo to my site every day. In my phone\u2019s Photos app I would choose a Live Photo and make sure it\u2019s set to Bounce or (less likely) Loop, which will allow it to be shared as a video, then I\u2019d use the Photos app Share function to send it to my Video Micropub shortcut. It would:\nAllow me to trim the video\n Upload the trimmed result to my site via my Micropub Media Endpoint\n\n Prompt me for a caption for the video and a tag for the post\n \n Post it to my site via Micropub where it will show up in few moments.\n \n\n\n I\u2019ve always found the Shortcut construction UI to be fiddly, and in general I find them difficult to debug. However, once a shortcut is working, they usually make my phone an incredibly powerful tool for managing what I share online.\n \n\nSuddenly iOS 15 broke my Video Micropub with a non-debuggable \u201cthere was a problem running the shortcut\u201d error. I\u2019ve tried common workarounds suggested online, including re-creating the shortcut from scratch multiple times. It chokes at the media upload step every time.\n\n Without this shortcut, I am kind of at a loss for how to post videos from my phone to my site. There are a number of great Micropub clients in the world, but none of them handles video. I\u2019ve built Micropub clients of my own in the past, but I find it to be a lot of work each time updating things to keep up with changes in specs or library dependencies, and I find that I am not ready to commit to another one at this time.\n \n\nBizarrely, I have a different shortcut, probably thanks to Rosemary or Sebastiaan, which does allow me to upload files to my media endpoint, and get the resulting URL.\nI combined that with a very quick and very dirty Secret Web Form that allows me to paste in the URL for the uploaded video, creating a Caturday post.\nIt\u2019s certainly more steps, but at least it\u2019s doable from my phone once again.\n\u2026 or it would be if my phone was creating web-compatible videos!!!\nFor several versions of iOS (maybe starting with 12?), a new system default was introduced that greatly improved the efficiency with which photos and videos are stored on iOS devices. This is done by using newer and more intensive codecs to compress media files: HEIC for images, and HEVC for video. It turns out that these are not codecs commonly available in web browsers. You can work around this by changing a system-wide setting to instead save images and video in the \u201cMost Compatible\u201d formats - JPEG and MP4 (with video encoded as h264).\nI\u2019m not sure where the root of this change comes from, but for some of my Live Photos, making them a Loop or Bounce video creates an HEVC video and the only working shortcut I have to uploading them to my site takes them as-is. The result is a caturday post that doesn\u2019t play!\n\u201cNo video with supported format and MIME type found\u201d does not spark caturday joy.So let us arrive at last to the day-saving mentioned in the title of this post.\nI\u2019m a big fan of the IndieWeb building block philosophy - simplified systems with distinct sets of responsibilities which can be composed to create complex behaviors using the web as glue. For example, the Micropub spec defines media endpoints with very few required features. The main one: allow a file to be uploaded and to get back a URL where that file will be available on the web.\nThe spec doesn\u2019t say anything about how to handle specifics that might be important. For example, an image on my phone may be a hefty 4 or 5 megabyte pixel party, but I don\u2019t want to actually display that whole thing on my website!\nI could add some special handling to my media endpoint. For example, have it automatically resize images, save them in multiple formats suitable for different browsers, and more.\nBut I could also slip a service in the middle that uses the raw uploaded files to create exactly the things I want on demand.\nThis is where image proxies come in. They are web services that let you ask for a given image on the web, but transformed in some ways.\nI have used and loved willnorris/imageproxy as a self-hosted solution. I currently use Cloudinary to handle this on my site today. Go ahead and find a still photo on my site, right-click to inspect and check the image URL!\nIt turns out that with some setup, Cloudinary will do this for smaller video files as well! This post is getting long, so here are the details:\n\nCreate an \u201cAuto upload URL mapping\u201d. This is kind of like a folder alias that maps a path on Cloudinary to a path on your server. In my case, I made one named \u2018mmmgre\u2019 which maps to https://media.martymcgui.re/\n\n Update your site template to rewrite your video URLs to fetch them from Cloudinary.\nThat\u2019s it!\nSo, for example, this video is a .mov file uploaded from my phone, encoded in HEVC: https://media.martymcgui.re/0d/93/a0/f1/be676103d289914ba9660cb8ba0eca2cb87a95c801d750ffc00bbfae.mov\nThe resulting Cloudinary URL is: https://res.cloudinary.com/schmarty/video/upload/mmmgre/0d/93/a0/f1/be676103d289914ba9660cb8ba0eca2cb87a95c801d750ffc00bbfae.mp4\nCloudinary supports a lot of transformations in their URLs, but in this case the only one needed is to rewrite the .mov extension to .mp4 - this tells Cloudinary to make this a .mp4 video with h264 video inside - exactly what I wanted.\nAnd so, at last, I can post videos from my phone to my website again at last. The world of eternal Caturday is safe\u2026 for now.\nIn the future:\nI\u2019d rather be hosting this myself, but since I\u2019m already using Cloudinary and these Live Photo-based videos are very small, this was a huge win for time-spent-hacking.\n Of course I\u2019d much rather overall just have my friggin\u2019 shortcut friggin\u2019 working again, sheesh.\n \n There has been some chatter in the IndieWeb chat about different approaches to handling video content and posts in Micropub clients. I may join in!",
"html": "<p></p><p>Since <a href=\"https://martymcgui.re/2018/11/27/hwc-baltimore-2018-11-27-wrap-up/\">at least 2018</a> I\u2019ve been hooked on <a href=\"https://martymcgui.re/2019/06/19/152602/\">using iOS Shortcuts to post things to my site</a>.</p>\n<p>With <a href=\"https://indieweb.org/Category:building-blocks\">IndieWeb building blocks</a> like <a href=\"https://indieweb.org/IndieAuth\">IndieAuth</a> and <a href=\"https://indieweb.org/Micropub\">Micropub</a>, it\u2019s more or less possible to create Shortcuts do post any content you want to your personal site, mixing in images and video, and a lot more, all without needing third party apps running on your phone - or even in a browser!</p>\n<p>The most important IndieWeb shortcut in my life the last couple of years is the one with which I have posted <a href=\"https://martymcgui.re/tag/caturday/\">an animated cat photo to my site every day</a>. In my phone\u2019s Photos app I would choose a Live Photo and make sure it\u2019s set to Bounce or (less likely) Loop, which will allow it to be shared as a video, then I\u2019d use the Photos app Share function to send it to my Video Micropub shortcut. It would:</p>\n<ul><li>Allow me to trim the video</li>\n <li>Upload the trimmed result to my site via my <a href=\"https://indieweb.org/micropub_media_endpoint\">Micropub Media Endpoint</a>\n</li>\n <li>Prompt me for a caption for the video and a tag for the post</li>\n <li>\n Post it to my site via Micropub where it will show up in few moments.\n <br /></li>\n</ul><p>\n I\u2019ve always found the Shortcut construction UI to be fiddly, and in general I find them difficult to debug. However, once a shortcut is working, they usually make my phone an incredibly powerful tool for managing what I share online.\n <br /></p>\n<p>Suddenly iOS 15 broke my Video Micropub with a non-debuggable \u201cthere was a problem running the shortcut\u201d error. I\u2019ve tried common workarounds suggested online, including re-creating the shortcut from scratch multiple times. It chokes at the media upload step every time.</p>\n<p>\n Without this shortcut, I am kind of at a loss for how to post videos from my phone to my site. There are a number of great <a href=\"https://indieweb.org/Micropub/Clients\">Micropub clients</a> in the world, but <i>none</i> of them handles video. I\u2019ve built Micropub clients of my own in the past, but I find it to be a lot of work each time updating things to keep up with changes in specs or library dependencies, and I find that I am not ready to commit to another one at this time.\n <br /></p>\n<p>Bizarrely, I have a different shortcut, probably thanks to <a href=\"https://rosemaryorchard.com/\">Rosemary</a> or <a href=\"https://seblog.nl/\">Sebastiaan</a>, which <i>does</i> allow me to upload files to my media endpoint, and get the resulting URL.</p>\n<p>I combined that with a very quick and very dirty <i>Secret Web Form</i> that allows me to paste in the URL for the uploaded video, creating a Caturday post.</p>\n<p>It\u2019s certainly more steps, but at least it\u2019s doable from my phone once again.</p>\n<p><i>\u2026 or it would be if my phone was creating web-compatible videos!!!</i></p>\n<p>For several versions of iOS (maybe starting with 12?), a new system default was introduced that greatly improved the efficiency with which photos and videos are stored on iOS devices. This is done by using newer and more intensive codecs to compress media files: HEIC for images, and HEVC for video. It turns out that these are <i>not </i>codecs commonly available in web browsers. You can work around this by changing a system-wide setting to instead save images and video in the \u201cMost Compatible\u201d formats - JPEG and MP4 (with video encoded as h264).</p>\n<p>I\u2019m not sure where the root of this change comes from, but for some of my Live Photos, making them a Loop or Bounce video creates an HEVC video and the only working shortcut I have to uploading them to my site takes them as-is. The result is a caturday post that doesn\u2019t play!</p>\n<img src=\"https://media.martymcgui.re/6a/56/4d/ca/05461e176796ec9bc00b91d0f8354d8d4ce075c1c0b20c53318ca05e.png\" alt=\"\" />\u201cNo video with supported format and MIME type found\u201d does not spark caturday joy.<p>So let us arrive at last to the day-saving mentioned in the title of this post.</p>\n<p>I\u2019m a big fan of the IndieWeb building block philosophy - simplified systems with distinct sets of responsibilities which can be composed to create complex behaviors using the web as glue. For example, the Micropub spec defines <a href=\"https://www.w3.org/TR/micropub/#media-endpoint\">media endpoints</a> with very few required features. The main one: allow a file to be uploaded and to get back a URL where that file will be available on the web.</p>\n<p>The spec doesn\u2019t say anything about how to handle specifics that might be important. For example, an image on my phone may be a hefty 4 or 5 megabyte pixel party, but I don\u2019t want to actually display that whole thing on my website!</p>\n<p>I could add some special handling to my media endpoint. For example, have it automatically resize images, save them in multiple formats suitable for different browsers, and more.</p>\n<p>But I could also slip a service in the middle that <i>uses</i> the raw uploaded files to create exactly the things I want on demand.</p>\n<p>This is where <i>image proxies</i> come in. They are web services that let you ask for a given image on the web, but transformed in some ways.</p>\n<p>I have used and loved <a href=\"https://github.com/willnorris/imageproxy\">willnorris/imageproxy</a> as a self-hosted solution. I currently use <a href=\"https://cloudinary.com/\">Cloudinary</a> to handle this on my site today. Go ahead and find a still photo on my site, right-click to inspect and check the image URL!</p>\n<p>It turns out that with some setup, Cloudinary will do this for smaller video files as well! This post is getting long, so here are the details:</p>\n<ul><li>\n<a href=\"https://cloudinary.com/documentation/fetch_remote_images#configuring_auto_upload_url_mapping\">Create an \u201cAuto upload URL mapping\u201d</a>. This is kind of like a folder alias that maps a path on Cloudinary to a path on your server. In my case, I made one named \u2018mmmgre\u2019 which maps to <a href=\"https://media.martymcgui.re/\">https://media.martymcgui.re/</a>\n</li>\n <li>Update your site template to rewrite your video URLs to fetch them from Cloudinary.</li>\n</ul><p>That\u2019s it!</p>\n<p>So, for example, this video is a .mov file uploaded from my phone, encoded in HEVC: <a href=\"https://media.martymcgui.re/0d/93/a0/f1/be676103d289914ba9660cb8ba0eca2cb87a95c801d750ffc00bbfae.mov\">https://media.martymcgui.re/0d/93/a0/f1/be676103d289914ba9660cb8ba0eca2cb87a95c801d750ffc00bbfae.mov</a></p>\n<p>The resulting Cloudinary URL is: <a href=\"https://res.cloudinary.com/schmarty/video/upload/mmmgre/0d/93/a0/f1/be676103d289914ba9660cb8ba0eca2cb87a95c801d750ffc00bbfae.mp4\">https://res.cloudinary.com/schmarty/video/upload/mmmgre/0d/93/a0/f1/be676103d289914ba9660cb8ba0eca2cb87a95c801d750ffc00bbfae.mp4</a></p>\n<p>Cloudinary supports a lot of transformations in their URLs, but in this case the only one needed is to rewrite the .mov extension to .mp4 - this tells Cloudinary to make this a .mp4 video with h264 video inside - exactly what I wanted.</p>\n<p>And so, at last, I can post videos from my phone to my website again at last. The world of eternal Caturday is safe\u2026 for now.</p>\n<p>In the future:</p>\n<ul><li>I\u2019d rather be hosting this myself, but since I\u2019m already using Cloudinary and these Live Photo-based videos are very small, this was a huge win for time-spent-hacking.</li>\n <li>Of course I\u2019d much rather overall just have my friggin\u2019 shortcut friggin\u2019 working again, <i>sheesh</i>.</li>\n <li>\n There has been some chatter in the <a href=\"https://indieweb.org/discuss\">IndieWeb chat</a> about different approaches to handling video content and posts in Micropub clients. I may join in!\n <br /></li>\n</ul>"
},
"author": {
"type": "card",
"name": "Marty McGuire",
"url": "https://martymcgui.re/",
"photo": "https://martymcgui.re/images/logo.jpg"
},
"post-type": "article",
"_id": "25235001",
"_source": "175",
"_is_read": true
}
This is the best description of what my own website feels like to me:
A search engine for my mind
{
"type": "entry",
"published": "2021-11-21T13:45:02Z",
"url": "https://adactio.com/links/18634",
"category": [
"blogging",
"writing",
"sharing",
"indieweb",
"blogs",
"personal",
"publishing"
],
"bookmark-of": [
"https://remysharp.com/2021/11/21/why-i-write-and-when-i-dont"
],
"content": {
"text": "Why I write and why I won\u2019t\n\n\n\nThis is the best description of what my own website feels like to me:\n\n\n A search engine for my mind",
"html": "<h3>\n<a class=\"p-name u-bookmark-of\" href=\"https://remysharp.com/2021/11/21/why-i-write-and-when-i-dont\">\nWhy I write and why I won\u2019t\n</a>\n</h3>\n\n<p>This is the best description of what my own website feels like to me:</p>\n\n<blockquote>\n <p>A search engine for my mind</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": "25224235",
"_source": "2",
"_is_read": true
}
Nice to hear you are enjoying the series! (It turns out to be a series.) It also feels really good to have finally found a form again where I can cycle between writing code and writing blog posts about the code.
Looking forward to read your article && yaay it worked!
Edit: lol, next topic really is Webmentions: I had to manually send this one because I am certainly not parsing HTML with regex (I would never) and your rel
has no quotes around it.
{
"type": "entry",
"published": "2021-11-18T21:33:06+0000",
"url": "https://seblog.nl/2021/11/18/3/nice-to-hear-you-are-enjoying",
"in-reply-to": [
"https://hacdias.com/2021/11/18/txaznaajbj"
],
"content": {
"text": "Nice to hear you are enjoying the series! (It turns out to be a series.) It also feels really good to have finally found a form again where I can cycle between writing code and writing blog posts about the code.\nLooking forward to read your article && yaay it worked!\nEdit: lol, next topic really is Webmentions: I had to manually send this one because I am certainly not parsing HTML with regex (I would never) and your rel has no quotes around it.",
"html": "<p>Nice to hear you are enjoying the series! (It turns out to be a series.) It also feels really good to have finally found a form again where I can cycle between writing code and writing blog posts about the code.</p>\n<p>Looking forward to read your article && yaay it worked!</p>\n<p><strong>Edit</strong>: lol, next topic really is Webmentions: I had to manually send this one because I am certainly not parsing HTML with regex (I would never) and your <code>rel</code> has no quotes around it.</p>"
},
"author": {
"type": "card",
"name": "Sebastiaan Andeweg",
"url": "https://seblog.nl/",
"photo": "https://seblog.nl/photo.jpg"
},
"post-type": "reply",
"_id": "25171490",
"_source": "1366",
"_is_read": true
}
Next up must be Webmentions, I feel. I just posted this article with a lot of backlinks to old posts, but since I send all Webmentions in a synchronous way on first-post-visit, it took ages, and I actually got a 502 Bad Gateway out of my site. But I also need weekend, so we will see.
{
"type": "entry",
"published": "2021-11-18T20:24:21+0000",
"url": "https://seblog.nl/2021/11/18/2/next-up-webmentions",
"category": [
"yak"
],
"content": {
"text": "Next up must be Webmentions, I feel. I just posted this article with a lot of backlinks to old posts, but since I send all Webmentions in a synchronous way on first-post-visit, it took ages, and I actually got a 502 Bad Gateway out of my site. But I also need weekend, so we will see.",
"html": "<p>Next up must be Webmentions, I feel. I just posted <a href=\"https://seblog.nl/2021/11/18/1/indieauth-without-indieauth-com\">this article</a> with a lot of backlinks to old posts, but since I send all Webmentions in a synchronous way on first-post-visit, it took ages, and I actually got a 502 Bad Gateway out of my site. But I also need weekend, so we will see.</p>"
},
"author": {
"type": "card",
"name": "Sebastiaan Andeweg",
"url": "https://seblog.nl/",
"photo": "https://seblog.nl/photo.jpg"
},
"post-type": "note",
"_id": "25171491",
"_source": "1366",
"_is_read": true
}
{
"type": "entry",
"published": "2021-11-18T20:18:05+0000",
"url": "https://seblog.nl/2021/11/18/1/indieauth-without-indieauth-com",
"category": [
"yak",
"indieauth"
],
"name": "IndieAuth without IndieAuth.com",
"content": {
"text": "In February 2017, I added the ability for other people to log in to my site, both via IndieAuth and Twitter. Since June 2019 this feature is more useful, as I moved all my checkins to being \u2018private\u2019, meaning there is actually something to see (albeit sparsely posted).\nFor this, I used the now outdated and deprecated service IndieAuth.com, which back then was also used to log in to the IndieWeb wiki. Due to the confusion between IndieAuth.com (the service) and IndieAuth (the protocol), a new project called IndieLogin was started and the IndieWeb wiki moved to that one. Since it didn\u2019t offer that login service to others, as IndieAuth.com did, I never switched.\nSince this week I have a new IndieAuth endpoint for myself. (Meaning: a place I can use to prove my own identity to others.) Unfortunately, it is not compatible with the outdated IndieAuth.com, so I could not use it to prove my identity to my own site. Because this felt wrong (and because I had the IndieAuth flow in my head again now), I decided that my site needed to do that part of IndieAuth on it\u2019s own as well.\nSince I was at it, I also have Twitter login working via the new flow. That was easier, because the library support was more plug-and-play.\nJuggling with cookies\nLast week I wrote about my new setup where I run two applications, the old PHP and the new Elixir, behind an unusual NGINX configuration. For the aforementioned feature of authentication, I had to create even a bigger beast.\nAll the posts, and all the logic for showing or hiding private posts, are still in PHP. The new authentication is in Elixir. Both ends are storing the information about the current logged-in user in session cookies. How do I merge those two into one user experience?\nLuckily, since both applications run under the same domain, the browser is actually unaware of the fact that there are two apps. It just sends all cookies back.\nSo, in PHP I ask for all headers, look for a cookie-one that is named _yak_key, and if it is there, it makes a direct localhost call to Yak, the Elixir server, with that cookie. Yak exposes one route that just returns the currently logged-in user as a JSON. If that call returns a user, PHP can set a cookie of its own.\nThen for the logout, PHP used to redirect to the homepage, but now it redirects to the page that logs you out of Yak, which redirects to the homepage.\nAt some point this setup will change again, but for now it seems to me as a good way to make one further step in the features I want to support in the new version of my site, while keeping the old one running.\nOh yeah, you may hunt down that localhost-call that checks the login status. It is actually exposed to the outside world too. But if you can provide it with a cookie for a person that is not you, that person and I have a problem anyway, regardless of you knowing the endpoint.",
"html": "<p>In <a href=\"https://seblog.nl/2017/02/11/3/day-27-private-posts\">February 2017</a>, I added the ability for other people to log in to my site, both via <a href=\"https://indieauth.net\">IndieAuth</a> and Twitter. Since <a href=\"https://seblog.nl/2019/06/01/1/private-posts-move-of-checkins\">June 2019</a> this feature is more useful, as I moved all my checkins to being \u2018private\u2019, meaning there is actually something to see (albeit sparsely posted).</p>\n<p>For this, I used the now outdated and deprecated service <a href=\"https://indieauth.com\">IndieAuth.com</a>, which back then was also used to log in to the <a href=\"https://indieweb.org\">IndieWeb wiki</a>. Due to the confusion between IndieAuth.com (the service) and IndieAuth (the protocol), a new project called <a href=\"https://indielogin.com\">IndieLogin</a> was started and the IndieWeb wiki moved to that one. Since it didn\u2019t offer that login service to others, as IndieAuth.com did, I never switched.</p>\n<p>Since this week I have a new IndieAuth endpoint for myself. (Meaning: a place I can use to prove my own identity to others.) Unfortunately, it is not compatible with the outdated IndieAuth.com, so I could not use it to prove my identity to my own site. Because this felt wrong (and because I had the IndieAuth flow in my head again now), I decided that my site needed to do that part of IndieAuth on it\u2019s own as well.</p>\n<p>Since I was at it, I also have Twitter login working via the new flow. That was easier, because the library support was more plug-and-play.</p>\n<h2>Juggling with cookies</h2>\n<p>Last week I <a href=\"https://seblog.nl/2021/11/12/1/yak-strangling-php-with-phoenix-and-nginx\">wrote about</a> my new setup where I run two applications, the old PHP and the new Elixir, behind an unusual NGINX configuration. For the aforementioned feature of authentication, I had to create even a bigger beast.</p>\n<p>All the posts, and all the logic for showing or hiding private posts, are still in PHP. The new authentication is in Elixir. Both ends are storing the information about the current logged-in user in session cookies. How do I merge those two into one user experience?</p>\n<p>Luckily, since both applications run under the same domain, the browser is actually unaware of the fact that there are two apps. It just sends all cookies back.</p>\n<p>So, in PHP I ask for all headers, look for a cookie-one that is named <code>_yak_key</code>, and if it is there, it makes a direct localhost call to Yak, the Elixir server, with that cookie. Yak exposes one route that just returns the currently logged-in user as a JSON. If that call returns a user, PHP can set a cookie of its own.</p>\n<p>Then for the logout, PHP used to redirect to the homepage, but now it redirects to the page that logs you out of Yak, which redirects to the homepage.</p>\n<p>At some point this setup will change again, but for now it seems to me as a good way to make one further step in the features I want to support in the new version of my site, while keeping the old one running.</p>\n<p>Oh yeah, you may hunt down that localhost-call that checks the login status. It is actually exposed to the outside world too. But if you can provide it with a cookie for a person that is not you, that person and I have a problem anyway, regardless of you knowing the endpoint.</p>"
},
"author": {
"type": "card",
"name": "Sebastiaan Andeweg",
"url": "https://seblog.nl/",
"photo": "https://seblog.nl/photo.jpg"
},
"post-type": "article",
"_id": "25171492",
"_source": "1366",
"_is_read": true
}
{
"type": "entry",
"name": "About",
"content": {
"text": "Taking a cross country flight\n\n\n\nHowdy! Let me introduce myself; my name is Marcus Povey, and I\u2019m a senior full stack software engineer, currently based in Europe. My clients include software houses, financial and governmental institutions, news agencies, and companies both large and small.\n\n\n\nI have helped build life saving medical software, secure messaging systems, high performance video platforms, and Open Source projects used around the world.\n\n\n\nMost recently, I\u2019ve been heading up a team of skilled software engineers developing software to facilitate and deliver cutting edge science across Europe, primarily in the fields of structural biology. I collaborate with some of the most important centres of scientific excellence, across Europe and beyond. I am involved in some of the most important and large scale EU Open Access projects developing new ways to access and reuse scientific research, including helping with the response to the global COVID-19 pandemic. I have spoken at large scale scientific conferences, and have helped shape EU data sharing policy.\n\n\n\nPreviously, I was the technical lead on the Elgg project, an Open Source social networking platform. This software is used by companies, universities and governments around the world to improve the efficiency of communication both internally and externally. I am also involved in the development of the Known platform, a modern social publishing platform that incorporates many Indieweb technologies.\n\n\n\nIf you\u2019re interested in knowing more about my professional experience, you can check out my resume. I am also available to hire!\n\n\n\n\u00bb Work with me!\nOutside of my professional life, I am passionate about travel. I live a fairly nomadic existence, and am always interested in exploring and living somewhere new.\u00a0\n\n\n\nI also collect hobbies like precious shinies.\n\n\n\n\n\n\n\nRight now I am training a number of martial arts (currently Judo, Capoeira & Boxing), I enjoy rock music, power lifting, archery, black smithing, I climb when I can, ride motorcycles, and pilot light aircraft.\n\n\n\nLet\u2019s go!",
"html": "<a href=\"https://www.marcus-povey.co.uk/wp-content/68FFE06B-77C0-4F93-BF28-9D312D196BAB-300x300-1.jpg\"><img width=\"300\" height=\"300\" src=\"https://www.marcus-povey.co.uk/wp-content/68FFE06B-77C0-4F93-BF28-9D312D196BAB-300x300-1.jpg\" alt=\"\" /></a>Taking a cross country flight\n\n\n\n<p>Howdy! Let me introduce myself; my name is <a href=\"https://mapkyca.info\">Marcus Povey</a>, and I\u2019m a senior full stack software engineer, currently based in Europe. My clients include software houses, financial and governmental institutions, news agencies, and companies both large and small.</p>\n\n\n\n<p>I have helped build life saving medical software, secure messaging systems, high performance video platforms, and Open Source projects used around the world.</p>\n\n\n\n<p>Most recently, I\u2019ve been heading up a team of skilled software engineers developing software to facilitate and deliver cutting edge science across Europe, primarily in the fields of structural biology. I collaborate with some of the most important centres of scientific excellence, across Europe and beyond. I am involved in some of the most important and large scale EU Open Access projects developing new ways to access and reuse scientific research, including helping with the response to the global COVID-19 pandemic. I have spoken at large scale scientific conferences, and have helped shape EU data sharing policy.</p>\n\n\n\n<p>Previously, I was the technical lead on the <a href=\"https://elgg.org\">Elgg</a> project, an Open Source social networking platform. This software is used by companies, universities and governments around the world to improve the efficiency of communication both internally and externally. I am also involved in the development of the <a href=\"https://github.com/idno/known\">Known</a> platform, a modern social publishing platform that incorporates many <a href=\"https://indieweb.org\">Indieweb</a> technologies.</p>\n\n\n\n<p>If you\u2019re interested in knowing more about my professional experience, you can check out my <a href=\"https://mapkyca.info\">resume</a>. I am also <a href=\"https://www.marcus-povey.co.uk/hire/\">available to hire</a>!</p>\n\n\n\n<strong>\u00bb <a href=\"https://www.marcus-povey.co.uk/hire/\">Work with me!</a></strong>\n<p>Outside of my professional life, I am passionate about travel. I live a fairly nomadic existence, and am always interested in exploring and living somewhere new.\u00a0</p>\n\n\n\n<p>I also collect hobbies like precious shinies.</p>\n\n\n\n\n\n\n\n<p>Right now I am training a number of martial arts (currently Judo, Capoeira & Boxing), I enjoy rock music, power lifting, archery, black smithing, I climb when I can, ride motorcycles, and pilot light aircraft.</p>\n\n\n\n<p><a href=\"https://www.marcus-povey.co.uk/hire/\"><strong>Let\u2019s go!</strong></a></p>"
},
"post-type": "article",
"_id": "25155169",
"_source": "244",
"_is_read": true
}