{
 "items": [
  {
   "type": [
    "h-card"
   ],
   "properties": {
    "photo": [
     {
      "value": "https://tantek.com/photo.jpg",
      "alt": ""
     }
    ],
    "uid": [
     "https://tantek.com/"
    ],
    "url": [
     "https://tantek.com/",
     "https://micro.blog/t",
     "https://www.threads.net/@tantek",
     "https://instagram.com/tantek/",
     "https://www.flickr.com/people/tantek/",
     "https://github.com/tantek",
     "https://indieweb.org/User:Tantek.com",
     "https://en.wikipedia.org/wiki/User:Tantek"
    ],
    "name": [
     "Tantek \u00c7elik"
    ],
    "role": [
     "\ud83d\udca1 inventor \ud83d\udd17 connector \ud83d\udcdd writer \ud83c\udfc3\ud83c\udffb\u200d\u2642 \ufe0frunner \u2728 scientist, more.",
     "Web Standards Lead",
     "CSS WG"
    ],
    "category": [
     "inventor",
     "connector",
     "writer",
     "runner",
     "scientist",
     {
      "type": [
       "h-card"
      ],
      "properties": {
       "name": [
        "Stanford University"
       ],
       "url": [
        "https://stanford.edu/"
       ]
      },
      "value": "Stanford University",
      "lang": "en-US"
     },
     "microformats2",
     "h-card",
     "h-cite",
     "h-entry",
     "h-event",
     "HTML5",
     "CSS3",
     {
      "type": [
       "h-org"
      ],
      "properties": {
       "name": [
        "IndieWeb"
       ],
       "url": [
        "https://indieweb.org/"
       ]
      },
      "value": "IndieWeb",
      "lang": "en-US"
     },
     "authorship",
     "POSSE",
     "webactions",
     "IndieMark",
     "CASSIS",
     "Falcon"
    ],
    "note": [
     "Hello\nHi. I work on web standards and the IndieWeb. I like to run trails, practice yoga, go bouldering, code & design my website, and write when I can. My pronouns are he/him. \ud83c\udfe0 \ud83d\udcfa \ud83e\udd4f\n \ud83d\udcac Contact \ud83d\udc4f Tip Founder at IndieWeb Founder at microformats.org Web Standards Lead at Mozilla AC & CSS WG at W3C, and previously AB BSCS & MSCS Stanford University"
    ],
    "pronouns": [
     "he/him"
    ],
    "pronoun": [
     {
      "type": [
       "h-pronoun"
      ],
      "properties": {
       "name": [
        "he"
       ]
      },
      "value": "he",
      "lang": "en-US"
     },
     {
      "type": [
       "h-pronoun"
      ],
      "properties": {
       "name": [
        "him"
       ]
      },
      "value": "him",
      "lang": "en-US"
     }
    ],
    "org": [
     {
      "type": [
       "h-card"
      ],
      "properties": {
       "name": [
        "IndieWeb"
       ],
       "url": [
        "https://indieweb.org/"
       ]
      },
      "value": "IndieWeb",
      "lang": "en-US"
     },
     {
      "type": [
       "h-card"
      ],
      "properties": {
       "name": [
        "microformats.org"
       ],
       "url": [
        "http://microformats.org/"
       ]
      },
      "value": "microformats.org",
      "lang": "en-US"
     },
     {
      "type": [
       "h-card"
      ],
      "properties": {
       "name": [
        "Mozilla"
       ],
       "url": [
        "https://mozilla.org/"
       ]
      },
      "value": "Mozilla",
      "lang": "en-US"
     },
     {
      "type": [
       "h-card"
      ],
      "properties": {
       "name": [
        "W3C"
       ],
       "url": [
        "https://www.w3.org/"
       ]
      },
      "value": "W3C",
      "lang": "en-US"
     },
     {
      "type": [
       "h-org"
      ],
      "properties": {
       "name": [
        "IndieWeb"
       ],
       "url": [
        "https://indieweb.org/"
       ]
      },
      "value": "IndieWeb",
      "lang": "en-US"
     }
    ]
   },
   "children": [
    {
     "type": [
      "h-feed"
     ],
     "properties": {},
     "children": [
      {
       "type": [
        "h-entry"
       ],
       "properties": {
        "name": [
         "Citrus Club on Haight Street has closed for good. :(\n\nI walked by earlier this evening to order some takeout and all the signage was gone and a large metal gate was lowered.\n\nA storefront with a blank white sign, blank black signage, and metal gate over the entrance. \nA notice of application for ownership change was posted including a license for \u201cOn sale beer & wine eating place\u201d.\n\nLooks like it was sold sometime in the past two weeks.\n\nNew name: Grind and Unwind https://grindunwindsf.com/\n\n#CitrusClubSF is no more.\n\nI have been eating here and getting take out for a long time. Lots of memories with so many friends. Citrus Club was my favorite neighborhood noodle place. They had numerous vegan and vegetarian dishes. My favorite dishes were the BBQ tofu spring rolls, and marmalade coconut shrimp without the shrimp, substituting both fresh and fried tofu. From the menu: \u201csweet peas, onions & lemomngrass. Tossed in our coconut sauce w/Jade(spinach)noodles.\u201d\n\nWhen I walked by on the return home, the front door was open, the inside was lit but looked emptied, and there was music playing.\n\n\ud83c\udfb6 Ain't no sunshine when she's gone \ud83c\udfb6\n\n#CitrusClub #Haight #HaightStreet #HaightAshbury #SanFrancisco #smallBusiness #closed"
        ],
        "content": [
         {
          "value": "Citrus Club on Haight Street has closed for good. :(\n\nI walked by earlier this evening to order some takeout and all the signage was gone and a large metal gate was lowered.\n\nA storefront with a blank white sign, blank black signage, and metal gate over the entrance. \nA notice of application for ownership change was posted including a license for \u201cOn sale beer & wine eating place\u201d.\n\nLooks like it was sold sometime in the past two weeks.\n\nNew name: Grind and Unwind https://grindunwindsf.com/\n\n#CitrusClubSF is no more.\n\nI have been eating here and getting take out for a long time. Lots of memories with so many friends. Citrus Club was my favorite neighborhood noodle place. They had numerous vegan and vegetarian dishes. My favorite dishes were the BBQ tofu spring rolls, and marmalade coconut shrimp without the shrimp, substituting both fresh and fried tofu. From the menu: \u201csweet peas, onions & lemomngrass. Tossed in our coconut sauce w/Jade(spinach)noodles.\u201d\n\nWhen I walked by on the return home, the front door was open, the inside was lit but looked emptied, and there was music playing.\n\n\ud83c\udfb6 Ain't no sunshine when she's gone \ud83c\udfb6\n\n#CitrusClub #Haight #HaightStreet #HaightAshbury #SanFrancisco #smallBusiness #closed",
          "lang": "en-US",
          "html": "Citrus Club on Haight Street has closed for good. :(<br class=\"auto-break\"/><br class=\"auto-break\"/>I walked by earlier this evening to order some takeout and all the signage was gone and a large metal gate was lowered.<br class=\"auto-break\"/><br class=\"auto-break\"/><a class=\"auto-link figure\" href=\"https://fastly.4sqi.net/img/general/720x720/476_uYk-qzGyysStoBDA3dUepauh4d9uNJIs7V_Zpc4tdn8.jpg\"><img alt=\"A storefront with a blank white sign, blank black signage, and metal gate over the entrance.\" class=\"auto-embed u-photo\" src=\"https://fastly.4sqi.net/img/general/720x720/476_uYk-qzGyysStoBDA3dUepauh4d9uNJIs7V_Zpc4tdn8.jpg\"/></a><br class=\"auto-break\"/>A notice of application for ownership change was posted including a license for \u201cOn sale beer &amp; wine eating place\u201d.<br class=\"auto-break\"/><br class=\"auto-break\"/>Looks like it was sold sometime in the past two weeks.<br class=\"auto-break\"/><br class=\"auto-break\"/>New name: Grind and Unwind <a class=\"auto-link\" href=\"https://grindunwindsf.com/\">https://grindunwindsf.com/</a><br class=\"auto-break\"/><br class=\"auto-break\"/>#<span class=\"p-category auto-tag\">CitrusClubSF</span> is no more.<br class=\"auto-break\"/><br class=\"auto-break\"/>I have been eating here and getting take out for a long time. Lots of memories with so many friends. Citrus Club was my favorite neighborhood noodle place. They had numerous vegan and vegetarian dishes. My favorite dishes were the BBQ tofu spring rolls, and marmalade coconut shrimp without the shrimp, substituting both fresh and fried tofu. From the menu: \u201csweet peas, onions &amp; lemomngrass. Tossed in our coconut sauce w/Jade(spinach)noodles.\u201d<br class=\"auto-break\"/><br class=\"auto-break\"/>When I walked by on the return home, the front door was open, the inside was lit but looked emptied, and there was music playing.<br class=\"auto-break\"/><br class=\"auto-break\"/>\ud83c\udfb6 Ain't no sunshine when she's gone \ud83c\udfb6<br class=\"auto-break\"/><br class=\"auto-break\"/>#<span class=\"p-category auto-tag\">CitrusClub</span> #<span class=\"p-category auto-tag\">Haight</span> #<span class=\"p-category auto-tag\">HaightStreet</span> #<span class=\"p-category auto-tag\">HaightAshbury</span> #<span class=\"p-category auto-tag\">SanFrancisco</span> #<span class=\"p-category auto-tag\">smallBusiness</span> #<span class=\"p-category auto-tag\">closed</span>"
         }
        ],
        "photo": [
         {
          "value": "https://fastly.4sqi.net/img/general/720x720/476_uYk-qzGyysStoBDA3dUepauh4d9uNJIs7V_Zpc4tdn8.jpg",
          "alt": "A storefront with a blank white sign, blank black signage, and metal gate over the entrance."
         }
        ],
        "category": [
         "CitrusClubSF",
         "CitrusClub",
         "Haight",
         "HaightStreet",
         "HaightAshbury",
         "SanFrancisco",
         "smallBusiness",
         "closed"
        ],
        "uid": [
         "https://tantek.com/2026/124/t1/citrus-club-closed"
        ],
        "url": [
         "https://tantek.com/2026/124/t1/citrus-club-closed"
        ],
        "published": [
         "2026-05-04 23:59-0700"
        ],
        "updated": [
         "2026-05-04 23:59-0700"
        ]
       },
       "lang": "en-US"
      },
      {
       "type": [
        "h-entry"
       ],
       "properties": {
        "uid": [
         "https://tantek.com/2026/124/b1/may-the-focus-be-with-you-iphone-grayscale",
         "https://tantek.com/2026/124/b1/may-the-focus-be-with-you-iphone-grayscale"
        ],
        "url": [
         "https://tantek.com/2026/124/b1/may-the-focus-be-with-you-iphone-grayscale",
         "https://tantek.com/2026/124/b1/may-the-focus-be-with-you-iphone-grayscale"
        ],
        "name": [
         "May the Focus Be With You!"
        ],
        "content": [
         {
          "value": "Last weekend at IndieWebCamp I noticed James had setup his iPhone in grayscale. I think I first saw that on Jeremy\u2019s phone years ago. I remember trying it on my iPod Touch for a while, eventually switching back to see color photos. \n\nThis morning while chatting with James I asked him about his grayscale setup and why. He pointed out it\u2019s less distracting, a calmer experience, and helps him stay focused when he uses his iPhone for specific tasks. \n\nI decided to give it another try. The setting is quite buried. Here are the items to tap, starting from your home screen, or wherever you moved your \u2699\ufe0f Settings app: \n \u2699\ufe0f Settings \ud83d\udfe6 Accessibility > \ud83d\udfe6 Display & Text Size > Color Filters > Color Filters (\u26ab\ufe0f__) [slide this toggle to the right to turn it on] Greyscale [tap this and you should see it checked]\nJames said one more setting has helped him stick with grayscale for years now. Triple-press the side button to toggle color/grayscale modes helps quickly switch to color to view a photo or a video, actual color content, then triple-press-side-button to return to a calmer UI. \n \u2699\ufe0f Settings \u23fa Accessibility > \u23fa Accessibility Shortcut > Color Filters [tap this and you should see it checked]\nIn addition, I have found the back-tap feature handy and personally more memorable. Double (or triple) back-tap to toggle color/grayscale mode and toggle back. \n \u2699\ufe0f Settings \u23fa Accessibility > \ud83d\udc46\ud83c\udffb Touch > Back Tap > Double-tap > Color Filters [tap this and you should see it checked]\nWhen using my phone outside in the sun, I noticed the absence of color made it hard to distinguish or even read some things. I changed a few more settings to improve sunlight readability/usability. \n \u2699\ufe0f Settings \u23fa Accessibility > \u23fa Display & Text Size > Bold Text (\u26ab\ufe0f__) [tap/slide this toggle to the right to turn it on] Increase Contrast (\u26ab\ufe0f__) [tap/slide this too] Differentiate Without Color (\u26ab\ufe0f__) [tap/slide this too]\nIn the absence of color on my iPhone, I have spent less time using it today, felt more focused when I used it for a specific task, and have started to feel both less compelled to check things, and less of a \u201crush\u201d when interacting with iPhone apps and their user interfaces. \n\nColor saturated apps stripped of their color are starting to feel like older apps or appliances. Switching Spotify playlists felt a bit like pressing station presets on a car radio. Discord felt like an enhanced IRC client. Even some of my rotating lock screen landscape photos have strong Ansel Adams vibes, while my urban lockscreen photos have a calmer dreamlike quality. \n\nPerhaps the use of color in modern mobile app user interfaces is the new chartjunk, extraneous and distracting from the task at hand, just as classic chartjunk is extraneous and distracting from the information being presented. Most mobile apps seem to be in an attention-seeking arms race against each other, ever more saturated colors to draw you in like a casino. \n\nUsing a grayscale iPhone user interface for most of the day has felt noticeably calmer. Enough for me to try it again for at least a few days and see how it goes. \n\nThanks again to James for his explanations and encouragement. See his write-up: Using greyscale, when he started, why, why he continues to use it, and instructions for his setup. \n\nTry it for yourself and see how it feels. \n\nMay the Force of your will be with you, free of distractions and dopamine conditioned impulses. \nFurther Reading 2018-01-12 The New York Times: Is the Answer to Phone Addiction a Worse Phone? / I\u2019ve gone gray, and it\u2019s great. 2018-05-03 The Observer: Grayscale Is a Quick Cure to Smartphone Addiction\u2014And Here\u2019s How to Use It 2019-12-01 WIRED: Try Grayscale Mode to Curb Your Phone Addiction",
          "lang": "en-US",
          "html": "<p>\nLast weekend at IndieWebCamp I noticed \n<a href=\"https://jamesg.blog/\">James</a> \nhad setup his iPhone in grayscale. \nI think I first saw that on \n<a href=\"https://@adactio.com\">Jeremy\u2019s</a> \nphone years ago. \nI remember trying it on my iPod Touch for a while, eventually switching back to see color photos.\n</p>\n<p>\nThis morning while chatting with James I asked him about his grayscale setup and why. He pointed out it\u2019s less distracting, a calmer experience, and helps him stay focused when he uses his iPhone for specific tasks.\n</p>\n<p>\nI decided to give it another try. The setting is quite buried. Here are the items to tap, starting from your home screen, or wherever you moved your <b>\u2699\ufe0f Settings</b> app:\n</p>\n<ul>\n<li>\u2699\ufe0f Settings</li>\n<li>\ud83d\udfe6 Accessibility &gt;</li>\n<li>\ud83d\udfe6 Display &amp; Text Size &gt;</li>\n<li>Color Filters &gt;</li>\n<li>Color Filters (\u26ab\ufe0f__) [slide this toggle to the right to turn it on]</li>\n<li>Greyscale [tap this and you should see it checked]</li>\n</ul>\n<p>\nJames said one more setting has helped him stick with grayscale for years now. \nTriple-press the side button to toggle color/grayscale modes helps quickly switch to color to view a photo or a video, actual color content, then triple-press-side-button to return to a calmer UI.\n</p>\n<ul>\n<li>\u2699\ufe0f Settings</li>\n<li>\u23fa Accessibility &gt;</li>\n<li>\u23fa Accessibility Shortcut &gt;</li>\n<li>Color Filters [tap this and you should see it checked]</li>\n</ul>\n<p>\nIn addition, I have found the back-tap feature handy and personally more memorable.\nDouble (or triple) back-tap to toggle color/grayscale mode and toggle back.\n</p>\n<ul>\n<li>\u2699\ufe0f Settings</li>\n<li>\u23fa Accessibility &gt;</li>\n<li>\ud83d\udc46\ud83c\udffb Touch &gt;</li>\n<li>Back Tap &gt;</li>\n<li>Double-tap &gt;</li>\n<li>Color Filters [tap this and you should see it checked]</li>\n</ul>\n<p>\nWhen using my phone outside in the sun, I noticed the absence of color made it hard to distinguish or even read some things. I changed a few more settings to improve sunlight readability/usability.\n</p>\n<ul>\n<li>\u2699\ufe0f Settings</li>\n<li>\u23fa Accessibility &gt;</li>\n<li>\u23fa Display &amp; Text Size &gt;</li>\n<li>Bold Text (\u26ab\ufe0f__) [tap/slide this toggle to the right to turn it on]</li>\n<li>Increase Contrast (\u26ab\ufe0f__) [tap/slide this too]</li>\n<li>Differentiate Without Color (\u26ab\ufe0f__) [tap/slide this too]</li>\n</ul>\n<p>\nIn the absence of color on my iPhone, I have spent less time using it today, felt more focused when I used it for a specific task, and have started to feel both less compelled to check things, and less of a \u201crush\u201d when interacting with iPhone apps and their user interfaces.\n</p>\n<p>\nColor saturated apps stripped of their color are starting to feel like older apps or appliances. Switching Spotify playlists felt a bit like pressing station presets on a car radio. Discord felt like an enhanced IRC client. Even some of my rotating lock screen landscape photos have strong Ansel Adams vibes, while my urban lockscreen photos have a calmer dreamlike quality.\n</p>\n<p>\nPerhaps the use of color in modern mobile app user interfaces is the new \n<a href=\"https://en.wikipedia.org/wiki/Chartjunk\">chartjunk</a>, extraneous and distracting from the task at hand, just as classic chartjunk is extraneous and distracting from the information being presented. Most mobile apps seem to be in an attention-seeking arms race against each other, ever more saturated colors to draw you in like a casino.\n</p>\n<p>\nUsing a grayscale iPhone user interface for most of the day has felt noticeably calmer. Enough for me to try it again for at least a few days and see how it goes.\n</p>\n<p>\nThanks again to James for his explanations and encouragement. See his write-up: \n<a href=\"https://jamesg.blog/2026/05/04/using-greyscale\">Using greyscale</a>, when he started, why, why he continues to use it, and instructions for his setup.\n</p>\n<p>\nTry it for yourself and see how it feels.\n</p>\n<p>\nMay the Force of your will be with you, free of distractions and dopamine conditioned impulses.\n</p>\n<h2>Further Reading</h2>\n<ul>\n<li>\n<time>2018-01-12</time> The New York Times: \n<a href=\"https://www.nytimes.com/2018/01/12/technology/grayscale-phone.html\">Is the Answer to Phone Addiction a Worse Phone?</a> / I\u2019ve gone gray, and it\u2019s great.</li>\n<li>\n<time>2018-05-03</time> The Observer: \n<a href=\"https://observer.com/2018/05/grayscale-can-cure-smartphone-addiction/\">Grayscale Is a Quick Cure to Smartphone Addiction\u2014And Here\u2019s How to Use It</a>\n</li>\n<li>\n<time>2019-12-01</time> WIRED: \n<a href=\"https://www.wired.com/story/grayscale-ios-android-smartphone-addiction/\">Try Grayscale Mode to Curb Your Phone Addiction</a>\n</li>\n</ul>"
         }
        ],
        "published": [
         "2026-05-04 19:20-0700"
        ],
        "updated": [
         "2026-05-04 19:20-0700"
        ]
       },
       "lang": "en-US"
      },
      {
       "type": [
        "h-entry"
       ],
       "properties": {
        "name": [
         "\"web joy\" \u2014 the joy you experience when visiting a website with joyful content and/or have a joyful experience (as a user) on a website, or the joy of creating such a website.\n\nDuring the beyond tellerand conference this past week, someone mentioned \u201cresponsive web design\u201d and having just completed IndieWebCamp D\u00fcsseldorf, the thought popped in my head that joyful web design should be a named thing, since many of us spent the weekend at IndieWebCamp doing just that. \n\nI mentioned it to @jamesg.blog at a break between talks, we discussed it a bit and agreed that joy is a good motivator, and as creatives we both like creating things that are joyful to experience, and ideally joyful to create.\n\nJames blogged it before I got around to it: https://jamesg.blog/2026/05/01/joyful-web-design\n\nThat and a zoom chat today was inspiration to name that specific joyful experience \u201cweb joy\u201d.\n\nIt\u2019s a nod to \u201cmoon joy\u201d, a mere weeks old phrase many have heard and been inspired by, coined by Mission Control science officer Angela Garcia, and transmitted (spoken) by CAPCOM on shift, Jacki Mahaffey, in reply to the Artemis II astronauts on mission (as noted in a NASA AMA: https://www.reddit.com/r/nasa/comments/1stjt7m/comment/ohw9g9l/). You can hear the \u201cCopy, moon joy.\u201d expression in context at the start of this video: https://www.youtube.com/watch?v=LHUvedAssyE \n\nMuch thanks to James for his encouragement to blog \u201cweb joy\u201d.\n\n#webjoy #btConf #beyondTellerrand #webDesign #IndieWebCamp #indieweb"
        ],
        "content": [
         {
          "value": "\"web joy\" \u2014 the joy you experience when visiting a website with joyful content and/or have a joyful experience (as a user) on a website, or the joy of creating such a website.\n\nDuring the beyond tellerand conference this past week, someone mentioned \u201cresponsive web design\u201d and having just completed IndieWebCamp D\u00fcsseldorf, the thought popped in my head that joyful web design should be a named thing, since many of us spent the weekend at IndieWebCamp doing just that. \n\nI mentioned it to @jamesg.blog at a break between talks, we discussed it a bit and agreed that joy is a good motivator, and as creatives we both like creating things that are joyful to experience, and ideally joyful to create.\n\nJames blogged it before I got around to it: https://jamesg.blog/2026/05/01/joyful-web-design\n\nThat and a zoom chat today was inspiration to name that specific joyful experience \u201cweb joy\u201d.\n\nIt\u2019s a nod to \u201cmoon joy\u201d, a mere weeks old phrase many have heard and been inspired by, coined by Mission Control science officer Angela Garcia, and transmitted (spoken) by CAPCOM on shift, Jacki Mahaffey, in reply to the Artemis II astronauts on mission (as noted in a NASA AMA: https://www.reddit.com/r/nasa/comments/1stjt7m/comment/ohw9g9l/). You can hear the \u201cCopy, moon joy.\u201d expression in context at the start of this video: https://www.youtube.com/watch?v=LHUvedAssyE \n\nMuch thanks to James for his encouragement to blog \u201cweb joy\u201d.\n\n#webjoy #btConf #beyondTellerrand #webDesign #IndieWebCamp #indieweb",
          "lang": "en-US",
          "html": "\"web joy\" \u2014 the joy you experience when visiting a website with joyful content and/or have a joyful experience (as a user) on a website, or the joy of creating such a website.<br class=\"auto-break\"/><br class=\"auto-break\"/>During the beyond tellerand conference this past week, someone mentioned \u201cresponsive web design\u201d and having just completed IndieWebCamp D\u00fcsseldorf, the thought popped in my head that joyful web design should be a named thing, since many of us spent the weekend at IndieWebCamp doing just that. <br class=\"auto-break\"/><br class=\"auto-break\"/>I mentioned it to <a class=\"auto-link\" href=\"https://jamesg.blog\">@jamesg.blog</a> at a break between talks, we discussed it a bit and agreed that joy is a good motivator, and as creatives we both like creating things that are joyful to experience, and ideally joyful to create.<br class=\"auto-break\"/><br class=\"auto-break\"/>James blogged it before I got around to it: <a class=\"auto-link\" href=\"https://jamesg.blog/2026/05/01/joyful-web-design\">https://jamesg.blog/2026/05/01/joyful-web-design</a><br class=\"auto-break\"/><br class=\"auto-break\"/>That and a zoom chat today was inspiration to name that specific joyful experience \u201cweb joy\u201d.<br class=\"auto-break\"/><br class=\"auto-break\"/>It\u2019s a nod to \u201cmoon joy\u201d, a mere weeks old phrase many have heard and been inspired by, coined by Mission Control science officer Angela Garcia, and transmitted (spoken) by CAPCOM on shift, Jacki Mahaffey, in reply to the Artemis II astronauts on mission (as noted in a NASA AMA: <a class=\"auto-link\" href=\"https://www.reddit.com/r/nasa/comments/1stjt7m/comment/ohw9g9l/\">https://www.reddit.com/r/nasa/comments/1stjt7m/comment/ohw9g9l/</a>). You can hear the \u201cCopy, moon joy.\u201d expression in context at the start of this video: <a class=\"auto-link\" href=\"https://www.youtube.com/watch?v=LHUvedAssyE\">https://www.youtube.com/watch?v=LHUvedAssyE</a> <iframe class=\"youtube-player auto-embed figure\" height=\"385\" src=\"https://www.youtube.com/embed/LHUvedAssyE\" style=\"border:0\" width=\"480\"></iframe><br class=\"auto-break\"/><br class=\"auto-break\"/>Much thanks to James for his encouragement to blog \u201cweb joy\u201d.<br class=\"auto-break\"/><br class=\"auto-break\"/>#<span class=\"p-category auto-tag\">webjoy</span> #<span class=\"p-category auto-tag\">btConf</span> #<span class=\"p-category auto-tag\">beyondTellerrand</span> #<span class=\"p-category auto-tag\">webDesign</span> #<span class=\"p-category auto-tag\">IndieWebCamp</span> #<span class=\"p-category auto-tag\">indieweb</span>"
         }
        ],
        "category": [
         "webjoy",
         "btConf",
         "beyondTellerrand",
         "webDesign",
         "IndieWebCamp",
         "indieweb"
        ],
        "uid": [
         "https://tantek.com/2026/121/t2/web-joy"
        ],
        "url": [
         "https://tantek.com/2026/121/t2/web-joy"
        ],
        "published": [
         "2026-05-01 14:50-0700"
        ],
        "updated": [
         "2026-05-01 14:50-0700"
        ]
       },
       "lang": "en-US"
      },
      {
       "type": [
        "h-entry"
       ],
       "properties": {
        "name": [
         "4 conferences across 3 cities in 10 days:\n* 4/20 W3C AC Meeting (Huangzhou) \u201cChallenging how we see the web\u201d future of web browsers panel participant (remotely from San Francisco, on the evening of 2026-04-19)\n* 4/21-23 Mozilla Leadership Summit (Boston)\n* 4/25-26 IndieWebCamp D\u00fcsseldorf\n* 4/27-28 beyond tellerand D\u00fcsseldorf\n\nSomehow squeezed in a few personal events too:\n* 4/20 Boston Marathon cheering \u2014 managed to hike a half marathon myself that day!\n* 4/26 Balu Brigada concert in Cologne\n* 4/29 Cologne Cathedral tower climb\n\nIn total:\n\n7 events across 4 cities in 12 days including travel time.\n\nSaw, heard, spoke/designed/coded with so many inspiring people. So many notes, photos, and a few videos. Overall an incredibly positive (if exhausting) experience. It was highly illuminating contrasting the different sets of people, talks, practices etc., some overlapping, across all the events. An incredibly valuable overview perspective."
        ],
        "content": [
         {
          "value": "4 conferences across 3 cities in 10 days:\n* 4/20 W3C AC Meeting (Huangzhou) \u201cChallenging how we see the web\u201d future of web browsers panel participant (remotely from San Francisco, on the evening of 2026-04-19)\n* 4/21-23 Mozilla Leadership Summit (Boston)\n* 4/25-26 IndieWebCamp D\u00fcsseldorf\n* 4/27-28 beyond tellerand D\u00fcsseldorf\n\nSomehow squeezed in a few personal events too:\n* 4/20 Boston Marathon cheering \u2014 managed to hike a half marathon myself that day!\n* 4/26 Balu Brigada concert in Cologne\n* 4/29 Cologne Cathedral tower climb\n\nIn total:\n\n7 events across 4 cities in 12 days including travel time.\n\nSaw, heard, spoke/designed/coded with so many inspiring people. So many notes, photos, and a few videos. Overall an incredibly positive (if exhausting) experience. It was highly illuminating contrasting the different sets of people, talks, practices etc., some overlapping, across all the events. An incredibly valuable overview perspective.",
          "lang": "en-US",
          "html": "4 conferences across 3 cities in 10 days:<br class=\"auto-break\"/>* 4/20 W3C AC Meeting (Huangzhou) \u201cChallenging how we see the web\u201d future of web browsers panel participant (remotely from San Francisco, on the evening of 2026-04-19)<br class=\"auto-break\"/>* 4/21-23 Mozilla Leadership Summit (Boston)<br class=\"auto-break\"/>* 4/25-26 IndieWebCamp D\u00fcsseldorf<br class=\"auto-break\"/>* 4/27-28 beyond tellerand D\u00fcsseldorf<br class=\"auto-break\"/><br class=\"auto-break\"/>Somehow squeezed in a few personal events too:<br class=\"auto-break\"/>* 4/20 Boston Marathon cheering \u2014 managed to hike a half marathon myself that day!<br class=\"auto-break\"/>* 4/26 Balu Brigada concert in Cologne<br class=\"auto-break\"/>* 4/29 Cologne Cathedral tower climb<br class=\"auto-break\"/><br class=\"auto-break\"/>In total:<br class=\"auto-break\"/><br class=\"auto-break\"/>7 events across 4 cities in 12 days including travel time.<br class=\"auto-break\"/><br class=\"auto-break\"/>Saw, heard, spoke/designed/coded with so many inspiring people. So many notes, photos, and a few videos. Overall an incredibly positive (if exhausting) experience. It was highly illuminating contrasting the different sets of people, talks, practices etc., some overlapping, across all the events. An incredibly valuable overview perspective."
         }
        ],
        "uid": [
         "https://tantek.com/2026/121/t1/conferences-cities-days-events"
        ],
        "url": [
         "https://tantek.com/2026/121/t1/conferences-cities-days-events"
        ],
        "published": [
         "2026-05-01 13:27-0700"
        ],
        "updated": [
         "2026-05-01 13:27-0700"
        ]
       },
       "lang": "en-US"
      },
      {
       "type": [
        "h-entry"
       ],
       "properties": {
        "name": [
         "@NASA.gov has lots of short Artemis videos on their YouTube channel (@NASA@YouTube.com), however this 10h10m video of the Artemis II lunar flyby appears to be the closest to a continuous long-form recording of the live stream during that period.\n\nhttps://youtu.be/z-j1uxBmis0 \n\nAfter almost 14 minutes of intro footage, this live recording has some amazing moments in context such as when the Integrity crew named the two craters on the moon, the forty minute \u201cLoss of Signal\u201d (LoS) as Integrity went behind the moon, came back out, then into a solar eclipse, and of course all the very efficient (and competent) communications between the astronauts and Mission Control (with video of both).\n\nAnd quotes like Christina's \u201cWe do not leave Earth. We choose it.\u201d\n\nLots of long durations of silence as well. Fitting for a recording of video from space. Also great for putting on in the background while working. The crew comms with control competency alone is inspiring.\n\nNote: the #NASA and #SpaceflightNow YouTube livestreams I linked to five days ago are now only displaying the message:\n\u00a0\u201cThis live stream recording is not available.\u201d\na different kind of Loss of Signal.\n\n#liveStream #Artemis #Artemis2 #ArtemisII #Integrity #Moon #Earth #Houston #MissionControl #competent #competency"
        ],
        "content": [
         {
          "value": "@NASA.gov has lots of short Artemis videos on their YouTube channel (@NASA@YouTube.com), however this 10h10m video of the Artemis II lunar flyby appears to be the closest to a continuous long-form recording of the live stream during that period.\n\nhttps://youtu.be/z-j1uxBmis0 \n\nAfter almost 14 minutes of intro footage, this live recording has some amazing moments in context such as when the Integrity crew named the two craters on the moon, the forty minute \u201cLoss of Signal\u201d (LoS) as Integrity went behind the moon, came back out, then into a solar eclipse, and of course all the very efficient (and competent) communications between the astronauts and Mission Control (with video of both).\n\nAnd quotes like Christina's \u201cWe do not leave Earth. We choose it.\u201d\n\nLots of long durations of silence as well. Fitting for a recording of video from space. Also great for putting on in the background while working. The crew comms with control competency alone is inspiring.\n\nNote: the #NASA and #SpaceflightNow YouTube livestreams I linked to five days ago are now only displaying the message:\n\u00a0\u201cThis live stream recording is not available.\u201d\na different kind of Loss of Signal.\n\n#liveStream #Artemis #Artemis2 #ArtemisII #Integrity #Moon #Earth #Houston #MissionControl #competent #competency",
          "lang": "en-US",
          "html": "<a class=\"auto-link\" href=\"https://NASA.gov\">@NASA.gov</a> has lots of short Artemis videos on their YouTube channel (<a class=\"auto-link\" href=\"https://YouTube.com/@NASA\">@NASA@YouTube.com</a>), however this 10h10m video of the Artemis II lunar flyby appears to be the closest to a continuous long-form recording of the live stream during that period.<br class=\"auto-break\"/><br class=\"auto-break\"/><a class=\"auto-link\" href=\"https://youtu.be/z-j1uxBmis0\">https://youtu.be/z-j1uxBmis0</a> <iframe class=\"youtube-player auto-embed figure\" height=\"385\" src=\"https://www.youtube.com/embed/z-j1uxBmis0\" style=\"border:0\" width=\"480\"></iframe><br class=\"auto-break\"/><br class=\"auto-break\"/>After almost 14 minutes of intro footage, this live recording has some amazing moments in context such as when the Integrity crew named the two craters on the moon, the forty minute \u201cLoss of Signal\u201d (LoS) as Integrity went behind the moon, came back out, then into a solar eclipse, and of course all the very efficient (and competent) communications between the astronauts and Mission Control (with video of both).<br class=\"auto-break\"/><br class=\"auto-break\"/>And quotes like Christina's \u201cWe do not leave Earth. We choose it.\u201d<br class=\"auto-break\"/><br class=\"auto-break\"/>Lots of long durations of silence as well. Fitting for a recording of video from space. Also great for putting on in the background while working. The crew comms with control competency alone is inspiring.<br class=\"auto-break\"/><br class=\"auto-break\"/>Note: the #<span class=\"p-category auto-tag\">NASA</span> and #<span class=\"p-category auto-tag\">SpaceflightNow</span> YouTube livestreams I linked to five days ago are now only displaying the message:<br class=\"auto-break\"/>\u00a0\u201cThis live stream recording is not available.\u201d<br class=\"auto-break\"/>a different kind of Loss of Signal.<br class=\"auto-break\"/><br class=\"auto-break\"/>#<span class=\"p-category auto-tag\">liveStream</span> #<span class=\"p-category auto-tag\">Artemis</span> #<span class=\"p-category auto-tag\">Artemis2</span> #<span class=\"p-category auto-tag\">ArtemisII</span> #<span class=\"p-category auto-tag\">Integrity</span> #<span class=\"p-category auto-tag\">Moon</span> #<span class=\"p-category auto-tag\">Earth</span> #<span class=\"p-category auto-tag\">Houston</span> #<span class=\"p-category auto-tag\">MissionControl</span> #<span class=\"p-category auto-tag\">competent</span> #<span class=\"p-category auto-tag\">competency</span>"
         }
        ],
        "category": [
         "NASA",
         "SpaceflightNow",
         "liveStream",
         "Artemis",
         "Artemis2",
         "ArtemisII",
         "Integrity",
         "Moon",
         "Earth",
         "Houston",
         "MissionControl",
         "competent",
         "competency"
        ],
        "uid": [
         "https://tantek.com/2026/105/t1/nasa-artemis-lunar-flyby-recording"
        ],
        "url": [
         "https://tantek.com/2026/105/t1/nasa-artemis-lunar-flyby-recording"
        ],
        "published": [
         "2026-04-15 18:33-0700"
        ],
        "updated": [
         "2026-04-15 18:33-0700"
        ]
       },
       "lang": "en-US"
      },
      {
       "type": [
        "h-entry"
       ],
       "properties": {
        "name": [
         "NASA Artemis II live stream update:\n\nSpaceflight Now has the raw feed of Houston and Integrity comms and video:\n\nhttps://www.youtube.com/watch?v=M8m9YdxgJ5g \n\nThe official NASA live stream (posted previously), has switched to a NASA spokesperson and interviews of folks on the sea/ground as part of splashdown recovery operations.\n\nChoose your live stream:\n* Houston, space, and astronauts talking: https://youtu.be/M8m9YdxgJ5g \n* Spokespeople/interviews talking: https://youtu.be/m3kR2KK8TEs \n\nor pull them both up on separate side-by-side monitors like they have on the desks at Mission Control.\n\nAbout an hour left til splashdown!\n\n#NASA #liveStream #Artemis #Artemis2 #ArtemisII #Integrity #Earth #Houston #MissionControl #SpaceflightNow"
        ],
        "content": [
         {
          "value": "NASA Artemis II live stream update:\n\nSpaceflight Now has the raw feed of Houston and Integrity comms and video:\n\nhttps://www.youtube.com/watch?v=M8m9YdxgJ5g \n\nThe official NASA live stream (posted previously), has switched to a NASA spokesperson and interviews of folks on the sea/ground as part of splashdown recovery operations.\n\nChoose your live stream:\n* Houston, space, and astronauts talking: https://youtu.be/M8m9YdxgJ5g \n* Spokespeople/interviews talking: https://youtu.be/m3kR2KK8TEs \n\nor pull them both up on separate side-by-side monitors like they have on the desks at Mission Control.\n\nAbout an hour left til splashdown!\n\n#NASA #liveStream #Artemis #Artemis2 #ArtemisII #Integrity #Earth #Houston #MissionControl #SpaceflightNow",
          "lang": "en-US",
          "html": "NASA Artemis II live stream update:<br class=\"auto-break\"/><br class=\"auto-break\"/>Spaceflight Now has the raw feed of Houston and Integrity comms and video:<br class=\"auto-break\"/><br class=\"auto-break\"/><a class=\"auto-link\" href=\"https://www.youtube.com/watch?v=M8m9YdxgJ5g\">https://www.youtube.com/watch?v=M8m9YdxgJ5g</a> <iframe class=\"youtube-player auto-embed figure\" height=\"385\" src=\"https://www.youtube.com/embed/M8m9YdxgJ5g\" style=\"border:0\" width=\"480\"></iframe><br class=\"auto-break\"/><br class=\"auto-break\"/>The official NASA live stream (posted previously), has switched to a NASA spokesperson and interviews of folks on the sea/ground as part of splashdown recovery operations.<br class=\"auto-break\"/><br class=\"auto-break\"/>Choose your live stream:<br class=\"auto-break\"/>* Houston, space, and astronauts talking: <a class=\"auto-link\" href=\"https://youtu.be/M8m9YdxgJ5g\">https://youtu.be/M8m9YdxgJ5g</a> <iframe class=\"youtube-player auto-embed figure\" height=\"385\" src=\"https://www.youtube.com/embed/M8m9YdxgJ5g\" style=\"border:0\" width=\"480\"></iframe><br class=\"auto-break\"/>* Spokespeople/interviews talking: <a class=\"auto-link\" href=\"https://youtu.be/m3kR2KK8TEs\">https://youtu.be/m3kR2KK8TEs</a> <iframe class=\"youtube-player auto-embed figure\" height=\"385\" src=\"https://www.youtube.com/embed/m3kR2KK8TEs\" style=\"border:0\" width=\"480\"></iframe><br class=\"auto-break\"/><br class=\"auto-break\"/>or pull them both up on separate side-by-side monitors like they have on the desks at Mission Control.<br class=\"auto-break\"/><br class=\"auto-break\"/>About an hour left til splashdown!<br class=\"auto-break\"/><br class=\"auto-break\"/>#<span class=\"p-category auto-tag\">NASA</span> #<span class=\"p-category auto-tag\">liveStream</span> #<span class=\"p-category auto-tag\">Artemis</span> #<span class=\"p-category auto-tag\">Artemis2</span> #<span class=\"p-category auto-tag\">ArtemisII</span> #<span class=\"p-category auto-tag\">Integrity</span> #<span class=\"p-category auto-tag\">Earth</span> #<span class=\"p-category auto-tag\">Houston</span> #<span class=\"p-category auto-tag\">MissionControl</span> #<span class=\"p-category auto-tag\">SpaceflightNow</span>"
         }
        ],
        "category": [
         "NASA",
         "liveStream",
         "Artemis",
         "Artemis2",
         "ArtemisII",
         "Integrity",
         "Earth",
         "Houston",
         "MissionControl",
         "SpaceflightNow"
        ],
        "uid": [
         "https://tantek.com/2026/100/t2/nasa-artemis-live-stream-update"
        ],
        "url": [
         "https://tantek.com/2026/100/t2/nasa-artemis-live-stream-update"
        ],
        "published": [
         "2026-04-10 16:00-0700"
        ],
        "updated": [
         "2026-04-10 16:00-0700"
        ]
       },
       "lang": "en-US"
      },
      {
       "type": [
        "h-entry"
       ],
       "properties": {
        "name": [
         "What I\u2019m watching for the next 3 hours:\n\nhttps://www.youtube.com/watch?v=m3kR2KK8TEs \n\n#NASA #liveStream #Artemis #Artemis2 #ArtemisII #Earth"
        ],
        "content": [
         {
          "value": "What I\u2019m watching for the next 3 hours:\n\nhttps://www.youtube.com/watch?v=m3kR2KK8TEs \n\n#NASA #liveStream #Artemis #Artemis2 #ArtemisII #Earth",
          "lang": "en-US",
          "html": "What I\u2019m watching for the next 3 hours:<br class=\"auto-break\"/><br class=\"auto-break\"/><a class=\"auto-link\" href=\"https://www.youtube.com/watch?v=m3kR2KK8TEs\">https://www.youtube.com/watch?v=m3kR2KK8TEs</a> <iframe class=\"youtube-player auto-embed figure\" height=\"385\" src=\"https://www.youtube.com/embed/m3kR2KK8TEs\" style=\"border:0\" width=\"480\"></iframe><br class=\"auto-break\"/><br class=\"auto-break\"/>#<span class=\"p-category auto-tag\">NASA</span> #<span class=\"p-category auto-tag\">liveStream</span> #<span class=\"p-category auto-tag\">Artemis</span> #<span class=\"p-category auto-tag\">Artemis2</span> #<span class=\"p-category auto-tag\">ArtemisII</span> #<span class=\"p-category auto-tag\">Earth</span>"
         }
        ],
        "category": [
         "NASA",
         "liveStream",
         "Artemis",
         "Artemis2",
         "ArtemisII",
         "Earth"
        ],
        "uid": [
         "https://tantek.com/2026/100/t1/nasa-livestream-artemis-earth"
        ],
        "url": [
         "https://tantek.com/2026/100/t1/nasa-livestream-artemis-earth"
        ],
        "published": [
         "2026-04-10 14:07-0700"
        ],
        "updated": [
         "2026-04-10 14:07-0700"
        ]
       },
       "lang": "en-US"
      },
      {
       "type": [
        "h-entry"
       ],
       "properties": {
        "name": [
         "Filed my 2025 taxes today (electronically). Payments mailed (physically).\n\nEarliest in at least a decade, maybe two.\n\nTook a very conscious and deliberate effort to get here. Prioritizing, cutting or postponing anything non-urgent, iterating and improving systems year over year (especially in coordination with an accountant), collecting clustering materials earlier, and more.\n\nCompleting these kinds of \"required\" tasks/projects sooner feels like it frees up mental (and emotional) bandwidth (not having them occupying daily thoughts) to dream, brainstorm, and make more creative things."
        ],
        "content": [
         {
          "value": "Filed my 2025 taxes today (electronically). Payments mailed (physically).\n\nEarliest in at least a decade, maybe two.\n\nTook a very conscious and deliberate effort to get here. Prioritizing, cutting or postponing anything non-urgent, iterating and improving systems year over year (especially in coordination with an accountant), collecting clustering materials earlier, and more.\n\nCompleting these kinds of \"required\" tasks/projects sooner feels like it frees up mental (and emotional) bandwidth (not having them occupying daily thoughts) to dream, brainstorm, and make more creative things.",
          "lang": "en-US",
          "html": "Filed my 2025 taxes today (electronically). Payments mailed (physically).<br class=\"auto-break\"/><br class=\"auto-break\"/>Earliest in at least a decade, maybe two.<br class=\"auto-break\"/><br class=\"auto-break\"/>Took a very conscious and deliberate effort to get here. Prioritizing, cutting or postponing anything non-urgent, iterating and improving systems year over year (especially in coordination with an accountant), collecting clustering materials earlier, and more.<br class=\"auto-break\"/><br class=\"auto-break\"/>Completing these kinds of \"required\" tasks/projects sooner feels like it frees up mental (and emotional) bandwidth (not having them occupying daily thoughts) to dream, brainstorm, and make more creative things."
         }
        ],
        "uid": [
         "https://tantek.com/2026/094/t1/filed-taxes-payments-mailed"
        ],
        "url": [
         "https://tantek.com/2026/094/t1/filed-taxes-payments-mailed"
        ],
        "published": [
         "2026-04-04 23:55-0700"
        ],
        "updated": [
         "2026-04-04 23:55-0700"
        ]
       },
       "lang": "en-US"
      },
      {
       "type": [
        "h-entry"
       ],
       "properties": {
        "name": [
         "\u201cChoice. The solution is choice.\u201d*\n\nYou should download Firefox 148 (released today!) and explicitly set the new \"AI Controls\" to your preferred choice.\n* https://www.firefox.com/\n\nDisclosure: I work for Mozilla, but this post, like all on this site, represents my personal thoughts and opinions.\n\nMore and more software includes various \u201cAI\u201d features. The \u201cquotes\u201d are deliberate because there is an increasingly fuzzy popular understanding of what is or is not \u201cAI\u201d that continues to diverge from any specific technical meaning.\n\nMany folks have expressed strong opinions against \u201cAI\u201d features (for lots of reasons which are worth a separate blog post), in particular in web browsers, and a desire for a simple way to disable such features.\n\nTentatively called an \u201cAI kill switch\u201d, the Firefox team developed both an overall switch to turn off or block various \"AI\" features by default (including any future features), and the ability to selectively enable specific features. Or vice versa (turn on by default, and selectively disable specific features).\n\nSee the official blog post for screenshots and lots more details:\n* https://blog.mozilla.org/en/firefox/how-to-use-ai-controls/\n\nI have set my own \"Block AI enhancements\" setting to \"blocked\", with the exception of enabling \"Translations\". Translations are a feature I use often, a feature that requires per-page activation (another degree of user-control), and runs completely locally on my browser. Nothing automatic, nothing that requires submitting what I\u2019m reading to a random server.\n\nFor me this was an easy choice because it fits within my prior larger personal preference of using a restricted browser by default, with leaner settings, for greater security, privacy, and performance reasons. I do keep various other browser variants (and profiles) for testing purposes, experiments, or seeing what a new user may be experiencing.\n\nThe rest of this post is not about AI.\n\nMy Top Two Browser Extensions\n\nAs part a more restricted personal browser approach, for a long time I have run with two add-ons that block A LOT more by default:\n* NOSCRIPT: https://addons.mozilla.org/en-US/firefox/addon/noscript/\n* EFF Privacy Badger: https://addons.mozilla.org/en-US/firefox/addon/privacy-badger17/\n\nI do not use a separate ad blocker. With NOSCRIPT, in general I don\u2019t have to.\n\nI prefer to explicitly grant permission to a site (domain) for its scripts to load. Some sites I use often enough that I've granted persistent permissions for their scripts. Others, third parties in particular, that I know function purely for analytics or tracking I explicitly persistently block, because they seem totally disconnected from any user benefit.\n\nYes it\u2019s extra work, however, I find it worth seeing just how much each site depends on scripts, third party scripts, and how many.\n\nIt\u2019s especially worth it when I'm on slow or intermittent wifi, where every script blocked makes a big difference in how fast a site loads. Yes this is still a problem.\n\nThe network is not the computer. The network is the weakest link.\n\nEven now, in 2026, contrary to popular (especially developer) beliefs that fast internet access is ubiquitous, frequently it is not.\n\nIf you\u2019re on a train, plane, or at an event with thousands of people like a concert or many conferences, your wifi or even mobile connection will be intermittent or slow at best. \n\nJust this past Saturday at the F1 Exhibition in the San Francisco Marina, the cell networks were overwhelmed due to the crowds, with even \u201csimple\u201d text or chat messages failing to send. Last year at the Portola Festival their wifi was so bad that even if you managed to connect to it, simple HTML pages barely loaded, while native applications dependent on network access failed completely.\n\nJS;DR\n\nMany times if a site fails to display content without JavaScript, I simply close the tab.\n\nI already have so many open tabs to read (process) that I no longer feel any need to read any particular new website that fails to show content without JavaScript. If their web developers can\u2019t be bothered to take the time to implement progressive enhancement, why should I bother to take the time to read their content? More on this:\n* https://tantek.com/2025/069/t1/ten-years-jsdr-javascript-required-didnt-read\n* https://indieweb.org/js;dr\n\nA subtler form of JavaScript failure is when a site\u2019s content is displayed, however its buttons or even simple hyperlinks fail to function due to scripts not loading:\n* https://tantek.com/2012/073/t4/js-ajax-only-tired-waiting-bloated-scripts-sxsw-wifi\n\nProgressive Permissions\n\nOn sites that I do allow scripts, I still limit their access to cookies using the Privacy Badger add-on, and only selectively enable them if I\u2019m logging in or otherwise customizing my experience on that site.\n\nWhen websites immediately request use of a cookie disconnected from any user action that would justify a need for a cookie, it seems both presumptuous, and frankly, a bit pushy or rude. It also seems like rushed or lazy coding.\n\nUser requests are what computers are for.\n\nA user-centric approach to any kind of permission or capability, whether cookies or personal information like location, would only request such as part of directly handling an explicit user action that requires the capability.\n\nThe simple act of viewing a website should never require cookies, location information, or any other capabilities that require special permissions. E.g.\n* If I successfully log into a website, a cookie helps me stayed logged in.\n* If I click a \"show me my present location\" button on a map site, it makes sense to request my location to fullfil that user request.\n\nThis probably could have been several blog posts.\n\nYet the common theme across all of these is user choice.\n\nWhether new features, use of scripts, or privacy impacting features such as cookies or personal location, users should always have the choice and agency to say no, and customize their web browsing experience accordingly.\n\n#Firefox #Firefox148 #AIcontrol #AIkillswitch #JSDR #UserChoice\n\n*Top of post quote paraphrased from Neo in The Matrix Reloaded who said: \u201cChoice. The problem is choice.\u201d"
        ],
        "content": [
         {
          "value": "\u201cChoice. The solution is choice.\u201d*\n\nYou should download Firefox 148 (released today!) and explicitly set the new \"AI Controls\" to your preferred choice.\n* https://www.firefox.com/\n\nDisclosure: I work for Mozilla, but this post, like all on this site, represents my personal thoughts and opinions.\n\nMore and more software includes various \u201cAI\u201d features. The \u201cquotes\u201d are deliberate because there is an increasingly fuzzy popular understanding of what is or is not \u201cAI\u201d that continues to diverge from any specific technical meaning.\n\nMany folks have expressed strong opinions against \u201cAI\u201d features (for lots of reasons which are worth a separate blog post), in particular in web browsers, and a desire for a simple way to disable such features.\n\nTentatively called an \u201cAI kill switch\u201d, the Firefox team developed both an overall switch to turn off or block various \"AI\" features by default (including any future features), and the ability to selectively enable specific features. Or vice versa (turn on by default, and selectively disable specific features).\n\nSee the official blog post for screenshots and lots more details:\n* https://blog.mozilla.org/en/firefox/how-to-use-ai-controls/\n\nI have set my own \"Block AI enhancements\" setting to \"blocked\", with the exception of enabling \"Translations\". Translations are a feature I use often, a feature that requires per-page activation (another degree of user-control), and runs completely locally on my browser. Nothing automatic, nothing that requires submitting what I\u2019m reading to a random server.\n\nFor me this was an easy choice because it fits within my prior larger personal preference of using a restricted browser by default, with leaner settings, for greater security, privacy, and performance reasons. I do keep various other browser variants (and profiles) for testing purposes, experiments, or seeing what a new user may be experiencing.\n\nThe rest of this post is not about AI.\n\nMy Top Two Browser Extensions\n\nAs part a more restricted personal browser approach, for a long time I have run with two add-ons that block A LOT more by default:\n* NOSCRIPT: https://addons.mozilla.org/en-US/firefox/addon/noscript/\n* EFF Privacy Badger: https://addons.mozilla.org/en-US/firefox/addon/privacy-badger17/\n\nI do not use a separate ad blocker. With NOSCRIPT, in general I don\u2019t have to.\n\nI prefer to explicitly grant permission to a site (domain) for its scripts to load. Some sites I use often enough that I've granted persistent permissions for their scripts. Others, third parties in particular, that I know function purely for analytics or tracking I explicitly persistently block, because they seem totally disconnected from any user benefit.\n\nYes it\u2019s extra work, however, I find it worth seeing just how much each site depends on scripts, third party scripts, and how many.\n\nIt\u2019s especially worth it when I'm on slow or intermittent wifi, where every script blocked makes a big difference in how fast a site loads. Yes this is still a problem.\n\nThe network is not the computer. The network is the weakest link.\n\nEven now, in 2026, contrary to popular (especially developer) beliefs that fast internet access is ubiquitous, frequently it is not.\n\nIf you\u2019re on a train, plane, or at an event with thousands of people like a concert or many conferences, your wifi or even mobile connection will be intermittent or slow at best. \n\nJust this past Saturday at the F1 Exhibition in the San Francisco Marina, the cell networks were overwhelmed due to the crowds, with even \u201csimple\u201d text or chat messages failing to send. Last year at the Portola Festival their wifi was so bad that even if you managed to connect to it, simple HTML pages barely loaded, while native applications dependent on network access failed completely.\n\nJS;DR\n\nMany times if a site fails to display content without JavaScript, I simply close the tab.\n\nI already have so many open tabs to read (process) that I no longer feel any need to read any particular new website that fails to show content without JavaScript. If their web developers can\u2019t be bothered to take the time to implement progressive enhancement, why should I bother to take the time to read their content? More on this:\n* https://tantek.com/2025/069/t1/ten-years-jsdr-javascript-required-didnt-read\n* https://indieweb.org/js;dr\n\nA subtler form of JavaScript failure is when a site\u2019s content is displayed, however its buttons or even simple hyperlinks fail to function due to scripts not loading:\n* https://tantek.com/2012/073/t4/js-ajax-only-tired-waiting-bloated-scripts-sxsw-wifi\n\nProgressive Permissions\n\nOn sites that I do allow scripts, I still limit their access to cookies using the Privacy Badger add-on, and only selectively enable them if I\u2019m logging in or otherwise customizing my experience on that site.\n\nWhen websites immediately request use of a cookie disconnected from any user action that would justify a need for a cookie, it seems both presumptuous, and frankly, a bit pushy or rude. It also seems like rushed or lazy coding.\n\nUser requests are what computers are for.\n\nA user-centric approach to any kind of permission or capability, whether cookies or personal information like location, would only request such as part of directly handling an explicit user action that requires the capability.\n\nThe simple act of viewing a website should never require cookies, location information, or any other capabilities that require special permissions. E.g.\n* If I successfully log into a website, a cookie helps me stayed logged in.\n* If I click a \"show me my present location\" button on a map site, it makes sense to request my location to fullfil that user request.\n\nThis probably could have been several blog posts.\n\nYet the common theme across all of these is user choice.\n\nWhether new features, use of scripts, or privacy impacting features such as cookies or personal location, users should always have the choice and agency to say no, and customize their web browsing experience accordingly.\n\n#Firefox #Firefox148 #AIcontrol #AIkillswitch #JSDR #UserChoice\n\n*Top of post quote paraphrased from Neo in The Matrix Reloaded who said: \u201cChoice. The problem is choice.\u201d",
          "lang": "en-US",
          "html": "\u201cChoice. The solution is choice.\u201d*<br class=\"auto-break\"/><br class=\"auto-break\"/>You should download Firefox 148 (released today!) and explicitly set the new \"AI Controls\" to your preferred choice.<br class=\"auto-break\"/>* <a class=\"auto-link\" href=\"https://www.firefox.com/\">https://www.firefox.com/</a><br class=\"auto-break\"/><br class=\"auto-break\"/>Disclosure: I work for Mozilla, but this post, like all on this site, represents my personal thoughts and opinions.<br class=\"auto-break\"/><br class=\"auto-break\"/>More and more software includes various \u201cAI\u201d features. The \u201cquotes\u201d are deliberate because there is an increasingly fuzzy popular understanding of what is or is not \u201cAI\u201d that continues to diverge from any specific technical meaning.<br class=\"auto-break\"/><br class=\"auto-break\"/>Many folks have expressed strong opinions against \u201cAI\u201d features (for lots of reasons which are worth a separate blog post), in particular in web browsers, and a desire for a simple way to disable such features.<br class=\"auto-break\"/><br class=\"auto-break\"/>Tentatively called an \u201cAI kill switch\u201d, the Firefox team developed both an overall switch to turn off or block various \"AI\" features by default (including any future features), and the ability to selectively enable specific features. Or vice versa (turn on by default, and selectively disable specific features).<br class=\"auto-break\"/><br class=\"auto-break\"/>See the official blog post for screenshots and lots more details:<br class=\"auto-break\"/>* <a class=\"auto-link\" href=\"https://blog.mozilla.org/en/firefox/how-to-use-ai-controls/\">https://blog.mozilla.org/en/firefox/how-to-use-ai-controls/</a><br class=\"auto-break\"/><br class=\"auto-break\"/>I have set my own \"Block AI enhancements\" setting to \"blocked\", with the exception of enabling \"Translations\". Translations are a feature I use often, a feature that requires per-page activation (another degree of user-control), and runs completely locally on my browser. Nothing automatic, nothing that requires submitting what I\u2019m reading to a random server.<br class=\"auto-break\"/><br class=\"auto-break\"/>For me this was an easy choice because it fits within my prior larger personal preference of using a restricted browser by default, with leaner settings, for greater security, privacy, and performance reasons. I do keep various other browser variants (and profiles) for testing purposes, experiments, or seeing what a new user may be experiencing.<br class=\"auto-break\"/><br class=\"auto-break\"/>The rest of this post is not about AI.<br class=\"auto-break\"/><br class=\"auto-break\"/>My Top Two Browser Extensions<br class=\"auto-break\"/><br class=\"auto-break\"/>As part a more restricted personal browser approach, for a long time I have run with two add-ons that block A LOT more by default:<br class=\"auto-break\"/>* NOSCRIPT: <a class=\"auto-link\" href=\"https://addons.mozilla.org/en-US/firefox/addon/noscript/\">https://addons.mozilla.org/en-US/firefox/addon/noscript/</a><br class=\"auto-break\"/>* EFF Privacy Badger: <a class=\"auto-link\" href=\"https://addons.mozilla.org/en-US/firefox/addon/privacy-badger17/\">https://addons.mozilla.org/en-US/firefox/addon/privacy-badger17/</a><br class=\"auto-break\"/><br class=\"auto-break\"/>I do not use a separate ad blocker. With NOSCRIPT, in general I don\u2019t have to.<br class=\"auto-break\"/><br class=\"auto-break\"/>I prefer to explicitly grant permission to a site (domain) for its scripts to load. Some sites I use often enough that I've granted persistent permissions for their scripts. Others, third parties in particular, that I know function purely for analytics or tracking I explicitly persistently block, because they seem totally disconnected from any user benefit.<br class=\"auto-break\"/><br class=\"auto-break\"/>Yes it\u2019s extra work, however, I find it worth seeing just how much each site depends on scripts, third party scripts, and how many.<br class=\"auto-break\"/><br class=\"auto-break\"/>It\u2019s especially worth it when I'm on slow or intermittent wifi, where every script blocked makes a big difference in how fast a site loads. Yes this is still a problem.<br class=\"auto-break\"/><br class=\"auto-break\"/>The network is not the computer. The network is the weakest link.<br class=\"auto-break\"/><br class=\"auto-break\"/>Even now, in 2026, contrary to popular (especially developer) beliefs that fast internet access is ubiquitous, frequently it is not.<br class=\"auto-break\"/><br class=\"auto-break\"/>If you\u2019re on a train, plane, or at an event with thousands of people like a concert or many conferences, your wifi or even mobile connection will be intermittent or slow at best. <br class=\"auto-break\"/><br class=\"auto-break\"/>Just this past Saturday at the F1 Exhibition in the San Francisco Marina, the cell networks were overwhelmed due to the crowds, with even \u201csimple\u201d text or chat messages failing to send. Last year at the Portola Festival their wifi was so bad that even if you managed to connect to it, simple HTML pages barely loaded, while native applications dependent on network access failed completely.<br class=\"auto-break\"/><br class=\"auto-break\"/>JS;DR<br class=\"auto-break\"/><br class=\"auto-break\"/>Many times if a site fails to display content without JavaScript, I simply close the tab.<br class=\"auto-break\"/><br class=\"auto-break\"/>I already have so many open tabs to read (process) that I no longer feel any need to read any particular new website that fails to show content without JavaScript. If their web developers can\u2019t be bothered to take the time to implement progressive enhancement, why should I bother to take the time to read their content? More on this:<br class=\"auto-break\"/>* <a class=\"auto-link\" href=\"https://tantek.com/2025/069/t1/ten-years-jsdr-javascript-required-didnt-read\">https://tantek.com/2025/069/t1/ten-years-jsdr-javascript-required-didnt-read</a><br class=\"auto-break\"/>* <a class=\"auto-link\" href=\"https://indieweb.org/js;dr\">https://indieweb.org/js;dr</a><br class=\"auto-break\"/><br class=\"auto-break\"/>A subtler form of JavaScript failure is when a site\u2019s content is displayed, however its buttons or even simple hyperlinks fail to function due to scripts not loading:<br class=\"auto-break\"/>* <a class=\"auto-link\" href=\"https://tantek.com/2012/073/t4/js-ajax-only-tired-waiting-bloated-scripts-sxsw-wifi\">https://tantek.com/2012/073/t4/js-ajax-only-tired-waiting-bloated-scripts-sxsw-wifi</a><br class=\"auto-break\"/><br class=\"auto-break\"/>Progressive Permissions<br class=\"auto-break\"/><br class=\"auto-break\"/>On sites that I do allow scripts, I still limit their access to cookies using the Privacy Badger add-on, and only selectively enable them if I\u2019m logging in or otherwise customizing my experience on that site.<br class=\"auto-break\"/><br class=\"auto-break\"/>When websites immediately request use of a cookie disconnected from any user action that would justify a need for a cookie, it seems both presumptuous, and frankly, a bit pushy or rude. It also seems like rushed or lazy coding.<br class=\"auto-break\"/><br class=\"auto-break\"/>User requests are what computers are for.<br class=\"auto-break\"/><br class=\"auto-break\"/>A user-centric approach to any kind of permission or capability, whether cookies or personal information like location, would only request such as part of directly handling an explicit user action that requires the capability.<br class=\"auto-break\"/><br class=\"auto-break\"/>The simple act of viewing a website should never require cookies, location information, or any other capabilities that require special permissions. E.g.<br class=\"auto-break\"/>* If I successfully log into a website, a cookie helps me stayed logged in.<br class=\"auto-break\"/>* If I click a \"show me my present location\" button on a map site, it makes sense to request my location to fullfil that user request.<br class=\"auto-break\"/><br class=\"auto-break\"/>This probably could have been several blog posts.<br class=\"auto-break\"/><br class=\"auto-break\"/>Yet the common theme across all of these is user choice.<br class=\"auto-break\"/><br class=\"auto-break\"/>Whether new features, use of scripts, or privacy impacting features such as cookies or personal location, users should always have the choice and agency to say no, and customize their web browsing experience accordingly.<br class=\"auto-break\"/><br class=\"auto-break\"/>#<span class=\"p-category auto-tag\">Firefox</span> #<span class=\"p-category auto-tag\">Firefox148</span> #<span class=\"p-category auto-tag\">AIcontrol</span> #<span class=\"p-category auto-tag\">AIkillswitch</span> #<span class=\"p-category auto-tag\">JSDR</span> #<span class=\"p-category auto-tag\">UserChoice</span><br class=\"auto-break\"/><br class=\"auto-break\"/>*Top of post quote paraphrased from Neo in The Matrix Reloaded who said: \u201cChoice. The problem is choice.\u201d"
         }
        ],
        "category": [
         "Firefox",
         "Firefox148",
         "AIcontrol",
         "AIkillswitch",
         "JSDR",
         "UserChoice"
        ],
        "uid": [
         "https://tantek.com/2026/055/t2/solution-choice-firefox-ai-controls"
        ],
        "url": [
         "https://tantek.com/2026/055/t2/solution-choice-firefox-ai-controls"
        ],
        "published": [
         "2026-02-24 23:45-0800"
        ],
        "updated": [
         "2026-02-24 23:45-0800"
        ]
       },
       "lang": "en-US"
      },
      {
       "type": [
        "h-entry"
       ],
       "properties": {
        "name": [
         "Happy Twin Peaks day to those who celebrate!\n\nIn Agent Cooper\u2019s first appearance in the show, he\u2019s driving a car, right hand on the steering wheel, left hand holding a small black box (a microcassette recorder), that, if you don\u2019t look too closely, could easily be mistaken for a regular sized black iPhone with a flush battery pack attached to its back.\n\nYou may search the web for a screen capture or video if you like, or continue with this plain text description.\n\nHe's keeping his eyes on the road, and dictating audio.\n\n\u201cDiane, 11:30 a.m., February 24th. Entering the town of Twin Peaks.\u201d\n\nIn 1989 he\u2019s dictating a log entry to his presumably human assistant, Diane, for her to transcribe after the fact.\n\nIn 2026 (notwithstanding safety and legal concerns while driving) it\u2019s not a stretch to say he could (would likely) be dictating to his (perhaps renamed) digital assistant, Diane, or at least a speech-to-text feature in a note-taking application that would automatically transcribe his words in real time.\n\nThose transcribed words could even be saved as a private post or draft, either locally on his device, or to his personal website, for him to review and clean-up if necessary before publishing to and notifying perhaps a limited audience.\n\nImagine capturing your thoughts without having to look at a screen. No scrolling to first see what others have said. No attention-distracting alerts or admintax prompts to update an application. Capture your thoughts as they occur, and continue onward, focused on your current task or project, uninterrupted.\n\nToday\u2019s technologies and standards should enable such an interaction, all the way through to storing your dictations in a location of your choice. I wonder if anyone has built this.\n\nThis is post 8 of #100PostsOfIndieWeb. #100Posts #IndieWeb #TwinPeaksDay\n\n\u2190 https://tantek.com/2026/007/t3/wikipedia-edited-year-in-review\n\u2192 \ud83d\udd2e"
        ],
        "content": [
         {
          "value": "Happy Twin Peaks day to those who celebrate!\n\nIn Agent Cooper\u2019s first appearance in the show, he\u2019s driving a car, right hand on the steering wheel, left hand holding a small black box (a microcassette recorder), that, if you don\u2019t look too closely, could easily be mistaken for a regular sized black iPhone with a flush battery pack attached to its back.\n\nYou may search the web for a screen capture or video if you like, or continue with this plain text description.\n\nHe's keeping his eyes on the road, and dictating audio.\n\n\u201cDiane, 11:30 a.m., February 24th. Entering the town of Twin Peaks.\u201d\n\nIn 1989 he\u2019s dictating a log entry to his presumably human assistant, Diane, for her to transcribe after the fact.\n\nIn 2026 (notwithstanding safety and legal concerns while driving) it\u2019s not a stretch to say he could (would likely) be dictating to his (perhaps renamed) digital assistant, Diane, or at least a speech-to-text feature in a note-taking application that would automatically transcribe his words in real time.\n\nThose transcribed words could even be saved as a private post or draft, either locally on his device, or to his personal website, for him to review and clean-up if necessary before publishing to and notifying perhaps a limited audience.\n\nImagine capturing your thoughts without having to look at a screen. No scrolling to first see what others have said. No attention-distracting alerts or admintax prompts to update an application. Capture your thoughts as they occur, and continue onward, focused on your current task or project, uninterrupted.\n\nToday\u2019s technologies and standards should enable such an interaction, all the way through to storing your dictations in a location of your choice. I wonder if anyone has built this.\n\nThis is post 8 of #100PostsOfIndieWeb. #100Posts #IndieWeb #TwinPeaksDay\n\n\u2190 https://tantek.com/2026/007/t3/wikipedia-edited-year-in-review\n\u2192 \ud83d\udd2e",
          "lang": "en-US",
          "html": "Happy Twin Peaks day to those who celebrate!<br class=\"auto-break\"/><br class=\"auto-break\"/>In Agent Cooper\u2019s first appearance in the show, he\u2019s driving a car, right hand on the steering wheel, left hand holding a small black box (a microcassette recorder), that, if you don\u2019t look too closely, could easily be mistaken for a regular sized black iPhone with a flush battery pack attached to its back.<br class=\"auto-break\"/><br class=\"auto-break\"/>You may search the web for a screen capture or video if you like, or continue with this plain text description.<br class=\"auto-break\"/><br class=\"auto-break\"/>He's keeping his eyes on the road, and dictating audio.<br class=\"auto-break\"/><br class=\"auto-break\"/>\u201cDiane, 11:30 a.m., February 24th. Entering the town of Twin Peaks.\u201d<br class=\"auto-break\"/><br class=\"auto-break\"/>In 1989 he\u2019s dictating a log entry to his presumably human assistant, Diane, for her to transcribe after the fact.<br class=\"auto-break\"/><br class=\"auto-break\"/>In 2026 (notwithstanding safety and legal concerns while driving) it\u2019s not a stretch to say he could (would likely) be dictating to his (perhaps renamed) digital assistant, Diane, or at least a speech-to-text feature in a note-taking application that would automatically transcribe his words in real time.<br class=\"auto-break\"/><br class=\"auto-break\"/>Those transcribed words could even be saved as a private post or draft, either locally on his device, or to his personal website, for him to review and clean-up if necessary before publishing to and notifying perhaps a limited audience.<br class=\"auto-break\"/><br class=\"auto-break\"/>Imagine capturing your thoughts without having to look at a screen. No scrolling to first see what others have said. No attention-distracting alerts or admintax prompts to update an application. Capture your thoughts as they occur, and continue onward, focused on your current task or project, uninterrupted.<br class=\"auto-break\"/><br class=\"auto-break\"/>Today\u2019s technologies and standards should enable such an interaction, all the way through to storing your dictations in a location of your choice. I wonder if anyone has built this.<br class=\"auto-break\"/><br class=\"auto-break\"/>This is post 8 of #<span class=\"p-category auto-tag\">100PostsOfIndieWeb</span>. #<span class=\"p-category auto-tag\">100Posts</span> #<span class=\"p-category auto-tag\">IndieWeb</span> #<span class=\"p-category auto-tag\">TwinPeaksDay</span><br class=\"auto-break\"/><br class=\"auto-break\"/>\u2190 <a class=\"auto-link\" href=\"https://tantek.com/2026/007/t3/wikipedia-edited-year-in-review\">https://tantek.com/2026/007/t3/wikipedia-edited-year-in-review</a><br class=\"auto-break\"/>\u2192 \ud83d\udd2e"
         }
        ],
        "category": [
         "100PostsOfIndieWeb",
         "100Posts",
         "IndieWeb",
         "TwinPeaksDay"
        ],
        "uid": [
         "https://tantek.com/2026/055/t1/happy-twin-peaks-day"
        ],
        "url": [
         "https://tantek.com/2026/055/t1/happy-twin-peaks-day"
        ],
        "published": [
         "2026-02-24 19:14-0800"
        ],
        "updated": [
         "2026-02-24 19:14-0800"
        ]
       },
       "lang": "en-US"
      },
      {
       "type": [
        "h-entry"
       ],
       "properties": {
        "name": [
         "at the @CSSWG.org (@CSSWG) F2F (face to face) meeting^1, hosted by @Apple.com (@Apple) in Cupertino. Not counting at #w3cTPAC, the prior #CSSWG F2F meeting I went to was 2.5y ago, also in Cupertino, and before that 2019 in SF. Good to see so many longterm colleagues in-person.\n\n#W3C #CSS #webStandards\n\n^1 https://wiki.csswg.org/planning/cupertino-2026"
        ],
        "content": [
         {
          "value": "at the @CSSWG.org (@CSSWG) F2F (face to face) meeting^1, hosted by @Apple.com (@Apple) in Cupertino. Not counting at #w3cTPAC, the prior #CSSWG F2F meeting I went to was 2.5y ago, also in Cupertino, and before that 2019 in SF. Good to see so many longterm colleagues in-person.\n\n#W3C #CSS #webStandards\n\n^1 https://wiki.csswg.org/planning/cupertino-2026",
          "lang": "en-US",
          "html": "at the <a class=\"auto-link\" href=\"https://CSSWG.org\">@CSSWG.org</a> (<a class=\"auto-link h-cassis-username\" href=\"https://twitter.com/CSSWG\">@CSSWG</a>) F2F (face to face) meeting^1, hosted by <a class=\"auto-link\" href=\"https://Apple.com\">@Apple.com</a> (<a class=\"auto-link h-cassis-username\" href=\"https://twitter.com/Apple\">@Apple</a>) in Cupertino. Not counting at #<span class=\"p-category auto-tag\">w3cTPAC</span>, the prior #<span class=\"p-category auto-tag\">CSSWG</span> F2F meeting I went to was 2.5y ago, also in Cupertino, and before that 2019 in SF. Good to see so many longterm colleagues in-person.<br class=\"auto-break\"/><br class=\"auto-break\"/>#<span class=\"p-category auto-tag\">W3C</span> #<span class=\"p-category auto-tag\">CSS</span> #<span class=\"p-category auto-tag\">webStandards</span><br class=\"auto-break\"/><br class=\"auto-break\"/>^1 <a class=\"auto-link\" href=\"https://wiki.csswg.org/planning/cupertino-2026\">https://wiki.csswg.org/planning/cupertino-2026</a>"
         }
        ],
        "category": [
         "w3cTPAC",
         "CSSWG",
         "W3C",
         "CSS",
         "webStandards"
        ],
        "uid": [
         "https://tantek.com/2026/028/t1/csswg-f2f-apple-cupertino"
        ],
        "url": [
         "https://tantek.com/2026/028/t1/csswg-f2f-apple-cupertino"
        ],
        "published": [
         "2026-01-28 14:24-0800"
        ],
        "updated": [
         "2026-01-28 14:24-0800"
        ]
       },
       "children": [
        {
         "type": [
          "h-cassis-username"
         ],
         "properties": {
          "name": [
           "@CSSWG"
          ],
          "url": [
           "https://twitter.com/CSSWG"
          ]
         },
         "lang": "en-US"
        },
        {
         "type": [
          "h-cassis-username"
         ],
         "properties": {
          "name": [
           "@Apple"
          ],
          "url": [
           "https://twitter.com/Apple"
          ]
         },
         "lang": "en-US"
        }
       ],
       "lang": "en-US"
      },
      {
       "type": [
        "h-entry"
       ],
       "properties": {
        "name": [
         "Wikipedia \u201cEdited\u201d 2025 year in review, summarizing from Wikimedia XTools queries, and Wikipedia itself, curated manually for my personal site:\n\n* 7 articles created (new personal best), with several firsts for me. In creation order:\n\u00a0 * \"Take California\" (https://en.wikipedia.org/wiki/Take_California) \u2014 first music related\n\u00a0 * \"West Coast Health Alliance\" (https://en.wikipedia.org/wiki/West_Coast_Health_Alliance) \u2014 first health related\n\u00a0 * \"Northeast Public Health Collaborative\" (https://en.wikipedia.org/wiki/Northeast_Public_Health_Collaborative)\n\u00a0 * \"RaptureTok\" (https://en.wikipedia.org/wiki/RaptureTok) \u2014 first hashtag article\n\u00a0 * \"Governors Public Health Alliance\" (https://en.wikipedia.org/wiki/Governors_Public_Health_Alliance)\n\u00a0 * \"Stephanie D'Agostini\" (https://en.wikipedia.org/wiki/Stephanie_D%27Agostini) \u2014 first comedian\n\u00a0 * \"Mic Drop Comedy\" (https://en.wikipedia.org/wiki/Mic_Drop_Comedy) \u2014 first comedy club\n\n* 2 Category: articles created \u2014 first ever for me. In creation order:\n\u00a0 * https://en.wikipedia.org/wiki/Category:2025_establishments_in_Hawaii\n\u00a0 * https://en.wikipedia.org/wiki/Category:2025_establishments_in_Maryland\n\n* 28 redirects created: https://xtools.wmcloud.org/pages/en.wikipedia.org/Tantek/all/onlyredirects\n\nand\n\n* 1 image uploaded to Wikimedia Commons: https://commons.wikimedia.org/wiki/File:2025-12-11-stefdag.jpg?photo\n\nIn total:\n\n* 272 edits (not counting User: page edits) across Wikipedia and Wikimedia commons\n\u00a0 * 229 main Wikipedia articles edits\n\u00a0 * 39 Talk: page edits\n\u00a0 * 2 Category: page edits (above-mentioned articles created)\n\u00a0 * 2 Wikipedia Commons edits\n\u00a0 \n* 329 edits and contributions counting User: page edits: https://xtools.wmcloud.org/globalcontribs/Tantek/all///2025-12-31T01:36:35Z?limit=330\n\nThis is my first time posting a Wikipedia \u201cEdited\u201d year in review, despite having edited Wikipedia for 20+ years (https://tantek.com/2025/300/t20/wikipedia-editing-anniversary).\n\nWhile this #indieweb version of a year in review was fun to make and look back on, since all the data is public, there\u2019s an opportunity here for a service (perhaps another XTool: https://xtools.wmcloud.org/) or open source project to create such a summary for any Wikipedia editor.\n\nBeyond a nicer presentation than plain text lists and numbers, such a summary could include visuals like a graphs of some of these stats over time, like Wikipedia pages created or edits of various kinds each year.\n\nUntil then, I encourage everyone editing Wikipedia to make their own \u201cEdited\u201d (I made that up, feel free to pick a better term) year in review and post it on your personal site! Feel free to re-use any of the design or separation of numbers that I chose, or make up your own.\n\n\nThis is post 7 of #100PostsOfIndieWeb. #100Posts #yearInReview #Wikipedia #WikipediaEdited #Wikimedia #WikimediaCommons #XTools \n\n\u2190 https://tantek.com/2026/006/t1/2025-people-projects-insights-creations\n\u2192 https://tantek.com/2026/055/t1/happy-twin-peaks-day"
        ],
        "content": [
         {
          "value": "Wikipedia \u201cEdited\u201d 2025 year in review, summarizing from Wikimedia XTools queries, and Wikipedia itself, curated manually for my personal site:\n\n* 7 articles created (new personal best), with several firsts for me. In creation order:\n\u00a0 * \"Take California\" (https://en.wikipedia.org/wiki/Take_California) \u2014 first music related\n\u00a0 * \"West Coast Health Alliance\" (https://en.wikipedia.org/wiki/West_Coast_Health_Alliance) \u2014 first health related\n\u00a0 * \"Northeast Public Health Collaborative\" (https://en.wikipedia.org/wiki/Northeast_Public_Health_Collaborative)\n\u00a0 * \"RaptureTok\" (https://en.wikipedia.org/wiki/RaptureTok) \u2014 first hashtag article\n\u00a0 * \"Governors Public Health Alliance\" (https://en.wikipedia.org/wiki/Governors_Public_Health_Alliance)\n\u00a0 * \"Stephanie D'Agostini\" (https://en.wikipedia.org/wiki/Stephanie_D%27Agostini) \u2014 first comedian\n\u00a0 * \"Mic Drop Comedy\" (https://en.wikipedia.org/wiki/Mic_Drop_Comedy) \u2014 first comedy club\n\n* 2 Category: articles created \u2014 first ever for me. In creation order:\n\u00a0 * https://en.wikipedia.org/wiki/Category:2025_establishments_in_Hawaii\n\u00a0 * https://en.wikipedia.org/wiki/Category:2025_establishments_in_Maryland\n\n* 28 redirects created: https://xtools.wmcloud.org/pages/en.wikipedia.org/Tantek/all/onlyredirects\n\nand\n\n* 1 image uploaded to Wikimedia Commons: https://commons.wikimedia.org/wiki/File:2025-12-11-stefdag.jpg?photo\n\nIn total:\n\n* 272 edits (not counting User: page edits) across Wikipedia and Wikimedia commons\n\u00a0 * 229 main Wikipedia articles edits\n\u00a0 * 39 Talk: page edits\n\u00a0 * 2 Category: page edits (above-mentioned articles created)\n\u00a0 * 2 Wikipedia Commons edits\n\u00a0 \n* 329 edits and contributions counting User: page edits: https://xtools.wmcloud.org/globalcontribs/Tantek/all///2025-12-31T01:36:35Z?limit=330\n\nThis is my first time posting a Wikipedia \u201cEdited\u201d year in review, despite having edited Wikipedia for 20+ years (https://tantek.com/2025/300/t20/wikipedia-editing-anniversary).\n\nWhile this #indieweb version of a year in review was fun to make and look back on, since all the data is public, there\u2019s an opportunity here for a service (perhaps another XTool: https://xtools.wmcloud.org/) or open source project to create such a summary for any Wikipedia editor.\n\nBeyond a nicer presentation than plain text lists and numbers, such a summary could include visuals like a graphs of some of these stats over time, like Wikipedia pages created or edits of various kinds each year.\n\nUntil then, I encourage everyone editing Wikipedia to make their own \u201cEdited\u201d (I made that up, feel free to pick a better term) year in review and post it on your personal site! Feel free to re-use any of the design or separation of numbers that I chose, or make up your own.\n\n\nThis is post 7 of #100PostsOfIndieWeb. #100Posts #yearInReview #Wikipedia #WikipediaEdited #Wikimedia #WikimediaCommons #XTools \n\n\u2190 https://tantek.com/2026/006/t1/2025-people-projects-insights-creations\n\u2192 https://tantek.com/2026/055/t1/happy-twin-peaks-day",
          "lang": "en-US",
          "html": "Wikipedia \u201cEdited\u201d 2025 year in review, summarizing from Wikimedia XTools queries, and Wikipedia itself, curated manually for my personal site:<br class=\"auto-break\"/><br class=\"auto-break\"/>* 7 articles created (new personal best), with several firsts for me. In creation order:<br class=\"auto-break\"/>\u00a0 * \"Take California\" (<a class=\"auto-link\" href=\"https://en.wikipedia.org/wiki/Take_California\">https://en.wikipedia.org/wiki/Take_California</a>) \u2014 first music related<br class=\"auto-break\"/>\u00a0 * \"West Coast Health Alliance\" (<a class=\"auto-link\" href=\"https://en.wikipedia.org/wiki/West_Coast_Health_Alliance\">https://en.wikipedia.org/wiki/West_Coast_Health_Alliance</a>) \u2014 first health related<br class=\"auto-break\"/>\u00a0 * \"Northeast Public Health Collaborative\" (<a class=\"auto-link\" href=\"https://en.wikipedia.org/wiki/Northeast_Public_Health_Collaborative\">https://en.wikipedia.org/wiki/Northeast_Public_Health_Collaborative</a>)<br class=\"auto-break\"/>\u00a0 * \"RaptureTok\" (<a class=\"auto-link\" href=\"https://en.wikipedia.org/wiki/RaptureTok\">https://en.wikipedia.org/wiki/RaptureTok</a>) \u2014 first hashtag article<br class=\"auto-break\"/>\u00a0 * \"Governors Public Health Alliance\" (<a class=\"auto-link\" href=\"https://en.wikipedia.org/wiki/Governors_Public_Health_Alliance\">https://en.wikipedia.org/wiki/Governors_Public_Health_Alliance</a>)<br class=\"auto-break\"/>\u00a0 * \"Stephanie D'Agostini\" (<a class=\"auto-link\" href=\"https://en.wikipedia.org/wiki/Stephanie_D%27Agostini\">https://en.wikipedia.org/wiki/Stephanie_D%27Agostini</a>) \u2014 first comedian<br class=\"auto-break\"/>\u00a0 * \"Mic Drop Comedy\" (<a class=\"auto-link\" href=\"https://en.wikipedia.org/wiki/Mic_Drop_Comedy\">https://en.wikipedia.org/wiki/Mic_Drop_Comedy</a>) \u2014 first comedy club<br class=\"auto-break\"/><br class=\"auto-break\"/>* 2 Category: articles created \u2014 first ever for me. In creation order:<br class=\"auto-break\"/>\u00a0 * <a class=\"auto-link\" href=\"https://en.wikipedia.org/wiki/Category:2025_establishments_in_Hawaii\">https://en.wikipedia.org/wiki/Category:2025_establishments_in_Hawaii</a><br class=\"auto-break\"/>\u00a0 * <a class=\"auto-link\" href=\"https://en.wikipedia.org/wiki/Category:2025_establishments_in_Maryland\">https://en.wikipedia.org/wiki/Category:2025_establishments_in_Maryland</a><br class=\"auto-break\"/><br class=\"auto-break\"/>* 28 redirects created: <a class=\"auto-link\" href=\"https://xtools.wmcloud.org/pages/en.wikipedia.org/Tantek/all/onlyredirects\">https://xtools.wmcloud.org/pages/en.wikipedia.org/Tantek/all/onlyredirects</a><br class=\"auto-break\"/><br class=\"auto-break\"/>and<br class=\"auto-break\"/><br class=\"auto-break\"/>* 1 image uploaded to Wikimedia Commons: <a class=\"auto-link\" href=\"https://commons.wikimedia.org/wiki/File:2025-12-11-stefdag.jpg?photo\">https://commons.wikimedia.org/wiki/File:2025-12-11-stefdag.jpg?photo</a><br class=\"auto-break\"/><br class=\"auto-break\"/>In total:<br class=\"auto-break\"/><br class=\"auto-break\"/>* 272 edits (not counting User: page edits) across Wikipedia and Wikimedia commons<br class=\"auto-break\"/>\u00a0 * 229 main Wikipedia articles edits<br class=\"auto-break\"/>\u00a0 * 39 Talk: page edits<br class=\"auto-break\"/>\u00a0 * 2 Category: page edits (above-mentioned articles created)<br class=\"auto-break\"/>\u00a0 * 2 Wikipedia Commons edits<br class=\"auto-break\"/>\u00a0 <br class=\"auto-break\"/>* 329 edits and contributions counting User: page edits: <a class=\"auto-link\" href=\"https://xtools.wmcloud.org/globalcontribs/Tantek/all///2025-12-31T01:36:35Z?limit=330\">https://xtools.wmcloud.org/globalcontribs/Tantek/all///2025-12-31T01:36:35Z?limit=330</a><br class=\"auto-break\"/><br class=\"auto-break\"/>This is my first time posting a Wikipedia \u201cEdited\u201d year in review, despite having edited Wikipedia for 20+ years (<a class=\"auto-link\" href=\"https://tantek.com/2025/300/t20/wikipedia-editing-anniversary\">https://tantek.com/2025/300/t20/wikipedia-editing-anniversary</a>).<br class=\"auto-break\"/><br class=\"auto-break\"/>While this #<span class=\"p-category auto-tag\">indieweb</span> version of a year in review was fun to make and look back on, since all the data is public, there\u2019s an opportunity here for a service (perhaps another XTool: <a class=\"auto-link\" href=\"https://xtools.wmcloud.org/\">https://xtools.wmcloud.org/</a>) or open source project to create such a summary for any Wikipedia editor.<br class=\"auto-break\"/><br class=\"auto-break\"/>Beyond a nicer presentation than plain text lists and numbers, such a summary could include visuals like a graphs of some of these stats over time, like Wikipedia pages created or edits of various kinds each year.<br class=\"auto-break\"/><br class=\"auto-break\"/>Until then, I encourage everyone editing Wikipedia to make their own \u201cEdited\u201d (I made that up, feel free to pick a better term) year in review and post it on your personal site! Feel free to re-use any of the design or separation of numbers that I chose, or make up your own.<br class=\"auto-break\"/><br class=\"auto-break\"/><br class=\"auto-break\"/>This is post 7 of #<span class=\"p-category auto-tag\">100PostsOfIndieWeb</span>. #<span class=\"p-category auto-tag\">100Posts</span> #<span class=\"p-category auto-tag\">yearInReview</span> #<span class=\"p-category auto-tag\">Wikipedia</span> #<span class=\"p-category auto-tag\">WikipediaEdited</span> #<span class=\"p-category auto-tag\">Wikimedia</span> #<span class=\"p-category auto-tag\">WikimediaCommons</span> #<span class=\"p-category auto-tag\">XTools</span> <br class=\"auto-break\"/><br class=\"auto-break\"/>\u2190 <a class=\"auto-link\" href=\"https://tantek.com/2026/006/t1/2025-people-projects-insights-creations\">https://tantek.com/2026/006/t1/2025-people-projects-insights-creations</a><br class=\"auto-break\"/>\u2192 <a class=\"auto-link\" href=\"https://tantek.com/2026/055/t1/happy-twin-peaks-day\">https://tantek.com/2026/055/t1/happy-twin-peaks-day</a>"
         }
        ],
        "category": [
         "indieweb",
         "100PostsOfIndieWeb",
         "100Posts",
         "yearInReview",
         "Wikipedia",
         "WikipediaEdited",
         "Wikimedia",
         "WikimediaCommons",
         "XTools"
        ],
        "uid": [
         "https://tantek.com/2026/007/t3/wikipedia-edited-year-in-review"
        ],
        "url": [
         "https://tantek.com/2026/007/t3/wikipedia-edited-year-in-review"
        ],
        "published": [
         "2026-01-07 23:57-0800"
        ],
        "updated": [
         "2026-01-07 23:57-0800"
        ]
       },
       "lang": "en-US"
      },
      {
       "type": [
        "h-entry"
       ],
       "properties": {
        "in-reply-to": [
         {
          "type": [
           "h-cite"
          ],
          "properties": {
           "name": [
            "front-end.social user hdv\u2019s post"
           ],
           "url": [
            "https://front-end.social/@hdv/115824361611358161"
           ]
          },
          "value": "https://front-end.social/@hdv/115824361611358161",
          "lang": "en-US"
         }
        ],
        "name": [
         "@hidde.blog (@hdv@front-end.social) not reading or browsing would be amazing. Not publishing on social media is key though. And reading may be the only way to keep up with some people."
        ],
        "content": [
         {
          "value": "@hidde.blog (@hdv@front-end.social) not reading or browsing would be amazing. Not publishing on social media is key though. And reading may be the only way to keep up with some people.",
          "lang": "en-US",
          "html": "<a class=\"auto-link\" href=\"https://hidde.blog\">@hidde.blog</a> (<a class=\"auto-link\" href=\"https://front-end.social/@hdv\">@hdv@front-end.social</a>) not reading or browsing would be amazing. Not publishing on social media is key though. And reading may be the only way to keep up with some people."
         }
        ],
        "uid": [
         "https://tantek.com/2026/007/t2/"
        ],
        "url": [
         "https://tantek.com/2026/007/t2/"
        ],
        "published": [
         "2026-01-07 23:21-0800"
        ],
        "updated": [
         "2026-01-07 23:21-0800"
        ]
       },
       "lang": "en-US"
      },
      {
       "type": [
        "h-entry"
       ],
       "properties": {
        "in-reply-to": [
         {
          "type": [
           "h-cite"
          ],
          "properties": {
           "name": [
            "mastodon.social user Lippe\u2019s post"
           ],
           "url": [
            "https://mastodon.social/@Lippe/115849957335070998"
           ]
          },
          "value": "https://mastodon.social/@Lippe/115849957335070998",
          "lang": "en-US"
         }
        ],
        "name": [
         "@lip.pe (@Lippe@mastodon.social) it depended on the movie and theater. A few movies were packed, a few were about half full, and a few were nearly empty. I only saw one movie in Germany, at the Zoo Palast in Berlin. It was a pretty big auditorium was about one third full. The overall theater and lobby was packed however, long lines to buy tickets and food/drinks."
        ],
        "content": [
         {
          "value": "@lip.pe (@Lippe@mastodon.social) it depended on the movie and theater. A few movies were packed, a few were about half full, and a few were nearly empty. I only saw one movie in Germany, at the Zoo Palast in Berlin. It was a pretty big auditorium was about one third full. The overall theater and lobby was packed however, long lines to buy tickets and food/drinks.",
          "lang": "en-US",
          "html": "<a class=\"auto-link\" href=\"https://lip.pe\">@lip.pe</a> (<a class=\"auto-link\" href=\"https://mastodon.social/@Lippe\">@Lippe@mastodon.social</a>) it depended on the movie and theater. A few movies were packed, a few were about half full, and a few were nearly empty. I only saw one movie in Germany, at the Zoo Palast in Berlin. It was a pretty big auditorium was about one third full. The overall theater and lobby was packed however, long lines to buy tickets and food/drinks."
         }
        ],
        "uid": [
         "https://tantek.com/2026/007/t1/"
        ],
        "url": [
         "https://tantek.com/2026/007/t1/"
        ],
        "published": [
         "2026-01-07 09:13-0800"
        ],
        "updated": [
         "2026-01-07 09:13-0800"
        ]
       },
       "lang": "en-US"
      },
      {
       "type": [
        "h-entry"
       ],
       "properties": {
        "name": [
         "Beyond aggregated and summarized stats, in 2025 I met a few amazing people (you know who you are), and started a few projects. Most of these projects started with an idea, or recognizing a problem, that inspired invention.\n\nSometimes the ideas came from observations, shared, questioned, distilled into insights, and sometimes new creations.\n\nDuring one such conversation over coffee last year, James (https://jamesg.blog/) and I noticed that our Spotify \u201cdaylist\u201d list names were often quite entertaining, despite their brevity.\n\nWe mused whether it was worth keeping track of the particularly fun or interesting names, even knowing they were automatically generated.\n\nIn September 2025, James created a page on his site, a simple HTML list of a few of his fun daylists names, and shared it:\n* https://jamesg.blog/daylists\n\nWith a single real world #indieweb example, it was enough to stub a wiki page:\n* https://indieweb.org/daylists\n\nA little over two months later, during the weekend of 2025 IndieWeb Black Friday Create Day: Build Don\u2019t Buy, I followed James\u2019s example and built my own daylists page with a similar list of names of daylists, adding the datetimes when I had taken screenshots of my daylists.\n\n* https://tantek.com/daylists\n\nRealizing it was a page of items listed in reverse chronological order with datetime stamps, it made sense to mark it up as an h-feed so a social reader could theoretically subscribe to it. The list items had the minimum viable information for h-entry markup: content and a datetime. Minimal information meant only minimal markup was necessary: one nested HTML time element, and a couple of class names.\n\nThe list item of just the daylist name I started with:\n\n<!-- a daylist item -->\n<li>\n\u00a0 cyberpunk synthwave wednesday early morning\n</li>\n<!-- -->\n\nThe name\u2019s coarse textual day and time of day was a handy bit of text to markup with the time element with a numerical date-time for parsers. That plus two h-entry class names:\n\n<!-- minimal h-entry markup for a daylist item -->\n<li class=\"h-entry\">\n\u00a0 cyberpunk synthwave \n\u00a0 <time class=\"dt-published\" datetime=\"2025-10-15 07:59\">wednesday early morning</time>\n</li>\n<!-- -->\n\nAs linked on my daylists page, that plus a little h-feed wrapper is enough to make a web feed that a social reader like Monocle can parse and display:\n* https://monocle.p3k.io/preview?url=https%3A%2F%2Ftantek.com%2Fdaylists\n\nMinimal incremental markup added to an existing human readable HTML page. \n\nNo separate feed file needed. No XML, XSLT, or JavaScript either.\n\nThe HTML is the feed.\n\nA feed that social readers, like Monocle, or Artemis (that James wrote) can directly follow. \n\nFull circle.\n\nAnd the year before that, James blogged about how publishing an h-feed is also a more efficient, and easier to maintain, method of supporting other formats:\n* https://jamesg.blog/2024/06/06/publish-h-feed\n\nThis is post 6 of #100PostsOfIndieWeb. #100Posts #yearInReview #webFeed #microformats #microformats2 #hFeed #hEntry #socialReader #socialWeb \n\n\u2190 https://tantek.com/2026/005/t1/year-movies-in-theaters\n\u2192 https://tantek.com/2026/007/t3/wikipedia-edited-year-in-review\n\n\nGlossary:\n\nArtemis\n\u00a0 https://indieweb.org/Artemis\ndaylists\n\u00a0 https://indieweb.org/daylists\nh-entry\n\u00a0 https://indieweb.org/h-entry\nh-feed\n\u00a0 https://indieweb.org/h-feed\nIndieWeb Black Friday Create Day\n\u00a0 https://indieweb.org/events/2025-black-friday-create-day\nMonocle\n\u00a0 https://indieweb.org/Monocle\nsocial reader\n\u00a0 https://indieweb.org/social_reader\ntime element\n\u00a0 https://developer.mozilla.org/en-US/docs/Web/HTML/Reference/Elements/time"
        ],
        "content": [
         {
          "value": "Beyond aggregated and summarized stats, in 2025 I met a few amazing people (you know who you are), and started a few projects. Most of these projects started with an idea, or recognizing a problem, that inspired invention.\n\nSometimes the ideas came from observations, shared, questioned, distilled into insights, and sometimes new creations.\n\nDuring one such conversation over coffee last year, James (https://jamesg.blog/) and I noticed that our Spotify \u201cdaylist\u201d list names were often quite entertaining, despite their brevity.\n\nWe mused whether it was worth keeping track of the particularly fun or interesting names, even knowing they were automatically generated.\n\nIn September 2025, James created a page on his site, a simple HTML list of a few of his fun daylists names, and shared it:\n* https://jamesg.blog/daylists\n\nWith a single real world #indieweb example, it was enough to stub a wiki page:\n* https://indieweb.org/daylists\n\nA little over two months later, during the weekend of 2025 IndieWeb Black Friday Create Day: Build Don\u2019t Buy, I followed James\u2019s example and built my own daylists page with a similar list of names of daylists, adding the datetimes when I had taken screenshots of my daylists.\n\n* https://tantek.com/daylists\n\nRealizing it was a page of items listed in reverse chronological order with datetime stamps, it made sense to mark it up as an h-feed so a social reader could theoretically subscribe to it. The list items had the minimum viable information for h-entry markup: content and a datetime. Minimal information meant only minimal markup was necessary: one nested HTML time element, and a couple of class names.\n\nThe list item of just the daylist name I started with:\n\n<!-- a daylist item -->\n<li>\n\u00a0 cyberpunk synthwave wednesday early morning\n</li>\n<!-- -->\n\nThe name\u2019s coarse textual day and time of day was a handy bit of text to markup with the time element with a numerical date-time for parsers. That plus two h-entry class names:\n\n<!-- minimal h-entry markup for a daylist item -->\n<li class=\"h-entry\">\n\u00a0 cyberpunk synthwave \n\u00a0 <time class=\"dt-published\" datetime=\"2025-10-15 07:59\">wednesday early morning</time>\n</li>\n<!-- -->\n\nAs linked on my daylists page, that plus a little h-feed wrapper is enough to make a web feed that a social reader like Monocle can parse and display:\n* https://monocle.p3k.io/preview?url=https%3A%2F%2Ftantek.com%2Fdaylists\n\nMinimal incremental markup added to an existing human readable HTML page. \n\nNo separate feed file needed. No XML, XSLT, or JavaScript either.\n\nThe HTML is the feed.\n\nA feed that social readers, like Monocle, or Artemis (that James wrote) can directly follow. \n\nFull circle.\n\nAnd the year before that, James blogged about how publishing an h-feed is also a more efficient, and easier to maintain, method of supporting other formats:\n* https://jamesg.blog/2024/06/06/publish-h-feed\n\nThis is post 6 of #100PostsOfIndieWeb. #100Posts #yearInReview #webFeed #microformats #microformats2 #hFeed #hEntry #socialReader #socialWeb \n\n\u2190 https://tantek.com/2026/005/t1/year-movies-in-theaters\n\u2192 https://tantek.com/2026/007/t3/wikipedia-edited-year-in-review\n\n\nGlossary:\n\nArtemis\n\u00a0 https://indieweb.org/Artemis\ndaylists\n\u00a0 https://indieweb.org/daylists\nh-entry\n\u00a0 https://indieweb.org/h-entry\nh-feed\n\u00a0 https://indieweb.org/h-feed\nIndieWeb Black Friday Create Day\n\u00a0 https://indieweb.org/events/2025-black-friday-create-day\nMonocle\n\u00a0 https://indieweb.org/Monocle\nsocial reader\n\u00a0 https://indieweb.org/social_reader\ntime element\n\u00a0 https://developer.mozilla.org/en-US/docs/Web/HTML/Reference/Elements/time",
          "lang": "en-US",
          "html": "Beyond aggregated and summarized stats, in 2025 I met a few amazing people (you know who you are), and started a few projects. Most of these projects started with an idea, or recognizing a problem, that inspired invention.<br class=\"auto-break\"/><br class=\"auto-break\"/>Sometimes the ideas came from observations, shared, questioned, distilled into insights, and sometimes new creations.<br class=\"auto-break\"/><br class=\"auto-break\"/>During one such conversation over coffee last year, James (<a class=\"auto-link\" href=\"https://jamesg.blog/\">https://jamesg.blog/</a>) and I noticed that our Spotify \u201cdaylist\u201d list names were often quite entertaining, despite their brevity.<br class=\"auto-break\"/><br class=\"auto-break\"/>We mused whether it was worth keeping track of the particularly fun or interesting names, even knowing they were automatically generated.<br class=\"auto-break\"/><br class=\"auto-break\"/>In September 2025, James created a page on his site, a simple HTML list of a few of his fun daylists names, and shared it:<br class=\"auto-break\"/>* <a class=\"auto-link\" href=\"https://jamesg.blog/daylists\">https://jamesg.blog/daylists</a><br class=\"auto-break\"/><br class=\"auto-break\"/>With a single real world #<span class=\"p-category auto-tag\">indieweb</span> example, it was enough to stub a wiki page:<br class=\"auto-break\"/>* <a class=\"auto-link\" href=\"https://indieweb.org/daylists\">https://indieweb.org/daylists</a><br class=\"auto-break\"/><br class=\"auto-break\"/>A little over two months later, during the weekend of 2025 IndieWeb Black Friday Create Day: Build Don\u2019t Buy, I followed James\u2019s example and built my own daylists page with a similar list of names of daylists, adding the datetimes when I had taken screenshots of my daylists.<br class=\"auto-break\"/><br class=\"auto-break\"/>* <a class=\"auto-link\" href=\"https://tantek.com/daylists\">https://tantek.com/daylists</a><br class=\"auto-break\"/><br class=\"auto-break\"/>Realizing it was a page of items listed in reverse chronological order with datetime stamps, it made sense to mark it up as an h-feed so a social reader could theoretically subscribe to it. The list items had the minimum viable information for h-entry markup: content and a datetime. Minimal information meant only minimal markup was necessary: one nested HTML time element, and a couple of class names.<br class=\"auto-break\"/><br class=\"auto-break\"/>The list item of just the daylist name I started with:<br class=\"auto-break\"/><br class=\"auto-break\"/>&lt;!-- a daylist item --&gt;<br class=\"auto-break\"/>&lt;li&gt;<br class=\"auto-break\"/>\u00a0 cyberpunk synthwave wednesday early morning<br class=\"auto-break\"/>&lt;/li&gt;<br class=\"auto-break\"/>&lt;!-- --&gt;<br class=\"auto-break\"/><br class=\"auto-break\"/>The name\u2019s coarse textual day and time of day was a handy bit of text to markup with the time element with a numerical date-time for parsers. That plus two h-entry class names:<br class=\"auto-break\"/><br class=\"auto-break\"/>&lt;!-- minimal h-entry markup for a daylist item --&gt;<br class=\"auto-break\"/>&lt;li class=\"h-entry\"&gt;<br class=\"auto-break\"/>\u00a0 cyberpunk synthwave <br class=\"auto-break\"/>\u00a0 &lt;time class=\"dt-published\" datetime=\"2025-10-15 07:59\"&gt;wednesday early morning&lt;/time&gt;<br class=\"auto-break\"/>&lt;/li&gt;<br class=\"auto-break\"/>&lt;!-- --&gt;<br class=\"auto-break\"/><br class=\"auto-break\"/>As linked on my daylists page, that plus a little h-feed wrapper is enough to make a web feed that a social reader like Monocle can parse and display:<br class=\"auto-break\"/>* <a class=\"auto-link\" href=\"https://monocle.p3k.io/preview?url=https%3A%2F%2Ftantek.com%2Fdaylists\">https://monocle.p3k.io/preview?url=https%3A%2F%2Ftantek.com%2Fdaylists</a><br class=\"auto-break\"/><br class=\"auto-break\"/>Minimal incremental markup added to an existing human readable HTML page. <br class=\"auto-break\"/><br class=\"auto-break\"/>No separate feed file needed. No XML, XSLT, or JavaScript either.<br class=\"auto-break\"/><br class=\"auto-break\"/>The HTML is the feed.<br class=\"auto-break\"/><br class=\"auto-break\"/>A feed that social readers, like Monocle, or Artemis (that James wrote) can directly follow. <br class=\"auto-break\"/><br class=\"auto-break\"/>Full circle.<br class=\"auto-break\"/><br class=\"auto-break\"/>And the year before that, James blogged about how publishing an h-feed is also a more efficient, and easier to maintain, method of supporting other formats:<br class=\"auto-break\"/>* <a class=\"auto-link\" href=\"https://jamesg.blog/2024/06/06/publish-h-feed\">https://jamesg.blog/2024/06/06/publish-h-feed</a><br class=\"auto-break\"/><br class=\"auto-break\"/>This is post 6 of #<span class=\"p-category auto-tag\">100PostsOfIndieWeb</span>. #<span class=\"p-category auto-tag\">100Posts</span> #<span class=\"p-category auto-tag\">yearInReview</span> #<span class=\"p-category auto-tag\">webFeed</span> #<span class=\"p-category auto-tag\">microformats</span> #<span class=\"p-category auto-tag\">microformats2</span> #<span class=\"p-category auto-tag\">hFeed</span> #<span class=\"p-category auto-tag\">hEntry</span> #<span class=\"p-category auto-tag\">socialReader</span> #<span class=\"p-category auto-tag\">socialWeb</span> <br class=\"auto-break\"/><br class=\"auto-break\"/>\u2190 <a class=\"auto-link\" href=\"https://tantek.com/2026/005/t1/year-movies-in-theaters\">https://tantek.com/2026/005/t1/year-movies-in-theaters</a><br class=\"auto-break\"/>\u2192 <a class=\"auto-link\" href=\"https://tantek.com/2026/007/t3/wikipedia-edited-year-in-review\">https://tantek.com/2026/007/t3/wikipedia-edited-year-in-review</a><br class=\"auto-break\"/><br class=\"auto-break\"/><br class=\"auto-break\"/>Glossary:<br class=\"auto-break\"/><br class=\"auto-break\"/>Artemis<br class=\"auto-break\"/>\u00a0 <a class=\"auto-link\" href=\"https://indieweb.org/Artemis\">https://indieweb.org/Artemis</a><br class=\"auto-break\"/>daylists<br class=\"auto-break\"/>\u00a0 <a class=\"auto-link\" href=\"https://indieweb.org/daylists\">https://indieweb.org/daylists</a><br class=\"auto-break\"/>h-entry<br class=\"auto-break\"/>\u00a0 <a class=\"auto-link\" href=\"https://indieweb.org/h-entry\">https://indieweb.org/h-entry</a><br class=\"auto-break\"/>h-feed<br class=\"auto-break\"/>\u00a0 <a class=\"auto-link\" href=\"https://indieweb.org/h-feed\">https://indieweb.org/h-feed</a><br class=\"auto-break\"/>IndieWeb Black Friday Create Day<br class=\"auto-break\"/>\u00a0 <a class=\"auto-link\" href=\"https://indieweb.org/events/2025-black-friday-create-day\">https://indieweb.org/events/2025-black-friday-create-day</a><br class=\"auto-break\"/>Monocle<br class=\"auto-break\"/>\u00a0 <a class=\"auto-link\" href=\"https://indieweb.org/Monocle\">https://indieweb.org/Monocle</a><br class=\"auto-break\"/>social reader<br class=\"auto-break\"/>\u00a0 <a class=\"auto-link\" href=\"https://indieweb.org/social_reader\">https://indieweb.org/social_reader</a><br class=\"auto-break\"/>time element<br class=\"auto-break\"/>\u00a0 <a class=\"auto-link\" href=\"https://developer.mozilla.org/en-US/docs/Web/HTML/Reference/Elements/time\">https://developer.mozilla.org/en-US/docs/Web/HTML/Reference/Elements/time</a>"
         }
        ],
        "category": [
         "indieweb",
         "100PostsOfIndieWeb",
         "100Posts",
         "yearInReview",
         "webFeed",
         "microformats",
         "microformats2",
         "hFeed",
         "hEntry",
         "socialReader",
         "socialWeb"
        ],
        "uid": [
         "https://tantek.com/2026/006/t1/2025-people-projects-insights-creations"
        ],
        "url": [
         "https://tantek.com/2026/006/t1/2025-people-projects-insights-creations"
        ],
        "published": [
         "2026-01-06 23:42-0800"
        ],
        "updated": [
         "2026-01-06 23:42-0800"
        ]
       },
       "lang": "en-US"
      },
      {
       "type": [
        "h-entry"
       ],
       "properties": {
        "name": [
         "My year in movies in theaters, using Fandango > My Orders > History, my Swarm Timeline, and personal recollection, to aggregate a few lists and stats:\n\nI saw 9 new movies in theaters in 2025, two of them multiple times (dates are first viewing)\n* 2025-02-20 \ud83d\udc79 Captain America: Brave New World\n* 2025-05-22 \u2139\ufe0f Mission: Impossible - The Final Reckoning\n* 2025-07-20 \ud83e\uddb8\ud83c\udffb\u200d\u2642\ufe0f Superman (2025)\n* 2025-07-26 \u24f8 The Fantastic Four: First Steps (2025)\n* 2025-10-09 \ud83d\udd3b Tron: Ares\n* 2025-11-15 \ud83c\udfc3\ud83c\udffb\u200d\u2642\ufe0f The Running Man (2025)\n* 2025-11-19 \ud83e\uddcc Predator: Badlands\n* 2025-12-03 \ud83e\ude84 Now You See Me: Now You Don\u2019t\n* 2025-12-14 \ud83e\uddf9 Wicked: For Good\n\nIn these cities:\n* 11x San Francisco\n* Berlin\n* Boston\n* San Diego\n\nAt the following movie theaters:\n* 6x AMC Metreon Dolby\n* 2x AMC Metreon IMAX\n* Zoo Palast\n* Alamo Drafthouse SF HDR BARCO\n* AMC Boston Common IMAX\n* Regal Stonestown Galleria ScreenX\n* Regal Stonestown Galleria\n* AMC Mission Valley 20\n\nIn the following formats, in rough order of frequency then features/quality:\n* 5x Dolby\n* 2x IMAX\n* 2x Standard\n* 3D IMAX\n* 3D Dolby\n* HDR BARCO\n* ScreenX\n* Standard German dub\n\nThe latter three were new formats for me this year: HDR BARCO, ScreenX, and Standard German dub.\n\nMy preferred movie format is still Dolby, in particular in the Metreon Dolby theater. I\u2019ve been to other \u201cDolby\u201d theaters (including other AMC Dolby) and none have measured up. Dolby theater audio quality is significantly better than any IMAX theater I have been in.\n\n3D IMAX can look amazing for the right film (e.g. Tron: Ares). In comparison, I was not impressed by 3D Dolby, or any other 3D projection+glasses technologies over the years.\n\nHDR BARCO was very high quality, however, having seen the same film (Tron: Ares, with lots of dark scenes) in both HDR BARCO and Metreon Dolby, I could not see a discernible difference in the visual quality. Perhaps the light pollution from the Alamo Drafthouse's under-table lights interfered with the quality of the HDR BARCO experience.\n\nI archived the page that Alamo Drafthouse had setup for the HDR BARCO Tron: Ares showing:\n* https://web.archive.org/web/20251011173709/https://drafthouse.com/sf/event/special-event-tron-ares-hdr-by-barco?cinemaId=0801&sessionId=74102\nUnclear why they took the page down.\n\nScreenX was an entertaining gimmick for the landscapes of Predator: Badlands. I would consider seeing another suitable movie in the format.\n\nWatching a film dubbed in German was an interesting challenge that pushed and exceeded my German speech comprehension skills. I had to use contextual cues, on screen, sci-fi terminology, and the Fantastic Four subject matter to interpret much of it.\n\nI constructed these summary lists by hand, and having completed them, I think next time it might work better to incorporate the raw data into a table with various columns for date, time, film name, theater, auditorium, format, and perhaps more like seat number(s) and the set of us at the viewing. I would not include classic \"IMDB\" fields like genre, director, writer etc. because all of those are independent of the particular theater/viewing and can easily be looked up on Wikipedia. Duplicating that info in my own personal notes would merely add noise to the signal of each specific movie theater experience.\n\nI\u2019m curious if anyone else has done something like this / is doing this to keep track of the movies they see in theaters, what info to capture about the viewing, what to note about the particular experience, and what to publish on their #indieweb site.\n\nThis is post 5 of #100PostsOfIndieWeb. #100Posts #yearInReview #yearInMovies #yearInTheaters\n\n\u2190 https://tantek.com/2026/004/t1/year-in-sport\n\u2192 https://tantek.com/2026/006/t1/2025-people-projects-insights-creations"
        ],
        "content": [
         {
          "value": "My year in movies in theaters, using Fandango > My Orders > History, my Swarm Timeline, and personal recollection, to aggregate a few lists and stats:\n\nI saw 9 new movies in theaters in 2025, two of them multiple times (dates are first viewing)\n* 2025-02-20 \ud83d\udc79 Captain America: Brave New World\n* 2025-05-22 \u2139\ufe0f Mission: Impossible - The Final Reckoning\n* 2025-07-20 \ud83e\uddb8\ud83c\udffb\u200d\u2642\ufe0f Superman (2025)\n* 2025-07-26 \u24f8 The Fantastic Four: First Steps (2025)\n* 2025-10-09 \ud83d\udd3b Tron: Ares\n* 2025-11-15 \ud83c\udfc3\ud83c\udffb\u200d\u2642\ufe0f The Running Man (2025)\n* 2025-11-19 \ud83e\uddcc Predator: Badlands\n* 2025-12-03 \ud83e\ude84 Now You See Me: Now You Don\u2019t\n* 2025-12-14 \ud83e\uddf9 Wicked: For Good\n\nIn these cities:\n* 11x San Francisco\n* Berlin\n* Boston\n* San Diego\n\nAt the following movie theaters:\n* 6x AMC Metreon Dolby\n* 2x AMC Metreon IMAX\n* Zoo Palast\n* Alamo Drafthouse SF HDR BARCO\n* AMC Boston Common IMAX\n* Regal Stonestown Galleria ScreenX\n* Regal Stonestown Galleria\n* AMC Mission Valley 20\n\nIn the following formats, in rough order of frequency then features/quality:\n* 5x Dolby\n* 2x IMAX\n* 2x Standard\n* 3D IMAX\n* 3D Dolby\n* HDR BARCO\n* ScreenX\n* Standard German dub\n\nThe latter three were new formats for me this year: HDR BARCO, ScreenX, and Standard German dub.\n\nMy preferred movie format is still Dolby, in particular in the Metreon Dolby theater. I\u2019ve been to other \u201cDolby\u201d theaters (including other AMC Dolby) and none have measured up. Dolby theater audio quality is significantly better than any IMAX theater I have been in.\n\n3D IMAX can look amazing for the right film (e.g. Tron: Ares). In comparison, I was not impressed by 3D Dolby, or any other 3D projection+glasses technologies over the years.\n\nHDR BARCO was very high quality, however, having seen the same film (Tron: Ares, with lots of dark scenes) in both HDR BARCO and Metreon Dolby, I could not see a discernible difference in the visual quality. Perhaps the light pollution from the Alamo Drafthouse's under-table lights interfered with the quality of the HDR BARCO experience.\n\nI archived the page that Alamo Drafthouse had setup for the HDR BARCO Tron: Ares showing:\n* https://web.archive.org/web/20251011173709/https://drafthouse.com/sf/event/special-event-tron-ares-hdr-by-barco?cinemaId=0801&sessionId=74102\nUnclear why they took the page down.\n\nScreenX was an entertaining gimmick for the landscapes of Predator: Badlands. I would consider seeing another suitable movie in the format.\n\nWatching a film dubbed in German was an interesting challenge that pushed and exceeded my German speech comprehension skills. I had to use contextual cues, on screen, sci-fi terminology, and the Fantastic Four subject matter to interpret much of it.\n\nI constructed these summary lists by hand, and having completed them, I think next time it might work better to incorporate the raw data into a table with various columns for date, time, film name, theater, auditorium, format, and perhaps more like seat number(s) and the set of us at the viewing. I would not include classic \"IMDB\" fields like genre, director, writer etc. because all of those are independent of the particular theater/viewing and can easily be looked up on Wikipedia. Duplicating that info in my own personal notes would merely add noise to the signal of each specific movie theater experience.\n\nI\u2019m curious if anyone else has done something like this / is doing this to keep track of the movies they see in theaters, what info to capture about the viewing, what to note about the particular experience, and what to publish on their #indieweb site.\n\nThis is post 5 of #100PostsOfIndieWeb. #100Posts #yearInReview #yearInMovies #yearInTheaters\n\n\u2190 https://tantek.com/2026/004/t1/year-in-sport\n\u2192 https://tantek.com/2026/006/t1/2025-people-projects-insights-creations",
          "lang": "en-US",
          "html": "My year in movies in theaters, using Fandango &gt; My Orders &gt; History, my Swarm Timeline, and personal recollection, to aggregate a few lists and stats:<br class=\"auto-break\"/><br class=\"auto-break\"/>I saw 9 new movies in theaters in 2025, two of them multiple times (dates are first viewing)<br class=\"auto-break\"/>* 2025-02-20 \ud83d\udc79 Captain America: Brave New World<br class=\"auto-break\"/>* 2025-05-22 \u2139\ufe0f Mission: Impossible - The Final Reckoning<br class=\"auto-break\"/>* 2025-07-20 \ud83e\uddb8\ud83c\udffb\u200d\u2642\ufe0f Superman (2025)<br class=\"auto-break\"/>* 2025-07-26 \u24f8 The Fantastic Four: First Steps (2025)<br class=\"auto-break\"/>* 2025-10-09 \ud83d\udd3b Tron: Ares<br class=\"auto-break\"/>* 2025-11-15 \ud83c\udfc3\ud83c\udffb\u200d\u2642\ufe0f The Running Man (2025)<br class=\"auto-break\"/>* 2025-11-19 \ud83e\uddcc Predator: Badlands<br class=\"auto-break\"/>* 2025-12-03 \ud83e\ude84 Now You See Me: Now You Don\u2019t<br class=\"auto-break\"/>* 2025-12-14 \ud83e\uddf9 Wicked: For Good<br class=\"auto-break\"/><br class=\"auto-break\"/>In these cities:<br class=\"auto-break\"/>* 11x San Francisco<br class=\"auto-break\"/>* Berlin<br class=\"auto-break\"/>* Boston<br class=\"auto-break\"/>* San Diego<br class=\"auto-break\"/><br class=\"auto-break\"/>At the following movie theaters:<br class=\"auto-break\"/>* 6x AMC Metreon Dolby<br class=\"auto-break\"/>* 2x AMC Metreon IMAX<br class=\"auto-break\"/>* Zoo Palast<br class=\"auto-break\"/>* Alamo Drafthouse SF HDR BARCO<br class=\"auto-break\"/>* AMC Boston Common IMAX<br class=\"auto-break\"/>* Regal Stonestown Galleria ScreenX<br class=\"auto-break\"/>* Regal Stonestown Galleria<br class=\"auto-break\"/>* AMC Mission Valley 20<br class=\"auto-break\"/><br class=\"auto-break\"/>In the following formats, in rough order of frequency then features/quality:<br class=\"auto-break\"/>* 5x Dolby<br class=\"auto-break\"/>* 2x IMAX<br class=\"auto-break\"/>* 2x Standard<br class=\"auto-break\"/>* 3D IMAX<br class=\"auto-break\"/>* 3D Dolby<br class=\"auto-break\"/>* HDR BARCO<br class=\"auto-break\"/>* ScreenX<br class=\"auto-break\"/>* Standard German dub<br class=\"auto-break\"/><br class=\"auto-break\"/>The latter three were new formats for me this year: HDR BARCO, ScreenX, and Standard German dub.<br class=\"auto-break\"/><br class=\"auto-break\"/>My preferred movie format is still Dolby, in particular in the Metreon Dolby theater. I\u2019ve been to other \u201cDolby\u201d theaters (including other AMC Dolby) and none have measured up. Dolby theater audio quality is significantly better than any IMAX theater I have been in.<br class=\"auto-break\"/><br class=\"auto-break\"/>3D IMAX can look amazing for the right film (e.g. Tron: Ares). In comparison, I was not impressed by 3D Dolby, or any other 3D projection+glasses technologies over the years.<br class=\"auto-break\"/><br class=\"auto-break\"/>HDR BARCO was very high quality, however, having seen the same film (Tron: Ares, with lots of dark scenes) in both HDR BARCO and Metreon Dolby, I could not see a discernible difference in the visual quality. Perhaps the light pollution from the Alamo Drafthouse's under-table lights interfered with the quality of the HDR BARCO experience.<br class=\"auto-break\"/><br class=\"auto-break\"/>I archived the page that Alamo Drafthouse had setup for the HDR BARCO Tron: Ares showing:<br class=\"auto-break\"/>* <a class=\"auto-link\" href=\"https://web.archive.org/web/20251011173709/https://drafthouse.com/sf/event/special-event-tron-ares-hdr-by-barco?cinemaId=0801&amp;sessionId=74102\">https://web.archive.org/web/20251011173709/https://drafthouse.com/sf/event/special-event-tron-ares-hdr-by-barco?cinemaId=0801&amp;sessionId=74102</a><br class=\"auto-break\"/>Unclear why they took the page down.<br class=\"auto-break\"/><br class=\"auto-break\"/>ScreenX was an entertaining gimmick for the landscapes of Predator: Badlands. I would consider seeing another suitable movie in the format.<br class=\"auto-break\"/><br class=\"auto-break\"/>Watching a film dubbed in German was an interesting challenge that pushed and exceeded my German speech comprehension skills. I had to use contextual cues, on screen, sci-fi terminology, and the Fantastic Four subject matter to interpret much of it.<br class=\"auto-break\"/><br class=\"auto-break\"/>I constructed these summary lists by hand, and having completed them, I think next time it might work better to incorporate the raw data into a table with various columns for date, time, film name, theater, auditorium, format, and perhaps more like seat number(s) and the set of us at the viewing. I would not include classic \"IMDB\" fields like genre, director, writer etc. because all of those are independent of the particular theater/viewing and can easily be looked up on Wikipedia. Duplicating that info in my own personal notes would merely add noise to the signal of each specific movie theater experience.<br class=\"auto-break\"/><br class=\"auto-break\"/>I\u2019m curious if anyone else has done something like this / is doing this to keep track of the movies they see in theaters, what info to capture about the viewing, what to note about the particular experience, and what to publish on their #<span class=\"p-category auto-tag\">indieweb</span> site.<br class=\"auto-break\"/><br class=\"auto-break\"/>This is post 5 of #<span class=\"p-category auto-tag\">100PostsOfIndieWeb</span>. #<span class=\"p-category auto-tag\">100Posts</span> #<span class=\"p-category auto-tag\">yearInReview</span> #<span class=\"p-category auto-tag\">yearInMovies</span> #<span class=\"p-category auto-tag\">yearInTheaters</span><br class=\"auto-break\"/><br class=\"auto-break\"/>\u2190 <a class=\"auto-link\" href=\"https://tantek.com/2026/004/t1/year-in-sport\">https://tantek.com/2026/004/t1/year-in-sport</a><br class=\"auto-break\"/>\u2192 <a class=\"auto-link\" href=\"https://tantek.com/2026/006/t1/2025-people-projects-insights-creations\">https://tantek.com/2026/006/t1/2025-people-projects-insights-creations</a>"
         }
        ],
        "category": [
         "indieweb",
         "100PostsOfIndieWeb",
         "100Posts",
         "yearInReview",
         "yearInMovies",
         "yearInTheaters"
        ],
        "uid": [
         "https://tantek.com/2026/005/t1/year-movies-in-theaters"
        ],
        "url": [
         "https://tantek.com/2026/005/t1/year-movies-in-theaters"
        ],
        "published": [
         "2026-01-05 18:52-0800"
        ],
        "updated": [
         "2026-01-05 18:52-0800"
        ]
       },
       "lang": "en-US"
      },
      {
       "type": [
        "h-entry"
       ],
       "properties": {
        "name": [
         "My Year in Sport, using data from my Strava, Swarm, and personal notes & recollections, assembled into a simpler summary on my personal site.\n\n2025 activities according to Strava:\n\ud83c\udfc3\ud83c\udffb\u200d\u2642\ufe0f1354mi + 160,077' hiking+running\n\u00a0\ud83d\udc5f 823mi + 119,453' running \n\u00a0 \u26f0 485mi trail running\n\u00a0 \ud83d\udee3 337mi road running\n\u00a0\ud83e\udd7e 526mi + 40,624' hiking\n\ud83e\uddd8\ud83c\udffb\u200d\u2642\ufe0f 8h27m yoga\n\ud83d\udcaa\ud83c\udffb some number of weight-lifting sessions (less than one a week)\n\ud83d\udeb2 4.6mi + 413' bicycling \u2014 only one ride all year somehow(?)\n\ud83e\udea8 1 bouldering session (at Movement)\n\nRaces:\n\ud83c\udfc1 3 races, finished 2\n\ud83c\udf33 12k Bay to Breakers 1:55:31 https://tantek.com/t5c61\n\u26f0 50k Skyline: 9:34:51 https://tantek.com/t5dQ1\n\n2025 was a more difficult year than expected, in many ways, and that cut into both hours and frequencies of many physical activities.\n\nMy yoga, bicycling, and bouldering activities all dropped from 2024 to 2025. My goals for 2026 for these are to find sustainable regular rhythms for each, either by myself or with friends.\n\nUpdate: I double-checked my Strava > Progress > See more of your progress, and both my time and frequency of weight-lifting sessions actually increased from 2024 to 2025, from only 17 to 21 activities (~25%), so I am counting that as a minor win that I can build on this year.\n\nI made several distance and vertical climbs on feet improvements in 2025 over 2024:\n* Overall: 160,077' climbed, +9.4k' over 150,676' in 2024\n* Running: 823mi + 119,453', +20mi +8.3k' over 803mi + 111,155' in 2024\n* Hiking: 526mi just barely (+6mi) over 520mi in 2024\n* Finished a 50k! First since mid-2023.\n\nI have a few running goals for 2026:\n* incrementally faster Bay to Breakers over 2025\n* Broken Arrow 23k Skyrace, finish and ideally beat my 2024 time (6h52m)\n* finish a 50k trail race, my fifth 50k\n\nI don't have specific metrics goals, like total distance, or feet climbed, or any specific race times (other than beating last year\u2019s times). Those are all secondary to my goals.\n\nBased on how the past few years have gone, I believe these are reasonable goals, yet will take focus and hard work to achieve them.\n\nLastly, this personalized, #indieweb \u201cyear in sport\u201d, reflects much more of what matters to me than any summary from an online service. It\u2019s not perfect and doesn\u2019t need to be. It\u2019s a start and I expect to iterate and improve it next year.\n\nThis is post 4 of #100PostsOfIndieWeb. #100Posts #yearInReview #yearInSport\n\n\u2190 https://tantek.com/2026/003/t1/seek-2025-year-in-review\n\u2192 https://tantek.com/2026/005/t1/year-movies-in-theaters\n\n\nGlossary:\n\nYear in Review:\n\u00a0 https://indieweb.org/year_in_review"
        ],
        "content": [
         {
          "value": "My Year in Sport, using data from my Strava, Swarm, and personal notes & recollections, assembled into a simpler summary on my personal site.\n\n2025 activities according to Strava:\n\ud83c\udfc3\ud83c\udffb\u200d\u2642\ufe0f1354mi + 160,077' hiking+running\n\u00a0\ud83d\udc5f 823mi + 119,453' running \n\u00a0 \u26f0 485mi trail running\n\u00a0 \ud83d\udee3 337mi road running\n\u00a0\ud83e\udd7e 526mi + 40,624' hiking\n\ud83e\uddd8\ud83c\udffb\u200d\u2642\ufe0f 8h27m yoga\n\ud83d\udcaa\ud83c\udffb some number of weight-lifting sessions (less than one a week)\n\ud83d\udeb2 4.6mi + 413' bicycling \u2014 only one ride all year somehow(?)\n\ud83e\udea8 1 bouldering session (at Movement)\n\nRaces:\n\ud83c\udfc1 3 races, finished 2\n\ud83c\udf33 12k Bay to Breakers 1:55:31 https://tantek.com/t5c61\n\u26f0 50k Skyline: 9:34:51 https://tantek.com/t5dQ1\n\n2025 was a more difficult year than expected, in many ways, and that cut into both hours and frequencies of many physical activities.\n\nMy yoga, bicycling, and bouldering activities all dropped from 2024 to 2025. My goals for 2026 for these are to find sustainable regular rhythms for each, either by myself or with friends.\n\nUpdate: I double-checked my Strava > Progress > See more of your progress, and both my time and frequency of weight-lifting sessions actually increased from 2024 to 2025, from only 17 to 21 activities (~25%), so I am counting that as a minor win that I can build on this year.\n\nI made several distance and vertical climbs on feet improvements in 2025 over 2024:\n* Overall: 160,077' climbed, +9.4k' over 150,676' in 2024\n* Running: 823mi + 119,453', +20mi +8.3k' over 803mi + 111,155' in 2024\n* Hiking: 526mi just barely (+6mi) over 520mi in 2024\n* Finished a 50k! First since mid-2023.\n\nI have a few running goals for 2026:\n* incrementally faster Bay to Breakers over 2025\n* Broken Arrow 23k Skyrace, finish and ideally beat my 2024 time (6h52m)\n* finish a 50k trail race, my fifth 50k\n\nI don't have specific metrics goals, like total distance, or feet climbed, or any specific race times (other than beating last year\u2019s times). Those are all secondary to my goals.\n\nBased on how the past few years have gone, I believe these are reasonable goals, yet will take focus and hard work to achieve them.\n\nLastly, this personalized, #indieweb \u201cyear in sport\u201d, reflects much more of what matters to me than any summary from an online service. It\u2019s not perfect and doesn\u2019t need to be. It\u2019s a start and I expect to iterate and improve it next year.\n\nThis is post 4 of #100PostsOfIndieWeb. #100Posts #yearInReview #yearInSport\n\n\u2190 https://tantek.com/2026/003/t1/seek-2025-year-in-review\n\u2192 https://tantek.com/2026/005/t1/year-movies-in-theaters\n\n\nGlossary:\n\nYear in Review:\n\u00a0 https://indieweb.org/year_in_review",
          "lang": "en-US",
          "html": "My Year in Sport, using data from my Strava, Swarm, and personal notes &amp; recollections, assembled into a simpler summary on my personal site.<br class=\"auto-break\"/><br class=\"auto-break\"/>2025 activities according to Strava:<br class=\"auto-break\"/>\ud83c\udfc3\ud83c\udffb\u200d\u2642\ufe0f1354mi + 160,077' hiking+running<br class=\"auto-break\"/>\u00a0\ud83d\udc5f 823mi + 119,453' running <br class=\"auto-break\"/>\u00a0 \u26f0 485mi trail running<br class=\"auto-break\"/>\u00a0 \ud83d\udee3 337mi road running<br class=\"auto-break\"/>\u00a0\ud83e\udd7e 526mi + 40,624' hiking<br class=\"auto-break\"/>\ud83e\uddd8\ud83c\udffb\u200d\u2642\ufe0f 8h27m yoga<br class=\"auto-break\"/>\ud83d\udcaa\ud83c\udffb some number of weight-lifting sessions (less than one a week)<br class=\"auto-break\"/>\ud83d\udeb2 4.6mi + 413' bicycling \u2014 only one ride all year somehow(?)<br class=\"auto-break\"/>\ud83e\udea8 1 bouldering session (at Movement)<br class=\"auto-break\"/><br class=\"auto-break\"/>Races:<br class=\"auto-break\"/>\ud83c\udfc1 3 races, finished 2<br class=\"auto-break\"/>\ud83c\udf33 12k Bay to Breakers 1:55:31 <a class=\"auto-link\" href=\"https://tantek.com/t5c61\">https://tantek.com/t5c61</a><br class=\"auto-break\"/>\u26f0 50k Skyline: 9:34:51 <a class=\"auto-link\" href=\"https://tantek.com/t5dQ1\">https://tantek.com/t5dQ1</a><br class=\"auto-break\"/><br class=\"auto-break\"/>2025 was a more difficult year than expected, in many ways, and that cut into both hours and frequencies of many physical activities.<br class=\"auto-break\"/><br class=\"auto-break\"/>My yoga, bicycling, and bouldering activities all dropped from 2024 to 2025. My goals for 2026 for these are to find sustainable regular rhythms for each, either by myself or with friends.<br class=\"auto-break\"/><br class=\"auto-break\"/>Update: I double-checked my Strava &gt; Progress &gt; See more of your progress, and both my time and frequency of weight-lifting sessions actually increased from 2024 to 2025, from only 17 to 21 activities (~25%), so I am counting that as a minor win that I can build on this year.<br class=\"auto-break\"/><br class=\"auto-break\"/>I made several distance and vertical climbs on feet improvements in 2025 over 2024:<br class=\"auto-break\"/>* Overall: 160,077' climbed, +9.4k' over 150,676' in 2024<br class=\"auto-break\"/>* Running: 823mi + 119,453', +20mi +8.3k' over 803mi + 111,155' in 2024<br class=\"auto-break\"/>* Hiking: 526mi just barely (+6mi) over 520mi in 2024<br class=\"auto-break\"/>* Finished a 50k! First since mid-2023.<br class=\"auto-break\"/><br class=\"auto-break\"/>I have a few running goals for 2026:<br class=\"auto-break\"/>* incrementally faster Bay to Breakers over 2025<br class=\"auto-break\"/>* Broken Arrow 23k Skyrace, finish and ideally beat my 2024 time (6h52m)<br class=\"auto-break\"/>* finish a 50k trail race, my fifth 50k<br class=\"auto-break\"/><br class=\"auto-break\"/>I don't have specific metrics goals, like total distance, or feet climbed, or any specific race times (other than beating last year\u2019s times). Those are all secondary to my goals.<br class=\"auto-break\"/><br class=\"auto-break\"/>Based on how the past few years have gone, I believe these are reasonable goals, yet will take focus and hard work to achieve them.<br class=\"auto-break\"/><br class=\"auto-break\"/>Lastly, this personalized, #<span class=\"p-category auto-tag\">indieweb</span> \u201cyear in sport\u201d, reflects much more of what matters to me than any summary from an online service. It\u2019s not perfect and doesn\u2019t need to be. It\u2019s a start and I expect to iterate and improve it next year.<br class=\"auto-break\"/><br class=\"auto-break\"/>This is post 4 of #<span class=\"p-category auto-tag\">100PostsOfIndieWeb</span>. #<span class=\"p-category auto-tag\">100Posts</span> #<span class=\"p-category auto-tag\">yearInReview</span> #<span class=\"p-category auto-tag\">yearInSport</span><br class=\"auto-break\"/><br class=\"auto-break\"/>\u2190 <a class=\"auto-link\" href=\"https://tantek.com/2026/003/t1/seek-2025-year-in-review\">https://tantek.com/2026/003/t1/seek-2025-year-in-review</a><br class=\"auto-break\"/>\u2192 <a class=\"auto-link\" href=\"https://tantek.com/2026/005/t1/year-movies-in-theaters\">https://tantek.com/2026/005/t1/year-movies-in-theaters</a><br class=\"auto-break\"/><br class=\"auto-break\"/><br class=\"auto-break\"/>Glossary:<br class=\"auto-break\"/><br class=\"auto-break\"/>Year in Review:<br class=\"auto-break\"/>\u00a0 <a class=\"auto-link\" href=\"https://indieweb.org/year_in_review\">https://indieweb.org/year_in_review</a>"
         }
        ],
        "category": [
         "indieweb",
         "100PostsOfIndieWeb",
         "100Posts",
         "yearInReview",
         "yearInSport"
        ],
        "uid": [
         "https://tantek.com/2026/004/t1/year-in-sport"
        ],
        "url": [
         "https://tantek.com/2026/004/t1/year-in-sport"
        ],
        "published": [
         "2026-01-04 21:40-0800"
        ],
        "updated": [
         "2026-01-04 21:40-0800"
        ]
       },
       "lang": "en-US"
      },
      {
       "type": [
        "h-entry"
       ],
       "properties": {
        "name": [
         "My Seek 2025 Year in Review:\n\n* 101 new species observed (down from 141 last year)\n\nTop three kinds:\n\u00a0 * 64 new plants (down from 79)\n\u00a0 * 14 new insects (down from 20)\n\u00a0 * 8 new fungi\n* 4 new challenge badges earned (down from 56)\n\nJuly, June, February were the months I observed the most new species.\nLast year: June, March, July.\n\nSeek also gave me a graph of observations per month, and also a map of where I made my discoveries.\n\nAs noted last year: https://tantek.com/2025/020/t1/seek-2024-year-in-review\n\nSeek is a delightful free (like actually free, free of tracking, free of surveillance) native mobile application for identifying species.\n\nMade by the iNaturalist folks (https://www.inaturalist.org/pages/seek_app), Seek works:\n1. works without creating an account\n2. works completely offline to identify species\n3. adds new species to your local collection on your device\n\nThose first two capabilities (no login wall, offline first) are what we should aspire to when we build #indieweb apps or websites for ourselves and our friends.\n\nThis is post 3 of #100PostsOfIndieWeb. #100Posts #yearInReview #iNaturalist #SeekApp\n\n\u2190 https://tantek.com/2026/002/t1/find-export-strava-year-in-sport\n\u2192 https://tantek.com/2026/004/t1/year-in-sport\n\n\nGlossary:\n\nlogin wall\n\u00a0 https://indieweb.org/login_wall\noffline first\n\u00a0 https://indieweb.org/offline_first"
        ],
        "content": [
         {
          "value": "My Seek 2025 Year in Review:\n\n* 101 new species observed (down from 141 last year)\n\nTop three kinds:\n\u00a0 * 64 new plants (down from 79)\n\u00a0 * 14 new insects (down from 20)\n\u00a0 * 8 new fungi\n* 4 new challenge badges earned (down from 56)\n\nJuly, June, February were the months I observed the most new species.\nLast year: June, March, July.\n\nSeek also gave me a graph of observations per month, and also a map of where I made my discoveries.\n\nAs noted last year: https://tantek.com/2025/020/t1/seek-2024-year-in-review\n\nSeek is a delightful free (like actually free, free of tracking, free of surveillance) native mobile application for identifying species.\n\nMade by the iNaturalist folks (https://www.inaturalist.org/pages/seek_app), Seek works:\n1. works without creating an account\n2. works completely offline to identify species\n3. adds new species to your local collection on your device\n\nThose first two capabilities (no login wall, offline first) are what we should aspire to when we build #indieweb apps or websites for ourselves and our friends.\n\nThis is post 3 of #100PostsOfIndieWeb. #100Posts #yearInReview #iNaturalist #SeekApp\n\n\u2190 https://tantek.com/2026/002/t1/find-export-strava-year-in-sport\n\u2192 https://tantek.com/2026/004/t1/year-in-sport\n\n\nGlossary:\n\nlogin wall\n\u00a0 https://indieweb.org/login_wall\noffline first\n\u00a0 https://indieweb.org/offline_first",
          "lang": "en-US",
          "html": "My Seek 2025 Year in Review:<br class=\"auto-break\"/><br class=\"auto-break\"/>* 101 new species observed (down from 141 last year)<br class=\"auto-break\"/><br class=\"auto-break\"/>Top three kinds:<br class=\"auto-break\"/>\u00a0 * 64 new plants (down from 79)<br class=\"auto-break\"/>\u00a0 * 14 new insects (down from 20)<br class=\"auto-break\"/>\u00a0 * 8 new fungi<br class=\"auto-break\"/>* 4 new challenge badges earned (down from 56)<br class=\"auto-break\"/><br class=\"auto-break\"/>July, June, February were the months I observed the most new species.<br class=\"auto-break\"/>Last year: June, March, July.<br class=\"auto-break\"/><br class=\"auto-break\"/>Seek also gave me a graph of observations per month, and also a map of where I made my discoveries.<br class=\"auto-break\"/><br class=\"auto-break\"/>As noted last year: <a class=\"auto-link\" href=\"https://tantek.com/2025/020/t1/seek-2024-year-in-review\">https://tantek.com/2025/020/t1/seek-2024-year-in-review</a><br class=\"auto-break\"/><br class=\"auto-break\"/>Seek is a delightful free (like actually free, free of tracking, free of surveillance) native mobile application for identifying species.<br class=\"auto-break\"/><br class=\"auto-break\"/>Made by the iNaturalist folks (<a class=\"auto-link\" href=\"https://www.inaturalist.org/pages/seek_app\">https://www.inaturalist.org/pages/seek_app</a>), Seek works:<br class=\"auto-break\"/>1. works without creating an account<br class=\"auto-break\"/>2. works completely offline to identify species<br class=\"auto-break\"/>3. adds new species to your local collection on your device<br class=\"auto-break\"/><br class=\"auto-break\"/>Those first two capabilities (no login wall, offline first) are what we should aspire to when we build #<span class=\"p-category auto-tag\">indieweb</span> apps or websites for ourselves and our friends.<br class=\"auto-break\"/><br class=\"auto-break\"/>This is post 3 of #<span class=\"p-category auto-tag\">100PostsOfIndieWeb</span>. #<span class=\"p-category auto-tag\">100Posts</span> #<span class=\"p-category auto-tag\">yearInReview</span> #<span class=\"p-category auto-tag\">iNaturalist</span> #<span class=\"p-category auto-tag\">SeekApp</span><br class=\"auto-break\"/><br class=\"auto-break\"/>\u2190 <a class=\"auto-link\" href=\"https://tantek.com/2026/002/t1/find-export-strava-year-in-sport\">https://tantek.com/2026/002/t1/find-export-strava-year-in-sport</a><br class=\"auto-break\"/>\u2192 <a class=\"auto-link\" href=\"https://tantek.com/2026/004/t1/year-in-sport\">https://tantek.com/2026/004/t1/year-in-sport</a><br class=\"auto-break\"/><br class=\"auto-break\"/><br class=\"auto-break\"/>Glossary:<br class=\"auto-break\"/><br class=\"auto-break\"/>login wall<br class=\"auto-break\"/>\u00a0 <a class=\"auto-link\" href=\"https://indieweb.org/login_wall\">https://indieweb.org/login_wall</a><br class=\"auto-break\"/>offline first<br class=\"auto-break\"/>\u00a0 <a class=\"auto-link\" href=\"https://indieweb.org/offline_first\">https://indieweb.org/offline_first</a>"
         }
        ],
        "category": [
         "indieweb",
         "100PostsOfIndieWeb",
         "100Posts",
         "yearInReview",
         "iNaturalist",
         "SeekApp"
        ],
        "uid": [
         "https://tantek.com/2026/003/t1/seek-2025-year-in-review"
        ],
        "url": [
         "https://tantek.com/2026/003/t1/seek-2025-year-in-review"
        ],
        "published": [
         "2026-01-03 23:49-0800"
        ],
        "updated": [
         "2026-01-03 23:49-0800"
        ]
       },
       "lang": "en-US"
      },
      {
       "type": [
        "h-entry"
       ],
       "properties": {
        "name": [
         "I checked my Strava: Year in Sport 2025 after I did my last run on the 31st, and it felt a bit light. When I checked my saved images/videos from last year\u2019s Strava Year in Sport, it was clear they had dropped several things from 2024 to 2025.\n\n\nFirst, here\u2019s updated instructions for finding and exporting your Strava Year in Sport 2025:\n\nThe Strava Year in Sport 2025 is once again only available on the native mobile app (iOS and presumably Android) and not accessible via the website.\n\nFrom the mobile app home screen, tap the \"\ud83d\udccb You\" button in the lower right corner.\n\nNear the top you should see an orange header with white text:\n\nSTRAVA\nYEAR IN SPORT \n\nand a black triangle play button on a white disc background.\n\nscreenshot of Strava iOS native app showing the \u201cYou\u201d screen with Progress, Activities, an orange Year in Sport banner, various activity types Hike, All Run, Run, and a \u201cThis week\u201d heading with Distance, Time, Elev Gain column headers below it. \n\nTap that \u25b6\ufe0f play button.\n\n\nSaving Summary Segments\n\nYou should fairly quickly see an animation start playing, with nine \"segments\" (like Instagram stories) at the top, gradually filling-in as progress indicators one at a time. \n\nThe first \"segment\" is purely intro animation. You can skip it.\n\nEvery subsequent \"segment\" you can screenshot using the respective button pressing on your mobile (e.g. volume-up + power on iPhone 14). In addition to taking a screenshot it will put you in a \"share\" screen with one or more videos or still images to share in a carousel format. \n\nFor each item in the carousel (if there is more than one)\n1. tap the item in the carousel\n2. tap the \"[\u2193] Save\" button at the bottom to store it locally on your mobile\n\nThen tap \"Cancel\" in the top right to go back to the \"segments\".\n\nEither wait for that current \"segment\" to finish playing or tap the video near the right edge of the screen to skip to the next \"segment\" and repeat the two steps above.\n\nThe ninth \"segment\" is your overall summary, and shows all your sports combined.\n\nSave it (using the \"[\u2193] Save\" button as noted above), then\n* tap the \"\u270f\ufe0f \u00a0Customize\" button\n* choose an individual sport (e.g. \"\ud83d\udc5f Run\")\n* tap \"Save changes\"\n* save that image (with the \"[\u2193] Save\" button as above)\n* tap customize again\n* choose the next sport (e.g. \"\ud83d\udeb2 Ride\")\n* \"Save changes\" again\n* \"[\u2193] Save\" button again\n\nStrava seemingly only reports summaries of (up to?) two of your sports. Those were Run (presumably all running, street and trail) and Ride for me.\n\n\nCleanup Your Screenshots\n\nAfter having saved all the videos/images for each \"segment\", you can:\n* go back to your mobile\u2019s top level Photos app/stream\n* delete the screenshots\n\nYou should see all the images you've saved (no videos this year). If anything is missing, go back to the previous steps and save them again, then remove any duplicates as necessary.\n\n\nI have saved all the images from my own Strava Year In Sport, and as I assemble the pieces into my own Year in Sport post, I\u2019ll take more notes, and add to the IndieWeb year in review page accordingly: https://indieweb.org/year_in_review\n\nPreviously: https://tantek.com/2025/001/t3/strava-year-in-sport-how-to-get-info-save\n\n#Strava #yearInSport #yearInReview #ownYourYearInReview\n\nThis is post 2 of #100PostsOfIndieWeb. #100Posts\n\n\u2190 https://tantek.com/2026/001/t1/no-socials-january\n\u2192 https://tantek.com/2026/003/t1/seek-2025-year-in-review"
        ],
        "content": [
         {
          "value": "I checked my Strava: Year in Sport 2025 after I did my last run on the 31st, and it felt a bit light. When I checked my saved images/videos from last year\u2019s Strava Year in Sport, it was clear they had dropped several things from 2024 to 2025.\n\n\nFirst, here\u2019s updated instructions for finding and exporting your Strava Year in Sport 2025:\n\nThe Strava Year in Sport 2025 is once again only available on the native mobile app (iOS and presumably Android) and not accessible via the website.\n\nFrom the mobile app home screen, tap the \"\ud83d\udccb You\" button in the lower right corner.\n\nNear the top you should see an orange header with white text:\n\nSTRAVA\nYEAR IN SPORT \n\nand a black triangle play button on a white disc background.\n\nscreenshot of Strava iOS native app showing the \u201cYou\u201d screen with Progress, Activities, an orange Year in Sport banner, various activity types Hike, All Run, Run, and a \u201cThis week\u201d heading with Distance, Time, Elev Gain column headers below it. \n\nTap that \u25b6\ufe0f play button.\n\n\nSaving Summary Segments\n\nYou should fairly quickly see an animation start playing, with nine \"segments\" (like Instagram stories) at the top, gradually filling-in as progress indicators one at a time. \n\nThe first \"segment\" is purely intro animation. You can skip it.\n\nEvery subsequent \"segment\" you can screenshot using the respective button pressing on your mobile (e.g. volume-up + power on iPhone 14). In addition to taking a screenshot it will put you in a \"share\" screen with one or more videos or still images to share in a carousel format. \n\nFor each item in the carousel (if there is more than one)\n1. tap the item in the carousel\n2. tap the \"[\u2193] Save\" button at the bottom to store it locally on your mobile\n\nThen tap \"Cancel\" in the top right to go back to the \"segments\".\n\nEither wait for that current \"segment\" to finish playing or tap the video near the right edge of the screen to skip to the next \"segment\" and repeat the two steps above.\n\nThe ninth \"segment\" is your overall summary, and shows all your sports combined.\n\nSave it (using the \"[\u2193] Save\" button as noted above), then\n* tap the \"\u270f\ufe0f \u00a0Customize\" button\n* choose an individual sport (e.g. \"\ud83d\udc5f Run\")\n* tap \"Save changes\"\n* save that image (with the \"[\u2193] Save\" button as above)\n* tap customize again\n* choose the next sport (e.g. \"\ud83d\udeb2 Ride\")\n* \"Save changes\" again\n* \"[\u2193] Save\" button again\n\nStrava seemingly only reports summaries of (up to?) two of your sports. Those were Run (presumably all running, street and trail) and Ride for me.\n\n\nCleanup Your Screenshots\n\nAfter having saved all the videos/images for each \"segment\", you can:\n* go back to your mobile\u2019s top level Photos app/stream\n* delete the screenshots\n\nYou should see all the images you've saved (no videos this year). If anything is missing, go back to the previous steps and save them again, then remove any duplicates as necessary.\n\n\nI have saved all the images from my own Strava Year In Sport, and as I assemble the pieces into my own Year in Sport post, I\u2019ll take more notes, and add to the IndieWeb year in review page accordingly: https://indieweb.org/year_in_review\n\nPreviously: https://tantek.com/2025/001/t3/strava-year-in-sport-how-to-get-info-save\n\n#Strava #yearInSport #yearInReview #ownYourYearInReview\n\nThis is post 2 of #100PostsOfIndieWeb. #100Posts\n\n\u2190 https://tantek.com/2026/001/t1/no-socials-january\n\u2192 https://tantek.com/2026/003/t1/seek-2025-year-in-review",
          "lang": "en-US",
          "html": "I checked my Strava: Year in Sport 2025 after I did my last run on the 31st, and it felt a bit light. When I checked my saved images/videos from last year\u2019s Strava Year in Sport, it was clear they had dropped several things from 2024 to 2025.<br class=\"auto-break\"/><br class=\"auto-break\"/><br class=\"auto-break\"/>First, here\u2019s updated instructions for finding and exporting your Strava Year in Sport 2025:<br class=\"auto-break\"/><br class=\"auto-break\"/>The Strava Year in Sport 2025 is once again only available on the native mobile app (iOS and presumably Android) and not accessible via the website.<br class=\"auto-break\"/><br class=\"auto-break\"/>From the mobile app home screen, tap the \"\ud83d\udccb You\" button in the lower right corner.<br class=\"auto-break\"/><br class=\"auto-break\"/>Near the top you should see an orange header with white text:<br class=\"auto-break\"/><br class=\"auto-break\"/>STRAVA<br class=\"auto-break\"/>YEAR IN SPORT <br class=\"auto-break\"/><br class=\"auto-break\"/>and a black triangle play button on a white disc background.<br class=\"auto-break\"/><br class=\"auto-break\"/><a class=\"auto-link figure\" href=\"https://indieweb.org/File:2025-strava-profile-year-in-sport.jpeg\"><img alt=\"screenshot of Strava iOS native app showing the \u201cYou\u201d screen with Progress, Activities, an orange Year in Sport banner, various activity types Hike, All Run, Run, and a \u201cThis week\u201d heading with Distance, Time, Elev Gain column headers below it.\" class=\"auto-embed u-photo\" src=\"https://indieweb.org/images/0/0f/2025-strava-profile-year-in-sport.jpeg\"/></a><br class=\"auto-break\"/><br class=\"auto-break\"/>Tap that \u25b6\ufe0f play button.<br class=\"auto-break\"/><br class=\"auto-break\"/><br class=\"auto-break\"/>Saving Summary Segments<br class=\"auto-break\"/><br class=\"auto-break\"/>You should fairly quickly see an animation start playing, with nine \"segments\" (like Instagram stories) at the top, gradually filling-in as progress indicators one at a time. <br class=\"auto-break\"/><br class=\"auto-break\"/>The first \"segment\" is purely intro animation. You can skip it.<br class=\"auto-break\"/><br class=\"auto-break\"/>Every subsequent \"segment\" you can screenshot using the respective button pressing on your mobile (e.g. volume-up + power on iPhone 14). In addition to taking a screenshot it will put you in a \"share\" screen with one or more videos or still images to share in a carousel format. <br class=\"auto-break\"/><br class=\"auto-break\"/>For each item in the carousel (if there is more than one)<br class=\"auto-break\"/>1. tap the item in the carousel<br class=\"auto-break\"/>2. tap the \"[\u2193] Save\" button at the bottom to store it locally on your mobile<br class=\"auto-break\"/><br class=\"auto-break\"/>Then tap \"Cancel\" in the top right to go back to the \"segments\".<br class=\"auto-break\"/><br class=\"auto-break\"/>Either wait for that current \"segment\" to finish playing or tap the video near the right edge of the screen to skip to the next \"segment\" and repeat the two steps above.<br class=\"auto-break\"/><br class=\"auto-break\"/>The ninth \"segment\" is your overall summary, and shows all your sports combined.<br class=\"auto-break\"/><br class=\"auto-break\"/>Save it (using the \"[\u2193] Save\" button as noted above), then<br class=\"auto-break\"/>* tap the \"\u270f\ufe0f \u00a0Customize\" button<br class=\"auto-break\"/>* choose an individual sport (e.g. \"\ud83d\udc5f Run\")<br class=\"auto-break\"/>* tap \"Save changes\"<br class=\"auto-break\"/>* save that image (with the \"[\u2193] Save\" button as above)<br class=\"auto-break\"/>* tap customize again<br class=\"auto-break\"/>* choose the next sport (e.g. \"\ud83d\udeb2 Ride\")<br class=\"auto-break\"/>* \"Save changes\" again<br class=\"auto-break\"/>* \"[\u2193] Save\" button again<br class=\"auto-break\"/><br class=\"auto-break\"/>Strava seemingly only reports summaries of (up to?) two of your sports. Those were Run (presumably all running, street and trail) and Ride for me.<br class=\"auto-break\"/><br class=\"auto-break\"/><br class=\"auto-break\"/>Cleanup Your Screenshots<br class=\"auto-break\"/><br class=\"auto-break\"/>After having saved all the videos/images for each \"segment\", you can:<br class=\"auto-break\"/>* go back to your mobile\u2019s top level Photos app/stream<br class=\"auto-break\"/>* delete the screenshots<br class=\"auto-break\"/><br class=\"auto-break\"/>You should see all the images you've saved (no videos this year). If anything is missing, go back to the previous steps and save them again, then remove any duplicates as necessary.<br class=\"auto-break\"/><br class=\"auto-break\"/><br class=\"auto-break\"/>I have saved all the images from my own Strava Year In Sport, and as I assemble the pieces into my own Year in Sport post, I\u2019ll take more notes, and add to the IndieWeb year in review page accordingly: <a class=\"auto-link\" href=\"https://indieweb.org/year_in_review\">https://indieweb.org/year_in_review</a><br class=\"auto-break\"/><br class=\"auto-break\"/>Previously: <a class=\"auto-link\" href=\"https://tantek.com/2025/001/t3/strava-year-in-sport-how-to-get-info-save\">https://tantek.com/2025/001/t3/strava-year-in-sport-how-to-get-info-save</a><br class=\"auto-break\"/><br class=\"auto-break\"/>#<span class=\"p-category auto-tag\">Strava</span> #<span class=\"p-category auto-tag\">yearInSport</span> #<span class=\"p-category auto-tag\">yearInReview</span> #<span class=\"p-category auto-tag\">ownYourYearInReview</span><br class=\"auto-break\"/><br class=\"auto-break\"/>This is post 2 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\"/>\u2190 <a class=\"auto-link\" href=\"https://tantek.com/2026/001/t1/no-socials-january\">https://tantek.com/2026/001/t1/no-socials-january</a><br class=\"auto-break\"/>\u2192 <a class=\"auto-link\" href=\"https://tantek.com/2026/003/t1/seek-2025-year-in-review\">https://tantek.com/2026/003/t1/seek-2025-year-in-review</a>"
         }
        ],
        "photo": [
         {
          "value": "https://indieweb.org/images/0/0f/2025-strava-profile-year-in-sport.jpeg",
          "alt": "screenshot of Strava iOS native app showing the \u201cYou\u201d screen with Progress, Activities, an orange Year in Sport banner, various activity types Hike, All Run, Run, and a \u201cThis week\u201d heading with Distance, Time, Elev Gain column headers below it."
         }
        ],
        "category": [
         "Strava",
         "yearInSport",
         "yearInReview",
         "ownYourYearInReview",
         "100PostsOfIndieWeb",
         "100Posts"
        ],
        "uid": [
         "https://tantek.com/2026/002/t1/find-export-strava-year-in-sport"
        ],
        "url": [
         "https://tantek.com/2026/002/t1/find-export-strava-year-in-sport"
        ],
        "published": [
         "2026-01-02 16:20-0800"
        ],
        "updated": [
         "2026-01-02 16:20-0800"
        ]
       },
       "lang": "en-US"
      },
      {
       "type": [
        "h-entry"
       ],
       "properties": {
        "name": [
         "2026 goals I\u2019ve heard:\n* Dry January \u2014 avoid alcohol\n* Meatless January \u2014 avoid meat\n\nIf you have a personal website, how about also:\n\n* No Socials January \u2014 avoid #socialMedia silos\n\nNo posting on social media, just for a month (not counting DMs).\n\nInstead, since you have your own website, post there, and see how that feels.\n\nIf you don\u2019t have a personal website, make it your goal for the month to set one up. The #IndieWeb folks https://indieweb.org/ can help! Join https://chat.indieweb.org/\n\nOnce again I am restarting a #100PostsOfIndieWeb #100Posts project for the year.\n\nThis is post 1.\n\nPreviously:\n* https://tantek.com/2025/001/t1/15-years-notes-my-site-first\n\n\u2190 \u2728\n\u2192 https://tantek.com/2025/002/t1/find-export-strava-year-in-sport"
        ],
        "content": [
         {
          "value": "2026 goals I\u2019ve heard:\n* Dry January \u2014 avoid alcohol\n* Meatless January \u2014 avoid meat\n\nIf you have a personal website, how about also:\n\n* No Socials January \u2014 avoid #socialMedia silos\n\nNo posting on social media, just for a month (not counting DMs).\n\nInstead, since you have your own website, post there, and see how that feels.\n\nIf you don\u2019t have a personal website, make it your goal for the month to set one up. The #IndieWeb folks https://indieweb.org/ can help! Join https://chat.indieweb.org/\n\nOnce again I am restarting a #100PostsOfIndieWeb #100Posts project for the year.\n\nThis is post 1.\n\nPreviously:\n* https://tantek.com/2025/001/t1/15-years-notes-my-site-first\n\n\u2190 \u2728\n\u2192 https://tantek.com/2025/002/t1/find-export-strava-year-in-sport",
          "lang": "en-US",
          "html": "2026 goals I\u2019ve heard:<br class=\"auto-break\"/>* Dry January \u2014 avoid alcohol<br class=\"auto-break\"/>* Meatless January \u2014 avoid meat<br class=\"auto-break\"/><br class=\"auto-break\"/>If you have a personal website, how about also:<br class=\"auto-break\"/><br class=\"auto-break\"/>* No Socials January \u2014 avoid #<span class=\"p-category auto-tag\">socialMedia</span> silos<br class=\"auto-break\"/><br class=\"auto-break\"/>No posting on social media, just for a month (not counting DMs).<br class=\"auto-break\"/><br class=\"auto-break\"/>Instead, since you have your own website, post there, and see how that feels.<br class=\"auto-break\"/><br class=\"auto-break\"/>If you don\u2019t have a personal website, make it your goal for the month to set one up. The #<span class=\"p-category auto-tag\">IndieWeb</span> folks <a class=\"auto-link\" href=\"https://indieweb.org/\">https://indieweb.org/</a> can help! Join <a class=\"auto-link\" href=\"https://chat.indieweb.org/\">https://chat.indieweb.org/</a><br class=\"auto-break\"/><br class=\"auto-break\"/>Once again I am restarting a #<span class=\"p-category auto-tag\">100PostsOfIndieWeb</span> #<span class=\"p-category auto-tag\">100Posts</span> project for the year.<br class=\"auto-break\"/><br class=\"auto-break\"/>This is post 1.<br class=\"auto-break\"/><br class=\"auto-break\"/>Previously:<br class=\"auto-break\"/>* <a class=\"auto-link\" href=\"https://tantek.com/2025/001/t1/15-years-notes-my-site-first\">https://tantek.com/2025/001/t1/15-years-notes-my-site-first</a><br class=\"auto-break\"/><br class=\"auto-break\"/>\u2190 \u2728<br class=\"auto-break\"/>\u2192 <a class=\"auto-link\" href=\"https://tantek.com/2025/002/t1/find-export-strava-year-in-sport\">https://tantek.com/2025/002/t1/find-export-strava-year-in-sport</a>"
         }
        ],
        "category": [
         "socialMedia",
         "IndieWeb",
         "100PostsOfIndieWeb",
         "100Posts"
        ],
        "uid": [
         "https://tantek.com/2026/001/t1/no-socials-january"
        ],
        "url": [
         "https://tantek.com/2026/001/t1/no-socials-january"
        ],
        "published": [
         "2026-01-01 22:56-0800"
        ],
        "updated": [
         "2026-01-01 22:56-0800"
        ]
       },
       "lang": "en-US"
      },
      {
       "type": [
        "h-entry"
       ],
       "properties": {
        "name": [
         "2025 #donation suggestions. I #donated to these, #donate to those that resonate:\n\n@ACLU\n@CalAcademy\n@NAACP\n@deYoungMuseum\n@ExperienceCamps\n@Exploratorium\n@EFF\n@Wikipedia\n@InternetArchive\n@SFMOMA\n@KQED\n@MontereyAq\n@SPLCenter\n@LongNow\n@RPF_EB\n@GardensofGGP\n@PPact\n@Mozilla**\n\n**Disclosure: I work for #Mozilla, on & with open web standards & communities @IndieWebCamp @microformats @WHATWG #W3C supported by @Firefox to provide a more human-centric, private, and secure web for all users.\n\nPreviously: https://tantek.com/2024/366/t2/last-donation-please-donate-tonight"
        ],
        "content": [
         {
          "value": "2025 #donation suggestions. I #donated to these, #donate to those that resonate:\n\n@ACLU\n@CalAcademy\n@NAACP\n@deYoungMuseum\n@ExperienceCamps\n@Exploratorium\n@EFF\n@Wikipedia\n@InternetArchive\n@SFMOMA\n@KQED\n@MontereyAq\n@SPLCenter\n@LongNow\n@RPF_EB\n@GardensofGGP\n@PPact\n@Mozilla**\n\n**Disclosure: I work for #Mozilla, on & with open web standards & communities @IndieWebCamp @microformats @WHATWG #W3C supported by @Firefox to provide a more human-centric, private, and secure web for all users.\n\nPreviously: https://tantek.com/2024/366/t2/last-donation-please-donate-tonight",
          "lang": "en-US",
          "html": "2025 #<span class=\"p-category auto-tag\">donation</span> suggestions. I #<span class=\"p-category auto-tag\">donated</span> to these, #<span class=\"p-category auto-tag\">donate</span> to those that resonate:<br class=\"auto-break\"/><br class=\"auto-break\"/><a class=\"auto-link h-cassis-username\" href=\"https://twitter.com/ACLU\">@ACLU</a><br class=\"auto-break\"/><a class=\"auto-link h-cassis-username\" href=\"https://twitter.com/CalAcademy\">@CalAcademy</a><br class=\"auto-break\"/><a class=\"auto-link h-cassis-username\" href=\"https://twitter.com/NAACP\">@NAACP</a><br class=\"auto-break\"/><a class=\"auto-link h-cassis-username\" href=\"https://twitter.com/deYoungMuseum\">@deYoungMuseum</a><br class=\"auto-break\"/><a class=\"auto-link h-cassis-username\" href=\"https://twitter.com/ExperienceCamps\">@ExperienceCamps</a><br class=\"auto-break\"/><a class=\"auto-link h-cassis-username\" href=\"https://twitter.com/Exploratorium\">@Exploratorium</a><br class=\"auto-break\"/><a class=\"auto-link h-cassis-username\" href=\"https://twitter.com/EFF\">@EFF</a><br class=\"auto-break\"/><a class=\"auto-link h-cassis-username\" href=\"https://twitter.com/Wikipedia\">@Wikipedia</a><br class=\"auto-break\"/><a class=\"auto-link h-cassis-username\" href=\"https://twitter.com/InternetArchive\">@InternetArchive</a><br class=\"auto-break\"/><a class=\"auto-link h-cassis-username\" href=\"https://twitter.com/SFMOMA\">@SFMOMA</a><br class=\"auto-break\"/><a class=\"auto-link h-cassis-username\" href=\"https://twitter.com/KQED\">@KQED</a><br class=\"auto-break\"/><a class=\"auto-link h-cassis-username\" href=\"https://twitter.com/MontereyAq\">@MontereyAq</a><br class=\"auto-break\"/><a class=\"auto-link h-cassis-username\" href=\"https://twitter.com/SPLCenter\">@SPLCenter</a><br class=\"auto-break\"/><a class=\"auto-link h-cassis-username\" href=\"https://twitter.com/LongNow\">@LongNow</a><br class=\"auto-break\"/><a class=\"auto-link h-cassis-username\" href=\"https://twitter.com/RPF_EB\">@RPF_EB</a><br class=\"auto-break\"/><a class=\"auto-link h-cassis-username\" href=\"https://twitter.com/GardensofGGP\">@GardensofGGP</a><br class=\"auto-break\"/><a class=\"auto-link h-cassis-username\" href=\"https://twitter.com/PPact\">@PPact</a><br class=\"auto-break\"/><a class=\"auto-link h-cassis-username\" href=\"https://twitter.com/Mozilla\">@Mozilla</a>**<br class=\"auto-break\"/><br class=\"auto-break\"/>**Disclosure: I work for #<span class=\"p-category auto-tag\">Mozilla</span>, on &amp; with open web standards &amp; communities <a class=\"auto-link h-cassis-username\" href=\"https://twitter.com/IndieWebCamp\">@IndieWebCamp</a> <a class=\"auto-link h-cassis-username\" href=\"https://twitter.com/microformats\">@microformats</a> <a class=\"auto-link h-cassis-username\" href=\"https://twitter.com/WHATWG\">@WHATWG</a> #<span class=\"p-category auto-tag\">W3C</span> supported by <a class=\"auto-link h-cassis-username\" href=\"https://twitter.com/Firefox\">@Firefox</a> to provide a more human-centric, private, and secure web for all users.<br class=\"auto-break\"/><br class=\"auto-break\"/>Previously: <a class=\"auto-link\" href=\"https://tantek.com/2024/366/t2/last-donation-please-donate-tonight\">https://tantek.com/2024/366/t2/last-donation-please-donate-tonight</a>"
         }
        ],
        "category": [
         "donation",
         "donated",
         "donate",
         "Mozilla",
         "W3C"
        ],
        "uid": [
         "https://tantek.com/2025/365/t1/donation-suggestions-donate-resonate"
        ],
        "url": [
         "https://tantek.com/2025/365/t1/donation-suggestions-donate-resonate"
        ],
        "published": [
         "2025-12-31 11:38-0800"
        ],
        "updated": [
         "2025-12-31 11:38-0800"
        ]
       },
       "children": [
        {
         "type": [
          "h-cassis-username"
         ],
         "properties": {
          "name": [
           "@ACLU"
          ],
          "url": [
           "https://twitter.com/ACLU"
          ]
         },
         "lang": "en-US"
        },
        {
         "type": [
          "h-cassis-username"
         ],
         "properties": {
          "name": [
           "@CalAcademy"
          ],
          "url": [
           "https://twitter.com/CalAcademy"
          ]
         },
         "lang": "en-US"
        },
        {
         "type": [
          "h-cassis-username"
         ],
         "properties": {
          "name": [
           "@NAACP"
          ],
          "url": [
           "https://twitter.com/NAACP"
          ]
         },
         "lang": "en-US"
        },
        {
         "type": [
          "h-cassis-username"
         ],
         "properties": {
          "name": [
           "@deYoungMuseum"
          ],
          "url": [
           "https://twitter.com/deYoungMuseum"
          ]
         },
         "lang": "en-US"
        },
        {
         "type": [
          "h-cassis-username"
         ],
         "properties": {
          "name": [
           "@ExperienceCamps"
          ],
          "url": [
           "https://twitter.com/ExperienceCamps"
          ]
         },
         "lang": "en-US"
        },
        {
         "type": [
          "h-cassis-username"
         ],
         "properties": {
          "name": [
           "@Exploratorium"
          ],
          "url": [
           "https://twitter.com/Exploratorium"
          ]
         },
         "lang": "en-US"
        },
        {
         "type": [
          "h-cassis-username"
         ],
         "properties": {
          "name": [
           "@EFF"
          ],
          "url": [
           "https://twitter.com/EFF"
          ]
         },
         "lang": "en-US"
        },
        {
         "type": [
          "h-cassis-username"
         ],
         "properties": {
          "name": [
           "@Wikipedia"
          ],
          "url": [
           "https://twitter.com/Wikipedia"
          ]
         },
         "lang": "en-US"
        },
        {
         "type": [
          "h-cassis-username"
         ],
         "properties": {
          "name": [
           "@InternetArchive"
          ],
          "url": [
           "https://twitter.com/InternetArchive"
          ]
         },
         "lang": "en-US"
        },
        {
         "type": [
          "h-cassis-username"
         ],
         "properties": {
          "name": [
           "@SFMOMA"
          ],
          "url": [
           "https://twitter.com/SFMOMA"
          ]
         },
         "lang": "en-US"
        },
        {
         "type": [
          "h-cassis-username"
         ],
         "properties": {
          "name": [
           "@KQED"
          ],
          "url": [
           "https://twitter.com/KQED"
          ]
         },
         "lang": "en-US"
        },
        {
         "type": [
          "h-cassis-username"
         ],
         "properties": {
          "name": [
           "@MontereyAq"
          ],
          "url": [
           "https://twitter.com/MontereyAq"
          ]
         },
         "lang": "en-US"
        },
        {
         "type": [
          "h-cassis-username"
         ],
         "properties": {
          "name": [
           "@SPLCenter"
          ],
          "url": [
           "https://twitter.com/SPLCenter"
          ]
         },
         "lang": "en-US"
        },
        {
         "type": [
          "h-cassis-username"
         ],
         "properties": {
          "name": [
           "@LongNow"
          ],
          "url": [
           "https://twitter.com/LongNow"
          ]
         },
         "lang": "en-US"
        },
        {
         "type": [
          "h-cassis-username"
         ],
         "properties": {
          "name": [
           "@RPF_EB"
          ],
          "url": [
           "https://twitter.com/RPF_EB"
          ]
         },
         "lang": "en-US"
        },
        {
         "type": [
          "h-cassis-username"
         ],
         "properties": {
          "name": [
           "@GardensofGGP"
          ],
          "url": [
           "https://twitter.com/GardensofGGP"
          ]
         },
         "lang": "en-US"
        },
        {
         "type": [
          "h-cassis-username"
         ],
         "properties": {
          "name": [
           "@PPact"
          ],
          "url": [
           "https://twitter.com/PPact"
          ]
         },
         "lang": "en-US"
        },
        {
         "type": [
          "h-cassis-username"
         ],
         "properties": {
          "name": [
           "@Mozilla"
          ],
          "url": [
           "https://twitter.com/Mozilla"
          ]
         },
         "lang": "en-US"
        },
        {
         "type": [
          "h-cassis-username"
         ],
         "properties": {
          "name": [
           "@IndieWebCamp"
          ],
          "url": [
           "https://twitter.com/IndieWebCamp"
          ]
         },
         "lang": "en-US"
        },
        {
         "type": [
          "h-cassis-username"
         ],
         "properties": {
          "name": [
           "@microformats"
          ],
          "url": [
           "https://twitter.com/microformats"
          ]
         },
         "lang": "en-US"
        },
        {
         "type": [
          "h-cassis-username"
         ],
         "properties": {
          "name": [
           "@WHATWG"
          ],
          "url": [
           "https://twitter.com/WHATWG"
          ]
         },
         "lang": "en-US"
        },
        {
         "type": [
          "h-cassis-username"
         ],
         "properties": {
          "name": [
           "@Firefox"
          ],
          "url": [
           "https://twitter.com/Firefox"
          ]
         },
         "lang": "en-US"
        }
       ],
       "lang": "en-US"
      },
      {
       "type": [
        "h-entry"
       ],
       "properties": {
        "name": [
         "Important #indieweb lesson in #modular website setup this morning:\n\nKeep your DNS provider separate from your CDN separate from your webhost, so you can swap out any one of them as necessary, whether for economic or as it were today, reliability reasons. And make sure those services themselves don\u2019t depend on each other.\n\nThis is of course regarding the #Cloudflare #outage: \n* https://www.cloudflarestatus.com/incidents/8gmgl950y3h7\n* https://theguardian.com/technology/2025/nov/18/cloudflare-outage-causes-error-messages-across-the-internet\n* https://the-independent.com/tech/cloudflare-down-twitter-not-working-outage-b2867367.html\n* https://bbc.com/news/articles/c629pny4gl7o\n* https://independent.co.uk/bulletin/news/nj-transit-down-app-cloudfare-outage-b2867457.html\n\n#CloudflareOutage #NJTransit #ChatGPT #Shopify #Dropbox #Coinbase #Twitter/X #modularity #devops\n\nThis is post 17 of #100PostsOfIndieWeb. #100Posts\n\n\u2190 https://tantek.com/2025/311/t2/indieweb-sessions-btconf-berlin\n\u2192 \ud83d\udd2e"
        ],
        "content": [
         {
          "value": "Important #indieweb lesson in #modular website setup this morning:\n\nKeep your DNS provider separate from your CDN separate from your webhost, so you can swap out any one of them as necessary, whether for economic or as it were today, reliability reasons. And make sure those services themselves don\u2019t depend on each other.\n\nThis is of course regarding the #Cloudflare #outage: \n* https://www.cloudflarestatus.com/incidents/8gmgl950y3h7\n* https://theguardian.com/technology/2025/nov/18/cloudflare-outage-causes-error-messages-across-the-internet\n* https://the-independent.com/tech/cloudflare-down-twitter-not-working-outage-b2867367.html\n* https://bbc.com/news/articles/c629pny4gl7o\n* https://independent.co.uk/bulletin/news/nj-transit-down-app-cloudfare-outage-b2867457.html\n\n#CloudflareOutage #NJTransit #ChatGPT #Shopify #Dropbox #Coinbase #Twitter/X #modularity #devops\n\nThis is post 17 of #100PostsOfIndieWeb. #100Posts\n\n\u2190 https://tantek.com/2025/311/t2/indieweb-sessions-btconf-berlin\n\u2192 \ud83d\udd2e",
          "lang": "en-US",
          "html": "Important #<span class=\"p-category auto-tag\">indieweb</span> lesson in #<span class=\"p-category auto-tag\">modular</span> website setup this morning:<br class=\"auto-break\"/><br class=\"auto-break\"/>Keep your DNS provider separate from your CDN separate from your webhost, so you can swap out any one of them as necessary, whether for economic or as it were today, reliability reasons. And make sure those services themselves don\u2019t depend on each other.<br class=\"auto-break\"/><br class=\"auto-break\"/>This is of course regarding the #<span class=\"p-category auto-tag\">Cloudflare</span> #<span class=\"p-category auto-tag\">outage:</span> <br class=\"auto-break\"/>* <a class=\"auto-link\" href=\"https://www.cloudflarestatus.com/incidents/8gmgl950y3h7\">https://www.cloudflarestatus.com/incidents/8gmgl950y3h7</a><br class=\"auto-break\"/>* <a class=\"auto-link\" href=\"https://theguardian.com/technology/2025/nov/18/cloudflare-outage-causes-error-messages-across-the-internet\">https://theguardian.com/technology/2025/nov/18/cloudflare-outage-causes-error-messages-across-the-internet</a><br class=\"auto-break\"/>* <a class=\"auto-link\" href=\"https://the-independent.com/tech/cloudflare-down-twitter-not-working-outage-b2867367.html\">https://the-independent.com/tech/cloudflare-down-twitter-not-working-outage-b2867367.html</a><br class=\"auto-break\"/>* <a class=\"auto-link\" href=\"https://bbc.com/news/articles/c629pny4gl7o\">https://bbc.com/news/articles/c629pny4gl7o</a><br class=\"auto-break\"/>* <a class=\"auto-link\" href=\"https://independent.co.uk/bulletin/news/nj-transit-down-app-cloudfare-outage-b2867457.html\">https://independent.co.uk/bulletin/news/nj-transit-down-app-cloudfare-outage-b2867457.html</a><br class=\"auto-break\"/><br class=\"auto-break\"/>#<span class=\"p-category auto-tag\">CloudflareOutage</span> #<span class=\"p-category auto-tag\">NJTransit</span> #<span class=\"p-category auto-tag\">ChatGPT</span> #<span class=\"p-category auto-tag\">Shopify</span> #<span class=\"p-category auto-tag\">Dropbox</span> #<span class=\"p-category auto-tag\">Coinbase</span> #<span class=\"p-category auto-tag\">Twitter/X</span> #<span class=\"p-category auto-tag\">modularity</span> #<span class=\"p-category auto-tag\">devops</span><br class=\"auto-break\"/><br class=\"auto-break\"/>This is post 17 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\"/>\u2190 <a class=\"auto-link\" href=\"https://tantek.com/2025/311/t2/indieweb-sessions-btconf-berlin\">https://tantek.com/2025/311/t2/indieweb-sessions-btconf-berlin</a><br class=\"auto-break\"/>\u2192 \ud83d\udd2e"
         }
        ],
        "category": [
         "indieweb",
         "modular",
         "Cloudflare",
         "outage:",
         "CloudflareOutage",
         "NJTransit",
         "ChatGPT",
         "Shopify",
         "Dropbox",
         "Coinbase",
         "Twitter/X",
         "modularity",
         "devops",
         "100PostsOfIndieWeb",
         "100Posts"
        ],
        "uid": [
         "https://tantek.com/2025/322/t1/modular-website-dns-cdn-webhost"
        ],
        "url": [
         "https://tantek.com/2025/322/t1/modular-website-dns-cdn-webhost"
        ],
        "published": [
         "2025-11-18 06:51-0800"
        ],
        "updated": [
         "2025-11-18 06:51-0800"
        ]
       },
       "lang": "en-US"
      },
      {
       "type": [
        "h-entry"
       ],
       "properties": {
        "name": [
         "\ud83d\udc4d"
        ],
        "content": [
         {
          "value": "\ud83d\udc4d",
          "lang": "en-US",
          "html": "\ud83d\udc4d"
         }
        ],
        "in-reply-to": [
         {
          "type": [
           "h-cite"
          ],
          "properties": {
           "name": [
            "issue 432 of GitHub project \u201cPWETF\u201d"
           ],
           "url": [
            "https://github.com/w3c/PWETF/issues/432"
           ]
          },
          "value": "https://github.com/w3c/PWETF/issues/432",
          "lang": "en-US"
         }
        ],
        "uid": [
         "https://tantek.com/2025/321/t4/"
        ],
        "url": [
         "https://tantek.com/2025/321/t4/"
        ],
        "published": [
         "2025-11-17 11:03-0800"
        ],
        "updated": [
         "2025-11-17 11:03-0800"
        ]
       },
       "lang": "en-US"
      },
      {
       "type": [
        "h-entry"
       ],
       "properties": {
        "name": [
         "\ud83d\udc4d"
        ],
        "content": [
         {
          "value": "\ud83d\udc4d",
          "lang": "en-US",
          "html": "\ud83d\udc4d"
         }
        ],
        "in-reply-to": [
         {
          "type": [
           "h-cite"
          ],
          "properties": {
           "name": [
            "a comment on issue 27 of GitHub project \u201cemail-verification-protocol\u201d"
           ],
           "url": [
            "https://github.com/WICG/email-verification-protocol/issues/27#issuecomment-3543311592"
           ]
          },
          "value": "https://github.com/WICG/email-verification-protocol/issues/27#issuecomment-3543311592",
          "lang": "en-US"
         }
        ],
        "uid": [
         "https://tantek.com/2025/321/t3/"
        ],
        "url": [
         "https://tantek.com/2025/321/t3/"
        ],
        "published": [
         "2025-11-17 10:58-0800"
        ],
        "updated": [
         "2025-11-17 10:58-0800"
        ]
       },
       "lang": "en-US"
      },
      {
       "type": [
        "h-entry"
       ],
       "properties": {
        "name": [
         "\ud83d\udc4d"
        ],
        "content": [
         {
          "value": "\ud83d\udc4d",
          "lang": "en-US",
          "html": "\ud83d\udc4d"
         }
        ],
        "in-reply-to": [
         {
          "type": [
           "h-cite"
          ],
          "properties": {
           "name": [
            "issue 27 of GitHub project \u201cemail-verification-protocol\u201d"
           ],
           "url": [
            "https://github.com/WICG/email-verification-protocol/issues/27"
           ]
          },
          "value": "https://github.com/WICG/email-verification-protocol/issues/27",
          "lang": "en-US"
         }
        ],
        "uid": [
         "https://tantek.com/2025/321/t2/"
        ],
        "url": [
         "https://tantek.com/2025/321/t2/"
        ],
        "published": [
         "2025-11-17 10:57-0800"
        ],
        "updated": [
         "2025-11-17 10:57-0800"
        ]
       },
       "lang": "en-US"
      },
      {
       "type": [
        "h-entry"
       ],
       "properties": {
        "name": [
         "\ud83d\udc4d"
        ],
        "content": [
         {
          "value": "\ud83d\udc4d",
          "lang": "en-US",
          "html": "\ud83d\udc4d"
         }
        ],
        "in-reply-to": [
         {
          "type": [
           "h-cite"
          ],
          "properties": {
           "name": [
            "a comment on issue 1316 of GitHub project \u201cstandards-positions\u201d"
           ],
           "url": [
            "https://github.com/mozilla/standards-positions/issues/1316#issuecomment-3543341880"
           ]
          },
          "value": "https://github.com/mozilla/standards-positions/issues/1316#issuecomment-3543341880",
          "lang": "en-US"
         }
        ],
        "uid": [
         "https://tantek.com/2025/321/t1/"
        ],
        "url": [
         "https://tantek.com/2025/321/t1/"
        ],
        "published": [
         "2025-11-17 10:45-0800"
        ],
        "updated": [
         "2025-11-17 10:45-0800"
        ]
       },
       "lang": "en-US"
      },
      {
       "type": [
        "h-entry"
       ],
       "properties": {
        "name": [
         "\ud83d\udc4d"
        ],
        "content": [
         {
          "value": "\ud83d\udc4d",
          "lang": "en-US",
          "html": "\ud83d\udc4d"
         }
        ],
        "in-reply-to": [
         {
          "type": [
           "h-cite"
          ],
          "properties": {
           "name": [
            "issue 1223 of GitHub project \u201cbridgy-fed\u201d"
           ],
           "url": [
            "https://github.com/snarfed/bridgy-fed/issues/1223"
           ]
          },
          "value": "https://github.com/snarfed/bridgy-fed/issues/1223",
          "lang": "en-US"
         }
        ],
        "uid": [
         "https://tantek.com/2025/314/t2/"
        ],
        "url": [
         "https://tantek.com/2025/314/t2/"
        ],
        "published": [
         "2025-11-10 20:59-0800"
        ],
        "updated": [
         "2025-11-10 20:59-0800"
        ]
       },
       "lang": "en-US"
      },
      {
       "type": [
        "h-entry"
       ],
       "properties": {
        "name": [
         "\u03c0 Happy ordinal pi day! (314th day of the year)\n\nNo, it should not be the US-centric March 14th, which most of the world writes as 14/3 or 14-3.\n\nScience and mathematics are international, without borders, not specific to any one country or culture. As scientists and mathematicians we should seek international-based celebrations that bring us all together around the globe rather than country-specific dates.\n\nThe ordinal date (ISO 8601) is the only way to have an international nth day of the year: https://en.wikipedia.org/wiki/Ordinal_date\n\nSimilarly:\n\n* 88th day: worldwide Piano Day: https://en.wikipedia.org/wiki/Piano_Day (blogged https://tantek.com/2024/088/t1/world-piano-day-ordinal-date-iso-8601)\n* 256the day: 8-bit day or https://en.wikipedia.org/wiki/Programmer%27s_Day (blogged https://tantek.com/2025/257/t1/happy-8bitday-255-bytes-max)\n\nI suspect there are other such annual worldwide holidays that are pinned to the ordinal date rather than a Gregorian or other non-decimal calendar. Let me know if you have a favorite that you celebrate!\n\n\ud83e\udd67 I haven't made a pie (or picked one up) yet \u2014 will have go pick up a slice during a break in this evening\u2019s #w3cTPAC meetings (which are in Japan where it\u2019s already the day after pi day).\n\nPreviously:\n* https://tantek.com/2022/314/t1/happy-ordinal-pi-day\n\n#piDay #actualPiDay #ordinalDate #ISO8601 #ISOdate"
        ],
        "content": [
         {
          "value": "\u03c0 Happy ordinal pi day! (314th day of the year)\n\nNo, it should not be the US-centric March 14th, which most of the world writes as 14/3 or 14-3.\n\nScience and mathematics are international, without borders, not specific to any one country or culture. As scientists and mathematicians we should seek international-based celebrations that bring us all together around the globe rather than country-specific dates.\n\nThe ordinal date (ISO 8601) is the only way to have an international nth day of the year: https://en.wikipedia.org/wiki/Ordinal_date\n\nSimilarly:\n\n* 88th day: worldwide Piano Day: https://en.wikipedia.org/wiki/Piano_Day (blogged https://tantek.com/2024/088/t1/world-piano-day-ordinal-date-iso-8601)\n* 256the day: 8-bit day or https://en.wikipedia.org/wiki/Programmer%27s_Day (blogged https://tantek.com/2025/257/t1/happy-8bitday-255-bytes-max)\n\nI suspect there are other such annual worldwide holidays that are pinned to the ordinal date rather than a Gregorian or other non-decimal calendar. Let me know if you have a favorite that you celebrate!\n\n\ud83e\udd67 I haven't made a pie (or picked one up) yet \u2014 will have go pick up a slice during a break in this evening\u2019s #w3cTPAC meetings (which are in Japan where it\u2019s already the day after pi day).\n\nPreviously:\n* https://tantek.com/2022/314/t1/happy-ordinal-pi-day\n\n#piDay #actualPiDay #ordinalDate #ISO8601 #ISOdate",
          "lang": "en-US",
          "html": "\u03c0 Happy ordinal pi day! (314th day of the year)<br class=\"auto-break\"/><br class=\"auto-break\"/>No, it should not be the US-centric March 14th, which most of the world writes as 14/3 or 14-3.<br class=\"auto-break\"/><br class=\"auto-break\"/>Science and mathematics are international, without borders, not specific to any one country or culture. As scientists and mathematicians we should seek international-based celebrations that bring us all together around the globe rather than country-specific dates.<br class=\"auto-break\"/><br class=\"auto-break\"/>The ordinal date (ISO 8601) is the only way to have an international nth day of the year: <a class=\"auto-link\" href=\"https://en.wikipedia.org/wiki/Ordinal_date\">https://en.wikipedia.org/wiki/Ordinal_date</a><br class=\"auto-break\"/><br class=\"auto-break\"/>Similarly:<br class=\"auto-break\"/><br class=\"auto-break\"/>* 88th day: worldwide Piano Day: <a class=\"auto-link\" href=\"https://en.wikipedia.org/wiki/Piano_Day\">https://en.wikipedia.org/wiki/Piano_Day</a> (blogged <a class=\"auto-link\" href=\"https://tantek.com/2024/088/t1/world-piano-day-ordinal-date-iso-8601\">https://tantek.com/2024/088/t1/world-piano-day-ordinal-date-iso-8601</a>)<br class=\"auto-break\"/>* 256the day: 8-bit day or <a class=\"auto-link\" href=\"https://en.wikipedia.org/wiki/Programmer%27s_Day\">https://en.wikipedia.org/wiki/Programmer%27s_Day</a> (blogged <a class=\"auto-link\" href=\"https://tantek.com/2025/257/t1/happy-8bitday-255-bytes-max\">https://tantek.com/2025/257/t1/happy-8bitday-255-bytes-max</a>)<br class=\"auto-break\"/><br class=\"auto-break\"/>I suspect there are other such annual worldwide holidays that are pinned to the ordinal date rather than a Gregorian or other non-decimal calendar. Let me know if you have a favorite that you celebrate!<br class=\"auto-break\"/><br class=\"auto-break\"/>\ud83e\udd67 I haven't made a pie (or picked one up) yet \u2014 will have go pick up a slice during a break in this evening\u2019s #<span class=\"p-category auto-tag\">w3cTPAC</span> meetings (which are in Japan where it\u2019s already the day after pi day).<br class=\"auto-break\"/><br class=\"auto-break\"/>Previously:<br class=\"auto-break\"/>* <a class=\"auto-link\" href=\"https://tantek.com/2022/314/t1/happy-ordinal-pi-day\">https://tantek.com/2022/314/t1/happy-ordinal-pi-day</a><br class=\"auto-break\"/><br class=\"auto-break\"/>#<span class=\"p-category auto-tag\">piDay</span> #<span class=\"p-category auto-tag\">actualPiDay</span> #<span class=\"p-category auto-tag\">ordinalDate</span> #<span class=\"p-category auto-tag\">ISO8601</span> #<span class=\"p-category auto-tag\">ISOdate</span>"
         }
        ],
        "category": [
         "w3cTPAC",
         "piDay",
         "actualPiDay",
         "ordinalDate",
         "ISO8601",
         "ISOdate"
        ],
        "uid": [
         "https://tantek.com/2025/314/t1/happy-ordinal-pi-day"
        ],
        "url": [
         "https://tantek.com/2025/314/t1/happy-ordinal-pi-day"
        ],
        "published": [
         "2025-11-10 17:10-0800"
        ],
        "updated": [
         "2025-11-10 17:10-0800"
        ]
       },
       "lang": "en-US"
      },
      {
       "type": [
        "h-entry"
       ],
       "properties": {
        "name": [
         "Great #indieweb sessions at #btconf #Berlin!\n\nYesterday, Sacha Judd (@sachajudd.com) reminded us to \u201cteach someone \u2026. something about building for the web\u201d, and to \u201ctake back control of your feeds, your attention, and \u2026 go exploring again\u201d. She encouraged us to \u201cbuild healthy online neighborhoods\u201d. That\u2019s a great metaphor and very complementary to rebuilding your own home(page) on the web with perhaps a digital garden as well!\n\nToday, Ana Rodrigues (@anarodrigu.es @ohhelloana.blog) connected the dots from Sacha\u2019s reminders to encouraging everyone to join burgeoning healthy online neighborhoods like:\n* 32-Bit Cafe (@32bit.cafe and see their Discord & Discourse)\n* IndieWeb Community (@indieweb.org and see @chat.indieweb.org for Discord, IRC, Slack)\n\nBoth are filled with online neighbors helping and teaching each other how to make what people want to express on and for their personal sites!\n\nKnow of other healthy online neighborhoods? Let me know and I\u2019ll add them to the IndieWeb communities page!\n\nWant to connect your online home with online neighbors?\n* Join the IndieWeb #webring: https://indieweb.org/IndieWeb_Webring\n\nPrefer events? Join a virtual Frontend Study Hall, Homebrew Website Club meetup, or the next #IndieWebCamp!\n\n\nGlossary and links:\n\nbtconf (Beyond Tellerrand conference) Berlin 2025\n\u00a0 https://beyondtellerrand.com/events/berlin-2025\ncommunities (IndieWeb) \n\u00a0 https://indieweb.org/communities\ndigital gardens\n\u00a0 \u00a0 https://indieweb.org/digital_garden\nhome (page) on the web\n\u00a0 https://indieweb.org/homepage\nHomebrew Website Club (HWC) online and in-person:\n\u00a0 https://events.indieweb.org/tag/hwc\nFront End Study Hall (FrESH)\n\u00a0 https://indieweb.org/fresh\nIndieWebCamps - in-person and hybrid!\n\u00a0 https://events.indieweb.org/tag/indiewebcamp\n\n\nThis is post 16 of #100PostsOfIndieWeb. #100Posts\n\n\u2190 https://tantek.com/2025/311/t1/indiewebcamp-berlin-sessions-demos\n\u2192 https://tantek.com/2025/322/t1/modular-website-dns-cdn-webhost"
        ],
        "content": [
         {
          "value": "Great #indieweb sessions at #btconf #Berlin!\n\nYesterday, Sacha Judd (@sachajudd.com) reminded us to \u201cteach someone \u2026. something about building for the web\u201d, and to \u201ctake back control of your feeds, your attention, and \u2026 go exploring again\u201d. She encouraged us to \u201cbuild healthy online neighborhoods\u201d. That\u2019s a great metaphor and very complementary to rebuilding your own home(page) on the web with perhaps a digital garden as well!\n\nToday, Ana Rodrigues (@anarodrigu.es @ohhelloana.blog) connected the dots from Sacha\u2019s reminders to encouraging everyone to join burgeoning healthy online neighborhoods like:\n* 32-Bit Cafe (@32bit.cafe and see their Discord & Discourse)\n* IndieWeb Community (@indieweb.org and see @chat.indieweb.org for Discord, IRC, Slack)\n\nBoth are filled with online neighbors helping and teaching each other how to make what people want to express on and for their personal sites!\n\nKnow of other healthy online neighborhoods? Let me know and I\u2019ll add them to the IndieWeb communities page!\n\nWant to connect your online home with online neighbors?\n* Join the IndieWeb #webring: https://indieweb.org/IndieWeb_Webring\n\nPrefer events? Join a virtual Frontend Study Hall, Homebrew Website Club meetup, or the next #IndieWebCamp!\n\n\nGlossary and links:\n\nbtconf (Beyond Tellerrand conference) Berlin 2025\n\u00a0 https://beyondtellerrand.com/events/berlin-2025\ncommunities (IndieWeb) \n\u00a0 https://indieweb.org/communities\ndigital gardens\n\u00a0 \u00a0 https://indieweb.org/digital_garden\nhome (page) on the web\n\u00a0 https://indieweb.org/homepage\nHomebrew Website Club (HWC) online and in-person:\n\u00a0 https://events.indieweb.org/tag/hwc\nFront End Study Hall (FrESH)\n\u00a0 https://indieweb.org/fresh\nIndieWebCamps - in-person and hybrid!\n\u00a0 https://events.indieweb.org/tag/indiewebcamp\n\n\nThis is post 16 of #100PostsOfIndieWeb. #100Posts\n\n\u2190 https://tantek.com/2025/311/t1/indiewebcamp-berlin-sessions-demos\n\u2192 https://tantek.com/2025/322/t1/modular-website-dns-cdn-webhost",
          "lang": "en-US",
          "html": "Great #<span class=\"p-category auto-tag\">indieweb</span> sessions at #<span class=\"p-category auto-tag\">btconf</span> #<span class=\"p-category auto-tag\">Berlin</span>!<br class=\"auto-break\"/><br class=\"auto-break\"/>Yesterday, Sacha Judd (<a class=\"auto-link\" href=\"https://sachajudd.com\">@sachajudd.com</a>) reminded us to \u201cteach someone \u2026. something about building for the web\u201d, and to \u201ctake back control of your feeds, your attention, and \u2026 go exploring again\u201d. She encouraged us to \u201cbuild healthy online neighborhoods\u201d. That\u2019s a great metaphor and very complementary to rebuilding your own home(page) on the web with perhaps a digital garden as well!<br class=\"auto-break\"/><br class=\"auto-break\"/>Today, Ana Rodrigues (<a class=\"auto-link\" href=\"https://anarodrigu.es\">@anarodrigu.es</a> <a class=\"auto-link\" href=\"https://ohhelloana.blog\">@ohhelloana.blog</a>) connected the dots from Sacha\u2019s reminders to encouraging everyone to join burgeoning healthy online neighborhoods like:<br class=\"auto-break\"/>* 32-Bit Cafe (<a class=\"auto-link\" href=\"https://32bit.cafe\">@32bit.cafe</a> and see their Discord &amp; Discourse)<br class=\"auto-break\"/>* IndieWeb Community (<a class=\"auto-link\" href=\"https://indieweb.org\">@indieweb.org</a> and see <a class=\"auto-link\" href=\"https://chat.indieweb.org\">@chat.indieweb.org</a> for Discord, IRC, Slack)<br class=\"auto-break\"/><br class=\"auto-break\"/>Both are filled with online neighbors helping and teaching each other how to make what people want to express on and for their personal sites!<br class=\"auto-break\"/><br class=\"auto-break\"/>Know of other healthy online neighborhoods? Let me know and I\u2019ll add them to the IndieWeb communities page!<br class=\"auto-break\"/><br class=\"auto-break\"/>Want to connect your online home with online neighbors?<br class=\"auto-break\"/>* Join the IndieWeb #<span class=\"p-category auto-tag\">webring:</span> <a class=\"auto-link\" href=\"https://indieweb.org/IndieWeb_Webring\">https://indieweb.org/IndieWeb_Webring</a><br class=\"auto-break\"/><br class=\"auto-break\"/>Prefer events? Join a virtual Frontend Study Hall, Homebrew Website Club meetup, or the next #<span class=\"p-category auto-tag\">IndieWebCamp</span>!<br class=\"auto-break\"/><br class=\"auto-break\"/><br class=\"auto-break\"/>Glossary and links:<br class=\"auto-break\"/><br class=\"auto-break\"/>btconf (Beyond Tellerrand conference) Berlin 2025<br class=\"auto-break\"/>\u00a0 <a class=\"auto-link\" href=\"https://beyondtellerrand.com/events/berlin-2025\">https://beyondtellerrand.com/events/berlin-2025</a><br class=\"auto-break\"/>communities (IndieWeb) <br class=\"auto-break\"/>\u00a0 <a class=\"auto-link\" href=\"https://indieweb.org/communities\">https://indieweb.org/communities</a><br class=\"auto-break\"/>digital gardens<br class=\"auto-break\"/>\u00a0 \u00a0 <a class=\"auto-link\" href=\"https://indieweb.org/digital_garden\">https://indieweb.org/digital_garden</a><br class=\"auto-break\"/>home (page) on the web<br class=\"auto-break\"/>\u00a0 <a class=\"auto-link\" href=\"https://indieweb.org/homepage\">https://indieweb.org/homepage</a><br class=\"auto-break\"/>Homebrew Website Club (HWC) online and in-person:<br class=\"auto-break\"/>\u00a0 <a class=\"auto-link\" href=\"https://events.indieweb.org/tag/hwc\">https://events.indieweb.org/tag/hwc</a><br class=\"auto-break\"/>Front End Study Hall (FrESH)<br class=\"auto-break\"/>\u00a0 <a class=\"auto-link\" href=\"https://indieweb.org/fresh\">https://indieweb.org/fresh</a><br class=\"auto-break\"/>IndieWebCamps - in-person and hybrid!<br class=\"auto-break\"/>\u00a0 <a class=\"auto-link\" href=\"https://events.indieweb.org/tag/indiewebcamp\">https://events.indieweb.org/tag/indiewebcamp</a><br class=\"auto-break\"/><br class=\"auto-break\"/><br class=\"auto-break\"/>This is post 16 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\"/>\u2190 <a class=\"auto-link\" href=\"https://tantek.com/2025/311/t1/indiewebcamp-berlin-sessions-demos\">https://tantek.com/2025/311/t1/indiewebcamp-berlin-sessions-demos</a><br class=\"auto-break\"/>\u2192 <a class=\"auto-link\" href=\"https://tantek.com/2025/322/t1/modular-website-dns-cdn-webhost\">https://tantek.com/2025/322/t1/modular-website-dns-cdn-webhost</a>"
         }
        ],
        "category": [
         "indieweb",
         "btconf",
         "Berlin",
         "webring:",
         "IndieWebCamp",
         "100PostsOfIndieWeb",
         "100Posts"
        ],
        "uid": [
         "https://tantek.com/2025/311/t2/indieweb-sessions-btconf-berlin"
        ],
        "url": [
         "https://tantek.com/2025/311/t2/indieweb-sessions-btconf-berlin"
        ],
        "published": [
         "2025-11-07 08:09-0800"
        ],
        "updated": [
         "2025-11-07 08:09-0800"
        ]
       },
       "lang": "en-US"
      },
      {
       "type": [
        "h-entry"
       ],
       "properties": {
        "name": [
         "IndieWebCamp Berlin was great! Participants facilitated inspiring sessions, and everyone made something on or for their personal site on our Create Day #Hackathon.\n\nSession notes are up from day 1, recordings to follow:\n* https://indieweb.org/2025/Berlin/Schedule\n\nDemos notes also up, recording to follow:\n* https://indieweb.org/2025/Berlin/Demos\n\nWant to keep up with #IndieWebCamp #Berlin participants? Volunteer Daniel has updated the IndieWebCamp Berlin feed:\n* https://indieweb.org/2025/Berlin#Feeds_Lists_Starter_Packs_Oh_My\n\nQuestions about sessions or demos? Ask in #IndieWeb chat!\n* https://chat.indieweb.org/\n\n\nThis is post 15 of #100PostsOfIndieWeb. #100Posts\n\n\u2190 https://tantek.com/2025/304/t1/night-before-indiewebcamp-berlin\n\u2192 https://tantek.com/2025/311/t2/indieweb-sessions-btconf-berlin"
        ],
        "content": [
         {
          "value": "IndieWebCamp Berlin was great! Participants facilitated inspiring sessions, and everyone made something on or for their personal site on our Create Day #Hackathon.\n\nSession notes are up from day 1, recordings to follow:\n* https://indieweb.org/2025/Berlin/Schedule\n\nDemos notes also up, recording to follow:\n* https://indieweb.org/2025/Berlin/Demos\n\nWant to keep up with #IndieWebCamp #Berlin participants? Volunteer Daniel has updated the IndieWebCamp Berlin feed:\n* https://indieweb.org/2025/Berlin#Feeds_Lists_Starter_Packs_Oh_My\n\nQuestions about sessions or demos? Ask in #IndieWeb chat!\n* https://chat.indieweb.org/\n\n\nThis is post 15 of #100PostsOfIndieWeb. #100Posts\n\n\u2190 https://tantek.com/2025/304/t1/night-before-indiewebcamp-berlin\n\u2192 https://tantek.com/2025/311/t2/indieweb-sessions-btconf-berlin",
          "lang": "en-US",
          "html": "IndieWebCamp Berlin was great! Participants facilitated inspiring sessions, and everyone made something on or for their personal site on our Create Day #<span class=\"p-category auto-tag\">Hackathon</span>.<br class=\"auto-break\"/><br class=\"auto-break\"/>Session notes are up from day 1, recordings to follow:<br class=\"auto-break\"/>* <a class=\"auto-link\" href=\"https://indieweb.org/2025/Berlin/Schedule\">https://indieweb.org/2025/Berlin/Schedule</a><br class=\"auto-break\"/><br class=\"auto-break\"/>Demos notes also up, recording to follow:<br class=\"auto-break\"/>* <a class=\"auto-link\" href=\"https://indieweb.org/2025/Berlin/Demos\">https://indieweb.org/2025/Berlin/Demos</a><br class=\"auto-break\"/><br class=\"auto-break\"/>Want to keep up with #<span class=\"p-category auto-tag\">IndieWebCamp</span> #<span class=\"p-category auto-tag\">Berlin</span> participants? Volunteer Daniel has updated the IndieWebCamp Berlin feed:<br class=\"auto-break\"/>* <a class=\"auto-link\" href=\"https://indieweb.org/2025/Berlin#Feeds_Lists_Starter_Packs_Oh_My\">https://indieweb.org/2025/Berlin#Feeds_Lists_Starter_Packs_Oh_My</a><br class=\"auto-break\"/><br class=\"auto-break\"/>Questions about sessions or demos? Ask in #<span class=\"p-category auto-tag\">IndieWeb</span> chat!<br class=\"auto-break\"/>* <a class=\"auto-link\" href=\"https://chat.indieweb.org/\">https://chat.indieweb.org/</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\"/>\u2190 <a class=\"auto-link\" href=\"https://tantek.com/2025/304/t1/night-before-indiewebcamp-berlin\">https://tantek.com/2025/304/t1/night-before-indiewebcamp-berlin</a><br class=\"auto-break\"/>\u2192 <a class=\"auto-link\" href=\"https://tantek.com/2025/311/t2/indieweb-sessions-btconf-berlin\">https://tantek.com/2025/311/t2/indieweb-sessions-btconf-berlin</a>"
         }
        ],
        "category": [
         "Hackathon",
         "IndieWebCamp",
         "Berlin",
         "IndieWeb",
         "100PostsOfIndieWeb",
         "100Posts"
        ],
        "uid": [
         "https://tantek.com/2025/311/t1/indiewebcamp-berlin-sessions-demos"
        ],
        "url": [
         "https://tantek.com/2025/311/t1/indiewebcamp-berlin-sessions-demos"
        ],
        "published": [
         "2025-11-07 02:55-0800"
        ],
        "updated": [
         "2025-11-07 02:55-0800"
        ]
       },
       "lang": "en-US"
      },
      {
       "type": [
        "h-entry"
       ],
       "properties": {
        "name": [
         "\ud83c\udf83 Night before IndieWebCamp Berlin! Participants are (hopefully, mostly) all tucked into their beds, dreaming of what wonderful things they can brainstorm for their personal sites Saturday, and #HackTheirPlanet on Sunday.\n\nWant to keep up with #IndieWebCamp #Berlin participants?\n\nFollow their feeds and a Bluesky starter pack (happy to include more for any other formats, protocols, or platforms)\n* https://indieweb.org/2025/Berlin#Feeds_Lists_Starter_Packs_Oh_My\n\nWe\u2019ll add more as folks sign-in at the camp!\n\nThis is post 14 of #100PostsOfIndieWeb. #100Posts #IndieWeb #Blogtober #IndieWebMovieClub #HackThePlanet \ud83d\udcdf\n\n\u2190 https://tantek.com/2025/303/t1/october-blogging-challenges\n\u2192 https://tantek.com/2025/311/t1/indiewebcamp-berlin-sessions-demos"
        ],
        "content": [
         {
          "value": "\ud83c\udf83 Night before IndieWebCamp Berlin! Participants are (hopefully, mostly) all tucked into their beds, dreaming of what wonderful things they can brainstorm for their personal sites Saturday, and #HackTheirPlanet on Sunday.\n\nWant to keep up with #IndieWebCamp #Berlin participants?\n\nFollow their feeds and a Bluesky starter pack (happy to include more for any other formats, protocols, or platforms)\n* https://indieweb.org/2025/Berlin#Feeds_Lists_Starter_Packs_Oh_My\n\nWe\u2019ll add more as folks sign-in at the camp!\n\nThis is post 14 of #100PostsOfIndieWeb. #100Posts #IndieWeb #Blogtober #IndieWebMovieClub #HackThePlanet \ud83d\udcdf\n\n\u2190 https://tantek.com/2025/303/t1/october-blogging-challenges\n\u2192 https://tantek.com/2025/311/t1/indiewebcamp-berlin-sessions-demos",
          "lang": "en-US",
          "html": "\ud83c\udf83 Night before IndieWebCamp Berlin! Participants are (hopefully, mostly) all tucked into their beds, dreaming of what wonderful things they can brainstorm for their personal sites Saturday, and #<span class=\"p-category auto-tag\">HackTheirPlanet</span> on Sunday.<br class=\"auto-break\"/><br class=\"auto-break\"/>Want to keep up with #<span class=\"p-category auto-tag\">IndieWebCamp</span> #<span class=\"p-category auto-tag\">Berlin</span> participants?<br class=\"auto-break\"/><br class=\"auto-break\"/>Follow their feeds and a Bluesky starter pack (happy to include more for any other formats, protocols, or platforms)<br class=\"auto-break\"/>* <a class=\"auto-link\" href=\"https://indieweb.org/2025/Berlin#Feeds_Lists_Starter_Packs_Oh_My\">https://indieweb.org/2025/Berlin#Feeds_Lists_Starter_Packs_Oh_My</a><br class=\"auto-break\"/><br class=\"auto-break\"/>We\u2019ll add more as folks sign-in at the camp!<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> #<span class=\"p-category auto-tag\">IndieWeb</span> #<span class=\"p-category auto-tag\">Blogtober</span> #<span class=\"p-category auto-tag\">IndieWebMovieClub</span> #<span class=\"p-category auto-tag\">HackThePlanet</span> \ud83d\udcdf<br class=\"auto-break\"/><br class=\"auto-break\"/>\u2190 <a class=\"auto-link\" href=\"https://tantek.com/2025/303/t1/october-blogging-challenges\">https://tantek.com/2025/303/t1/october-blogging-challenges</a><br class=\"auto-break\"/>\u2192 <a class=\"auto-link\" href=\"https://tantek.com/2025/311/t1/indiewebcamp-berlin-sessions-demos\">https://tantek.com/2025/311/t1/indiewebcamp-berlin-sessions-demos</a>"
         }
        ],
        "category": [
         "HackTheirPlanet",
         "IndieWebCamp",
         "Berlin",
         "100PostsOfIndieWeb",
         "100Posts",
         "IndieWeb",
         "Blogtober",
         "IndieWebMovieClub",
         "HackThePlanet"
        ],
        "uid": [
         "https://tantek.com/2025/304/t1/night-before-indiewebcamp-berlin"
        ],
        "url": [
         "https://tantek.com/2025/304/t1/night-before-indiewebcamp-berlin"
        ],
        "published": [
         "2025-10-31 15:14-0700"
        ],
        "updated": [
         "2025-10-31 15:14-0700"
        ]
       },
       "lang": "en-US"
      }
     ],
     "id": "updates",
     "lang": "en-US"
    },
    {
     "type": [
      "h-feed"
     ],
     "properties": {
      "name": [
       "Recent Articles"
      ]
     },
     "children": [
      {
       "type": [
        "h-entry"
       ],
       "properties": {
        "name": [
         "May the Focus Be With You!"
        ],
        "url": [
         "https://tantek.com/2026/124/b1/may-the-focus-be-with-you-iphone-grayscale"
        ]
       },
       "lang": "en-US"
      },
      {
       "type": [
        "h-entry"
       ],
       "properties": {
        "name": [
         "Running For Re-election in the 2025 W3C Advisory Board (AB) Election"
        ],
        "url": [
         "https://tantek.com/2025/127/b1/running-for-w3c-advisory-board-ab-election"
        ]
       },
       "lang": "en-US"
      },
      {
       "type": [
        "h-entry"
       ],
       "properties": {
        "name": [
         "CSF_02: Entropy Is Your Friend In Security"
        ],
        "url": [
         "https://tantek.com/2025/122/b1/more-steps-indieweb-cybersecurity"
        ]
       },
       "lang": "en-US"
      }
     ],
     "id": "recent-articles",
     "lang": "en-US"
    },
    {
     "type": [
      "h-feed"
     ],
     "properties": {
      "name": [
       "Recent Photos"
      ]
     },
     "children": [
      {
       "type": [
        "h-entry"
       ],
       "properties": {
        "name": [
         "Tantek running with a focused look in a 2020 MUC50 cap, black singlet & shorts, on a dirt trail with grass, bushes, & trees on both sides, and two runners out of focus ~20 meters behind him."
        ],
        "photo": [
         {
          "value": "https://fastly.4sqi.net/img/general/width960/476_tjk6ja88e3mjglC50lmeeMAwpr4Pozk_yVhAIuNgq3E.jpg",
          "alt": "Tantek running with a focused look in a 2020 MUC50 cap, black singlet & shorts, on a dirt trail with grass, bushes, & trees on both sides, and two runners out of focus ~20 meters behind him."
         }
        ],
        "url": [
         "https://tantek.com/2022/289/t1/hot-skyline50k-ultra-finish"
        ]
       },
       "lang": "en-US"
      },
      {
       "type": [
        "h-entry"
       ],
       "properties": {
        "name": [
         "Fogged-in view of a lush green hillside, narrow singletrack trail cutting up from the right and approaching the center, with Tantek power hiking uphill, grinning, water bottle in right hand, holding his side with his left."
        ],
        "photo": [
         {
          "value": "https://fastly.4sqi.net/img/general/width960/476_9_gqB6h_tK8iyjBEb886XpboOcF8bsEgT_wl76vckqI.jpg",
          "alt": "Fogged-in view of a lush green hillside, narrow singletrack trail cutting up from the right and approaching the center, with Tantek power hiking uphill, grinning, water bottle in right hand, holding his side with his left."
         }
        ],
        "url": [
         "https://tantek.com/2021/221/t1/finished-rodeovalley-trailrace"
        ]
       },
       "lang": "en-US"
      },
      {
       "type": [
        "h-entry"
       ],
       "properties": {
        "name": [
         "White yoga mat on a hardwood floor with running shoes, clothes, gear, fuel laid out in an orderly fashion."
        ],
        "photo": [
         {
          "value": "https://fastly.4sqi.net/img/general/width960/476_gChM9nrNNko-1aMouw-x74imp7kzUzJKLomkEQ4u8qQ.jpg",
          "alt": "White yoga mat on a hardwood floor with running shoes, clothes, gear, fuel laid out in an orderly fashion."
         }
        ],
        "url": [
         "https://tantek.com/2021/218/t1/running-rodeovalley"
        ]
       },
       "lang": "en-US"
      },
      {
       "type": [
        "h-entry"
       ],
       "properties": {
        "name": [
         "Tantek running downhill on a trail with mountains, hills, and an ocean shore in the distant background, under a sunny blue sky."
        ],
        "photo": [
         {
          "value": "https://fastly.4sqi.net/img/general/width960/476_nJH-uVKVhefvOPmfi3mPSlI9MqpeN6WLmS6EbWdKNC0.jpg",
          "alt": "Tantek running downhill on a trail with mountains, hills, and an ocean shore in the distant background, under a sunny blue sky."
         }
        ],
        "url": [
         "https://tantek.com/2021/019/t1/marin-trailrun"
        ]
       },
       "lang": "en-US"
      },
      {
       "type": [
        "h-entry"
       ],
       "properties": {
        "name": [
         "View of sunset-lit downtown San Francisco in the distance as viewed from Twin Peaks, with the hairpin turn below, and immediately below the green hill slope of Twin Peaks summit."
        ],
        "photo": [
         {
          "value": "https://fastly.4sqi.net/img/general/width960/476_fkcHgLiQBPvCLZJHKYdX7CaTedWH8UbLwL1AQuOZV9A.jpg",
          "alt": "View of sunset-lit downtown San Francisco in the distance as viewed from Twin Peaks, with the hairpin turn below, and immediately below the green hill slope of Twin Peaks summit."
         }
        ],
        "url": [
         "https://tantek.com/2021/017/t3/seven-years-ago-npsf-hills"
        ]
       },
       "lang": "en-US"
      },
      {
       "type": [
        "h-entry"
       ],
       "properties": {
        "name": [
         "January of 2021 month calendar built from LEGO bricks, on a hexagonal white on gray blanket background."
        ],
        "photo": [
         {
          "value": "https://fastly.4sqi.net/img/general/width960/476_M152uOnalZ6QfPsz9YMHd2sNPt-U7s2Twx2Lj26gryA.jpg",
          "alt": "January of 2021 month calendar built from LEGO bricks, on a hexagonal white on gray blanket background."
         }
        ],
        "url": [
         "https://tantek.com/2021/017/t2/january"
        ]
       },
       "lang": "en-US"
      },
      {
       "type": [
        "h-entry"
       ],
       "properties": {
        "name": [
         "Multicolored heart painting with a few sequine pieces, outlined in pink with bits of turquoise, paint dripping downward, on a piece of plywood at a construction site, signed KATE_TOVA."
        ],
        "photo": [
         {
          "value": "https://fastly.4sqi.net/img/general/width960/476_77tgUdgL2xYzHOEFYLIf1-kATkEom1PWrqzIEja6Bww.jpg",
          "alt": "Multicolored heart painting with a few sequine pieces, outlined in pink with bits of turquoise, paint dripping downward, on a piece of plywood at a construction site, signed KATE_TOVA."
         }
        ],
        "url": [
         "https://tantek.com/2020/364/t1/last-track"
        ]
       },
       "lang": "en-US"
      },
      {
       "type": [
        "h-entry"
       ],
       "properties": {
        "name": [
         "Tantek wearing a buff taking a selfie at the Mill Valley Depot with Nick, Paddy, Olivia, and Emma safely distanced in the background."
        ],
        "photo": [
         {
          "value": "https://fastly.4sqi.net/img/general/width960/476_OguOnR4ZRWSfkf4xrKwqIhVCw6Fmp8zJZT1reWJclls.jpg",
          "alt": "Tantek wearing a buff taking a selfie at the Mill Valley Depot with Nick, Paddy, Olivia, and Emma safely distanced in the background."
         }
        ],
        "url": [
         "https://tantek.com/2020/359/t1/tam-summit"
        ]
       },
       "lang": "en-US"
      },
      {
       "type": [
        "h-entry"
       ],
       "properties": {
        "name": [
         "December of 2020 month calendar built from LEGO bricks, on an hardwood floor background."
        ],
        "photo": [
         {
          "value": "https://fastly.4sqi.net/img/general/width960/476_crDev05xDJVnmxPsasFbdxMvdxDA1tuItOUPEaTVogA.jpg",
          "alt": "December of 2020 month calendar built from LEGO bricks, on an hardwood floor background."
         }
        ],
        "url": [
         "https://tantek.com/2020/356/t1/december-winter-solstice"
        ]
       },
       "lang": "en-US"
      },
      {
       "type": [
        "h-entry"
       ],
       "properties": {
        "name": [
         "Stencil street art of George Floyd on a red wall with the word JUSTICE above his head, and FOR GEORGE below."
        ],
        "photo": [
         {
          "value": "https://fastly.4sqi.net/img/general/width960/476_wiYEJTxjdxLl_vZFlLefP9O8b-Jv9R12Q92ANKZXhSA.jpg",
          "alt": "Stencil street art of George Floyd on a red wall with the word JUSTICE above his head, and FOR GEORGE below."
         }
        ],
        "url": [
         "https://tantek.com/2020/153/t1/justice-for-george"
        ]
       },
       "lang": "en-US"
      },
      {
       "type": [
        "h-entry"
       ],
       "properties": {
        "name": [
         "Intersection of Frederick and Ashbury streets at night, looking westward, everything is dark except for streetlamps, lights outside a boarded up Ashbury Market, and a second floor corner apartment on the other side, above a lit bus stop for the number 6 outbound bus."
        ],
        "photo": [
         {
          "value": "https://fastly.4sqi.net/img/general/width960/476_SpwXl5ANk0Pyg5xBFSovR5qUkMoaEE_6uak0acFKU8w.jpg",
          "alt": "Intersection of Frederick and Ashbury streets at night, looking westward, everything is dark except for streetlamps, lights outside a boarded up Ashbury Market, and a second floor corner apartment on the other side, above a lit bus stop for the number 6 outbound bus."
         }
        ],
        "url": [
         "https://tantek.com/2020/137/t3/sf-distancing-day-twelve"
        ]
       },
       "lang": "en-US"
      },
      {
       "type": [
        "h-entry"
       ],
       "properties": {
        "name": [
         "Strava map showing a roundtrip running route in red from Haight Ashbury to near a hairpin turn on Twin Peaks and back."
        ],
        "photo": [
         {
          "value": "https://fastly.4sqi.net/img/general/width960/476_RLIxPGQ2v_yOJcsVnDalcK2pZETJNnYbZSr1I4VhrBc.jpg",
          "alt": "Strava map showing a roundtrip running route in red from Haight Ashbury to near a hairpin turn on Twin Peaks and back."
         }
        ],
        "url": [
         "https://tantek.com/2020/130/t1/ahmaudarbery-blacklivesmatter"
        ]
       },
       "lang": "en-US"
      }
     ],
     "id": "recent-photos",
     "lang": "en-US"
    },
    {
     "type": [
      "h-card"
     ],
     "properties": {
      "name": [
       "microformats.org"
      ],
      "url": [
       "http://microformats.org/wiki"
      ],
      "note": [
       "the fastest way to publish your web page contents as data APIs and look better in search engines"
      ]
     },
     "lang": "en-US"
    },
    {
     "type": [
      "h-feed"
     ],
     "properties": {
      "name": [
       "Events"
      ]
     },
     "children": [
      {
       "type": [
        "h-event"
       ],
       "properties": {
        "start": [
         "2026-05-17"
        ],
        "url": [
         "https://www.baytobreakers.com/"
        ],
        "name": [
         "Bay to Breakers 12k"
        ],
        "location": [
         "San Francisco, California, USA"
        ]
       },
       "lang": "en-US"
      },
      {
       "type": [
        "h-event"
       ],
       "properties": {
        "start": [
         "2026-06-21"
        ],
        "url": [
         "https://www.brokenarrowskyrace.com/23k"
        ],
        "name": [
         "Broken Arrow Skyrace 23K"
        ],
        "location": [
         "Palisades, Tahoe, California, USA"
        ]
       },
       "lang": "en-US"
      }
     ],
     "id": "events",
     "lang": "en-US"
    },
    {
     "type": [
      "h-card"
     ],
     "properties": {
      "name": [
       "Rebecca Daniels"
      ]
     },
     "lang": "en-US"
    },
    {
     "type": [
      "h-cite"
     ],
     "properties": {
      "name": [
       "RFC 9518: Centralization, Decentralization, and Internet Standards"
      ],
      "url": [
       "https://www.rfc-editor.org/rfc/rfc9518.html#appendix-A-4"
      ]
     },
     "lang": "en-US"
    }
   ],
   "lang": "en-US"
  }
 ],
 "rels": {
  "icon": [
   "https://tantek.com/88x31.png",
   "https://tantek.com/logo.jpg",
   "https://tantek.com/photo.jpg"
  ],
  "apple-touch-icon-precomposed": [
   "https://tantek.com/logo.jpg"
  ],
  "webmention": [
   "https://webmention.io/tantek.com/webmention"
  ],
  "hub": [
   "https://pubsubhubbub.superfeedr.com/"
  ],
  "openid.delegate": [
   "https://tantek.com/"
  ],
  "openid.server": [
   "https://indieauth.com/openid"
  ],
  "authorization_endpoint": [
   "https://indieauth.com/auth"
  ],
  "token_endpoint": [
   "https://tokens.indieauth.com/token"
  ],
  "microsub": [
   "https://aperture.p3k.io/microsub/277"
  ],
  "alternate": [
   "https://tantek.com/#updates",
   "https://tantek.com/updates.atom"
  ],
  "serviceworker": [
   "https://tantek.com/serviceworker.js"
  ],
  "me": [
   "https://fed.brid.gy/r/https://tantek.com/",
   "https://xoxo.zone/@t",
   "https://micro.blog/t",
   "https://www.threads.net/@tantek",
   "https://instagram.com/tantek/",
   "https://www.flickr.com/people/tantek/",
   "https://github.com/tantek",
   "https://indieweb.org/User:Tantek.com",
   "https://en.wikipedia.org/wiki/User:Tantek"
  ],
  "author": [
   "https://tantek.com/",
   "https://tantek.com/@tantek.com"
  ],
  "canonical": [
   "https://tantek.com/"
  ],
  "self": [
   "https://tantek.com/"
  ],
  "payment": [
   "https://tantek.com/tip/1"
  ],
  "bookmark": [
   "https://tantek.com/2026/124/b1/may-the-focus-be-with-you-iphone-grayscale"
  ],
  "nofollow": [
   "https://tantek.com/?",
   "https://tantek.com/?skin=vtx",
   "https://tantek.com/?skin=trn"
  ],
  "inspiration": [
   "https://www.rfc-editor.org/rfc/rfc9518.html#appendix-A-4"
  ]
 },
 "rel-urls": {
  "https://tantek.com/88x31.png": {
   "text": "",
   "rels": [
    "icon"
   ],
   "type": "image/png"
  },
  "https://tantek.com/logo.jpg": {
   "text": "",
   "rels": [
    "apple-touch-icon-precomposed",
    "icon"
   ],
   "type": "image/jpeg"
  },
  "https://tantek.com/photo.jpg": {
   "text": "",
   "rels": [
    "icon"
   ],
   "type": "image/jpeg"
  },
  "https://webmention.io/tantek.com/webmention": {
   "text": "",
   "rels": [
    "webmention"
   ]
  },
  "https://pubsubhubbub.superfeedr.com/": {
   "text": "",
   "rels": [
    "hub"
   ]
  },
  "https://tantek.com/": {
   "text": "",
   "rels": [
    "author",
    "canonical",
    "openid.delegate",
    "self"
   ],
   "title": "follow tantek.com in your favorite Social Reader"
  },
  "https://indieauth.com/openid": {
   "text": "",
   "rels": [
    "openid.server"
   ]
  },
  "https://indieauth.com/auth": {
   "text": "",
   "rels": [
    "authorization_endpoint"
   ]
  },
  "https://tokens.indieauth.com/token": {
   "text": "",
   "rels": [
    "token_endpoint"
   ]
  },
  "https://aperture.p3k.io/microsub/277": {
   "text": "",
   "rels": [
    "microsub"
   ]
  },
  "https://tantek.com/#updates": {
   "text": "",
   "rels": [
    "alternate"
   ],
   "type": "text/mf2+html"
  },
  "https://tantek.com/updates.atom": {
   "text": "",
   "rels": [
    "alternate"
   ],
   "type": "application/atom+xml"
  },
  "https://tantek.com/serviceworker.js": {
   "text": "",
   "rels": [
    "serviceworker"
   ]
  },
  "https://fed.brid.gy/r/https://tantek.com/": {
   "text": "",
   "rels": [
    "me"
   ]
  },
  "https://xoxo.zone/@t": {
   "text": "",
   "rels": [
    "me"
   ]
  },
  "https://tantek.com/@tantek.com": {
   "text": "",
   "rels": [
    "author"
   ],
   "type": "application/activity+json"
  },
  "https://tantek.com/tip/1": {
   "text": "\ud83d\udc4f",
   "rels": [
    "payment"
   ],
   "title": "Tip: Did you read something of value here and want to encourage more posts like that? Feel free to tip a small amount and mention which topics you enjoyed! (Just please avoid specific products or services. Thanks! -t)"
  },
  "https://tantek.com/2026/124/b1/may-the-focus-be-with-you-iphone-grayscale": {
   "text": "May the Focus Be With You!",
   "rels": [
    "bookmark"
   ]
  },
  "https://tantek.com/?": {
   "text": "\ud83c\udfe0",
   "rels": [
    "nofollow"
   ],
   "title": "Choose default theme"
  },
  "https://tantek.com/?skin=vtx": {
   "text": "\ud83d\udcfa",
   "rels": [
    "nofollow"
   ],
   "title": "Choose Terminal theme"
  },
  "https://tantek.com/?skin=trn": {
   "text": "\ud83e\udd4f",
   "rels": [
    "nofollow"
   ],
   "title": "Choose TRON:Legacy theme"
  },
  "https://micro.blog/t": {
   "text": "micro.blog @t",
   "rels": [
    "me"
   ],
   "title": "follow me on micro.blog"
  },
  "https://www.threads.net/@tantek": {
   "text": "@ Threads @tantek",
   "rels": [
    "me"
   ],
   "title": "Threads account that I\u2018m experimenting with"
  },
  "https://instagram.com/tantek/": {
   "text": "Instagram @tantek",
   "rels": [
    "me"
   ],
   "title": "Instagram account where I cross-post my photos"
  },
  "https://www.flickr.com/people/tantek/": {
   "text": "Flickr",
   "rels": [
    "me"
   ],
   "title": "photos on Flickr"
  },
  "https://github.com/tantek": {
   "text": "Github @tantek",
   "rels": [
    "me"
   ],
   "title": "open source on Github"
  },
  "https://indieweb.org/User:Tantek.com": {
   "text": "IndieWeb User:Tantek.com",
   "rels": [
    "me"
   ],
   "title": "contributions to IndieWeb wiki"
  },
  "https://en.wikipedia.org/wiki/User:Tantek": {
   "text": "Wikipedia User:Tantek",
   "rels": [
    "me"
   ],
   "title": "contributions to Wikipedia"
  },
  "https://www.rfc-editor.org/rfc/rfc9518.html#appendix-A-4": {
   "text": "RFC 9518 \n Appendix A \u00b6 4",
   "rels": [
    "inspiration"
   ]
  }
 },
 "debug": {
  "description": "mf2py - microformats2 parser for python",
  "source": "https://github.com/microformats/mf2py",
  "version": "2.0.1",
  "markup parser": "html5lib"
 },
 "alternates": [
  {
   "url": "https://tantek.com/#updates",
   "text": "",
   "type": "text/mf2+html"
  },
  {
   "url": "https://tantek.com/updates.atom",
   "text": "",
   "type": "application/atom+xml"
  }
 ]
}