Congratulations!

[Valid Atom 1.0] This is a valid Atom 1.0 feed.

Recommendations

This feed is valid, but interoperability with the widest range of feed readers could be improved by implementing the following recommendations.

Source: http://tantek.com/log/posts.atom

  1. <?xml version="1.0" encoding="utf-8"?>
  2. <feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en-US">
  3.  <title>Tantek Çelik</title>
  4.  <link href="https://tantek.com/" rel="alternate" title="Tantek Çelik" type="text/html"/>
  5.  <link href="https://tantek.com/updates.atom" rel="self"/>
  6.  <link rel="hub" href="https://pubsubhubbub.superfeedr.com/"/>
  7.  <id>https://tantek.com/updates.atom</id>
  8.  <author>
  9.    <name>Tantek</name>
  10.    <uri>https://tantek.com/</uri>
  11.  </author>
  12.  <updated>2024-07-08T16:03:00-07:00</updated>
  13.  <entry>
  14.    <updated>2024-06-28T08:50:00-07:00</updated>
  15.    <published>2024-06-28T08:50:00-07:00</published>
  16.    <link href="https://tantek.com/2024/180/b1/responsible-inventing" rel="alternate" title="Responsible Inventing" type="text/html"/>
  17.    <id>https://tantek.com/2024/180/b1/responsible-inventing</id>
  18.    <title type="xhtml">
  19.      <div xmlns="http://www.w3.org/1999/xhtml" class="if-your-feed-reader-displays-this-then-it-is-violating-the-Atom-spec-RFC-4287-section-4.2.14">Responsible Inventing</div>
  20.    </title>
  21.    <content type="xhtml" xml:base="https://tantek.com/" xml:space="preserve">
  22.      <div xmlns="http://www.w3.org/1999/xhtml" xml:space="preserve">
  23.        <div class="entry-content e-content">
  24. <p>
  25. I finally understand why
  26. <a href="https://en.wikipedia.org/wiki/Milo_Rambaldi">Rambaldi</a>
  27. may have hidden so many inventions.
  28. </p>
  29. <h2 id="ri-forecast">Forecast</h2>
  30. <p>
  31. When you invent something, you should forecast the impact of your invention in the current cultural (social, political, economic, belief systems) context, and if it</p>
  32. <ul>
  33. <li> poses non trivial existential risk</li>
  34. <li> or is likely to cause more harm than good</li>
  35. </ul>
  36. <h2 id="ri-shoulds">Shoulds</h2>
  37. <p>
  38. Then you <strong>should</strong> stop, and:
  39. </p>
  40. <ol>
  41. <li id="ri-should-encrypt"> encrypt your work for a potentially better future context</li>
  42. <li id="ri-should-shred"> or destroy your notes, ideally in a way that minimizes risk of detection of their deliberate destruction</li>
  43. <li id="ri-should-avoid-detection"> and avoid any or any detectable use of your invention, because even the mere use of it may provide enough information for someone else to reinvent it who may not be as responsible. </li>
  44. </ol>
  45. <h2 id="ri-in-addition">In Addition</h2>
  46. <p>
  47. Insights and new knowledge are included in this meaning of “invention” and the guidance above.
  48. </p><p>
  49. Forecasting should consider both whether your invention could directly cause risk or more harm, or if it could be incorporated as a building block with other (perhaps yet to be invented) technologies to create risk or more harm.
  50. </p>
  51. <h2 id="ri-instead">Instead</h2>
  52. <p>
  53. Instead of continuing work on such inventions, shift your focus to:
  54. </p>
  55. <ol>
  56. <li> work on other inventions</li>
  57. <li> and document &amp; understand how &amp; why that current cultural context would contribute to existential risk or more harm than good</li>
  58. <li> and work to improve, evolve that cultural context to reduce or eliminate its contribution to existential risk, and or its aspects that would (or already do) cause more harm than good</li>
  59. </ol>
  60. <h2 id="ri-da-vinci">Da Vinci</h2>
  61. <p>
  62. The
  63. <a href="#ri-should-encrypt">Should (1)</a>
  64. provides a plausible explanation for why
  65. <a href="https://en.wikipedia.org/wiki/Leonardo_da_Vinci">Da Vinci</a>
  66. “encrypted” his writings in
  67. <a href="https://en.wikipedia.org/wiki/Mirror_writing#Notable_examples">mirror script</a>,
  68. deliberately making it difficult for others to read (and thus remember or reproduce).
  69. Per
  70. <a href="ri-should-shred">Should (2)</a>
  71. he also wrote in paper mediums of the time that were all destroyable,
  72. and he may have been successful in destroying without detection,
  73. since no one has found any evidence thereof, although such a lack of evidence is purely circumstantial and he may just as likely never destroyed any invention notes.
  74. </p>
  75. <h2 id="ri-precautions">Methods &amp; Precautions</h2>
  76. <p>
  77. Learning from Da Vinci’s example within the context of the
  78. <a href="#ri-shoulds">Shoulds</a>, we can infer additional methods and precautions to take when developing inventions:
  79. </p>
  80. <ul>
  81. <li> do not write initial invention notes where others (people or bots) may read them (e.g. most online services) because their ability to transcribe or make copies prevents
  82. <a href="ri-should-shred">Should (2)</a>.
  83. Instead use something like paper notes which can presumably be shredded or burned if necessary, or keep your notes in your head.</li>
  84. <li> do not use bound notebooks for initial invention notes because tearing out a page to destroy may be detectable by the bound remains left behind.
  85. instead use individual sheets of paper organized into folders. perhaps eventually bind your papers into a notebook. Which apparently
  86. <a href="https://en.wikipedia.org/wiki/Leonardo_da_Vinci#Journals_and_notes">Da Vinci did!</a>
  87. <blockquote>“These notebooks – originally loose papers of different types and sizes…”</blockquote>
  88. </li>
  89. <li> consider developing a simple unique cipher you can actively use when writing which will at least inconvenience, reduce, or slow the readability of your notes. even better if you can develop a
  90. <a href="https://en.wikipedia.org/wiki/Steganography">steganographic</a>
  91. cipher, where an obvious reading of your invention writings provides a plausible but alternative meaning, thus hiding your actual invention writings in plain sight.
  92. </li>
  93. </ul>
  94. <h2 id="ri-dream">Dream</h2>
  95. <p>
  96. Many of these insights came to me in a dream this morning, so clearly that I immediately wrote them down upon waking up, and continued writing extrapolations from the initial insights.
  97. </p>
  98. <h2 id="id-other-reading">Additional Reading</h2>
  99. <p>
  100. After writing down the above while it (and subsequent thoughts &amp; deductions) were fresh in mind, and typing it up, I did a web search for “responsible inventing” for prior similar, related, or possibly of interest works and found:
  101. </p>
  102. <ul>
  103. <li> IEEE Spectrum:
  104. <a href="https://spectrum.ieee.org/what-does-responsible-innovation-mean">What Does “Responsible Innovation” Mean?</a></li>
  105. <li> ResearchGate paper:
  106. <a href="https://www.researchgate.net/publication/262864436_What_Is_Responsible_about_Responsible_Innovation_Understanding_the_Ethical_Issues">What Is “Responsible” about Responsible Innovation? Understanding the Ethical Issues</a></li>
  107. <li> ScienceDirect paper:
  108. <a href="https://www.sciencedirect.com/science/article/pii/S0048733313000930">Developing a framework for responsible innovation</a></li>
  109. </ul>
  110. <h2 id="ri-invent-future">Invent The Future</h2>
  111. <p>
  112. While this post encourages forecasting and other methods for avoiding unintended harmful impacts of inventions, I want to close by placing those precautions within an active positive context.
  113. </p>
  114. <p>
  115. I believe it is the ultimate responsibility of an inventor to contribute, encourage, and actively create a positive vision of the future through their inventions. As
  116. <a href="https://en.wikiquote.org/wiki/Alan_Kay#1970s">Alan Kay said</a>:
  117. </p>
  118. <blockquote>
  119. “The best way to predict the future is to invent it.”
  120. </blockquote>
  121.  
  122. <h2 id="responsible-inventing-comments" style="margin-top:1.5em">Comments</h2>
  123. <p>Comments curated from
  124. <a href="https://indieweb.org/reply">replies on personal sites</a>
  125. and
  126. <a href="https://fed.brid.gy/web/tantek.com/notifications">federated replies</a>
  127. that include thoughts, questions, and related reading
  128. that contribute to the primary topic of the article.
  129. </p>
  130. <ol>
  131. <li class="u-comment h-cite">
  132. <a class="u-author h-card" href="https://paquita.masto.host/@crul">Crul</a>
  133. at
  134. <a class="u-url" href="https://paquita.masto.host/@crul/112698695985056254"><time class="dt-published">2024-06-29 00:20-07:00</time></a>:
  135. <div class="p-content p-name"><p>
  136. Also related: Paul Virilio's concept of "The integral accident":
  137. <a href="https://en.wikipedia.org/wiki/Paul_Virilio#The_integral_accident">en.wikipedia.org/wiki/Paul_Virilio#The_integral_accident</a>
  138. </p></div>
  139. </li>
  140.  
  141. <li class="u-comment h-cite">
  142. <a class="u-author h-card" href="https://front-end.social/@kizu">Roma Komarov</a>
  143. at
  144. <a class="u-url" href="https://front-end.social/@kizu/112698823224979332"><time class="dt-published">2024-06-29 00:52-07:00</time></a>:
  145. <div class="p-content p-name"><p>
  146. If some invention can pose a risk, should it be treated as a vulnerability?
  147. </p><p>
  148. Destroying/delaying an invention, in this case, could lead to it being re-invented and exploited in a different, less responsible, place.
  149. </p><p>
  150. Obviously, it doesn't mean that invention should be unleashed. But if it poses a risk, wouldn't it be more responsible to work on finding a way to minimize it, and, ideally, not alone?
  151. </p><p>
  152. There is probably no one good answer, and each case will be different.
  153. </p></div>
  154. </li>
  155.  
  156. <li class="u-comment h-cite">
  157. <a class="u-author h-card" href="https://phpc.social/@lewiscowles1986">Lewis Cowles</a>
  158. at
  159. <a class="u-url" href="https://phpc.social/@lewiscowles1986/112700783578377159"><time class="dt-published">2024-06-29 09:11-07:00</time></a>:
  160. <div class="p-content p-name"><p>
  161. I am unsure if it is always practical or possible, for an inventor to understand all the characteristics of their inventions and their impact beyond a very slim set of hops.
  162. </p><p>
  163. If things go well, I believe inventors can "believe their own hype", because they are human.
  164. </p><p>
  165. Questions: <br/>
  166. Is it a free pass if you make something awful and can't take it back?<br/>
  167. Would that make Ignorance a virtue?
  168. </p><p>
  169. This opens up many more problems, for both creators, and broader society.
  170. </p></div>
  171. </li>
  172.  
  173.  
  174. </ol>
  175.  
  176. </div>
  177.      </div>
  178.    </content>
  179.    <object-type xmlns="http://activitystrea.ms/spec/1.0/">article</object-type>
  180.  </entry>
  181.  <entry>
  182.    <updated>2024-06-24T21:31:00-07:00</updated>
  183.    <published>2024-06-24T21:31:00-07:00</published>
  184.    <link href="https://tantek.com/2024/176/t1/finished-broken-arrow-skyrace-23k" rel="alternate" title="" type="text/html"/>
  185.    <id>https://tantek.com/2024/176/t1/finished-broken-arrow-skyrace-23k</id>
  186.    <title type="xhtml">
  187.      <div xmlns="http://www.w3.org/1999/xhtml" class="if-your-feed-reader-displays-this-then-it-is-violating-the-Atom-spec-RFC-4287-section-4.2.14"/>
  188.    </title>
  189.    <content type="xhtml" xml:base="https://tantek.com/" xml:space="preserve">
  190.      <div xmlns="http://www.w3.org/1999/xhtml" xml:space="preserve">Finished my second Broken Arrow #<span class="p-category auto-tag">Skyrace</span> 23k<a id="t5Xd1_ref-1" href="#t5Xd1_note-1">¹</a> yesterday in 6:52:44! #<span class="p-category auto-tag">RingDasBell</span><br class="auto-break"/><br class="auto-break"/>This year’s #<span class="p-category auto-tag">BrokenArrowSkyrace</span><a id="t5Xd1_ref-2" href="#t5Xd1_note-2">²</a> 23k was actually that distance! I ran 23.3km with 4557' vertical climb! In contrast, last year’s "23k" race<a id="t5Xd1_ref-3" href="#t5Xd1_note-3">³</a> was rerouted (due to weather conditions) last minute to two laps of the 11k course, where my actual distance was 18.87km with 4905' vert.<br class="auto-break"/><br class="auto-break"/>I have been looking forward to this all year, to climbing the infamous "Stairway to Heaven" ladder to the top of Washeshu Peak (8885'/2692m elevation) for the first time (since last years’s race had to skip it).<br class="auto-break"/><br class="auto-break"/>This year’s Broken Arrow is the start of the Mountain Running World Cup<a id="t5Xd1_ref-4" href="#t5Xd1_note-4">⁴</a>. It’s a rare sports event opportunity to compete with the best in the sport, to literally run the same trails they do, on the same day, with the same start (there are no waves), and finish line.<br class="auto-break"/><br class="auto-break"/>Lots to write-up, for now, I’m grateful for the experience and accomplishment.<br class="auto-break"/><br class="auto-break"/>Super grateful for everyone who came out to cheer and especially my coach whose training and guidance got me here.<br class="auto-break"/><br class="auto-break"/>A few notes:<br class="auto-break"/><br class="auto-break"/>Great lining up with so many friends. <br class="auto-break"/><br class="auto-break"/>Hot day. Filled my ice bandana at the first aid station (Snow King) which made the rest possible. <br class="auto-break"/><br class="auto-break"/>Steady hydration &amp; fueling.<br class="auto-break"/><br class="auto-break"/>Fueling timeline notes (times are my H:MM race clock times from the start)<br class="auto-break"/><br class="auto-break"/>0:00 start<br class="auto-break"/>1:45 ate Picky Bar<br class="auto-break"/>2:00 finished Tailwind in 500ml bottle<br class="auto-break"/>2:08 Snow King aid station, refilled bottles one with water and the other with mandarin Tailwind, filled ice bandana with ice, picked up a few Spring Energy gels<br class="auto-break"/>3:15 ate Awesome Sauce gel<br class="auto-break"/>3:45 ate Awesome Sauce gel<br class="auto-break"/>~4:30 left Siberia aid station with refilled ice bandana, bottles, a few Spring Snacks, ate potato chips, a watermelon slice, salt+nuun add to one water bottle, mandarin Tailwind in the other<br class="auto-break"/>5:05 ate Awesome Sauce gel <br class="auto-break"/>5:35 (-13:39) left Julia aid station with another Spring Energy gel<br class="auto-break"/>6:03 ate Awesome Sauce gel<br class="auto-break"/>6:52:44 finish<br class="auto-break"/><br class="auto-break"/>Lots of incredible views along the way. The air was clean and quite breathable even nearing 9000'. Felt a bit slower but kept going within my capacity. <br class="auto-break"/><br class="auto-break"/>Kept an eye on the time remaining before cut-off compared to my distance and vert climbing remaining and pushed steadily when I could.<br class="auto-break"/><br class="auto-break"/>Finished with just over 7 minutes to spare before the official cut-off, to friends cheering on all sides. Saw and hugged my coach after ringing the bell at the finish.<br class="auto-break"/><br class="auto-break"/>What an experience.<br class="auto-break"/><br class="auto-break"/>#<span class="p-category auto-tag">BrokenArrowSkyrace</span> #<span class="p-category auto-tag">trailRace</span> #<span class="p-category auto-tag">trailRun</span> #<span class="p-category auto-tag">trailRunner</span> #<span class="p-category auto-tag">runner</span> #<span class="p-category auto-tag">running</span> #<span class="p-category auto-tag">trailRunning</span><br class="auto-break"/><br class="auto-break"/><a id="t5Xd1_note-1" href="#t5Xd1_ref-1">¹</a> <a class="auto-link" href="https://www.brokenarrowskyrace.com/23k">https://www.brokenarrowskyrace.com/23k</a><br class="auto-break"/><a id="t5Xd1_note-2" href="#t5Xd1_ref-2">²</a> <a class="auto-link" href="https://ultrasignup.com/register.aspx?did=106489">https://ultrasignup.com/register.aspx?did=106489</a><br class="auto-break"/><a id="t5Xd1_note-3" href="#t5Xd1_ref-3">³</a> <a class="auto-link" href="https://tantek.com/2023/178/t1/june-trailrunner-ultrarunner">https://tantek.com/2023/178/t1/june-trailrunner-ultrarunner</a><br class="auto-break"/><a id="t5Xd1_note-4" href="#t5Xd1_ref-4">⁴</a> <a class="auto-link" href="https://worldathletics.org/news/preview/mountain-running-world-cup-2024-opens-broken-arrow">https://worldathletics.org/news/preview/mountain-running-world-cup-2024-opens-broken-arrow</a></div>
  191.    </content>
  192.    <object-type xmlns="http://activitystrea.ms/spec/1.0/">note</object-type>
  193.  </entry>
  194.  <entry>
  195.    <updated>2024-06-21T22:02:00-07:00</updated>
  196.    <published>2024-06-21T22:02:00-07:00</published>
  197.    <link href="https://tantek.com/2024/173/t1/years-posse-microformats-adoption" rel="alternate" title="" type="text/html"/>
  198.    <id>https://tantek.com/2024/173/t1/years-posse-microformats-adoption</id>
  199.    <title type="xhtml">
  200.      <div xmlns="http://www.w3.org/1999/xhtml" class="if-your-feed-reader-displays-this-then-it-is-violating-the-Atom-spec-RFC-4287-section-4.2.14"/>
  201.    </title>
  202.    <content type="xhtml" xml:base="https://tantek.com/" xml:space="preserve">
  203.      <div xmlns="http://www.w3.org/1999/xhtml" xml:space="preserve">Happy 12 years of <a class="auto-link" href="https://indieweb.org/POSSE">https://indieweb.org/POSSE</a> #<span class="p-category auto-tag">POSSE</span> and<br class="auto-break"/>19 years of <a class="auto-link" href="https://microformats.org/">https://microformats.org/</a> #<span class="p-category auto-tag">microformats</span>! (as of yesterday, the 20th)<br class="auto-break"/><br class="auto-break"/>A few highlights from the past year:<br class="auto-break"/><br class="auto-break"/>POSSE (Publish on your Own Site, Syndicate Elsewhere) has grown steadily as a common practice in the #<span class="p-category auto-tag">IndieWeb</span> community, personal sites, CMSs (like Withknown, which itself reached 10 years in May!), and services (like <a class="auto-link" href="https://micro.blog">https://micro.blog</a>) for over a decade.<br class="auto-break"/><br class="auto-break"/>In its 12th year, POSSE broke through to broader technology press and adoption beyond the community. For example:<br class="auto-break"/><br class="auto-break"/>* David Pierce’s (<a class="auto-link" href="https://mas.to/@pierce">@pierce@mas.to</a>) excellent article <a class="auto-link" href="https://TheVerge.com">@TheVerge.com</a> (<a class="auto-link" href="https://mastodon.social/@verge">@verge@mastodon.social</a>): “The poster’s guide to the internet of the future” (<a class="auto-link" href="https://www.theverge.com/2023/10/23/23928550/posse-posting-activitypub-standard-twitter-tumblr-mastodon">https://www.theverge.com/2023/10/23/23928550/posse-posting-activitypub-standard-twitter-tumblr-mastodon</a>):<br class="auto-break"/>  “Your post appears natively on all of those platforms, typically with some kind of link back to your blog. And your blog becomes the hub for everything, your main home on the internet.<br class="auto-break"/>Done right, POSSE is the best of all posting worlds.”<br class="auto-break"/><br class="auto-break"/>* David also recorded a 29 minute podcast on POSSE with some great interviews: <a class="auto-link" href="https://podcasts.apple.com/us/podcast/the-posters-guide-to-the-new-internet/id430333725?i=1000632256014">https://podcasts.apple.com/us/podcast/the-posters-guide-to-the-new-internet/id430333725?i=1000632256014</a><br class="auto-break"/><br class="auto-break"/>* Cory Doctorow (<a class="auto-link" href="https://craphound.com">@craphound.com</a> <a class="auto-link" href="https://mamot.fr/@doctorow">@doctorow@mamot.fr</a>) declared in his Pluralistic blog (<a class="auto-link" href="https://pluralisticmamot.fr">@pluralisticmamot.fr</a>) post: “Vice surrenders” (<a class="auto-link" href="https://pluralistic.net/2024/02/24/anti-posse/">https://pluralistic.net/2024/02/24/anti-posse/</a>):<br class="auto-break"/>  “This is the moment for POSSE (Post Own Site, Share Everywhere [sic]), a strategy that sees social media as a strategy for bringing readers to channels that you control” <br class="auto-break"/><br class="auto-break"/>* And none other than Molly White (<a class="auto-link" href="https://mollywhite.net">@mollywhite.net</a> <a class="auto-link" href="https://hachyderm.io/@molly0xfff">@molly0xfff@hachyderm.io</a>) of <a class="auto-link" href="https://web3isgoinggreat.com">@web3isgoinggreat.com</a> (<a class="auto-link" href="https://indieweb.social/@web3isgreat">@web3isgreat@indieweb.social</a>) built, deployed, and started actively using her own POSSE setup as described in her post titled “POSSE” (<a class="auto-link" href="https://www.mollywhite.net/micro/entry/202403091817">https://www.mollywhite.net/micro/entry/202403091817</a>) to: <br class="auto-break"/>  "… write posts in the microblog and automatically crosspost them to Twitter/Mastodon/Bluesky, while keeping the original post on my site."<br class="auto-break"/>  <br class="auto-break"/>Congrats Molly and well done!<br class="auto-break"/><br class="auto-break"/><br class="auto-break"/>In its 19th year, the microformats formal #<span class="p-category auto-tag">microformats2</span> syntax and popular vocabularies h-card, h-entry, and h-feed, kept growing across IndieWeb (micro)blogging services and software like CMSs &amp; SSGs both for publishing, and richer peer-to-peer social web interactions via #<span class="p-category auto-tag">Webmention</span>.<br class="auto-break"/><br class="auto-break"/>Beyond the IndieWeb, the rel=me microformat, AKA #<span class="p-category auto-tag">relMe</span>, continues to be adopted by services to support #<span class="p-category auto-tag">distributed</span> #<span class="p-category auto-tag">verification</span>, such as these in the past year: <br class="auto-break"/><br class="auto-break"/>* Meta Platforms #<span class="p-category auto-tag">Threads</span> user profile "Link" field<a id="t5Xa1_ref-1" href="#t5Xa1_note-1">¹</a> <br class="auto-break"/>* #<span class="p-category auto-tag">Letterboxd</span> user profile website field<a id="t5Xa1_ref-2" href="#t5Xa1_note-2">²</a><br class="auto-break"/><br class="auto-break"/><br class="auto-break"/>For both POSSE and microformats, there is always more we can do to improve their techniques, technologies, and tools to help people own their content and identities online, while staying connected to friends across the web.<br class="auto-break"/><br class="auto-break"/>Got suggestions for this coming year? Join us in chat:<br class="auto-break"/>* <a class="auto-link" href="https://chat.indieweb.org/dev">https://chat.indieweb.org/dev</a><br class="auto-break"/>* <a class="auto-link" href="https://chat.indieweb.org/microformats">https://chat.indieweb.org/microformats</a><br class="auto-break"/>for discussions about POSSE and microformats, respectively.<br class="auto-break"/><br class="auto-break"/><br class="auto-break"/>Previously: <a class="auto-link" href="https://tantek.com/2023/171/t1/anniversaries-microformats-posse">https://tantek.com/2023/171/t1/anniversaries-microformats-posse</a><br class="auto-break"/><br class="auto-break"/><br class="auto-break"/>This is post 15 of #<span class="p-category auto-tag">100PostsOfIndieWeb</span>. #<span class="p-category auto-tag">100Posts</span><br class="auto-break"/><br class="auto-break"/>← <a class="auto-link" href="https://tantek.com/2024/151/t1/minimum-interesting-service-worker">https://tantek.com/2024/151/t1/minimum-interesting-service-worker</a><br class="auto-break"/>→ 🔮<br class="auto-break"/><br class="auto-break"/><br class="auto-break"/>Post glossary:<br class="auto-break"/><br class="auto-break"/>CMS<br class="auto-break"/>  <a class="auto-link" href="https://indieweb.org/CMS">https://indieweb.org/CMS</a><br class="auto-break"/>h-card<br class="auto-break"/>  <a class="auto-link" href="https://microformats.org/wiki/h-card">https://microformats.org/wiki/h-card</a><br class="auto-break"/>h-entry<br class="auto-break"/>  <a class="auto-link" href="https://microformats.org/wiki/h-entry">https://microformats.org/wiki/h-entry</a><br class="auto-break"/>h-feed<br class="auto-break"/>  <a class="auto-link" href="https://microformats.org/wiki/h-feed">https://microformats.org/wiki/h-feed</a><br class="auto-break"/>microformats2 syntax<br class="auto-break"/>  <a class="auto-link" href="https://microformats.org/wiki/microformats2-parsing">https://microformats.org/wiki/microformats2-parsing</a><br class="auto-break"/>rel-me<br class="auto-break"/>  <a class="auto-link" href="https://microformats.org/wiki/rel-me">https://microformats.org/wiki/rel-me</a><br class="auto-break"/>SSG<br class="auto-break"/>  <a class="auto-link" href="https://indieweb.org/SSG">https://indieweb.org/SSG</a><br class="auto-break"/>Webmention<br class="auto-break"/>  <a class="auto-link" href="https://indieweb.org/Webmention">https://indieweb.org/Webmention</a><br class="auto-break"/>Withknown<br class="auto-break"/>  <a class="auto-link" href="https://indieweb.org/Known">https://indieweb.org/Known</a><br class="auto-break"/><br class="auto-break"/><br class="auto-break"/>References:<br class="auto-break"/><br class="auto-break"/><a id="t5Xa1_note-1" href="#t5Xa1_ref-1">¹</a> <a class="auto-link" href="https://tantek.com/2023/234/t1/threads-supports-indieweb-rel-me">https://tantek.com/2023/234/t1/threads-supports-indieweb-rel-me</a><br class="auto-break"/><a id="t5Xa1_note-2" href="#t5Xa1_ref-2">²</a> <a class="auto-link" href="https://indieweb.org/rel-me#Letterboxd">https://indieweb.org/rel-me#Letterboxd</a></div>
  204.    </content>
  205.    <object-type xmlns="http://activitystrea.ms/spec/1.0/">note</object-type>
  206.  </entry>
  207.  <entry>
  208.    <updated>2024-05-30T11:21:00-07:00</updated>
  209.    <published>2024-05-30T11:21:00-07:00</published>
  210.    <link href="https://tantek.com/2024/151/t1/minimum-interesting-service-worker" rel="alternate" title="" type="text/html"/>
  211.    <id>https://tantek.com/2024/151/t1/minimum-interesting-service-worker</id>
  212.    <title type="xhtml">
  213.      <div xmlns="http://www.w3.org/1999/xhtml" class="if-your-feed-reader-displays-this-then-it-is-violating-the-Atom-spec-RFC-4287-section-4.2.14"/>
  214.    </title>
  215.    <content type="xhtml" xml:base="https://tantek.com/" xml:space="preserve">
  216.      <div xmlns="http://www.w3.org/1999/xhtml" xml:space="preserve">Yesterday I proposed the idea of a “minimum interesting service worker” that could provide a link (or links) to archives or mirrors when your site was unavailable as one possible solution to the desire to make personal #<span class="p-category auto-tag">indieweb</span> sites more reliable by providing at least a user path to “soft repair” links to your site that may otherwise seem broken.<br class="auto-break"/><br class="auto-break"/>Minimum because it only requires two files and one line of script in site footer template, and interesting because it provides both a novel user benefit and personal site publisher benefits.<br class="auto-break"/><br class="auto-break"/>The idea occurred to me during an informal coffee chat over Zoom with a couple of other Indieweb community folks yesterday, and afterwards I braindumped a bit into the IndieWeb Developers Chat channel<a id="t5XD1_ref-1" href="#t5XD1_note-1">¹</a>. Figured it was worth writing up rather than waiting to implement it.<br class="auto-break"/><br class="auto-break"/>Basic idea:<br class="auto-break"/><br class="auto-break"/>You have a service worker (and “offline” HTML page) on your personal site, installed from any page on your site, that all it does is cache the offline page, and on future requests to your site checks to see if the requested page is available, and if so serves it, otherwise it displays your offline page with a “site appears to be unreachable” message that a lot of service workers provide, AND provides an algorithmically constructed link to the page on an archive (e.g. Internet Archive) or static mirror of your site (typically at another domain).<br class="auto-break"/><br class="auto-break"/>This is minimal because it requires only two files: your service worker (a JS file) and your offline page (a minimal self-contained static HTML file with inline CSS). Doable in &lt;1k bytes of code, with no additional local caching or storage requirements, thus a negligible impact on site visitors (likely less than the cookies that major sites store).<br class="auto-break"/><br class="auto-break"/>User benefit:<br class="auto-break"/><br class="auto-break"/>If someone has ever visited your personal site, then in the future whenever they click a link to your pages or posts, if your site/domain is unavailable for any reason, then the reader would see a notice (from your offline page) and a link to view an archive/mirror copy instead, thus providing a one-click ability for the reader to “soft-repair” any otherwise apparently broken links to your site.<br class="auto-break"/><br class="auto-break"/>Personal site publisher benefits:<br class="auto-break"/><br class="auto-break"/>Having such a service worker that automatically provides your readers links to where they can view your content on an archive or mirror means you can go on vacation or otherwise step away from your personal site, knowing that if it does go down, (at least prior) site visitors will still have a way to click-through and view your published content.<br class="auto-break"/><br class="auto-break"/>Additional enhancements:<br class="auto-break"/><br class="auto-break"/>Ideally any archive or mirror copies would use rel=canonical to link back to the page on your domain, so any crawlers or search engines could automatically prefer your original page, or browsers could offer the user a choice to “View original”. You can do that by including a rel=canonical link in all your original pages, so when they are archived or mirrored, those copies automatically include a rel=canonical link back to your original page or post.<br class="auto-break"/><br class="auto-break"/>The simplest implementation would be to ping the Internet Archive to save<a id="t5XD1_ref-2" href="#t5XD1_note-2">²</a> your page or post upon publishing it. You could also add code to your site to explicitly generate a static mirror of your pages, perhaps with an SSG or crawler like Spiderpig, to a GitHub repo, which is then auto-served as GitHub static pages, perhaps on its own domain yet at the same paths as your original pages (to make it trivial to generate such mirror links automatically).<br class="auto-break"/><br class="auto-break"/>If you’re using links to the Internet Archive, you can generate them automatically by prefixing your page URL with <a class="auto-link" href="https://web.archive.org/web/*/">https://web.archive.org/web/*/</a> e.g. this post:<br class="auto-break"/><br class="auto-break"/><a class="auto-link" href="https://web.archive.org/web/*/https://tantek.com/2024/151/t1/minimum-interesting-service-worker">https://web.archive.org/web/*/https://tantek.com/2024/151/t1/minimum-interesting-service-worker</a><br class="auto-break"/><br class="auto-break"/>Possible generic library:<br class="auto-break"/><br class="auto-break"/>It may be possible to write this minimum interesting service worker (e.g. misv.js) as a generic (rather than site-specific) service worker that literally anyone with a personal site could “install” as is (a JS file, an HTML file, and a one-line script tag in their site-wide footer) and it would figure everything out from the context it is running in, unchanged (zero configuration necessary).<br class="auto-break"/><br class="auto-break"/><br class="auto-break"/>This is post 14 of #<span class="p-category auto-tag">100PostsOfIndieWeb</span>. #<span class="p-category auto-tag">100Posts</span><br class="auto-break"/><br class="auto-break"/>← <a class="auto-link" href="https://tantek.com/2024/072/t1/created-at-indiewebcamp-brighton">https://tantek.com/2024/072/t1/created-at-indiewebcamp-brighton</a><br class="auto-break"/>→ <a class="auto-link" href="https://tantek.com/2024/173/t1/years-posse-microformats-adoption">https://tantek.com/2024/173/t1/years-posse-microformats-adoption</a><br class="auto-break"/><br class="auto-break"/><br class="auto-break"/>Post glossary:<br class="auto-break"/><br class="auto-break"/>GitHub static pages<br class="auto-break"/>  <a class="auto-link" href="https://indieweb.org/GitHub_Pages">https://indieweb.org/GitHub_Pages</a><br class="auto-break"/>HTML<br class="auto-break"/>  <a class="auto-link" href="https://indieweb.org/HTML">https://indieweb.org/HTML</a><br class="auto-break"/>JS<br class="auto-break"/>  <a class="auto-link" href="https://indieweb.org/js">https://indieweb.org/js</a><br class="auto-break"/>rel-canonical<br class="auto-break"/>  <a class="auto-link" href="https://indieweb.org/rel-canonical">https://indieweb.org/rel-canonical</a><br class="auto-break"/>service worker<br class="auto-break"/>  <a class="auto-link" href="https://indieweb.org/service_worker">https://indieweb.org/service_worker</a><br class="auto-break"/>Spiderpig<br class="auto-break"/>  <a class="auto-link" href="https://indieweb.org/Spiderpig">https://indieweb.org/Spiderpig</a><br class="auto-break"/>SSG<br class="auto-break"/>  <a class="auto-link" href="https://indieweb.org/SSG">https://indieweb.org/SSG</a><br class="auto-break"/><br class="auto-break"/>  <br class="auto-break"/>References:<br class="auto-break"/><br class="auto-break"/><a id="t5XD1_note-1" href="#t5XD1_ref-1">¹</a> <a class="auto-link" href="https://chat.indieweb.org/dev/2024-05-29#t1717006352142600">https://chat.indieweb.org/dev/2024-05-29#t1717006352142600</a><br class="auto-break"/><a id="t5XD1_note-2" href="#t5XD1_ref-2">²</a> <a class="auto-link" href="https://indieweb.org/Internet_Archive#Trigger_an_Archive">https://indieweb.org/Internet_Archive#Trigger_an_Archive</a></div>
  217.    </content>
  218.    <object-type xmlns="http://activitystrea.ms/spec/1.0/">note</object-type>
  219.  </entry>
  220.  <entry>
  221.    <updated>2024-05-29T19:00:00-07:00</updated>
  222.    <published>2024-05-29T19:00:00-07:00</published>
  223.    <link href="https://tantek.com/2024/150/t1/ran-baytobreakers" rel="alternate" title="" type="text/html"/>
  224.    <id>https://tantek.com/2024/150/t1/ran-baytobreakers</id>
  225.    <title type="xhtml">
  226.      <div xmlns="http://www.w3.org/1999/xhtml" class="if-your-feed-reader-displays-this-then-it-is-violating-the-Atom-spec-RFC-4287-section-4.2.14"/>
  227.    </title>
  228.    <content type="xhtml" xml:base="https://tantek.com/" xml:space="preserve">
  229.      <div xmlns="http://www.w3.org/1999/xhtml" xml:space="preserve">Ran my 12th #<span class="p-category auto-tag">BayToBreakers</span> race in 1:59:54 on Sunday 2024-05-19. <br class="auto-break"/><br class="auto-break"/>After a comedy of transit struggles to get to the start line, I jumped in with Corral C runners (my bib was for Corral B) and started with them.<br class="auto-break"/><br class="auto-break"/>Great seeing the Midnight Runners crab rave cheer gang in Hayes Valley before Hayes Hill.<br class="auto-break"/><br class="auto-break"/>Made it into Golden Gate Park, and eventually saw Vivek and David Lam making their way back from the finish.<br class="auto-break"/><br class="auto-break"/>Just before the bison paddock, I saw Paddy &amp; Eleanor walking back as well, and stopped to briefly chat with them.<br class="auto-break"/><br class="auto-break"/>Soon after I saw Adrienne and a few other #<span class="p-category auto-tag">NPSF</span> pals running and as they stopped to say hi to Paddy, I took off to go finish.<br class="auto-break"/><br class="auto-break"/>Adrienne and friends caught up to me on the last segment before Ocean Beach, and decided to run together. After turning the corner onto Great Highway, I could see the finish line. Glancing down at my watch there seemed to be enough time to finish under 2 hours if we picked it up. I asked Adrienne if we could try for a sub-2 hour time and she said to go for it. We picked up the pace and after crossing the finish line I stopped my Garmin — it read 1:59:54.<br class="auto-break"/><br class="auto-break"/>Oddly the official Bay to Breakers results (which are not at a linkable URL) showed 2:00:07. The only explanation I have is after the first timing strip after the finish line where I stopped my watch, there was a big crowd of loitering people that made it hard to keep moving, and cross a second timing strip. It is possible the first timing strip did not register my bib chip, and only the second timing strip picked it up. I have emailed Bay to Breakers to see if they can correct it, and included a link to my Strava activity that shows I recorded the entire race on my watch.<br class="auto-break"/><br class="auto-break"/>It was a harder race than usual, despite the good weather.<br class="auto-break"/><br class="auto-break"/>There were a few things that contributed. First, I had run each of the prior two days: 5km+ at Friday night’s Midnight Runners 5th anniversary run and run/walk celebration afterwards totaling ~5 miles, and then 6.5 miles at SFRC on the trails on Saturday.<br class="auto-break"/><br class="auto-break"/>I slept reasonably well the night before the race, and having checked the news announcements about the availability of transit options in the morning, planned accordingly. When I checked the actual train arrival times, none of the MUNI trains that were supposed to be running were running. I ran down to take the MUNI bus which was supposed to go downtown, except it stopped at Van Ness avenue, inexplicably, and the driver told everyone it was the last stop.<br class="auto-break"/><br class="auto-break"/>Admittedly I was already annoyed that SF MUNI for some reason decided to stop the MUNI trains the morning of Bay to Breakers that could easily have taken thousands of runners to near the race start at Embarcadero via the Market Street subway. Having the bus stop sooner than expected was a second disappointment and discouragement.<br class="auto-break"/><br class="auto-break"/>I (and many other runners) decided to run towards the start, which was still ~2 miles away at that point.<br class="auto-break"/><br class="auto-break"/>Upon reaching the Civic Center station on Market street, we realized from the street level displays that BART trains appeared to be running normally like any other Sunday, so we went downstairs and paid for a second transit ticket to take the BART a few stops.<br class="auto-break"/><br class="auto-break"/>The BART train was full of costumed Bay to Breakers runners. Disembarking at the Embarcadero station, I jogged/ran the rest of the way around the entrance corral maze to the right spot for Corral B entrants, and joined the group waiting at the start line.<br class="auto-break"/><br class="auto-break"/>Lessons learned: I am not trusting MUNI rail or bus into downtown on Bay to Breakers race day again, despite any announcements from SFMTA. Too many years of bad experiences.<br class="auto-break"/><br class="auto-break"/>However, BART seems reliable so I plan to find my way to taking BART in the future. Perhaps by taking a bus to the 16th street BART station, avoiding all street closures.<br class="auto-break"/><br class="auto-break"/>Having missed my start corral due to the transit mishaps, I didn’t see anyone else I knew. The combination of being annoyed at MUNI’s unreliability (both in what was announced vs what was running and premature bus termination) and starting in a crowd not knowing anyone took my motivation down several notches.<br class="auto-break"/><br class="auto-break"/>Still, the weather was pleasant yet cool, ideal for a race so I ran a pace that felt good for me, and kept an eye out for friends along the course. I stopped after mile 1 for a portapotty pitstop. Back in the chaos of Howard street and then Ninth to Hayes, I saw a few folks I knew from a distance.<br class="auto-break"/><br class="auto-break"/>Seeing and high-fiving the Midnight Runners crab race cheer crew at Hayes Hill turned my mood around though, and I enjoyed the rest of the race, from Hayes Hill through Golden Gate Park.<br class="auto-break"/><br class="auto-break"/>It was my slowest Bay to Breakers yet, however first in a while that I finished with friends!<br class="auto-break"/><br class="auto-break"/>After we grabbed our medals and snacks in the finish area, I hiked/jogged back to the Panhandle, found the Midnight Runners crab rave crew keeping the party going and joined in.<br class="auto-break"/><br class="auto-break"/>2023: <a class="auto-link" href="https://tantek.com/2023/157/t1/ran-baytobreakers">https://tantek.com/2023/157/t1/ran-baytobreakers</a><br class="auto-break"/><br class="auto-break"/>#<span class="p-category auto-tag">2024_140</span> #<span class="p-category auto-tag">SanFrancisco</span> #<span class="p-category auto-tag">run</span> #<span class="p-category auto-tag">runner</span> #<span class="p-category auto-tag">race</span> #<span class="p-category auto-tag">roadrace</span> #<span class="p-category auto-tag">b2b</span> #<span class="p-category auto-tag">bay2breakers</span></div>
  230.    </content>
  231.    <object-type xmlns="http://activitystrea.ms/spec/1.0/">note</object-type>
  232.  </entry>
  233.  <entry>
  234.    <updated>2024-05-18T17:07:00-07:00</updated>
  235.    <published>2024-05-18T17:07:00-07:00</published>
  236.    <link href="https://tantek.com/2024/139/t1/indiewebcamp-dusseldorf-btconf-inspiration" rel="alternate" title="" type="text/html"/>
  237.    <id>https://tantek.com/2024/139/t1/indiewebcamp-dusseldorf-btconf-inspiration</id>
  238.    <title type="xhtml">
  239.      <div xmlns="http://www.w3.org/1999/xhtml" class="if-your-feed-reader-displays-this-then-it-is-violating-the-Atom-spec-RFC-4287-section-4.2.14"/>
  240.    </title>
  241.    <content type="xhtml" xml:base="https://tantek.com/" xml:space="preserve">
  242.      <div xmlns="http://www.w3.org/1999/xhtml" xml:space="preserve">Still sitting with the awesomeness that was this past week and weekend’s 1-2 combination of:<br class="auto-break"/><br class="auto-break"/>#<span class="p-category auto-tag">IndieWebCamp</span> Düsseldorf — <a class="auto-link" href="https://indieweb.org/2024/DUS">https://indieweb.org/2024/DUS</a><br class="auto-break"/>#<span class="p-category auto-tag">btconf</span> Düsseldorf — <a class="auto-link" href="https://beyondtellerrand.com/events/dusseldorf-2024">https://beyondtellerrand.com/events/dusseldorf-2024</a><br class="auto-break"/><br class="auto-break"/>Great seeing old friends and meeting new amazing people as well. So many thoughtful inspiring conversations germinating new ideas for creative projects.<br class="auto-break"/><br class="auto-break"/>Took lots of photos and notes.<br class="auto-break"/><br class="auto-break"/>We recorded all the IndieWebCamp day 1 #<span class="p-category auto-tag">BarCamp</span> style breakout sessions, and I believe all the Beyond Tellerand talks were recorded as well. I’m looking forward to rewatching the sessions and talks and reconnecting with all the ideas and open tabs in my browser.<br class="auto-break"/><br class="auto-break"/>Aside: this past Tuesday, the second day of the 2024 Beyond Tellerand talks, was also the five year anniversary of my closing talk at btconf DUS 2019: _Take Back Your Web_ (<a class="auto-link" href="https://www.youtube.com/watch?v=qBLob0ObHMw">https://www.youtube.com/watch?v=qBLob0ObHMw</a> <iframe class="youtube-player auto-embed figure" width="480" height="385" style="border:0" src="https://www.youtube.com/embed/qBLob0ObHMw"/>)</div>
  243.    </content>
  244.    <object-type xmlns="http://activitystrea.ms/spec/1.0/">note</object-type>
  245.  </entry>
  246.  <entry>
  247.    <updated>2024-05-10T04:51:00-07:00</updated>
  248.    <published>2024-05-10T04:51:00-07:00</published>
  249.    <link href="https://tantek.com/2024/131/t1/mozilla-origin-trials" rel="alternate" title="" type="text/html"/>
  250.    <id>https://tantek.com/2024/131/t1/mozilla-origin-trials</id>
  251.    <title type="xhtml">
  252.      <div xmlns="http://www.w3.org/1999/xhtml" class="if-your-feed-reader-displays-this-then-it-is-violating-the-Atom-spec-RFC-4287-section-4.2.14"/>
  253.    </title>
  254.    <content type="xhtml" xml:base="https://tantek.com/" xml:space="preserve">
  255.      <div xmlns="http://www.w3.org/1999/xhtml" xml:space="preserve">For #<span class="p-category auto-tag">webDevelopers</span> who like to try out pre-release features in #<span class="p-category auto-tag">browsers</span>, in addition to the numerous #<span class="p-category auto-tag">Firefox</span> experimental features which everyone has access to in Nightly Builds (as documented by MDN<a id="t5Wt1_ref-1" href="#t5Wt1_note-1">¹</a>) did you know that #<span class="p-category auto-tag">Mozilla</span> also has Origin Trials?<br class="auto-break"/><br class="auto-break"/>Instructions and how to participate on the Mozilla Wiki:<br class="auto-break"/><br class="auto-break"/><a class="auto-link" href="https://wiki.mozilla.org/Origin_Trials">https://wiki.mozilla.org/Origin_Trials</a><br class="auto-break"/><br class="auto-break"/>In addition, we’ve linked to the #<span class="p-category auto-tag">originTrial</span> documentation pages of #<span class="p-category auto-tag">GoogleChrome</span> and #<span class="p-category auto-tag">MicrosoftEdge</span> if you want to check those out. Linkbacks welcome of course.<br class="auto-break"/><br class="auto-break"/>#<span class="p-category auto-tag">webDev</span> #<span class="p-category auto-tag">originTrials</span> #<span class="p-category auto-tag">webBrowser</span> #<span class="p-category auto-tag">webBrowsers</span><br class="auto-break"/><br class="auto-break"/>References:<br class="auto-break"/><br class="auto-break"/><a id="t5Wt1_note-1" href="#t5Wt1_ref-1">¹</a> <a class="auto-link" href="https://developer.mozilla.org/en-US/docs/Mozilla/Firefox/Experimental_features">https://developer.mozilla.org/en-US/docs/Mozilla/Firefox/Experimental_features</a></div>
  256.    </content>
  257.    <object-type xmlns="http://activitystrea.ms/spec/1.0/">note</object-type>
  258.  </entry>
  259.  <entry>
  260.    <updated>2024-04-29T18:53:00-07:00</updated>
  261.    <published>2024-04-29T18:53:00-07:00</published>
  262.    <link href="https://tantek.com/2024/120/t1/library-of-infinite-loan" rel="alternate" title="" type="text/html"/>
  263.    <id>https://tantek.com/2024/120/t1/library-of-infinite-loan</id>
  264.    <title type="xhtml">
  265.      <div xmlns="http://www.w3.org/1999/xhtml" class="if-your-feed-reader-displays-this-then-it-is-violating-the-Atom-spec-RFC-4287-section-4.2.14"/>
  266.    </title>
  267.    <content type="xhtml" xml:base="https://tantek.com/" xml:space="preserve">
  268.      <div xmlns="http://www.w3.org/1999/xhtml" xml:space="preserve">The Library of Infinite Loan is a physical world practice I conceived of many many years ago<a id="t5Wh1_ref-1" href="#t5Wh1_note-1">¹</a>, implemented in minimal prototype form 5+ years ago<a id="t5Wh1_ref-2" href="#t5Wh1_note-2">²</a>, shared a summary with the #<span class="p-category auto-tag">IndieWeb</span> community at least four years ago at #<span class="p-category auto-tag">IndieWebCamp</span> Austin in 2020<a id="t5Wh1_ref-3" href="#t5Wh1_note-3">³</a> and last year in IndieWeb chat<a id="t5Wh1_ref-4" href="#t5Wh1_note-4">⁴</a>, so it’s about time<a id="t5Wh1_ref-5" href="#t5Wh1_note-5">⁵</a> I wrote it down. <br class="auto-break"/><br class="auto-break"/>Summary: lend a #<span class="p-category auto-tag">book</span> from your personal library<a id="t5Wh1_ref-6" href="#t5Wh1_note-6">⁶</a> to a friend, on the conditions that they do not donate sell or dispose of it, and instead when they are done with it they return it or lend it to someone else who agrees to these conditions.<br class="auto-break"/><br class="auto-break"/>My goal was to create a book lending system that:<br class="auto-break"/>* preserves books — effectively in a giant #<span class="p-category auto-tag">distributed</span> communal #<span class="p-category auto-tag">library</span><br class="auto-break"/>* makes lending easier fiscally, psychologically, emotionally for both parties<br class="auto-break"/>* encourages direct person-to-person lending without intermediaries<br class="auto-break"/>* grows a culture of non-zero-sum sharing, preservation, and longterm thinking<br class="auto-break"/><br class="auto-break"/>The basic steps to create a Library of Infinite Loan:<br class="auto-break"/>1. Create a separate space (like a particular bookshelf) for #<span class="p-category auto-tag">books</span> to infinite lend. A small shelf in a guest room or common space like a hallway works well.<br class="auto-break"/>2. Move books there that you are ok lending out and never seeing again<br class="auto-break"/>3. Label that space your “Library of Infinite Loan”, or invite guests to borrow from your “Library of Infinite Loan”<br class="auto-break"/>4. When visitors ask what that means, explain the Rules<br class="auto-break"/><br class="auto-break"/>Rules for borrowing from a Library of Infinite Loan (“the Rules”)<br class="auto-break"/>1. Keep it as long as you like<br class="auto-break"/>2. Do not sell donate or otherwise dispose of it<br class="auto-break"/>3. You may give it <br class="auto-break"/> a. back to the person you borrowed from <br class="auto-break"/> b. or back to its original purchaser if they wrote their name and web address inside<br class="auto-break"/> c. or (lend it) to someone else who agrees to the Rules<br class="auto-break"/><br class="auto-break"/>There are several ways to extend / expand the Library of Infinite Loan:<br class="auto-break"/>* custom book plate: design a custom book plate for yourself with room for your name (and web address) on it e.g. “From Tantek’s (<a class="auto-link" href="https://tantek.com">@tantek.com</a>) Library” (with space), print it on longterm adhesive paper, and place it inside new books you purchase. When you move a book to your Library of Infinite Loan, amend the book plate to say ”… Library of Infinite Loan” and attach a copy of the Rules. <br class="auto-break"/>* add a “borrowers log” with blank lines for anyone you lend it to or they lend it to, transitively, to optionally add their name, web address, and a date of borrowing. Then amend the rules to allow returning a book to who you borrowed from or anyone in the borrower log or original purchaser.<br class="auto-break"/>* more media: CDs, vinyl records, DVDs, LaserDiscs, VHS, cassette tapes, video game cartridges etc.<br class="auto-break"/>* other things<br class="auto-break"/>  * large tools — which usually come in a box with instruction manual, so there’s a logical place to put an “owners plate”, “borrowers log”, and copy of the rules.<br class="auto-break"/>  * artwork — a great way to rotate art among a community<br class="auto-break"/><br class="auto-break"/>This is what I remember off the top of my head and with a little web searching. I know I have a bunch more notes in various places of my thoughts (and conversations) over the years about a Library of Infinite Loan. As I find those notes, I’ll post them as well.<br class="auto-break"/><br class="auto-break"/>#<span class="p-category auto-tag">infiniteLoan</span> #<span class="p-category auto-tag">libraryOfInfiniteLoan</span><br class="auto-break"/><br class="auto-break"/>References:<br class="auto-break"/><br class="auto-break"/><a id="t5Wh1_note-1" href="#t5Wh1_ref-1">¹</a> I’m looking through old personal logs for earliest mentions of “infinite loan”<br class="auto-break"/><a id="t5Wh1_note-2" href="#t5Wh1_ref-2">²</a> In my 2019 personal log I found a note that I “moved some books as library of infinite loan to guest room” where I had previously setup a small bookshelf for such books.<br class="auto-break"/><a id="t5Wh1_note-3" href="#t5Wh1_ref-3">³</a> <a class="auto-link" href="https://indieweb.org/2020/Austin/reading">https://indieweb.org/2020/Austin/reading</a><br class="auto-break"/><a id="t5Wh1_note-4" href="#t5Wh1_ref-4">⁴</a> <a class="auto-link" href="https://chat.indieweb.org/2023-10-01#t1696202307311300">https://chat.indieweb.org/2023-10-01#t1696202307311300</a><br class="auto-break"/><a id="t5Wh1_note-5" href="#t5Wh1_ref-5">⁵</a> I was also inspired by sharing the idea again to a couple of friends in an espresso-making livestream this morning<br class="auto-break"/><a id="t5Wh1_note-6" href="#t5Wh1_ref-6">⁶</a> <a class="auto-link" href="https://indieweb.org/personal_library">https://indieweb.org/personal_library</a></div>
  269.    </content>
  270.    <object-type xmlns="http://activitystrea.ms/spec/1.0/">note</object-type>
  271.  </entry>
  272.  <entry>
  273.    <updated>2024-04-18T20:20:00-07:00</updated>
  274.    <published>2024-04-18T20:20:00-07:00</published>
  275.    <link href="https://tantek.com/2024/109/t1/published-vision-for-w3c" rel="alternate" title="" type="text/html"/>
  276.    <id>https://tantek.com/2024/109/t1/published-vision-for-w3c</id>
  277.    <title type="xhtml">
  278.      <div xmlns="http://www.w3.org/1999/xhtml" class="if-your-feed-reader-displays-this-then-it-is-violating-the-Atom-spec-RFC-4287-section-4.2.14"/>
  279.    </title>
  280.    <content type="xhtml" xml:base="https://tantek.com/" xml:space="preserve">
  281.      <div xmlns="http://www.w3.org/1999/xhtml" xml:space="preserve">Recently <a class="auto-link" href="https://W3.org">@W3.org</a> (<a class="auto-link" href="https://w3c.social/@w3c">@w3c@w3c.social</a>) published the first Group Note of the Vision for W3C:<br class="auto-break"/><br class="auto-break"/><a class="auto-link" href="https://www.w3.org/TR/2024/NOTE-w3c-vision-20240403/">https://www.w3.org/TR/2024/NOTE-w3c-vision-20240403/</a><br class="auto-break"/><br class="auto-break"/>I’m the current editor of the Vision for W3C and helped get it across the line this year to reach #<span class="p-category auto-tag">w3cAB</span> (W3C Advisory Board <a class="auto-link" href="https://w3c.social/@ab">@ab@w3c.social</a>) consensus to publish as an official Group Note, the first official Note that the AB (Advisory Board) has ever published.<br class="auto-break"/><br class="auto-break"/>I’m very proud of this milestone, as I and a few others including many on the AB<a id="t5WX1_ref-1" href="#t5WX1_note-1">¹</a>, have been working on it for a few years in various forms, and with the broader W3C Vision TF<a id="t5WX1_ref-2" href="#t5WX1_note-2">²</a> (Task Force) for the past year.<br class="auto-break"/> <br class="auto-break"/>W3C also recently announced the Vision for W3C in their news feed:<br class="auto-break"/><br class="auto-break"/><a class="auto-link" href="https://www.w3.org/news/2024/group-note-vision-for-w3c/">https://www.w3.org/news/2024/group-note-vision-for-w3c/</a><br class="auto-break"/><br class="auto-break"/><br class="auto-break"/>One of the key goals of this document was to capture the spirit of why we are at #<span class="p-category auto-tag">W3C</span> and our shared values &amp; principles we use to guide our work &amp; decisions at W3C.<br class="auto-break"/><br class="auto-break"/>If you work with any groups at W3C, anything from a Community Group (CG) to a Working Group (WG), I highly recommend you read this document from start to finish.<br class="auto-break"/><br class="auto-break"/>See what resonates with you, if there is anything that doesn’t sound right to you, or if you see anything missing that you feel exemplifies the best of what W3C is, please file an issue or a suggestion:<br class="auto-break"/><br class="auto-break"/><a class="auto-link" href="https://github.com/w3c/AB-public/issues?q=is%3Aissue+is%3Aopen+label%3A%22Project+Vision%22+-label%3ADefer">https://github.com/w3c/AB-public/issues?q=is%3Aissue+is%3Aopen+label%3A%22Project+Vision%22+-label%3ADefer</a><br class="auto-break"/><br class="auto-break"/>Check that list to see if your concerns or suggestions are already captured, and if so, add an upvote or comment accordingly.<br class="auto-break"/><br class="auto-break"/>Our goal is to eventually publish this document as an official W3C Statement, with the consensus of the entire #<span class="p-category auto-tag">w3cAC</span> (W3C Advisory Committee).<br class="auto-break"/><br class="auto-break"/>One key aspect which the Vision touches on but perhaps too briefly is what I see as the fundamental purpose of why we do the work we do at W3C, which in my opinion is:<br class="auto-break"/><br class="auto-break"/>To create &amp; facilitate user-first interoperable standards that improve the web for humanity<br class="auto-break"/><br class="auto-break"/><br class="auto-break"/>The Vision does mention “#interoperable” explicitly as part of our Vision for the Web in <a class="auto-link" href="https://w3c.github.io/AB-public/Vision#vision-web">https://w3c.github.io/AB-public/Vision#vision-web</a>:<br class="auto-break"/><br class="auto-break"/>”There is one interoperable world-wide Web.”<br class="auto-break"/><br class="auto-break"/>The Vision also mentions “#interoperability” explicitly in our Operational Principles <a class="auto-link" href="https://w3c.github.io/AB-public/Vision#op-principles">https://w3c.github.io/AB-public/Vision#op-principles</a>: <br class="auto-break"/><br class="auto-break"/>“Interoperability: We verify the fitness of our specifications through open test suites and actual implementation experience, because we believe the purpose of standards is to enable independent interoperable implementations.”<br class="auto-break"/><br class="auto-break"/>These are both excellent, and yet, I think we can do better, with adding some sort of explicit statement between those two about that “We will” create &amp; facilitate user-first interoperable standards that improve the web for humanity.<br class="auto-break"/><br class="auto-break"/>In the coming weeks I’ll be reflecting how we (the VisionTF) can incorporate that sort of imperative “We will” statement about interoperable standards into the Vision for W3C, as well as working with the AB and W3C Team on defining a succinct updated mission &amp; purpose for W3C based on that sort of input and more.<br class="auto-break"/><br class="auto-break"/><br class="auto-break"/>In a related effort, I have also been leading the AB’s “3Is Priority Project<a id="t5WX1_ref-3" href="#t5WX1_note-3">³</a>” (Interoperability and the Role of Independent Implementations), which is a pretty big project to define and clarify what each of those three Is mean, with respect to each other and Incubation, which is its own Priority Project<a id="t5WX1_ref-4" href="#t5WX1_note-4">⁴</a>.<br class="auto-break"/><br class="auto-break"/>As part of the 3Is project, the first “I” I’ve been focusing on has unsurprisingly been  “Interoperable”. As with other #<span class="p-category auto-tag">OpenAB</span> projects, our work on understanding interoperability, its aspects, and defining what do we mean by interoperable is published and iterated on the W3C’s public wiki:<br class="auto-break"/><br class="auto-break"/><a class="auto-link" href="https://www.w3.org/wiki/Interoperable">https://www.w3.org/wiki/Interoperable</a><br class="auto-break"/><br class="auto-break"/>This is still a work in progress, however it’s sufficiently structured to take a look if interoperability is something you care about or have opinions about.<br class="auto-break"/><br class="auto-break"/>In particular, if you know of definitions of interoperable or interoperability that resonate and make sense to you, or articles or blog posts about interoperability that explore various aspects, I am gathering such references so we can make sure the W3C’s definition of interoperable is both well-stated, and clearly reflects a broader industry understanding of interoperability.<br class="auto-break"/><br class="auto-break"/>References:<br class="auto-break"/><br class="auto-break"/><a id="t5WX1_note-1" href="#t5WX1_ref-1">¹</a> <a class="auto-link" href="https://www.w3.org/TR/w3c-vision/#acknowledgements">https://www.w3.org/TR/w3c-vision/#acknowledgements</a><br class="auto-break"/><a id="t5WX1_note-2" href="#t5WX1_ref-2">²</a> <a class="auto-link" href="https://www.w3.org/wiki/AB/VisionTF">https://www.w3.org/wiki/AB/VisionTF</a><br class="auto-break"/><a id="t5WX1_note-3" href="#t5WX1_ref-3">³</a> <a class="auto-link" href="https://www.w3.org/wiki/AB/2024_Priorities#Interoperability_and_the_Role_of_Independent_Implementations">https://www.w3.org/wiki/AB/2024_Priorities#Interoperability_and_the_Role_of_Independent_Implementations</a><br class="auto-break"/><a id="t5WX1_note-4" href="#t5WX1_ref-4">⁴</a> <a class="auto-link" href="https://www.w3.org/wiki/AB/2024_Priorities#Incubation">https://www.w3.org/wiki/AB/2024_Priorities#Incubation</a></div>
  282.    </content>
  283.    <object-type xmlns="http://activitystrea.ms/spec/1.0/">note</object-type>
  284.  </entry>
  285.  <entry>
  286.    <updated>2024-04-14T19:00:00-07:00</updated>
  287.    <published>2024-04-14T19:00:00-07:00</published>
  288.    <link href="https://tantek.com/2024/105/t1/w3c-advisory-committee-meetings" rel="alternate" title="" type="text/html"/>
  289.    <id>https://tantek.com/2024/105/t1/w3c-advisory-committee-meetings</id>
  290.    <title type="xhtml">
  291.      <div xmlns="http://www.w3.org/1999/xhtml" class="if-your-feed-reader-displays-this-then-it-is-violating-the-Atom-spec-RFC-4287-section-4.2.14"/>
  292.    </title>
  293.    <content type="xhtml" xml:base="https://tantek.com/" xml:space="preserve">
  294.      <div xmlns="http://www.w3.org/1999/xhtml" xml:space="preserve">Last week I participated <a class="auto-link" href="https://W3.org">@W3.org</a> (<a class="auto-link" href="https://w3c.social/@w3c">@w3c@w3c.social</a>) #<span class="p-category auto-tag">w3cAC</span> (W3C Advisory Committee<a id="t5WT1_ref-1" href="#t5WT1_note-1">¹</a>), #<span class="p-category auto-tag">w3cAB</span> (W3C Advisory Board<a id="t5WT1_ref-2" href="#t5WT1_note-2">²</a> <a class="auto-link" href="https://w3c.social/@ab">@ab@w3c.social</a>), and #<span class="p-category auto-tag">w3cBoard</span> (Board of the W3C Corporation<a id="t5WT1_ref-3" href="#t5WT1_note-3">³</a>) meetings in Hiroshima, Japan.<br class="auto-break"/><br class="auto-break"/>The AC (Advisory Committee) meeting was two days, followed by two days of AB and Board meetings which started with a half-day joint session (including the #<span class="p-category auto-tag">w3cTAG</span>), then separate meetings to focus on their own tasks &amp; discussions.<br class="auto-break"/><br class="auto-break"/>The W3C Process<a id="t5WT1_ref-4" href="#t5WT1_note-4">⁴</a> describes the twice a year AC (Advisory Committee) Meetings<a id="t5WT1_ref-5" href="#t5WT1_note-5">⁵</a>. In addition to members of the AC (one primary and one alternate per W3C Member Organization), the meetings are open to the AB (Advisory Board), the W3C Board, the W3C TAG (W3C Technical Architecture Group<a id="t5WT1_ref-6" href="#t5WT1_note-6">⁶</a> <a class="auto-link" href="https://w3c.social/@tag">@tag@w3c.social</a>), Working Group<a id="t5WT1_ref-7" href="#t5WT1_note-7">⁷</a> chairs, Chapter<a id="t5WT1_ref-8" href="#t5WT1_note-8">⁸</a> staff, and this time also a W3C Invited Expert designated observer<a id="t5WT1_ref-9" href="#t5WT1_note-9">⁹</a>.<br class="auto-break"/><br class="auto-break"/>The AC currently meets in the Spring on its own and at a shorter meeting in the Fall as part of the annual #<span class="p-category auto-tag">w3cTPAC</span> (W3C Technical Plenary and Advisory Committee<a id="t5WT1_ref-10" href="#t5WT1_note-10">¹⁰</a> meetings). The existence, dates, and location of the event are public<a id="t5WT1_ref-11" href="#t5WT1_note-11">¹¹</a>, however the agenda, minutes, and registrants are generally Member-confidential. Since those individual links have their own access controls, I collected them on a publicly-viewable wiki page for easier discovery &amp; navigation (if you work for a W3C Member Organization<a id="t5WT1_ref-12" href="#t5WT1_note-12">¹²</a>): <br class="auto-break"/><br class="auto-break"/>* <a class="auto-link" href="https://www.w3.org/wiki/AC/Meetings#2024_Spring">https://www.w3.org/wiki/AC/Meetings#2024_Spring</a><br class="auto-break"/><br class="auto-break"/>Most of the W3C meeting materials and discussions were also W3C Member-confidential, however many of the presentations are publicly viewable, and a few more may be shared publicly after the fact.<br class="auto-break"/><br class="auto-break"/>Myself and others at #<span class="p-category auto-tag">W3C</span> who believe in pushing for more openness and transparency in standards work, even (or especially) governance of said work, will be doing our best to work with others at W3C to continue shifting our work accordingly.<br class="auto-break"/><br class="auto-break"/>Aside: I started the #<span class="p-category auto-tag">OpenAB</span> project when I was first elected to the AB (Advisory Board) in 2013, documenting it on the publicly viewable W3C Wiki, and updated it with the help of others since: <a class="auto-link" href="https://www.w3.org/wiki/AB#Open_AB">https://www.w3.org/wiki/AB#Open_AB</a><br class="auto-break"/><br class="auto-break"/>Like most conferences, I got as much out of side conversations at breaks (AKA hallway track<a id="t5WT1_ref-13" href="#t5WT1_note-13">¹³</a>) and meals as I did from scheduled talks and panels.<br class="auto-break"/><br class="auto-break"/>For now, here are the events, slides, and videos which are publicly viewable that provide an interesting glimpse into some of the topics discussed:<br class="auto-break"/>* 📄 report: <a class="auto-link" href="https://www.w3.org/reports/ai-web-impact/">https://www.w3.org/reports/ai-web-impact/</a><br class="auto-break"/>* 🖼 slides: <a class="auto-link" href="https://www.w3.org/2024/Talks/ac-slides/engaging-the-members/">https://www.w3.org/2024/Talks/ac-slides/engaging-the-members/</a><br class="auto-break"/>* 🖼 slides: <a class="auto-link" href="https://www.w3.org/2024/Talks/ac-slides/exploration/">https://www.w3.org/2024/Talks/ac-slides/exploration/</a><br class="auto-break"/>* 🖼 slides: <a class="auto-link" href="https://www.w3.org/2024/Talks/ac-slides/OHCHR.pdf">https://www.w3.org/2024/Talks/ac-slides/OHCHR.pdf</a><br class="auto-break"/>* ▶️ video 5m42s: <a class="auto-link" href="https://customer-0kix77mxh2zzzae0.cloudflarestream.com/9ad1e01b20d9b15d413f02c0ada3fe34/watch">https://customer-0kix77mxh2zzzae0.cloudflarestream.com/9ad1e01b20d9b15d413f02c0ada3fe34/watch</a><br class="auto-break"/>* ▶️ video 4m16s: <a class="auto-link" href="https://customer-0kix77mxh2zzzae0.cloudflarestream.com/1bfde2bf614d7535b8a775217a949974/watch">https://customer-0kix77mxh2zzzae0.cloudflarestream.com/1bfde2bf614d7535b8a775217a949974/watch</a><br class="auto-break"/>* 🗓 event: <a class="auto-link" href="https://www.w3.org/events/meetings/13213a52-8159-4af8-b939-38c7880ba266/">https://www.w3.org/events/meetings/13213a52-8159-4af8-b939-38c7880ba266/</a><br class="auto-break"/>* 🖼 slides: <a class="auto-link" href="https://www.w3.org/2024/Talks/ac-slides/lt-deepfake/">https://www.w3.org/2024/Talks/ac-slides/lt-deepfake/</a><br class="auto-break"/>* 🖼 slides: <a class="auto-link" href="https://www.w3.org/2024/Talks/ac-slides/lt-accessing-llms-data/">https://www.w3.org/2024/Talks/ac-slides/lt-accessing-llms-data/</a><br class="auto-break"/>* 🖼 slides: <a class="auto-link" href="https://www.w3.org/2024/Talks/ac-slides/pac-data-sovereignty/">https://www.w3.org/2024/Talks/ac-slides/pac-data-sovereignty/</a> (nice #<span class="p-category auto-tag">IndieWeb</span> mention)<br class="auto-break"/>* 🖼 slides: <a class="auto-link" href="https://www.w3.org/2024/Talks/ac-slides/intro-content-credentials.pdf">https://www.w3.org/2024/Talks/ac-slides/intro-content-credentials.pdf</a><br class="auto-break"/>* 🖼 slides: <a class="auto-link" href="https://w3c.github.io/adapt/presentations/ac2024/">https://w3c.github.io/adapt/presentations/ac2024/</a> Warning: the proposed use of .well-known therein is IMO a bad mistake. Unnecessary reinvention (most handled by existing rel values<a id="t5WT1_ref-14" href="#t5WT1_note-14">¹⁴</a>), more complex to author (requires sidefiles<a id="t5WT1_ref-15" href="#t5WT1_note-15">¹⁵</a>), harder to publish (requires site admin root access), likely to become inaccurate (Ruby’s postulate<a id="t5WT1_ref-16" href="#t5WT1_note-16">¹⁶</a>), and fragile (site admins frequently break .well-known for individual pages). A full critique likely requires its own blog post.<br class="auto-break"/>* 🗓 event: <a class="auto-link" href="https://www.w3.org/events/meetings/df0b9dd8-2356-47ec-839d-eadc06da1ca1/">https://www.w3.org/events/meetings/df0b9dd8-2356-47ec-839d-eadc06da1ca1/</a><br class="auto-break"/><br class="auto-break"/>I’ll update this list with additional resources as they are made publicly viewable.<br class="auto-break"/><br class="auto-break"/>If you work for a W3C Member Organization you can view the full list of resources linked from the Member-confidential agenda: <a class="auto-link" href="https://www.w3.org/2024/04/AC/ac-agenda.html#monday">https://www.w3.org/2024/04/AC/ac-agenda.html#monday</a><br class="auto-break"/><br class="auto-break"/>References:<br class="auto-break"/><br class="auto-break"/><a id="t5WT1_note-1" href="#t5WT1_ref-1">¹</a> <a class="auto-link" href="https://w3.org/wiki/AC">https://w3.org/wiki/AC</a><br class="auto-break"/><a id="t5WT1_note-2" href="#t5WT1_ref-2">²</a> <a class="auto-link" href="https://w3.org/wiki/AB">https://w3.org/wiki/AB</a><br class="auto-break"/><a id="t5WT1_note-3" href="#t5WT1_ref-3">³</a> <a class="auto-link" href="https://w3.org/wiki/Board">https://w3.org/wiki/Board</a><br class="auto-break"/><a id="t5WT1_note-4" href="#t5WT1_ref-4">⁴</a> <a class="auto-link" href="https://www.w3.org/Consortium/Process/">https://www.w3.org/Consortium/Process/</a><br class="auto-break"/><a id="t5WT1_note-5" href="#t5WT1_ref-5">⁵</a> <a class="auto-link" href="https://www.w3.org/2023/Process-20231103/#ACMeetings">https://www.w3.org/2023/Process-20231103/#ACMeetings</a><br class="auto-break"/><a id="t5WT1_note-6" href="#t5WT1_ref-6">⁶</a> <a class="auto-link" href="https://w3.org/tag">https://w3.org/tag</a><br class="auto-break"/><a id="t5WT1_note-7" href="#t5WT1_ref-7">⁷</a> <a class="auto-link" href="https://www.w3.org/groups/wg/">https://www.w3.org/groups/wg/</a><br class="auto-break"/><a id="t5WT1_note-8" href="#t5WT1_ref-8">⁸</a> <a class="auto-link" href="https://chapters.w3.org/">https://chapters.w3.org/</a><br class="auto-break"/><a id="t5WT1_note-9" href="#t5WT1_ref-9">⁹</a> <a class="auto-link" href="https://www.w3.org/invited-experts/#ac-observer">https://www.w3.org/invited-experts/#ac-observer</a><br class="auto-break"/><a id="t5WT1_note-10" href="#t5WT1_ref-10">¹⁰</a> <a class="auto-link" href="https://www.w3.org/wiki/TPAC">https://www.w3.org/wiki/TPAC</a><br class="auto-break"/><a id="t5WT1_note-11" href="#t5WT1_ref-11">¹¹</a> <a class="auto-link" href="https://www.w3.org/events/ac/2024/ac-2024/">https://www.w3.org/events/ac/2024/ac-2024/</a><br class="auto-break"/><a id="t5WT1_note-12" href="#t5WT1_ref-12">¹²</a> <a class="auto-link" href="https://www.w3.org/membership/list/">https://www.w3.org/membership/list/</a><br class="auto-break"/><a id="t5WT1_note-13" href="#t5WT1_ref-13">¹³</a> <a class="auto-link" href="https://en.wiktionary.org/wiki/hallway_track">https://en.wiktionary.org/wiki/hallway_track</a><br class="auto-break"/><a id="t5WT1_note-14" href="#t5WT1_ref-14">¹⁴</a> <a class="auto-link" href="https://microformats.org/wiki/existing-rel-values">https://microformats.org/wiki/existing-rel-values</a><br class="auto-break"/><a id="t5WT1_note-15" href="#t5WT1_ref-15">¹⁵</a> <a class="auto-link" href="https://indieweb.org/sidefile-antipattern">https://indieweb.org/sidefile-antipattern</a><br class="auto-break"/><a id="t5WT1_note-16" href="#t5WT1_ref-16">¹⁶</a> <a class="auto-link" href="https://intertwingly.net/slides/2004/devcon/68.html">https://intertwingly.net/slides/2004/devcon/68.html</a></div>
  295.    </content>
  296.    <object-type xmlns="http://activitystrea.ms/spec/1.0/">note</object-type>
  297.  </entry>
  298.  <entry>
  299.    <updated>2024-03-28T21:58:00-07:00</updated>
  300.    <published>2024-03-28T21:58:00-07:00</published>
  301.    <link href="https://tantek.com/2024/088/t1/world-piano-day-ordinal-date-iso-8601" rel="alternate" title="" type="text/html"/>
  302.    <id>https://tantek.com/2024/088/t1/world-piano-day-ordinal-date-iso-8601</id>
  303.    <title type="xhtml">
  304.      <div xmlns="http://www.w3.org/1999/xhtml" class="if-your-feed-reader-displays-this-then-it-is-violating-the-Atom-spec-RFC-4287-section-4.2.14"/>
  305.    </title>
  306.    <content type="xhtml" xml:base="https://tantek.com/" xml:space="preserve">
  307.      <div xmlns="http://www.w3.org/1999/xhtml" xml:space="preserve">Happy World Piano Day<a id="t5WA1_ref-1" href="#t5WA1_note-1">¹</a>!<br class="auto-break"/><br class="auto-break"/>Because there are 88 keys on a standard piano, the 88th day of the year was established as a day to “celebrate the piano and everything around it: performers, composers, piano builders, tuners, movers and most important, the listener”.<br class="auto-break"/><br class="auto-break"/>There are multiple websites about Piano Day:<br class="auto-break"/>* <a class="auto-link" href="https://www.pianoday.org/">https://www.pianoday.org/</a><br class="auto-break"/>* <a class="auto-link" href="https://www.worldpianoday.com/">https://www.worldpianoday.com/</a><br class="auto-break"/><br class="auto-break"/>And related #<span class="p-category auto-tag">socialMedia</span> and other profiles:<br class="auto-break"/>* <a class="auto-link" href="https://www.instagram.com/pianodayofficial/">https://www.instagram.com/pianodayofficial/</a><br class="auto-break"/>* <a class="auto-link" href="https://linktr.ee/PianoDay">https://linktr.ee/PianoDay</a><br class="auto-break"/>* Spotify playlist: <a class="auto-link" href="https://open.spotify.com/playlist/2v022joEJ1ZUPi99NHDVNm?si=mmT4rDchTzW60KC3lsTksQ&amp;nd=1&amp;dlsi=2a348a57822c4217">https://open.spotify.com/playlist/2v022joEJ1ZUPi99NHDVNm?si=mmT4rDchTzW60KC3lsTksQ&amp;nd=1&amp;dlsi=2a348a57822c4217</a><br class="auto-break"/><br class="auto-break"/>I appreciate that Piano Day is on an ordinal day of the year (88th) rather than a Gregorian date (e.g. 8/8 or August 8th) which is subject to leap year variances. The 88th day of the year is the 88th day regardless whether it is a leap year or not.<br class="auto-break"/><br class="auto-break"/>From a standards perspective, we can express today’s Piano Day as 2024-088, an ISO ordinal date<a id="t5WA1_ref-2" href="#t5WA1_note-2">²</a>, however there is no standard date format for just "the 88th day of a year" without specifying a year (yearless).<br class="auto-break"/><br class="auto-break"/>There is (was) a way to specify a yearless month and day, like you might see as a birthday displayed on a social media site, without disclosing the year, or an annual holiday like May Day<a id="t5WA1_ref-3" href="#t5WA1_note-3">³</a>, that is May 1st, without a specific year:<br class="auto-break"/><br class="auto-break"/>--05-01<br class="auto-break"/><br class="auto-break"/>This yearless date format (--MM-DD or shorthand --MMDD) was supported in the ISO 8601:2000 standard, but then dropped in the 2004 revision. This omission or deliberate removal was an error, because there are both obvious human visible use-cases (communicating holidays, and yearless birthdays as noted above), and other standards already depended on this yearless date format syntax (e.g. vCard<a id="t5WA1_ref-4" href="#t5WA1_note-4">⁴</a> and specs that refer to it like hCard and h-card).<br class="auto-break"/><br class="auto-break"/>Every version of ISO 8601 since 2000 has this flaw. Fixing (or patching) #<span class="p-category auto-tag">ISO8601</span> is worth a separate post.<br class="auto-break"/><br class="auto-break"/>Returning to yearless ordinal dates, since they lack an interchange syntax, we can define one resembling the yearless month day format, yet unambiguously parseable as a yearless ordinal date:<br class="auto-break"/><br class="auto-break"/>---DDD<br class="auto-break"/><br class="auto-break"/>e.g. Piano Day would be represented as:<br class="auto-break"/><br class="auto-break"/>---088<br class="auto-break"/><br class="auto-break"/>We have to use three explicit digits because there's also pre-existing "day of the month" and "month of the year" syntaxes which are very similar, but with two digits:<br class="auto-break"/><br class="auto-break"/>--MM<br class="auto-break"/>---DD<br class="auto-break"/><br class="auto-break"/>This yearless #<span class="p-category auto-tag">ordinalDate</span> syntax (---DDD) is worth proposing as a delta "repair" spec to ISO 8601 (use-cases: Piano Day and others like Programmer’s Day<a id="t5WA1_ref-5" href="#t5WA1_note-5">⁵</a>), alongside at least a restoration of the --MM-DD yearless month day syntax (use-cases: publishing holidays and yearless birthdays), perhaps also the ---DD day of the month and --MM month of the year syntaxes (use-case: language independent numerical publishing of Gregorian months and days of months), and propose adding a NewCal bim of the year syntax --B (numerically superior replacement for Gregorian months and quarters).<br class="auto-break"/><br class="auto-break"/>Glossary:<br class="auto-break"/><br class="auto-break"/>hCard<br class="auto-break"/>  <a class="auto-link" href="https://microformats.org/wiki/hcard">https://microformats.org/wiki/hcard</a><br class="auto-break"/>h-card<br class="auto-break"/>  <a class="auto-link" href="https://microformats.org/wiki/h-card">https://microformats.org/wiki/h-card</a><br class="auto-break"/>NewCal<br class="auto-break"/>  <a class="auto-link" href="http://newcal.org/">http://newcal.org/</a><br class="auto-break"/><br class="auto-break"/>References:<br class="auto-break"/><br class="auto-break"/><a id="t5WA1_note-1" href="#t5WA1_ref-1">¹</a> <a class="auto-link" href="https://en.wikipedia.org/wiki/Piano_Day">https://en.wikipedia.org/wiki/Piano_Day</a><br class="auto-break"/><a id="t5WA1_note-2" href="#t5WA1_ref-2">²</a> <a class="auto-link" href="https://en.wikipedia.org/wiki/Ordinal_date">https://en.wikipedia.org/wiki/Ordinal_date</a><br class="auto-break"/><a id="t5WA1_note-3" href="#t5WA1_ref-3">³</a> <a class="auto-link" href="https://en.wikipedia.org/wiki/May_Day">https://en.wikipedia.org/wiki/May_Day</a><br class="auto-break"/><a id="t5WA1_note-4" href="#t5WA1_ref-4">⁴</a> <a class="auto-link" href="https://www.rfc-editor.org/rfc/rfc6350#section-6.2.5">https://www.rfc-editor.org/rfc/rfc6350#section-6.2.5</a><br class="auto-break"/><a id="t5WA1_note-5" href="#t5WA1_ref-5">⁵</a> <a class="auto-link" href="https://en.wikipedia.org/wiki/Programmer%27s_Day">https://en.wikipedia.org/wiki/Programmer%27s_Day</a></div>
  308.    </content>
  309.    <object-type xmlns="http://activitystrea.ms/spec/1.0/">note</object-type>
  310.  </entry>
  311. </feed>
  312.  

If you would like to create a banner that links to this page (i.e. this validation result), do the following:

  1. Download the "valid Atom 1.0" banner.

  2. Upload the image to your own server. (This step is important. Please do not link directly to the image on this server.)

  3. Add this HTML to your page (change the image src attribute if necessary):

If you would like to create a text link instead, here is the URL you can use:

http://www.feedvalidator.org/check.cgi?url=http%3A//tantek.com/log/posts.atom

Copyright © 2002-9 Sam Ruby, Mark Pilgrim, Joseph Walton, and Phil Ringnalda