<?xml version="1.0" encoding="UTF-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
  <updated>2026-04-27T12:33:42Z</updated>
  <generator>https://yabu.me</generator>

  <title>Nostr notes by Jake Archibald</title>
  <author>
    <name>Jake Archibald</name>
  </author>
  <link rel="self" type="application/atom+xml" href="https://yabu.me/npub1dpjjsyh6ag5p0anhrpzp8d73var3v5l06t4aktylcgslef40ff2q08e0jl.rss" />
  <link href="https://yabu.me/npub1dpjjsyh6ag5p0anhrpzp8d73var3v5l06t4aktylcgslef40ff2q08e0jl" />
  <id>https://yabu.me/npub1dpjjsyh6ag5p0anhrpzp8d73var3v5l06t4aktylcgslef40ff2q08e0jl</id>
  <icon>https://files.mastodon.social/accounts/avatars/000/007/220/original/a1ee2714b31f25d9.jpg</icon>
  <logo>https://files.mastodon.social/accounts/avatars/000/007/220/original/a1ee2714b31f25d9.jpg</logo>




  <entry>
    <id>https://yabu.me/nevent1qqspwjh5zh8xdxa3wr3pny2hhgxaxv3x2tdx08l52nanpuwqchckysgzyp5x22qjlt4zs9lkwuvygyah69n5w9jnalfwhkevnlpzrl9x4a99guj5aw0</id>
    
      <title type="html">Yeah! Although… it seems like there&amp;#39;s an oklch technique ...</title>
    
    <link rel="alternate" href="https://yabu.me/nevent1qqspwjh5zh8xdxa3wr3pny2hhgxaxv3x2tdx08l52nanpuwqchckysgzyp5x22qjlt4zs9lkwuvygyah69n5w9jnalfwhkevnlpzrl9x4a99guj5aw0" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqsw4rxpklhzn7aqrgqewdeu4tadvl35c7wwff3nhxfrvspc95d64cgxj95uz&#39;&gt;nevent1q…95uz&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;Yeah! Although… it seems like there&amp;#39;s an oklch technique that picks better values &lt;a href=&#34;https://random-stuff.jakearchibald.com/color-contrast/#2277d3&#34;&gt;https://random-stuff.jakearchibald.com/color-contrast/#2277d3&lt;/a&gt;
    </content>
    <updated>2026-05-14T06:32:18Z</updated>
  </entry>

  <entry>
    <id>https://yabu.me/nevent1qqsg0lfnslt5e9j0hwmj3nl5z7d2jtav37cm3275g4jnegc7405jthqzyp5x22qjlt4zs9lkwuvygyah69n5w9jnalfwhkevnlpzrl9x4a99gdngg3h</id>
    
      <title type="html">So, Chrome&amp;#39;s &amp;#34;web standard&amp;#34; Prompt API: Mozilla: ...</title>
    
    <link rel="alternate" href="https://yabu.me/nevent1qqsg0lfnslt5e9j0hwmj3nl5z7d2jtav37cm3275g4jnegc7405jthqzyp5x22qjlt4zs9lkwuvygyah69n5w9jnalfwhkevnlpzrl9x4a99gdngg3h" />
    <content type="html">
      So, Chrome&amp;#39;s &amp;#34;web standard&amp;#34; Prompt API:&lt;br/&gt;&lt;br/&gt;Mozilla: Opposed&lt;br/&gt;WebKit: Opposed&lt;br/&gt;Microsoft: Several concerns&lt;br/&gt;W3C TAG: Several concerns&lt;br/&gt;Developers: Mostly negative&lt;br/&gt;&lt;br/&gt;Chrome: Ships anyway.&lt;br/&gt;&lt;br/&gt;A sad time for web standards. But, I guess someone at Google will get promoted, so &amp;#39;every cloud…&amp;#39;
    </content>
    <updated>2026-05-06T09:50:27Z</updated>
  </entry>

  <entry>
    <id>https://yabu.me/nevent1qqsqdfftm8pett59jmyfgfs3jta4qy8yhvwvs4n9kucgrzr33ft2daszyp5x22qjlt4zs9lkwuvygyah69n5w9jnalfwhkevnlpzrl9x4a99glhnrnn</id>
    
      <title type="html">I&amp;#39;ve been playing around with Chrome&amp;#39;s experimental ...</title>
    
    <link rel="alternate" href="https://yabu.me/nevent1qqsqdfftm8pett59jmyfgfs3jta4qy8yhvwvs4n9kucgrzr33ft2daszyp5x22qjlt4zs9lkwuvygyah69n5w9jnalfwhkevnlpzrl9x4a99glhnrnn" />
    <content type="html">
      I&amp;#39;ve been playing around with Chrome&amp;#39;s experimental HTML-in-Canvas API (I use it to create my videos), and I wanted to see if I could make text-selection work on a curved surface by moving the underlying element around on pointermove. It works pretty well!&lt;br/&gt;&lt;br/&gt;Live demo: &lt;a href=&#34;https://random-stuff.jakearchibald.com/apps/curved-markup/&#34;&gt;https://random-stuff.jakearchibald.com/apps/curved-markup/&lt;/a&gt; (needs Chrome Canary with the canvas-draw-element flag.&lt;br/&gt;&lt;br/&gt;Source: &lt;a href=&#34;https://github.com/jakearchibald/random-stuff/blob/main/apps/curved-markup/src/App/index.tsx#L113&#34;&gt;https://github.com/jakearchibald/random-stuff/blob/main/apps/curved-markup/src/App/index.tsx#L113&lt;/a&gt;&lt;br/&gt;&lt;video controls width=&#34;100%&#34; class=&#34;max-h-[90vh] bg-neutral-300 dark:bg-zinc-700&#34;&gt;&lt;source src=&#34;https://files.mastodon.social/media_attachments/files/116/334/307/738/916/951/original/4e606d6fe8bba0bf.mp4&#34;&gt;&lt;/video&gt;&lt;br/&gt;
    </content>
    <updated>2026-04-02T09:05:13Z</updated>
  </entry>

  <entry>
    <id>https://yabu.me/nevent1qqsykz829snnvaujn9m57yaj8ajsamvm7cphgcay907fdg2p0cy5e3gzyp5x22qjlt4zs9lkwuvygyah69n5w9jnalfwhkevnlpzrl9x4a99g8x6xq2</id>
    
      <title type="html">Folks asked if there was a way to disable Chrome&amp;#39;s own ...</title>
    
    <link rel="alternate" href="https://yabu.me/nevent1qqsykz829snnvaujn9m57yaj8ajsamvm7cphgcay907fdg2p0cy5e3gzyp5x22qjlt4zs9lkwuvygyah69n5w9jnalfwhkevnlpzrl9x4a99g8x6xq2" />
    <content type="html">
      Folks asked if there was a way to disable Chrome&amp;#39;s own &amp;#39;back&amp;#39; transitions, and I didn&amp;#39;t think there was, but… you can use a CloseWatcher to listen for the back gesture (which disables Chrome&amp;#39;s transition), and then call history.back().&lt;br/&gt;&lt;br/&gt;&lt;a href=&#34;https://mastodon.social/@firefoxwebdevs/116295985768415581&#34;&gt;https://mastodon.social/@firefoxwebdevs/116295985768415581&lt;/a&gt;&lt;blockquote class=&#34;border-l-05rem border-l-strongpink border-solid&#34;&gt;&lt;div class=&#34;-ml-4 bg-gradient-to-r from-gray-100 dark:from-zinc-800 to-transparent mr-0 mt-0 mb-4 pl-4 pr-2 py-2&#34;&gt;quoting &lt;br/&gt;&lt;span itemprop=&#34;mentions&#34; itemscope itemtype=&#34;https://schema.org/Article&#34;&gt;&lt;a itemprop=&#34;url&#34; href=&#34;/note10kqz9hdq9g3dyre3lr29y85kfz2ks0ldzfzj422d6w6dadhddmcs2xrq8l&#34; class=&#34;bg-lavender dark:prose:text-neutral-50 dark:text-neutral-50 dark:bg-garnet px-1&#34;&gt;note10kq…rq8l&lt;/a&gt;&lt;/span&gt;&lt;br/&gt; &lt;/div&gt; hasUAVisualTransition landed in Firefox 149, making it available across all major engines. As well as having a very catchy name, it lets you avoid doubling up on page transitions. Here&#39;s how it works:&lt;br/&gt;&lt;video controls width=&#34;100%&#34; class=&#34;max-h-[90vh] bg-neutral-300 dark:bg-zinc-700&#34;&gt;&lt;source src=&#34;https://files.mastodon.social/media_attachments/files/116/295/980/096/103/884/original/411a24edc30e5286.mp4&#34;&gt;&lt;/video&gt;&lt;br/&gt; &lt;/blockquote&gt;
    </content>
    <updated>2026-03-31T09:37:55Z</updated>
  </entry>

  <entry>
    <id>https://yabu.me/nevent1qqs88dtxn63mt0tkqx2t32r3thvsk3lrxszxmjrwgurws3ecpzxuqsczyp5x22qjlt4zs9lkwuvygyah69n5w9jnalfwhkevnlpzrl9x4a99g8shvpd</id>
    
      <title type="html">thank you for saying that. It&amp;#39;s… been a rough day.</title>
    
    <link rel="alternate" href="https://yabu.me/nevent1qqs88dtxn63mt0tkqx2t32r3thvsk3lrxszxmjrwgurws3ecpzxuqsczyp5x22qjlt4zs9lkwuvygyah69n5w9jnalfwhkevnlpzrl9x4a99g8shvpd" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqsz8fqep86ql95wnh89rpe33zuu0cx4pv2y400thaqssmt35gmewcc9zsycl&#39;&gt;nevent1q…sycl&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;thank you for saying that. It&amp;#39;s… been a rough day.
    </content>
    <updated>2026-01-07T17:50:35Z</updated>
  </entry>

  <entry>
    <id>https://yabu.me/nevent1qqsvszyv25ucn07pnqqlydc6nwnwe3rr9lr7mmzetkutkpvns3ce0fgzyp5x22qjlt4zs9lkwuvygyah69n5w9jnalfwhkevnlpzrl9x4a99g89564s</id>
    
      <title type="html">the wonderful @npub1y3j…ymdz</title>
    
    <link rel="alternate" href="https://yabu.me/nevent1qqsvszyv25ucn07pnqqlydc6nwnwe3rr9lr7mmzetkutkpvns3ce0fgzyp5x22qjlt4zs9lkwuvygyah69n5w9jnalfwhkevnlpzrl9x4a99g89564s" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqsgsm3hphdl7apvh2fdfwm2d5hmj6eenvg32x0eh7q5s8xazpr6sespw6rf5&#39;&gt;nevent1q…6rf5&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;the wonderful &lt;span itemprop=&#34;mentions&#34; itemscope itemtype=&#34;https://schema.org/Person&#34;&gt;&lt;a itemprop=&#34;url&#34; href=&#34;/npub1y3j422rqevqyhz2jx5729p8l3x8ja3qhcq7w5hfhc730efs606xsq5ymdz&#34; class=&#34;bg-lavender dark:prose:text-neutral-50 dark:text-neutral-50 dark:bg-garnet px-1&#34;&gt;&lt;span&gt;Adam Argyle&lt;/span&gt; (&lt;span class=&#34;italic&#34;&gt;npub1y3j…ymdz&lt;/span&gt;)&lt;/a&gt;&lt;/span&gt;
    </content>
    <updated>2025-12-20T12:19:04Z</updated>
  </entry>

  <entry>
    <id>https://yabu.me/nevent1qqs9ft2kqgrud5mm5hy4409crlsx2ck2tfs80s77my6t9mfegfrrzxqzyp5x22qjlt4zs9lkwuvygyah69n5w9jnalfwhkevnlpzrl9x4a99gqak5dz</id>
    
      <title type="html">It&amp;#39;s really sad that Chrome laid off one of the world&amp;#39;s ...</title>
    
    <link rel="alternate" href="https://yabu.me/nevent1qqs9ft2kqgrud5mm5hy4409crlsx2ck2tfs80s77my6t9mfegfrrzxqzyp5x22qjlt4zs9lkwuvygyah69n5w9jnalfwhkevnlpzrl9x4a99gqak5dz" />
    <content type="html">
      It&amp;#39;s really sad that Chrome laid off one of the world&amp;#39;s best CSS developer-designers, and now they have to fake demos of web features. &lt;a href=&#34;https://youtu.be/d8J0vs-bEPE?si=l7YPHL8Tws-0iiBL&#34;&gt;https://youtu.be/d8J0vs-bEPE?si=l7YPHL8Tws-0iiBL&lt;/a&gt;
    </content>
    <updated>2025-12-20T10:40:28Z</updated>
  </entry>

  <entry>
    <id>https://yabu.me/nevent1qqsrec6fgp8529a7u2vpxx960rttksexj8h8y5mwcm2lasd65rphnpczyp5x22qjlt4zs9lkwuvygyah69n5w9jnalfwhkevnlpzrl9x4a99gu0g2hl</id>
    
      <title type="html">RE: https://mastodon.social/@FirefoxDevTools/115573428208353380 ...</title>
    
    <link rel="alternate" href="https://yabu.me/nevent1qqsrec6fgp8529a7u2vpxx960rttksexj8h8y5mwcm2lasd65rphnpczyp5x22qjlt4zs9lkwuvygyah69n5w9jnalfwhkevnlpzrl9x4a99gu0g2hl" />
    <content type="html">
      RE: &lt;a href=&#34;https://mastodon.social/@FirefoxDevTools/115573428208353380&#34;&gt;https://mastodon.social/@FirefoxDevTools/115573428208353380&lt;/a&gt;&lt;br/&gt;&lt;br/&gt;I&amp;#39;m experimenting with this format. Is it… good? Like, should I do more of this kind of thing? Critical feedback welcome!&lt;blockquote class=&#34;border-l-05rem border-l-strongpink border-solid&#34;&gt;&lt;div class=&#34;-ml-4 bg-gradient-to-r from-gray-100 dark:from-zinc-800 to-transparent mr-0 mt-0 mb-4 pl-4 pr-2 py-2&#34;&gt;quoting &lt;br/&gt;&lt;span itemprop=&#34;mentions&#34; itemscope itemtype=&#34;https://schema.org/Article&#34;&gt;&lt;a itemprop=&#34;url&#34; href=&#34;/note14456pykv8senp9v7ts2cx3h6gh8nxj32g9tdrunvu4ckd6c8ltfswkceck&#34; class=&#34;bg-lavender dark:prose:text-neutral-50 dark:text-neutral-50 dark:bg-garnet px-1&#34;&gt;note1445…ceck&lt;/a&gt;&lt;/span&gt;&lt;br/&gt; &lt;/div&gt; streamHTMLUnsafe() was presented at TPAC last week. Finally, an API that lets you easily use the streaming HTML parser from JavaScript! Here&#39;s a quick overview:&lt;br/&gt;&lt;video controls width=&#34;100%&#34; class=&#34;max-h-[90vh] bg-neutral-300 dark:bg-zinc-700&#34;&gt;&lt;source src=&#34;https://files.mastodon.social/media_attachments/files/115/573/426/696/414/292/original/0dc4374e1f7ea3a4.mp4&#34;&gt;&lt;/video&gt;&lt;br/&gt; &lt;/blockquote&gt;
    </content>
    <updated>2025-11-19T00:03:48Z</updated>
  </entry>

  <entry>
    <id>https://yabu.me/nevent1qqsy7dk9eg827uydyqq30vnzll3uqq24tamufd87fes48xc7dpyqm7szyp5x22qjlt4zs9lkwuvygyah69n5w9jnalfwhkevnlpzrl9x4a99gcttp0e</id>
    
      <title type="html">it&amp;#39;s not something I&amp;#39;ve needed either, but I know the ...</title>
    
    <link rel="alternate" href="https://yabu.me/nevent1qqsy7dk9eg827uydyqq30vnzll3uqq24tamufd87fes48xc7dpyqm7szyp5x22qjlt4zs9lkwuvygyah69n5w9jnalfwhkevnlpzrl9x4a99gcttp0e" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqstupvvvc95q50jn6z0d9v7kl2tzwhk7adfy24xng8mpkqf6qp9dncwt87xw&#39;&gt;nevent1q…87xw&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;it&amp;#39;s not something I&amp;#39;ve needed either, but I know the Svelte and Astro folks have been bitten by this bug.
    </content>
    <updated>2025-10-26T21:02:35Z</updated>
  </entry>

  <entry>
    <id>https://yabu.me/nevent1qqs0zq88zfdrrtf5h29agxn4qn0yu5ptkz7w9gckm5mxm3c99x9eezszyp5x22qjlt4zs9lkwuvygyah69n5w9jnalfwhkevnlpzrl9x4a99gu3566g</id>
    
      <title type="html">JavaScript top-level await is no longer considered ...</title>
    
    <link rel="alternate" href="https://yabu.me/nevent1qqs0zq88zfdrrtf5h29agxn4qn0yu5ptkz7w9gckm5mxm3c99x9eezszyp5x22qjlt4zs9lkwuvygyah69n5w9jnalfwhkevnlpzrl9x4a99gu3566g" />
    <content type="html">
      JavaScript top-level await is no longer considered &amp;#39;baseline&amp;#39; due to a pretty big Safari bug &lt;a href=&#34;https://caniuse.com/mdn-javascript_operators_await_top_level&#34;&gt;https://caniuse.com/mdn-javascript_operators_await_top_level&lt;/a&gt;&lt;br/&gt;&lt;br/&gt;The module graph fails in cases where two modules import a third at the same time. Demo: &lt;a href=&#34;https://random-stuff.jakearchibald.com/bug-repros/top-level-await-webkit/?timeout=1000&#34;&gt;https://random-stuff.jakearchibald.com/bug-repros/top-level-await-webkit/?timeout=1000&lt;/a&gt;&lt;br/&gt;&lt;br/&gt;It&amp;#39;s best to avoid the feature for now 😔
    </content>
    <updated>2025-10-26T20:17:55Z</updated>
  </entry>

  <entry>
    <id>https://yabu.me/nevent1qqstexg8sxhc4jwetrclm74lndhzz6hl4ey2v9f5trdvr4pe36pre7szyp5x22qjlt4zs9lkwuvygyah69n5w9jnalfwhkevnlpzrl9x4a99gxjvd9e</id>
    
      <title type="html">📝 Importing vs fetching JSON JSON imports are now supported ...</title>
    
    <link rel="alternate" href="https://yabu.me/nevent1qqstexg8sxhc4jwetrclm74lndhzz6hl4ey2v9f5trdvr4pe36pre7szyp5x22qjlt4zs9lkwuvygyah69n5w9jnalfwhkevnlpzrl9x4a99gxjvd9e" />
    <content type="html">
      📝 Importing vs fetching JSON&lt;br/&gt;&lt;br/&gt;JSON imports are now supported cross-browser, but when would you use them rather than fetch()?&lt;br/&gt;&lt;br/&gt;&lt;a href=&#34;https://jakearchibald.com/2025/importing-vs-fetching-json/&#34;&gt;https://jakearchibald.com/2025/importing-vs-fetching-json/&lt;/a&gt;
    </content>
    <updated>2025-10-22T14:50:57Z</updated>
  </entry>

  <entry>
    <id>https://yabu.me/nevent1qqsr3ln5thazvuve3k2fmpwrryrpfy0n50du2q6mj9meuhe0w8nqnjszyp5x22qjlt4zs9lkwuvygyah69n5w9jnalfwhkevnlpzrl9x4a99gxxee7c</id>
    
      <title type="html">I dug into progressive image rendering and found a bunch of ...</title>
    
    <link rel="alternate" href="https://yabu.me/nevent1qqsr3ln5thazvuve3k2fmpwrryrpfy0n50du2q6mj9meuhe0w8nqnjszyp5x22qjlt4zs9lkwuvygyah69n5w9jnalfwhkevnlpzrl9x4a99gxxee7c" />
    <content type="html">
      I dug into progressive image rendering and found a bunch of common assumptions aren&amp;#39;t quite true.&lt;br/&gt;&lt;br/&gt;➡️ JPEG &amp;amp; WebP progressive-renders worse in Safari&lt;br/&gt;➡️ AVIF _does_ support progressive&lt;br/&gt;➡️ But JPEG XL in Safari doesn&amp;#39;t&lt;br/&gt;➡️ JPEG XL decodes much slower than AVIF&lt;br/&gt;⬇️ …and more&lt;br/&gt;&lt;br/&gt;&lt;a href=&#34;https://jakearchibald.com/2025/present-and-future-of-progressive-image-rendering/&#34;&gt;https://jakearchibald.com/2025/present-and-future-of-progressive-image-rendering/&lt;/a&gt;
    </content>
    <updated>2025-10-16T10:16:32Z</updated>
  </entry>

  <entry>
    <id>https://yabu.me/nevent1qqsppggdmarlvzeaxyzgje2ph9s7wmvkgez6m908vvvtuwd7h6qjktszyp5x22qjlt4zs9lkwuvygyah69n5w9jnalfwhkevnlpzrl9x4a99ga39uek</id>
    
      <title type="html">A bunch of Firefox leadership will be doing a Reddit AMA, October ...</title>
    
    <link rel="alternate" href="https://yabu.me/nevent1qqsppggdmarlvzeaxyzgje2ph9s7wmvkgez6m908vvvtuwd7h6qjktszyp5x22qjlt4zs9lkwuvygyah69n5w9jnalfwhkevnlpzrl9x4a99ga39uek" />
    <content type="html">
      A bunch of Firefox leadership will be doing a Reddit AMA, October 6th, at 10:30 PT. If you have questions you want to ask them directly, pop the date in your calendar &lt;a href=&#34;https://www.reddit.com/r/firefox/comments/1ntui9x/upcoming_ama_with_firefox_leadership/&#34;&gt;https://www.reddit.com/r/firefox/comments/1ntui9x/upcoming_ama_with_firefox_leadership/&lt;/a&gt;
    </content>
    <updated>2025-09-30T10:39:26Z</updated>
  </entry>

  <entry>
    <id>https://yabu.me/nevent1qqsxv9jzf2x5mv70jfhjprfp45v6nyd8cmcq4n2hjr5kasn7e29pg3gzyp5x22qjlt4zs9lkwuvygyah69n5w9jnalfwhkevnlpzrl9x4a99gpfedes</id>
    
      <title type="html">SVGOMG has been updated to use SVGO 4! (thanks Adrien Crivelli!) ...</title>
    
    <link rel="alternate" href="https://yabu.me/nevent1qqsxv9jzf2x5mv70jfhjprfp45v6nyd8cmcq4n2hjr5kasn7e29pg3gzyp5x22qjlt4zs9lkwuvygyah69n5w9jnalfwhkevnlpzrl9x4a99gpfedes" />
    <content type="html">
      SVGOMG has been updated to use SVGO 4! (thanks Adrien Crivelli!)&lt;br/&gt;&lt;br/&gt;This is the URL for SVGOMG. Unfortunately someone maintains a fork with ads, so, err, don&amp;#39;t use that 😀&lt;br/&gt;&lt;br/&gt;&lt;a href=&#34;https://jakearchibald.github.io/svgomg/&#34;&gt;https://jakearchibald.github.io/svgomg/&lt;/a&gt;
    </content>
    <updated>2025-09-29T08:38:08Z</updated>
  </entry>

  <entry>
    <id>https://yabu.me/nevent1qqspt2mgal736emjhgp8v0aw64yyx3lvu8kcpu6zc7evp3qg39cmqqszyp5x22qjlt4zs9lkwuvygyah69n5w9jnalfwhkevnlpzrl9x4a99gq5vg2g</id>
    
      <title type="html">Hey folks! Are you interested in fetch upload streams? If so, ...</title>
    
    <link rel="alternate" href="https://yabu.me/nevent1qqspt2mgal736emjhgp8v0aw64yyx3lvu8kcpu6zc7evp3qg39cmqqszyp5x22qjlt4zs9lkwuvygyah69n5w9jnalfwhkevnlpzrl9x4a99gq5vg2g" />
    <content type="html">
      Hey folks! Are you interested in fetch upload streams? If so, what do you want to use them for?&lt;br/&gt; &lt;img src=&#34;https://files.mastodon.social/media_attachments/files/115/140/724/120/031/925/original/f4bb572137beda63.png&#34;&gt; &lt;br/&gt;
    </content>
    <updated>2025-09-03T14:00:32Z</updated>
  </entry>

  <entry>
    <id>https://yabu.me/nevent1qqspxh9g7dez52282qzn2zvetmlr5ck4zad4xxqxltjrn5q6v60tt7szyp5x22qjlt4zs9lkwuvygyah69n5w9jnalfwhkevnlpzrl9x4a99gk2x2fc</id>
    
      <title type="html">📝 Making XML human-readable without XSLT. Turns out, ...</title>
    
    <link rel="alternate" href="https://yabu.me/nevent1qqspxh9g7dez52282qzn2zvetmlr5ck4zad4xxqxltjrn5q6v60tt7szyp5x22qjlt4zs9lkwuvygyah69n5w9jnalfwhkevnlpzrl9x4a99gk2x2fc" />
    <content type="html">
      📝 Making XML human-readable without XSLT.&lt;br/&gt;&lt;br/&gt;Turns out, JavaScript works pretty well!&lt;br/&gt;&lt;br/&gt;&lt;a href=&#34;https://jakearchibald.com/2025/making-xml-human-readable-without-xslt/&#34;&gt;https://jakearchibald.com/2025/making-xml-human-readable-without-xslt/&lt;/a&gt;
    </content>
    <updated>2025-09-02T17:23:34Z</updated>
  </entry>

  <entry>
    <id>https://yabu.me/nevent1qqsfu5mzdp2w02r0eu52uezxgsyw3sl5vcshw9xx2j0dm37rq3rka7qzyp5x22qjlt4zs9lkwuvygyah69n5w9jnalfwhkevnlpzrl9x4a99gh9s8hs</id>
    
      <title type="html">Yay! It&amp;#39;s the first Firefox release since I&amp;#39;ve joined the ...</title>
    
    <link rel="alternate" href="https://yabu.me/nevent1qqsfu5mzdp2w02r0eu52uezxgsyw3sl5vcshw9xx2j0dm37rq3rka7qzyp5x22qjlt4zs9lkwuvygyah69n5w9jnalfwhkevnlpzrl9x4a99gh9s8hs" />
    <content type="html">
      Yay! It&amp;#39;s the first Firefox release since I&amp;#39;ve joined the team, so let&amp;#39;s take a look at some of the new developer-facing features in Firefox 142… 🧵
    </content>
    <updated>2025-08-22T09:55:37Z</updated>
  </entry>

  <entry>
    <id>https://yabu.me/nevent1qqst48cfuuklq8ljsfa0jp9aytgfvg2ckq0v96cw8mnacf67kktezuczyp5x22qjlt4zs9lkwuvygyah69n5w9jnalfwhkevnlpzrl9x4a99g4yw9lr</id>
    
      <title type="html">View Transitions are enabled by default in Firefox Nightly, so ...</title>
    
    <link rel="alternate" href="https://yabu.me/nevent1qqst48cfuuklq8ljsfa0jp9aytgfvg2ckq0v96cw8mnacf67kktezuczyp5x22qjlt4zs9lkwuvygyah69n5w9jnalfwhkevnlpzrl9x4a99g4yw9lr" />
    <content type="html">
      View Transitions are enabled by default in Firefox Nightly, so they&amp;#39;re on their way to stable. Give it a test with your current transitions, and give me a shout if anything doesn&amp;#39;t look right.&lt;br/&gt;&lt;br/&gt;I&amp;#39;m happy to report the most important transition works perfectly &lt;a href=&#34;https://simple-vt-demos.jakearchibald.com/batman-transition/&#34;&gt;https://simple-vt-demos.jakearchibald.com/batman-transition/&lt;/a&gt;
    </content>
    <updated>2025-08-21T08:17:18Z</updated>
  </entry>

  <entry>
    <id>https://yabu.me/nevent1qqspuqdug7nzsfajrdh7vsc9uejzh4hj9kpqnwusvey2xlg8pducvwszyp5x22qjlt4zs9lkwuvygyah69n5w9jnalfwhkevnlpzrl9x4a99g3vrm5k</id>
    
      <title type="html">Starting my new role on Monday. Could be anywhere. ...</title>
    
    <link rel="alternate" href="https://yabu.me/nevent1qqspuqdug7nzsfajrdh7vsc9uejzh4hj9kpqnwusvey2xlg8pducvwszyp5x22qjlt4zs9lkwuvygyah69n5w9jnalfwhkevnlpzrl9x4a99g3vrm5k" />
    <content type="html">
      Starting my new role on Monday. Could be anywhere.&lt;br/&gt; &lt;img src=&#34;https://files.mastodon.social/media_attachments/files/114/947/962/351/080/799/original/21dccc81aedd7c62.jpg&#34;&gt; &lt;br/&gt;
    </content>
    <updated>2025-07-31T12:58:46Z</updated>
  </entry>

  <entry>
    <id>https://yabu.me/nevent1qqsp5xgv3duxphls04stemnuntcahudnygu6uve76zfzyrvq6h3mhwqzyp5x22qjlt4zs9lkwuvygyah69n5w9jnalfwhkevnlpzrl9x4a99gj5jhmy</id>
    
      <title type="html">it literally makes my day when people enjoy my bullshit</title>
    
    <link rel="alternate" href="https://yabu.me/nevent1qqsp5xgv3duxphls04stemnuntcahudnygu6uve76zfzyrvq6h3mhwqzyp5x22qjlt4zs9lkwuvygyah69n5w9jnalfwhkevnlpzrl9x4a99gj5jhmy" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqszmf0zypdrp0dldqv027zm6v94ep6uf04tst05kzg9d0hhmn0rsusc54ust&#39;&gt;nevent1q…4ust&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;it literally makes my day when people enjoy my bullshit
    </content>
    <updated>2025-07-01T19:13:51Z</updated>
  </entry>

  <entry>
    <id>https://yabu.me/nevent1qqszs0r53czs2g380kjpdvlhf5wuwc0q6f9zzh0m7twc0tpuhc459dqzyp5x22qjlt4zs9lkwuvygyah69n5w9jnalfwhkevnlpzrl9x4a99g08sffd</id>
    
      <title type="html">oh mate it was a long and arduous post, by design. I had more fun ...</title>
    
    <link rel="alternate" href="https://yabu.me/nevent1qqszs0r53czs2g380kjpdvlhf5wuwc0q6f9zzh0m7twc0tpuhc459dqzyp5x22qjlt4zs9lkwuvygyah69n5w9jnalfwhkevnlpzrl9x4a99g08sffd" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqswycll0jlqq0m997x2hlt2545t3z6wfpf8aj38wwvrkncvdel3n4qhmavgz&#39;&gt;nevent1q…avgz&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;oh mate it was a long and arduous post, by design. I had more fun writing it than anyone had reading it.
    </content>
    <updated>2025-07-01T18:44:35Z</updated>
  </entry>

  <entry>
    <id>https://yabu.me/nevent1qqsy9m0k803ceacp4pmak6w8xze4p7zygtwsy96lkrw7nn8vdp67y3gzyp5x22qjlt4zs9lkwuvygyah69n5w9jnalfwhkevnlpzrl9x4a99gyzpwdy</id>
    
      <title type="html">as far as I can tell, the difference between section &amp;amp; aside ...</title>
    
    <link rel="alternate" href="https://yabu.me/nevent1qqsy9m0k803ceacp4pmak6w8xze4p7zygtwsy96lkrw7nn8vdp67y3gzyp5x22qjlt4zs9lkwuvygyah69n5w9jnalfwhkevnlpzrl9x4a99gyzpwdy" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqswelk3pafclu7yqt2kmp9zlrc3psraucd5xdgz5hscdt66kjynp7slcgy7q&#39;&gt;nevent1q…gy7q&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;as far as I can tell, the difference between section &amp;amp; aside is the role, which you&amp;#39;re overwriting anyway.
    </content>
    <updated>2025-07-01T16:43:00Z</updated>
  </entry>

  <entry>
    <id>https://yabu.me/nevent1qqsdec78dg6rtt8hf0q0u6nshmhmea3mvuzyscyg565s8x2dpdd7u7czyp5x22qjlt4zs9lkwuvygyah69n5w9jnalfwhkevnlpzrl9x4a99gn76ufx</id>
    
      <title type="html">I hate footnotes, especially on the web, and hopefully by the end ...</title>
    
    <link rel="alternate" href="https://yabu.me/nevent1qqsdec78dg6rtt8hf0q0u6nshmhmea3mvuzyscyg565s8x2dpdd7u7czyp5x22qjlt4zs9lkwuvygyah69n5w9jnalfwhkevnlpzrl9x4a99gn76ufx" />
    <content type="html">
      I hate footnotes, especially on the web, and hopefully by the end of this, you will too.&lt;br/&gt;&lt;br/&gt;&lt;a href=&#34;https://jakearchibald.com/2025/give-footnotes-the-boot/&#34;&gt;https://jakearchibald.com/2025/give-footnotes-the-boot/&lt;/a&gt;
    </content>
    <updated>2025-07-01T15:23:01Z</updated>
  </entry>

  <entry>
    <id>https://yabu.me/nevent1qqsp9ya2dsrat8rvpwtglm3jma6fwajutseyyetc5c4mrtv5ygzj59szyp5x22qjlt4zs9lkwuvygyah69n5w9jnalfwhkevnlpzrl9x4a99gpuwgqh</id>
    
      <title type="html">I think Meta&amp;#39;s going to win the AI race lads! ...</title>
    
    <link rel="alternate" href="https://yabu.me/nevent1qqsp9ya2dsrat8rvpwtglm3jma6fwajutseyyetc5c4mrtv5ygzj59szyp5x22qjlt4zs9lkwuvygyah69n5w9jnalfwhkevnlpzrl9x4a99gpuwgqh" />
    <content type="html">
      I think Meta&amp;#39;s going to win the AI race lads!&lt;br/&gt; &lt;img src=&#34;https://files.mastodon.social/media_attachments/files/114/245/239/571/085/602/original/6dac5372f6ac8feb.png&#34;&gt; &lt;br/&gt;
    </content>
    <updated>2025-03-29T10:27:43Z</updated>
  </entry>

  <entry>
    <id>https://yabu.me/nevent1qqsd2lhf4qh5c30gmpvcmt3tdwzqfph9ucxnkz4scwah06kggux2qpczyp5x22qjlt4zs9lkwuvygyah69n5w9jnalfwhkevnlpzrl9x4a99gtkc82s</id>
    
      <title type="html">🔊 ICYMI: @npub1228…wtdf talked through Nix in the last OTMT, ...</title>
    
    <link rel="alternate" href="https://yabu.me/nevent1qqsd2lhf4qh5c30gmpvcmt3tdwzqfph9ucxnkz4scwah06kggux2qpczyp5x22qjlt4zs9lkwuvygyah69n5w9jnalfwhkevnlpzrl9x4a99gtkc82s" />
    <content type="html">
      🔊 ICYMI: &lt;span itemprop=&#34;mentions&#34; itemscope itemtype=&#34;https://schema.org/Person&#34;&gt;&lt;a itemprop=&#34;url&#34; href=&#34;/npub122879jyh5uvucxn9wcrr2pfdyp4lw6yakawu7m4jfs4cc3w5w5jq6swtdf&#34; class=&#34;bg-lavender dark:prose:text-neutral-50 dark:text-neutral-50 dark:bg-garnet px-1&#34;&gt;&lt;span&gt;Surma&lt;/span&gt; (&lt;span class=&#34;italic&#34;&gt;npub1228…wtdf&lt;/span&gt;)&lt;/a&gt;&lt;/span&gt; talked through Nix in the last OTMT, comparing it to other build systems we&amp;#39;d looked at in previous episodes &lt;a href=&#34;https://offthemainthread.tech/episode/nix/&#34;&gt;https://offthemainthread.tech/episode/nix/&lt;/a&gt;
    </content>
    <updated>2024-11-18T13:48:11Z</updated>
  </entry>

  <entry>
    <id>https://yabu.me/nevent1qqsr4g49da0vvgrkd2zq8kxd0ud8f2ujfjetc6q6rdu5ktjduylay6szyp5x22qjlt4zs9lkwuvygyah69n5w9jnalfwhkevnlpzrl9x4a99gnj292f</id>
    
      <title type="html">Wow Google Docs, this is some of the worst copywriting I&amp;#39;ve ...</title>
    
    <link rel="alternate" href="https://yabu.me/nevent1qqsr4g49da0vvgrkd2zq8kxd0ud8f2ujfjetc6q6rdu5ktjduylay6szyp5x22qjlt4zs9lkwuvygyah69n5w9jnalfwhkevnlpzrl9x4a99gnj292f" />
    <content type="html">
      Wow Google Docs, this is some of the worst copywriting I&amp;#39;ve seen in a long time.&lt;br/&gt; &lt;img src=&#34;https://files.mastodon.social/media_attachments/files/113/436/085/776/251/843/original/0fd59fd18814adb0.png&#34;&gt; &lt;br/&gt;
    </content>
    <updated>2024-11-06T12:57:51Z</updated>
  </entry>

  <entry>
    <id>https://yabu.me/nevent1qqsdhzy7ukjxzv9xfflfgd4t329h52dxjlaw6frt0qvnrwxp05adjhczyp5x22qjlt4zs9lkwuvygyah69n5w9jnalfwhkevnlpzrl9x4a99g2ru5k0</id>
    
      <title type="html">I&amp;#39;m excited that we&amp;#39;re finally getting a customisable ...</title>
    
    <link rel="alternate" href="https://yabu.me/nevent1qqsdhzy7ukjxzv9xfflfgd4t329h52dxjlaw6frt0qvnrwxp05adjhczyp5x22qjlt4zs9lkwuvygyah69n5w9jnalfwhkevnlpzrl9x4a99g2ru5k0" />
    <content type="html">
      I&amp;#39;m excited that we&amp;#39;re finally getting a customisable &amp;lt;select&amp;gt; on the web. However, there&amp;#39;s one detail of it I&amp;#39;m really not sure about, and I&amp;#39;d like to hear your thoughts.&lt;br/&gt;&lt;br/&gt;Have your say before it&amp;#39;s too late 😀&lt;br/&gt;&lt;br/&gt;&lt;a href=&#34;https://jakearchibald.com/2024/how-should-selectedoption-work/&#34;&gt;https://jakearchibald.com/2024/how-should-selectedoption-work/&lt;/a&gt;
    </content>
    <updated>2024-10-18T11:46:37Z</updated>
  </entry>

  <entry>
    <id>https://yabu.me/nevent1qqstgaptudchta0yj23fvy9dmapg7qr8lxh3epqfnlngsv44ze4d2fgzyp5x22qjlt4zs9lkwuvygyah69n5w9jnalfwhkevnlpzrl9x4a99gwqaj6s</id>
    
      <title type="html">`el.className` and `el.htmlFor` have such unusual names because ...</title>
    
    <link rel="alternate" href="https://yabu.me/nevent1qqstgaptudchta0yj23fvy9dmapg7qr8lxh3epqfnlngsv44ze4d2fgzyp5x22qjlt4zs9lkwuvygyah69n5w9jnalfwhkevnlpzrl9x4a99gwqaj6s" />
    <content type="html">
      `el.className` and `el.htmlFor` have such unusual names because `class` and `for` used to be reserved words in JS. That hasn&amp;#39;t been true for property names for 10&#43; years.&lt;br/&gt;&lt;br/&gt;Firefox is experimenting with adding `el.class` and `el.for`, yay!&lt;br/&gt;&lt;br/&gt;&lt;a href=&#34;https://github.com/whatwg/html/issues/9379#issuecomment-2357214793&#34;&gt;https://github.com/whatwg/html/issues/9379#issuecomment-2357214793&lt;/a&gt;
    </content>
    <updated>2024-09-18T08:27:22Z</updated>
  </entry>

  <entry>
    <id>https://yabu.me/nevent1qqstf2krdzztqtrdgahgscszwjlf8fw6xux75nz258zymeycd0f6wygzyp5x22qjlt4zs9lkwuvygyah69n5w9jnalfwhkevnlpzrl9x4a99g857q4r</id>
    
      <title type="html">📝 I set off to find the best way to make video with ...</title>
    
    <link rel="alternate" href="https://yabu.me/nevent1qqstf2krdzztqtrdgahgscszwjlf8fw6xux75nz258zymeycd0f6wygzyp5x22qjlt4zs9lkwuvygyah69n5w9jnalfwhkevnlpzrl9x4a99g857q4r" />
    <content type="html">
      📝 I set off to find the best way to make video with transparency work on the web.&lt;br/&gt;&lt;br/&gt;Over 10 bug reports later, it turns out it&amp;#39;s better to handle the transparency manually with WebGL. Here&amp;#39;s how:&lt;br/&gt;&lt;br/&gt;&lt;a href=&#34;https://jakearchibald.com/2024/video-with-transparency/&#34;&gt;https://jakearchibald.com/2024/video-with-transparency/&lt;/a&gt;
    </content>
    <updated>2024-08-05T11:29:11Z</updated>
  </entry>

  <entry>
    <id>https://yabu.me/nevent1qqs8zlywk4xyx04cux39prue08ts0k8ctm5wjl3uvk6zm9ugp9j34ygzyp5x22qjlt4zs9lkwuvygyah69n5w9jnalfwhkevnlpzrl9x4a99g7nrh2q</id>
    
      <title type="html">🔊 Are Web Components Worth It? In the latest OTMT, me and ...</title>
    
    <link rel="alternate" href="https://yabu.me/nevent1qqs8zlywk4xyx04cux39prue08ts0k8ctm5wjl3uvk6zm9ugp9j34ygzyp5x22qjlt4zs9lkwuvygyah69n5w9jnalfwhkevnlpzrl9x4a99g7nrh2q" />
    <content type="html">
      🔊 Are Web Components Worth It?&lt;br/&gt;&lt;br/&gt;In the latest OTMT, me and &lt;span itemprop=&#34;mentions&#34; itemscope itemtype=&#34;https://schema.org/Person&#34;&gt;&lt;a itemprop=&#34;url&#34; href=&#34;/npub122879jyh5uvucxn9wcrr2pfdyp4lw6yakawu7m4jfs4cc3w5w5jq6swtdf&#34; class=&#34;bg-lavender dark:prose:text-neutral-50 dark:text-neutral-50 dark:bg-garnet px-1&#34;&gt;&lt;span&gt;Surma&lt;/span&gt; (&lt;span class=&#34;italic&#34;&gt;npub1228…wtdf&lt;/span&gt;)&lt;/a&gt;&lt;/span&gt; look at the benefits and tradeoffs of web components, and how things could improve.&lt;br/&gt;&lt;br/&gt;⬇️ Listen here ⬇️&lt;br/&gt;&lt;a href=&#34;https://offthemainthread.tech/episode/are-web-components-worth-it/&#34;&gt;https://offthemainthread.tech/episode/are-web-components-worth-it/&lt;/a&gt;
    </content>
    <updated>2024-07-02T14:06:27Z</updated>
  </entry>

</feed>