<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"><channel><description>Building @vowel.cc&#xA;&#xA;Formerly @storyblok.com, prismic.io, @lionsroar.com</description><link>https://bsky.app/profile/littlefair.ca</link><title>@littlefair.ca - Sam Littlefair</title><item><link>https://bsky.app/profile/littlefair.ca/post/3muru5dpu5c2a</link><description>So I’m guessing the reason that the Cloudflare Pages API isn’t publicly documented is because it’s getting merged into the Cloudflare Workers API, which is publicly documented (as far as I can tell).&#xA;&#xA;[contains quote post or other embedded content]</description><pubDate>05 Sep 2026 16:03 +0000</pubDate><guid isPermaLink="false">at://did:plc:7a4dbiurb44vggsynafivdpd/app.bsky.feed.post/3muru5dpu5c2a</guid></item><item><link>https://bsky.app/profile/littlefair.ca/post/3mupnxmykkc2s</link><description>I am going to frame this and put it on my wall.&#xA;&#xA;I shrank cloudflare-pages-deploy by 98%! That makes it a much more viable option if you&#39;re looking for a way to publish your Cloudflare Pages site programmatically.&#xA;&#xA;[contains quote post or other embedded content]</description><pubDate>04 Sep 2026 19:07 +0000</pubDate><guid isPermaLink="false">at://did:plc:7a4dbiurb44vggsynafivdpd/app.bsky.feed.post/3mupnxmykkc2s</guid></item><item><link>https://bsky.app/profile/littlefair.ca/post/3mufabqbxik2r</link><description>Going crazy because I can&#39;t figure out why this SVG isn&#39;t rendering on my webpage. Googling solutions. Editing the SVG file. It finally dawns on me that I&#39;m using an &lt;a&gt; tag.</description><pubDate>31 Aug 2026 15:36 +0000</pubDate><guid isPermaLink="false">at://did:plc:7a4dbiurb44vggsynafivdpd/app.bsky.feed.post/3mufabqbxik2r</guid></item><item><link>https://bsky.app/profile/littlefair.ca/post/3mu5qllsrvc2q</link><description>Fun fact: “Old European hydronymy” is the name for a hypothesized ancient language that only survives in the mysterious names of streams and rivers across Europe.&#xA;&#xA;[contains quote post or other embedded content]</description><pubDate>28 Aug 2026 16:06 +0000</pubDate><guid isPermaLink="false">at://did:plc:7a4dbiurb44vggsynafivdpd/app.bsky.feed.post/3mu5qllsrvc2q</guid></item><item><link>https://bsky.app/profile/littlefair.ca/post/3mtwajexe222b</link><description>I was going absolutely insane yesterday because this comment in the Svelte codebase was breaking my client bundle by closing my &lt;script&gt; tag early.&#xA;&#xA;I had to figure out why (a) my JavaScript was erroring and (b) my webpage was rendering `{#each [&#39;🙈&#39;, &#39;🙉&#39;, &#39;🙊&#39;] as monkey}`.</description><pubDate>25 Aug 2026 16:30 +0000</pubDate><guid isPermaLink="false">at://did:plc:7a4dbiurb44vggsynafivdpd/app.bsky.feed.post/3mtwajexe222b</guid></item><item><link>https://bsky.app/profile/littlefair.ca/post/3mssm6zahn222</link><description>&#34;Why do you say you need a site reliability engineer?&#34;</description><pubDate>11 Aug 2026 12:23 +0000</pubDate><guid isPermaLink="false">at://did:plc:7a4dbiurb44vggsynafivdpd/app.bsky.feed.post/3mssm6zahn222</guid></item><item><link>https://bsky.app/profile/littlefair.ca/post/3mslwypui4s2r</link><description>“ChatGPT, analyze this meteorology dataset and tell me if I need to evacuate.”&#xA;&#xA;[contains quote post or other embedded content]</description><pubDate>08 Aug 2026 20:48 +0000</pubDate><guid isPermaLink="false">at://did:plc:7a4dbiurb44vggsynafivdpd/app.bsky.feed.post/3mslwypui4s2r</guid></item><item><link>https://bsky.app/profile/littlefair.ca/post/3mslwewyrgs2j</link><description>Today is my birthday, which I only mention because I feel very blessed that it coincides with HTML day. I hope that means it’s going to be an HTMLful year.&#xA;&#xA;[contains quote post or other embedded content]</description><pubDate>08 Aug 2026 20:37 +0000</pubDate><guid isPermaLink="false">at://did:plc:7a4dbiurb44vggsynafivdpd/app.bsky.feed.post/3mslwewyrgs2j</guid></item><item><link>https://bsky.app/profile/littlefair.ca/post/3msgjcp2dbc2p</link><description>Playing with this a little bit.&#xA;&#xA;[contains quote post or other embedded content]</description><pubDate>06 Aug 2026 16:59 +0000</pubDate><guid isPermaLink="false">at://did:plc:7a4dbiurb44vggsynafivdpd/app.bsky.feed.post/3msgjcp2dbc2p</guid></item><item><link>https://bsky.app/profile/littlefair.ca/post/3msgdpq3sus26</link><description>Once upon a time web developers regularly wrote blog posts about UX design that were this good. Thank you to @lea.verou.me for keeping the art alive.&#xA;&#xA;[contains quote post or other embedded content]</description><pubDate>06 Aug 2026 15:19 +0000</pubDate><guid isPermaLink="false">at://did:plc:7a4dbiurb44vggsynafivdpd/app.bsky.feed.post/3msgdpq3sus26</guid></item><item><link>https://bsky.app/profile/littlefair.ca/post/3msbcwdyf2s2u</link><description>My hot take is that this isn’t a web concern. No toggle. Always respect system preference. Push vendors to put per-site toggles in the browser settings.&#xA;&#xA;[contains quote post or other embedded content]</description><pubDate>04 Aug 2026 15:22 +0000</pubDate><guid isPermaLink="false">at://did:plc:7a4dbiurb44vggsynafivdpd/app.bsky.feed.post/3msbcwdyf2s2u</guid></item><item><link>https://bsky.app/profile/littlefair.ca/post/3ms76y3f5mc2c</link><description>Vowel now has 404 pages. Just create a 404.md.</description><pubDate>03 Aug 2026 19:06 +0000</pubDate><guid isPermaLink="false">at://did:plc:7a4dbiurb44vggsynafivdpd/app.bsky.feed.post/3ms76y3f5mc2c</guid></item><item><link>https://bsky.app/profile/littlefair.ca/post/3mrxif6cukc2x</link><description>I did some portraits of my sister with her best friend and her dog on @harmanphoto.co.uk&#39;s new film, Phoenix II, and wow this film has beautiful texture. These are completely unedited. &#xA;&#xA;Shot on an inexpensive Canon EOS 35mm camera with an EF 50mm 1.4 lens and developed by Gulabi in Glasgow.</description><pubDate>31 Jul 2026 17:33 +0000</pubDate><guid isPermaLink="false">at://did:plc:7a4dbiurb44vggsynafivdpd/app.bsky.feed.post/3mrxif6cukc2x</guid></item><item><link>https://bsky.app/profile/littlefair.ca/post/3mrrvbklq2k22</link><description>Someday, everyone will be watching 2:1 videos on vertical TVs having forgotten how the aspect ratio is a strange artifact of the distance from your ear to your mouth relative to the width of your hand.&#xA;&#xA;[contains quote post or other embedded content]</description><pubDate>29 Jul 2026 12:08 +0000</pubDate><guid isPermaLink="false">at://did:plc:7a4dbiurb44vggsynafivdpd/app.bsky.feed.post/3mrrvbklq2k22</guid></item><item><link>https://bsky.app/profile/littlefair.ca/post/3mrquevp4ys2m</link><description>Lately I&#39;ve been thinking more about the Atmosphere logo, and I think a kite could be a nice fit 🪁&#xA;&#xA;It says &#34;atmosphere&#34; and &#34;transfer.&#34; And if you add a key then it also says &#34;authentication&#34; with a classic reference to electricity, innovation, and (maybe most appropriate) lightning rods.</description><pubDate>29 Jul 2026 02:19 +0000</pubDate><guid isPermaLink="false">at://did:plc:7a4dbiurb44vggsynafivdpd/app.bsky.feed.post/3mrquevp4ys2m</guid></item><item><link>https://bsky.app/profile/littlefair.ca/post/3mrht4zqyu22r</link><description>Not to be that guy, but &#34;baguette&#34; is actually French for &#34;stick,&#34; so this pun is also just literally correct.&#xA;&#xA;[contains quote post or other embedded content]</description><pubDate>25 Jul 2026 12:03 +0000</pubDate><guid isPermaLink="false">at://did:plc:7a4dbiurb44vggsynafivdpd/app.bsky.feed.post/3mrht4zqyu22r</guid></item><item><link>https://bsky.app/profile/littlefair.ca/post/3mrazli5gt22a</link><description>It seems a little wild that we obsess over JavaScript frameworks with &#34;client-side rendering&#34; when we get so much of that for free with CSS.</description><pubDate>22 Jul 2026 19:10 +0000</pubDate><guid isPermaLink="false">at://did:plc:7a4dbiurb44vggsynafivdpd/app.bsky.feed.post/3mrazli5gt22a</guid></item><item><link>https://bsky.app/profile/littlefair.ca/post/3mqkptejzds2n</link><description>Bonus: You can now add captions to images!&#xA;&#xA;[contains quote post or other embedded content]</description><pubDate>13 Jul 2026 22:16 +0000</pubDate><guid isPermaLink="false">at://did:plc:7a4dbiurb44vggsynafivdpd/app.bsky.feed.post/3mqkptejzds2n</guid></item><item><link>https://bsky.app/profile/littlefair.ca/post/3mqko3umzys24</link><description>Vowel will now create resized versions of all of your images in WebP and AVIF and generate an optimized &lt;picture&gt; element to display them. Just add a full-res image to your project and link it with normal markdown.&#xA;&#xA;It even works for popular image CDNs! (Thank you Unpic / @mk.gg)</description><pubDate>13 Jul 2026 21:45 +0000</pubDate><guid isPermaLink="false">at://did:plc:7a4dbiurb44vggsynafivdpd/app.bsky.feed.post/3mqko3umzys24</guid></item><item><link>https://bsky.app/profile/littlefair.ca/post/3mq6ndwhtms25</link><description>I was just taking to my sister about ET and she said, “I think the only thing I remember is that they try to kill him with hammers?”</description><pubDate>09 Jul 2026 03:00 +0000</pubDate><guid isPermaLink="false">at://did:plc:7a4dbiurb44vggsynafivdpd/app.bsky.feed.post/3mq6ndwhtms25</guid></item><item><link>https://bsky.app/profile/littlefair.ca/post/3mq2maoizvs2q</link><description>After decades, the internet community has revolutionized web development by allowing developers to… get with a body?&#xA;&#xA;[contains quote post or other embedded content]</description><pubDate>07 Jul 2026 12:30 +0000</pubDate><guid isPermaLink="false">at://did:plc:7a4dbiurb44vggsynafivdpd/app.bsky.feed.post/3mq2maoizvs2q</guid></item><item><link>https://bsky.app/profile/littlefair.ca/post/3mpyonqifpk2r</link><description>My favorite quality-of-life improvement is ruthlessly unsubscribing from feckless emails and notifications. Oh, “So-and-so is playing whizzbang”, LinkedIn? Silence. You will speak when spoken to.&#xA;&#xA;[contains quote post or other embedded content]</description><pubDate>06 Jul 2026 18:07 +0000</pubDate><guid isPermaLink="false">at://did:plc:7a4dbiurb44vggsynafivdpd/app.bsky.feed.post/3mpyonqifpk2r</guid></item><item><link>https://bsky.app/profile/littlefair.ca/post/3mpudph2ty22l</link><description>This is a PSA in case anyone tells you that you “need to meditate.” You do not.&#xA;&#xA;Feel free to give it a try. If you like it, keep it going. If not, don’t sweat it. Lots of other things have a similar effect. Sports. Art. Nature. Cooking. Hugs. &#xA;&#xA;Find what works for you.</description><pubDate>05 Jul 2026 00:41 +0000</pubDate><guid isPermaLink="false">at://did:plc:7a4dbiurb44vggsynafivdpd/app.bsky.feed.post/3mpudph2ty22l</guid></item><item><link>https://bsky.app/profile/littlefair.ca/post/3mprf27nqm22a</link><description>We do love seeing The Telegraph posting on Bluesky about how posting on Bluesky is pathetic, though, right?&#xA;&#xA;[contains quote post or other embedded content]</description><pubDate>03 Jul 2026 20:27 +0000</pubDate><guid isPermaLink="false">at://did:plc:7a4dbiurb44vggsynafivdpd/app.bsky.feed.post/3mprf27nqm22a</guid></item><item><link>https://bsky.app/profile/littlefair.ca/post/3mpo2bw56a222</link><description>Vowel now has tagging.</description><pubDate>02 Jul 2026 12:36 +0000</pubDate><guid isPermaLink="false">at://did:plc:7a4dbiurb44vggsynafivdpd/app.bsky.feed.post/3mpo2bw56a222</guid></item></channel></rss>