<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0" xmlns:cc="http://cyber.law.harvard.edu/rss/creativeCommonsRssModule.html">
    <channel>
        <title><![CDATA[Stories by Jeremy Keith on Medium]]></title>
        <description><![CDATA[Stories by Jeremy Keith on Medium]]></description>
        <link>https://medium.com/@adactio?source=rss-5271293d8452------2</link>
        <image>
            <url>https://cdn-images-1.medium.com/fit/c/150/150/1*wzeV9TDhUvzB5jQreQKvpg.jpeg</url>
            <title>Stories by Jeremy Keith on Medium</title>
            <link>https://medium.com/@adactio?source=rss-5271293d8452------2</link>
        </image>
        <generator>Medium</generator>
        <lastBuildDate>Wed, 06 May 2026 10:41:37 GMT</lastBuildDate>
        <atom:link href="https://medium.com/@adactio/feed" rel="self" type="application/rss+xml"/>
        <webMaster><![CDATA[yourfriends@medium.com]]></webMaster>
        <atom:link href="http://medium.superfeedr.com" rel="hub"/>
        <item>
            <title><![CDATA[Early-bird tickets for UX London]]></title>
            <link>https://adactio.medium.com/early-bird-tickets-for-ux-london-084b72583e36?source=rss-5271293d8452------2</link>
            <guid isPermaLink="false">https://medium.com/p/084b72583e36</guid>
            <category><![CDATA[ux]]></category>
            <category><![CDATA[design]]></category>
            <category><![CDATA[ux-design]]></category>
            <category><![CDATA[conference]]></category>
            <category><![CDATA[london]]></category>
            <dc:creator><![CDATA[Jeremy Keith]]></dc:creator>
            <pubDate>Thu, 19 Mar 2026 15:19:21 GMT</pubDate>
            <atom:updated>2026-03-19T15:19:21.398Z</atom:updated>
            <content:encoded><![CDATA[<figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*uoeZcpxHLsgzGN7tlkMWFw.png" /></figure><p><em>This was originally published </em><a href="https://adactio.com/journal/22477"><em>on my own site</em></a><em>, which is awesome.</em></p><p>You should <a href="https://2026.uxlondon.com/">come to UX London</a> in the first week of June. Why? Because it’s going to be awesome, that’s why!</p><p>You probably knew that already. You probably already decided to get a ticket because you’re smart like that.</p><p>But don’t dilly-dally! <a href="https://2026.uxlondon.com/tickets/">Early-bird tickets are available now</a> but in just over one week, they won’t be.</p><p>So get your ticket by Friday, March 27th. If you get your ticket now, it’s a win for everyone. You get a cheaper ticket. We know for sure that you’re coming.</p><p>Every time someone buys a conference ticket in plenty of time, the conference organiser sleeps a little better at night.</p><p>If you need to convince your boss, you can give them these <a href="https://2026.uxlondon.com/reasons-to-attend/">reasons to attend</a>. I even made <a href="https://2026.uxlondon.com/reasons-to-attend/#convinceyourboss">an email template</a> you can use a starting point for making the case.</p><p>You could come for all three days of UX London, or you can pick just one day.</p><p>Tuesday, June 2nd is <strong>discovery day</strong> with a focus on user research. You’ll hear from great speakers like <a href="https://2026.uxlondon.com/speakers/melin-edomwonyi/">Melin Edomwonyi</a> and <a href="https://2026.uxlondon.com/speakers/maria-isachenko/">Maria Isachenko</a> as well as getting workshops from <a href="https://2026.uxlondon.com/speakers/natasha-den-dekker/">Natasha den Dekker</a> and <a href="https://2026.uxlondon.com/speakers/feyikemi-akinwolemiwa/">Feyikemi Akinwolemiwa</a>.</p><p>Wednesday, June 3rd is <strong>design day</strong> where it’s all about the nitty-gritty details. Not only will there be great talks from <a href="https://2026.uxlondon.com/speakers/andrea-grigsby/">Andrea Grigsby</a>, <a href="https://2026.uxlondon.com/speakers/julia-petretta/">Julia Petretta</a>, and <a href="https://2026.uxlondon.com/speakers/hidde-de-vries/">Hidde de Vries</a>, there’s going to be the best-named workshop ever from my colleague <a href="https://2026.uxlondon.com/speakers/chris-how/">Chris How</a>: Yippee IA!</p><p>Thursday, June 4th is <strong>delivery</strong> with a focus on design systems and collaboration. <a href="https://2026.uxlondon.com/speakers/alex-edwards/">Alex Edwards</a>, <a href="https://2026.uxlondon.com/speakers/lucy-blackwell/">Lucy Blackwell</a>, <a href="https://2026.uxlondon.com/speakers/rachel-ilan-simpson/">Rachel Ilan Simpson</a> and <a href="https://2026.uxlondon.com/speakers/ben-callahan/">Ben Callahan</a> will all be giving talks (and Ben’s doing a workshop too).</p><p>That’s not even close to the final line-up. I’m confirming more speakers right now and getting very, very excited about how it’s all shaping up.</p><p>You know you don’t want to miss this one. So <a href="https://2026.uxlondon.com/tickets/">get your early-bird ticket now</a> while you still can.</p><p><em>This was originally published </em><a href="https://adactio.com/journal/22477"><em>on my own site</em></a><em>, which is awesome.</em></p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=084b72583e36" width="1" height="1" alt="">]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Why use React?]]></title>
            <link>https://adactio.medium.com/why-use-react-8ccd2ab4fea7?source=rss-5271293d8452------2</link>
            <guid isPermaLink="false">https://medium.com/p/8ccd2ab4fea7</guid>
            <category><![CDATA[javascript]]></category>
            <category><![CDATA[react]]></category>
            <category><![CDATA[front-end-development]]></category>
            <category><![CDATA[javascript-frameworks]]></category>
            <dc:creator><![CDATA[Jeremy Keith]]></dc:creator>
            <pubDate>Wed, 26 Nov 2025 16:32:37 GMT</pubDate>
            <atom:updated>2025-11-26T16:32:37.568Z</atom:updated>
            <content:encoded><![CDATA[<p><em>This was originally published </em><a href="https://adactio.com/journal/22265"><em>on my own site</em></a><em>, which is awesome.</em></p><p>This isn’t a rhetorical question. I genuinely want to know why developers choose to build websites using React.</p><p>There are many possible reasons. Alas, none of them relate directly to user experience, other than a trickle-down justification: happy productive developers will make better websites. Citation needed.</p><p>It’s also worth mentioning that some people don’t <em>choose</em> to use React, but its use is mandated by their workplace (like some other more recent technologies I could mention). By my definition, this makes React enterprise software in this situation. My definition of enterprise software is any software that you use but that you yourself didn’t choose.</p><h3>Inertia</h3><p>By far the most common reason for choosing React today is inertia. If it’s what you’re comfortable with, you’d need a really compelling reason <em>not</em> to use it. That’s generally the reason behind usage mandates too. If we “standardise” on React, then it’ll make hiring more straightforward (though the reality isn’t quite so simple, as the React ecosystem has mutated and bifurcated over time).</p><p>And you know what? Inertia is a perfectly valid reason to choose a technology. If time is of the essence, and you know it’s going to take you time to learn a new technology, it makes sense to stick with what you know, even if it’s out of date. This isn’t just true of React, it’s true of any tech stack.</p><p>This would all be absolutely fine if React weren’t a framework that gets executed in browsers. Any client-side framework is a tax on the end user. They have to download, parse, and execute the framework in order for you to benefit.</p><p>But maybe React doesn’t need to run in the browser at all. That’s the promise of server-side rendering.</p><h3>The front end</h3><p>There used to be a fairly clear distinction between front-end development and back-end development. The front end consisted of HTML, CSS, and client-side JavaScript. The back end was anything you wanted as long as it could spit out those bits of the front end: PHP, Ruby, Python, or even just a plain web server with static files.</p><p>Then it became possible to write JavaScript on the back end. Great! Now you didn’t need to context-switch when you were scripting for the client or the server. But this blessing also turned out to be a bit of a curse.</p><p>When you’re writing code for the back end, some things matter more than others. File size, for example, isn’t really a concern. Your code can get really long and it probably won’t slow down the execution. And if it does, you can always buy your way out of the problem by getting a more powerful server.</p><p>On the front end, your code should have different priorities. File size matters, especially with JavaScript. The code won’t be executed on your server. It’s executed on all sorts of devices on all sorts of networks running all sorts of browsers. If things get slow, you can’t buy your way out of the problem because you can’t buy every single one of your users a new device and a new network plan.</p><p>Now that JavaScript can run on the server as well as the client, it’s tempting to just treat the code the same. It’s the same language after all. But the context really matters. Some JavaScript that’s perfectly fine to run on the server can be a resource hog on the client.</p><p>And this is where it gets interesting with React. Because most of the things people like about React still apply on the back end.</p><h3>React developers</h3><p>When React first appeared, it was touted as front-end tool. State management and a near-magical virtual DOM were the main selling points.</p><p>Over time, that’s changed. The claimed speed benefits of the virtual DOM turned out to be just plain false. That just left state management.</p><p>But by that time, the selling points had changed. The component-based architecture turned out to be really popular. Developers liked JSX. A lot. Once you got used to it, it was a neat way to encapsulate little bits of functionality into building blocks that can be combined in all sorts of ways.</p><p>For the longest time, I didn’t realise this had happened. I was still thinking of React as being a framework like jQuery. But React is a framework like Rails or Django. As a developer, it’s where you do all your work. Heck, it’s pretty much your identity.</p><p>But whereas Rails or Django run on the back end, React runs on the front end …except when it doesn’t.</p><p>JavaScript can run on the server, which means React can run on the server. It’s entirely possible to have your React cake and eat it. You can write all of your code in React without serving up a single line of React to your users.</p><p>That’s true in theory. The devil is in the tooling.</p><h3>Priorities</h3><p>Next.js allows you to write in React and do server-side rendering. But it really, really wants to output React to the client as well.</p><p>By default, you get the dreaded hydration pattern — do all the computing on the server in JavaScript (yay!), serve up HTML straight away (yay! yay!) …and then serve up all the same JavaScript that’s on the server anyway (ya — wait, what?).</p><p>It’s possible to get Next.js to skip that last step, but it’s not easy. You’ll be battling it every step of the way.</p><p><a href="https://astro.build/">Astro</a> takes a very different approach. It will do everything it can to keep the client-side JavaScript to a minimum. Developers get to keep their beloved JSX authoring environment without penalising users.</p><p>Alas, the collective inertia of the “modern” development community is bound up in the React/Next/Vercel ecosystem. That’s a shame, because Astro shows us that it doesn’t have to be this way.</p><p>Switching away from using React on the front end doesn’t mean you have to switch away from using React on the back end.</p><h3>Why use React?</h3><p>The titular question I asked is too broad and naïve. There are plenty of reasons to use React, just as there are plenty of reasons to use Wordpress, Eleventy, or any other technology that works on the back end. If it’s what you like or what you’re comfortable with, that’s reason enough.</p><p>All I really care about is the front end. I’m not going to pass judgment on anyone’s choice of server-side framework, as long as it doesn’t impact what you can do in the client. <a href="https://csswizardry.com/2025/01/build-for-the-web-build-on-the-web-build-with-the-web/">Like Harry says</a>:</p><blockquote><em>…if you’re going to use one, I shouldn’t be able to smell it.</em></blockquote><p>Here’s the question I should be asking:</p><p>Why use React <em>in the browser</em>?</p><p>Because if the reason you’re using React is cultural — the whole team works in JSX, it makes hiring easier — then there’s probably no need to make your users download React.</p><p>If you’re making a single-page app, then …well, the first thing you should do is ask yourself if it really needs to be a single-page app. They should be the exception, not the default. But if you’re determined to make a single-page app, then I can see why state management becomes very important.</p><p>In that situation, try shipping <a href="https://preactjs.com/">Preact</a> instead of React. As a developer, you’ll almost certainly notice no difference, but your users will appreciate the refreshing lack of bloat.</p><p>Mostly though, I’d encourage you to investigate <a href="https://gomakethings.com/a-lot-of-what-people-use-react-for-would-be-better-handled-with-vanilla-javascript/">what you can do with vanilla JavaScript in the browser</a>. I totally get why you’d want to hold on to React as an authoring environment, but <a href="https://adactio.com/journal/22235">don’t let your framework limit what you can do on the front end</a>. If you use React on the client, you’re not doing your users any favours.</p><p>You can continue to write in React. You can continue to use JSX. You can continue to hire React developers. But keep it on your machine. For your users, make the most of what web browsers can do.</p><p>Once you keep React on the server, then a whole world of possibilities opens up on the client. Web browsers have become incredibly powerful in what they offer you. Don’t let React-on-the-client hold you back.</p><p>And if you want to know more about what web browsers are capable of today, come to <a href="https://webdayout.com/">Web Day Out</a> in Brighton on Thursday, 12th March 2026.</p><p><em>This was originally published </em><a href="https://adactio.com/journal/22265"><em>on my own site</em></a><em>, which is awesome.</em></p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=8ccd2ab4fea7" width="1" height="1" alt="">]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Manuel Matuzovič is speaking at Web Day Out]]></title>
            <link>https://adactio.medium.com/manuel-matuzovi%C4%8D-is-speaking-at-web-day-out-8124c740feaf?source=rss-5271293d8452------2</link>
            <guid isPermaLink="false">https://medium.com/p/8124c740feaf</guid>
            <category><![CDATA[css]]></category>
            <category><![CDATA[events]]></category>
            <category><![CDATA[conference]]></category>
            <category><![CDATA[brighton]]></category>
            <category><![CDATA[front-end-development]]></category>
            <dc:creator><![CDATA[Jeremy Keith]]></dc:creator>
            <pubDate>Thu, 20 Nov 2025 15:09:41 GMT</pubDate>
            <atom:updated>2025-11-20T15:09:41.450Z</atom:updated>
            <content:encoded><![CDATA[<figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*Cqn3lwkhh5xT0gWHvj8-dA.png" /></figure><p><em>This was originally published </em><a href="https://adactio.com/journal/22261"><em>on my own site</em></a><em>, which is awesome.</em></p><p>The line-up for <a href="https://webdayout.com/">Web Day Out</a> is now complete! The final speaker to be added to the line-up is the one and only <a href="https://matuzo.at/">Manuel Matuzovič</a>.</p><p>You may know Manuel from his superb <a href="https://accessibility-cookbook.com/">Web Accessibility Cookbook</a> (full disclosure: I had the honour of writing <a href="https://adactio.com/articles/21876">the foreword</a> to that book). Or perhaps you’re familiar with the crimes against markup that he documents at <a href="https://htmhell.dev/">HTMHell</a>. But at Web Day Out, he’s going to be talking about CSS.</p><p>The past few years have seen a veritable explosion in CSS capabilities. It’s one thing to hear about all the new stuff in CSS, but how do you actually start using it?</p><p>You may need to unlearn what you have previously learned. That’s what <a href="https://webdayout.com/manuel-matuzovic/#talk">Manuel’s talk</a> will be covering:</p><blockquote><em>Manuel built a new project from scratch with modern CSS and questioned every line of code he wrote.In this talk, he presents what he has learned and encourages you to review your best practices.</em></blockquote><p>You can see why I’m so excited about this — it’s <em>perfect</em> for <a href="https://webdayout.com/agenda/">the agenda of Web Day Out</a>:</p><blockquote><em>Do you feel like you’re missing out on some of the latest advances in HTML, CSS, and JavaScript APIs? Web Day Out is your chance to get up to speed on what matters.</em></blockquote><p>There’ll be eight brilliant speakers for your entertainment:</p><ol><li><a href="https://webdayout.com/jemima-abu/">Jemima Abu</a></li><li><a href="https://webdayout.com/rachel-andrew/">Rachel Andrew</a></li><li><a href="https://webdayout.com/jake-archibald/">Jake Archibald</a></li><li><a href="https://webdayout.com/aleth-gueguen/">Aleth Gueguen</a></li><li><a href="https://webdayout.com/manuel-matuzovic/">Manuel Matuzovič</a></li><li><a href="https://webdayout.com/lola-odelola/">Lola Odelola</a></li><li><a href="https://webdayout.com/harry-roberts/">Harry Roberts</a></li><li><a href="https://webdayout.com/richard-rutter/">Richard Rutter</a></li></ol><p>You won’t want to miss this, so <a href="https://ti.to/clearleft/web-day-out">get your ticket now</a> for the ludicrously reasonable price of just £225+VAT!</p><p>See you in Brighton on 12 March 2026!</p><p><em>This was originally published </em><a href="https://adactio.com/journal/22261"><em>on my own site</em></a><em>, which is awesome.</em></p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=8124c740feaf" width="1" height="1" alt="">]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Jake Archibald is speaking at Web Day Out]]></title>
            <link>https://adactio.medium.com/jake-archibald-is-speaking-at-web-day-out-7647e468ec31?source=rss-5271293d8452------2</link>
            <guid isPermaLink="false">https://medium.com/p/7647e468ec31</guid>
            <category><![CDATA[web-development]]></category>
            <category><![CDATA[web-standards]]></category>
            <category><![CDATA[conference]]></category>
            <category><![CDATA[front-end-development]]></category>
            <category><![CDATA[events]]></category>
            <dc:creator><![CDATA[Jeremy Keith]]></dc:creator>
            <pubDate>Tue, 21 Oct 2025 15:28:44 GMT</pubDate>
            <atom:updated>2025-10-21T15:28:44.464Z</atom:updated>
            <content:encoded><![CDATA[<figure><img alt="" src="https://cdn-images-1.medium.com/max/759/1*wqOuHwlQfH8w4FgQQtluUQ.png" /></figure><p><em>This was originally published </em><a href="https://adactio.com/journal/22205"><em>on my own site</em></a><em>, which is awesome.</em></p><p>I’m very happy to announce that the one and only <a href="https://jakearchibald.com/">Jake Jaffa-The-Cake Archibald</a> will be speaking at <a href="https://webdayout.com/">Web Day Out</a>!</p><p>Given <a href="https://webdayout.com/agenda/">the agenda</a> for this event, I think you’ll agree that Jake is a perfect fit. He’s been at the forefront of championing user-centred web standards, writing specs and shipping features in browsers.</p><p>Along the way he’s also created two valuable performance tools that I use all the time: <a href="https://jakearchibald.github.io/svgomg/">SVGOMG</a> and <a href="https://squoosh.app/">Squoosh</a>, which has a permanent place in my dock — if you need to compress images, I highly recommend adding this progressive web app to your desktop.</p><p>He’s the man behind <a href="https://goingoffline.adactio.com/">service workers</a> and view transitions — two of the most important features for making websites first-class citizens on any device.</p><p>So what will he talk about at Web Day Out? Image formats? Offline functionality? Smooth animations? Something else entirely?</p><p>All will be revealed soon. In the meantime, <a href="https://ti.to/clearleft/web-day-out">grab yourself a ticket to Web Day Out</a> — it’s just £225+VAT — and I’ll see you in Brighton on Thursday, 12 March 2026!</p><p><em>This was originally published </em><a href="https://adactio.com/journal/22205"><em>on my own site</em></a><em>, which is awesome.</em></p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=7647e468ec31" width="1" height="1" alt="">]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Harry Roberts is speaking at Web Day Out]]></title>
            <link>https://adactio.medium.com/harry-roberts-is-speaking-at-web-day-out-ca902634d5e9?source=rss-5271293d8452------2</link>
            <guid isPermaLink="false">https://medium.com/p/ca902634d5e9</guid>
            <category><![CDATA[conference]]></category>
            <category><![CDATA[web-platform]]></category>
            <category><![CDATA[web-performance]]></category>
            <category><![CDATA[front-end-development]]></category>
            <category><![CDATA[events]]></category>
            <dc:creator><![CDATA[Jeremy Keith]]></dc:creator>
            <pubDate>Wed, 17 Sep 2025 14:08:44 GMT</pubDate>
            <atom:updated>2025-09-17T14:08:44.971Z</atom:updated>
            <content:encoded><![CDATA[<figure><img alt="" src="https://cdn-images-1.medium.com/max/945/1*WA0lz25ImgFEKnW_1RmO4g.png" /></figure><p><em>This was originally published </em><a href="https://adactio.com/journal/22135"><em>on my own site</em></a><em>, which is awesome.</em></p><p>I was going to save this announcement for later, but I’m just too excited: <a href="https://csswizardry.com/">Harry Roberts</a> will be speaking at <a href="https://webdayout.com/">Web Day Out</a>!</p><p>Goddamn, that’s one fine line-up, and it isn’t even complete yet! <a href="https://ti.to/clearleft/web-day-out">Get your ticket</a> if you haven’t already.</p><p>There’s a bit of a story behind the talk that Harry is going to give…</p><p>Earlier this year, Harry posted a most excellent screed in which he said:</p><blockquote><em>The web as a platform is a safe bet. It’s un-versioned </em>by design<em>. That’s the commitment the web makes to you — take advantage of it.</em></blockquote><blockquote><em>Opt into web platform features incrementally;</em></blockquote><blockquote><em>Embrace progressive enhancement to build fast, reliable applications that adapt to your customers’ context;</em></blockquote><blockquote><em>Write code that leans into the browser, not away from it.</em></blockquote><p>Yes! Exactly!</p><p>Thing is, Harry <a href="https://www.linkedin.com/feed/update/urn:li:activity:7287827600968699904/">posted this on LinkedIn</a>. My indieweb sensibilities were affronted. So I harangued him:</p><blockquote><em>You should blog this, Harry</em></blockquote><p>My pestering paid off with an excellent blog post on Harry’s own site called <a href="https://csswizardry.com/2025/01/build-for-the-web-build-on-the-web-build-with-the-web/">Build for the Web, Build on the Web, Build with the Web</a>:</p><blockquote><em>The beauty of opting into web platform features as they become available is that your site becomes </em>contextual<em>. The same codebase adapts into its environment, playing to its strengths, rather than trying to build and ship your own environment from the ground up. Meet your users where they are.</em></blockquote><p>That’s a pretty neat summation of <a href="https://webdayout.com/agenda/">the agenda for Web Day Out</a>. So I thought, “Hmm …if I was able to pester Harry to turn a LinkedIn post into a really good blog post, I wonder if I could pester him to turn that blog post into a talk?”</p><p>I threw down the gauntlet. Harry accepted the challenge.</p><p>I’m sure you’re already familiar with Harry’s excellent work, but if you’re not, he’s basically Mr. Web Performance. That’s why I’m so excited to have him speak at <a href="https://webdayout.com/">Web Day Out</a> — I want to hear the business case for leaning into what web browsers can do today, and he is most certainly the best person to bring receipts.</p><p>You won’t want to miss this, so be sure to <a href="https://ti.to/clearleft/web-day-out">get your ticket now</a>; it’s only £225+VAT.</p><p>If you’re not ready to commit just yet, but you want to hear about more speaker announcements like this, you can <a href="https://clearleft.us1.list-manage.com/subscribe?u=262832f6c05900ce22e8b14b6&amp;id=f16deb1f89">sign up to the mailing list</a>.</p><p><em>This was originally published </em><a href="https://adactio.com/journal/22135"><em>on my own site</em></a><em>, which is awesome.</em></p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=ca902634d5e9" width="1" height="1" alt="">]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Announcing Web Day Out]]></title>
            <link>https://adactio.medium.com/announcing-web-day-out-d54463735402?source=rss-5271293d8452------2</link>
            <guid isPermaLink="false">https://medium.com/p/d54463735402</guid>
            <category><![CDATA[web-standards]]></category>
            <category><![CDATA[events]]></category>
            <category><![CDATA[web-development]]></category>
            <category><![CDATA[frontend-development]]></category>
            <category><![CDATA[conference]]></category>
            <dc:creator><![CDATA[Jeremy Keith]]></dc:creator>
            <pubDate>Tue, 02 Sep 2025 13:35:53 GMT</pubDate>
            <atom:updated>2025-09-02T13:35:53.925Z</atom:updated>
            <content:encoded><![CDATA[<p><em>This was originally published </em><a href="https://adactio.com/journal/22106"><em>on my own site</em></a><em>, which is awesome.</em></p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*_2RqS5fK9Jju5UgzeEWR9w.png" /></figure><p>I’m going to cut right to the chase: <a href="https://clearleft.com/">Clearleft</a> is putting on a brand new conference in 2026. It’s called <a href="https://webdayout.com/">Web Day Out</a>. It’ll be on Thursday, March 12th right here in Brighton. <a href="https://ti.to/clearleft/web-day-out">Tickets are just £225+VAT</a>. You should be there!</p><p>If you’ve ever been to <a href="https://responsivedayout.com/">Responsive Day Out</a> or <a href="https://patternsday.com/">Patterns Day</a>, the format will be familiar to you. There’s going to be eight 30 minute talks. Bam! Bam! Bam!</p><p>Like those other one-day conferences, this one has a laser-sharp focus.</p><p><a href="https://webdayout.com/">Web Day Out</a> is all about what you can do in web browsers today. You can expect talks that showcase hands-on practical uses for the latest advances in HTML, CSS, and JavaScript APIs. There will be no talks about libraries, frameworks or build tools, and I can guarantee there will be absolutely no so-called “AI”.</p><p>As you might have gathered, <a href="https://webdayout.com/agenda/">this is an opinionated conference</a>.</p><p>If you care about performance, accessibility, and progressive enhancement, <a href="https://webdayout.com">Web Day Out</a> is the event for you.</p><p>Or if you’ve been living in React-land but starting to feel that maybe you’re missing out on what’s been shipping in web browsers, <a href="https://webdayout.com">Web Day Out</a> is the event for you too. And I’m not talking about cute demos here. This is very much about shipping to production.</p><p>I’ve got half of the line-up assembled already:</p><ul><li><a href="https://www.jemimaabu.com/">Jemima Abu</a>,</li><li><a href="https://rachelandrew.co.uk/">Rachel Andrew</a>,</li><li><a href="https://lolaslab.co/">Lola Odelola</a>, and</li><li><a href="https://clagnut.com/">Richard Rutter</a>.</li></ul><p><a href="https://webdayout.com/jemima-abu/#talk">Jemima’s talk</a> gives you a flavour of what to expect at Web Day Out:</p><blockquote><em>In this talk, we’ll take a look at how to use HTML and CSS to build simpler alternatives to popular JavaScript components such as accordions, modals, scroll transitions, carousels etc We’ll also take a look at the performance and accessibility benefits and real-life applications and use-cases of these components.</em></blockquote><p>Web Day Out will be in <a href="https://webdayout.com/venue/">The Studio Theatre</a> of the Brighton Dome, which is a fantastic intimate venue. That means that places are limited, so <a href="https://ti.to/clearleft/web-day-out">get your ticket now</a>!</p><p><em>This was originally published </em><a href="https://adactio.com/journal/22106"><em>on my own site</em></a><em>, which is awesome.</em></p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=d54463735402" width="1" height="1" alt="">]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Progressive web apps]]></title>
            <link>https://adactio.medium.com/progressive-web-apps-f8907da6223b?source=rss-5271293d8452------2</link>
            <guid isPermaLink="false">https://medium.com/p/f8907da6223b</guid>
            <category><![CDATA[web-apps]]></category>
            <category><![CDATA[progressive-web-app]]></category>
            <category><![CDATA[mobile]]></category>
            <category><![CDATA[web-development]]></category>
            <dc:creator><![CDATA[Jeremy Keith]]></dc:creator>
            <pubDate>Thu, 07 Aug 2025 13:19:39 GMT</pubDate>
            <atom:updated>2025-08-07T13:19:39.261Z</atom:updated>
            <content:encoded><![CDATA[<p><em>This was originally published </em><a href="https://adactio.com/journal/22074"><em>on my own site</em></a><em>, which is awesome.</em></p><p>There was a time when you needed to make a native app in order to take advantage of specific technologies. That time has passed.</p><p>Now you can do all of these things on the web:</p><ul><li>push notifications,</li><li>offline storage,</li><li>camera access,</li><li>and more.</li></ul><p>Take a look at the home screen on your phone. Looking at the apps you’ve downloaded from an app store, ask yourself how many of them could’ve been web apps.</p><p>Social media apps, airline apps, shopping apps …none of them are using technologies that aren’t widely available on the web.</p><p>“But”, you might be thinking, “it feels different having a nice icon on my homescreen that launches a standalone app compared to navigating to a bookmark in my web browser.”</p><p>I agree! And you can do that with a web app. All it takes the addition of one <a href="https://developer.mozilla.org/en-US/docs/Web/Progressive_web_apps/Manifest">manifest file</a> that lists which icons and colours to use.</p><p>If that file exists for a website, then once the user adds the website to their homescreen it will behave just like native app.</p><p>Try it for yourself. Go to <a href="https://www.instagram.com/">instagram.com</a> in your mobile browser and it to your homescreen (on the iPhone, you get to the “add to home screen” option from the sharing icon — scroll down the list of options to find it).</p><p>See how it’s now an icon on your home screen just like all your other apps? Tap that icon to see how it launches just like a native app with no browser chrome around it.</p><p>This doesn’t just work on mobile. Desktop browsers like Chrome, Edge, and Safari also allow you to install web apps straight from the browser and into your dock.</p><p>About half of the icons in my dock are actually web apps and I honestly can’t tell which is which. Mastodon, Instagram, Google Calendar, Google Docs …I’m sure most of those services are available as downloadable desktop apps, but why would I bother doing that when I get exactly the same experience by adding the sites to my dock?</p><p>From a business perspective, it makes so much sense to build a web app (or simply turn your existing website into a web app with the addition of a manifest file). No need for separate iOS or Android developer teams. No need to play the waiting game with updates to your app in the app store — on the web, updates are instant.</p><p>You can even use an impressive-sounding marketing term for this approach: <a href="https://web.dev/learn/pwa/progressive-web-apps/">progressive web apps</a>:</p><blockquote><em>A Progressive Web App (PWA) is a web app that uses progressive enhancement to provide users with a more reliable experience, uses new capabilities to provide a more integrated experience, and can be installed. And, because it’s a web app, it can reach anyone, anywhere, on any device, all with a single codebase. Once installed, a PWA looks like any other app, specifically:</em></blockquote><blockquote>It has an icon on the home screen, app launcher, launchpad, or start menu.</blockquote><blockquote>It appears when you search for apps on the device.</blockquote><blockquote>It opens in a standalone window, wholly separated from a browser’s user interface.</blockquote><blockquote>It has access to higher levels of integration with the OS, for example, URL handling or title bar customization.</blockquote><blockquote>It works offline.</blockquote><p>But there’s still one thing that native apps do better than the web. If you want to be able to monitor and track users to an invasive degree, the web can’t compete with the capabilities of native apps. That’s why you’ll see so many websites on your mobile device that implore to install their app from the app store.</p><p>If that’s not a priority for you, then you can differentiate yourself from your competitors by offering your users a progressive web app. Instead of having links to Apple and Google’s app stores, you can link to <a href="https://thesession.org/app">a page on your own site with installation instructions</a>.</p><p>I can guarantee you that users won’t be able to tell the difference between a native app they installed from an app store and a web app they’ve added to their home screen.</p><p><em>This was originally published </em><a href="https://adactio.com/journal/22074"><em>on my own site</em></a><em>, which is awesome.</em></p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=f8907da6223b" width="1" height="1" alt="">]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[The landing zone]]></title>
            <link>https://adactio.medium.com/the-landing-zone-5c3d545455d9?source=rss-5271293d8452------2</link>
            <guid isPermaLink="false">https://medium.com/p/5c3d545455d9</guid>
            <category><![CDATA[design]]></category>
            <category><![CDATA[language]]></category>
            <category><![CDATA[web-design]]></category>
            <category><![CDATA[metaphor]]></category>
            <dc:creator><![CDATA[Jeremy Keith]]></dc:creator>
            <pubDate>Thu, 22 May 2025 14:29:57 GMT</pubDate>
            <atom:updated>2025-05-22T14:29:57.699Z</atom:updated>
            <content:encoded><![CDATA[<figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*aTSZ0yRkg4lHlcVcwjpduw.png" /></figure><p><em>This was originally posted </em><a href="https://adactio.com/journal/21923"><em>on my own site</em></a><em>, which is awesome.</em></p><p>Also sprach Wittgenstein:</p><blockquote><em>Die Grenzen meiner Sprache bedeuten die Grenzen meiner Welt.</em></blockquote><p>Or in English, thus spoke Wittgenstein:</p><blockquote><em>The limits of my language mean the limits of my world.</em></blockquote><p>Language and thinking are intertwined. I’m not saying there’s anything to <a href="https://en.wikipedia.org/wiki/Linguistic_relativity">the strong form of the Sapir-Whorf hypothesis</a> but I think <a href="https://george-lakoff.com/">George Lakoff</a> is onto something when he talks about political language.</p><p>There’s literal political language like saying “tax relief” — framing taxation as something burdensome that needs to be relieved. But our everyday language has plenty of framing devices that might subconsciously influence our thinking.</p><p>When it comes to technology, our framing of new technologies often comes from previous technologies. As a listener to a show, you might find yourself being encouraged to “tune in again next week” when you may never have turned a radio dial in your entire life.</p><p>In the early days of the web we used a lot of language from print. John Allsopp wrote about this in his classic article <a href="https://alistapart.com/article/dao/">A Dao Of Web Design</a>:</p><blockquote><em>The web is a new medium, although it has emerged from the medium of printing, whose skills, design language and conventions strongly influence it. Yet it is often </em>too<em> shaped by that from which it sprang.</em></blockquote><p>One outdated piece of language on the web is a framing device in two senses: “above the fold”. It’s a conceptual framing device that comes straight from print where newspapers were literally folded in half. It’s a literal framing device that puts the important content at the top of the page.</p><p>But <a href="https://www.flickr.com/photos/adactio/535249433/">there is no fold</a>. We pretended that everyone’s screens were 640 by 480 pixels. Then we pretended that everyone’s screens were 800 by 600 pixels. But we never really knew. It was all a consensual hallucination. Even before mobile devices showed up <a href="https://thereisnopagefold.com/">there was never a single fold</a>.</p><p>Even if you <em>know</em> that there’s no literal page fold on the web, using the phrase “above the fold” is still insidiously unhelpful.</p><p>So what’s the alternative? Well, <a href="https://www.hustlersquad.net/">James</a> has what I think is an excellent framing:</p><p>The landing zone.</p><p>It’s the bit of the page where people first show up. It doesn’t have a defined boundary. The landing zone isn’t something separate to the rest of the page; the content landing zone merges into the rest of the content.</p><p>You don’t know where the landing zone ends, and that’s okay. It’s better than okay. It encourages you design in a way that still prioritises the most important content but without fooling yourself into thinking there’s some invisible boundary line.</p><p>Next time you’re discussing the design of a web page — whether it’s with a colleague or a client — try talking about the landing zone.</p><p><em>This was originally posted </em><a href="https://adactio.com/journal/21923"><em>on my own site</em></a><em>, which is awesome.</em></p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=5c3d545455d9" width="1" height="1" alt="">]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[The closing talks at UX London 2025]]></title>
            <link>https://adactio.medium.com/the-closing-talks-at-ux-london-2025-5abf9a89fa24?source=rss-5271293d8452------2</link>
            <guid isPermaLink="false">https://medium.com/p/5abf9a89fa24</guid>
            <category><![CDATA[conference]]></category>
            <category><![CDATA[uxlondon]]></category>
            <category><![CDATA[desig]]></category>
            <category><![CDATA[ux]]></category>
            <category><![CDATA[events]]></category>
            <dc:creator><![CDATA[Jeremy Keith]]></dc:creator>
            <pubDate>Thu, 08 May 2025 14:49:42 GMT</pubDate>
            <atom:updated>2025-05-08T14:49:42.388Z</atom:updated>
            <content:encoded><![CDATA[<figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*xyv2V1P7Lxw6nLjUBpMbOg.png" /></figure><p><em>This was originally posted </em><a href="https://adactio.com/journal/21897"><em>on my own site</em></a><em>, which is awesome.</em></p><p>It’s just over one month until <a href="https://2025.uxlondon.com/">UX London</a>. You should <a href="https://ti.to/clearleft/ux-london-2025">grab a ticket</a> if you haven’t already!</p><p>The format of UX London is quite special. While the focus of each day is different — <a href="https://2025.uxlondon.com/schedule/day-one/">discovery</a>, <a href="https://2025.uxlondon.com/schedule/day-two/">design</a>, and <a href="https://2025.uxlondon.com/schedule/day-three/">delivery</a> — each day unfolds like this…</p><p>There are four talks in the morning. You get your brain filled with ideas and learn from <a href="https://2025.uxlondon.com/speakers/">fantastic speakers</a>. It’s a single track — everyone’s getting the same shared experience.</p><p>Then after a lunch, you choose from one of four workshops. Whatever you choose, it’s going to be hands-on. You can leave your laptop at home.</p><p>A day of listening to talks could get exhausting. A workshop that lasts all day could be even more exhausting. But somehow by splitting the day between both activities, the energy level is just right!</p><p>That said, we don’t want the day to end with everyone spread across four different workshop rooms. That’s why there’s one final talk at the end of each day.</p><p>These closing talks are a bit different to the morning talks. Whereas the focus of the morning talks is on practical skills that you can apply straight away, the closing talks are an opportunity to sit back and have your mind expanded. They’ll be fun and thought-provoking.</p><p><a href="https://2025.uxlondon.com/speakers/paula-zuccotti/">Paula Zuccotti</a> is closing out day one with a talk about two of her projects: Every Thing We Touch and Future Archeology:</p><blockquote><em>This talk invites audiences to reconsider the meaning of the objects they encounter every day and reflect on what their possessions might reveal about who we are and what we value, both now and in the years to come.</em></blockquote><p><a href="https://2025.uxlondon.com/speakers/sarah-hyndman/">Sarah Hyndman</a> will wrap up day two with a fun interactive talk about your senses:</p><blockquote><em>Join a live expedition into our inner world to explore why we see, feel and remember.</em></blockquote><p>Finally, <a href="https://2025.uxlondon.com/speakers/rachel-coldicutt/">Rachel Coldicutt</a> is going to finish UX London with a rallying cry:</p><blockquote><em>Introducing the Society of Hopeful Technologists and discussing how, in modern technology development, your practice is probably more political than you realise.</em></blockquote><p>I can’t wait! <a href="https://ti.to/clearleft/ux-london-2025">Get yourself a ticket</a> for a day or for all three days.</p><p>And as a little thank you for tolerating my excitement, <a href="https://ti.to/clearleft/ux-london-2025/discount/JOINJEREMY">use the discount code JOINJEREMY to get 20% off your ticket</a>.</p><p><em>This was originally posted </em><a href="https://adactio.com/journal/21897"><em>on my own site</em></a><em>, which is awesome.</em></p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=5abf9a89fa24" width="1" height="1" alt="">]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[UX London flash sale]]></title>
            <link>https://adactio.medium.com/ux-london-flash-sale-83fe5888091d?source=rss-5271293d8452------2</link>
            <guid isPermaLink="false">https://medium.com/p/83fe5888091d</guid>
            <category><![CDATA[uxlondon]]></category>
            <category><![CDATA[ux]]></category>
            <category><![CDATA[conference]]></category>
            <category><![CDATA[events]]></category>
            <category><![CDATA[design]]></category>
            <dc:creator><![CDATA[Jeremy Keith]]></dc:creator>
            <pubDate>Tue, 29 Apr 2025 11:01:59 GMT</pubDate>
            <atom:updated>2025-04-29T11:01:59.934Z</atom:updated>
            <content:encoded><![CDATA[<figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*GDN6F7zpLgmz78nmn9VIRQ.jpeg" /></figure><p><em>This was originally posted </em><a href="https://adactio.com/journal/21879"><em>on my site</em></a><em>, which is awesome.</em></p><p>In exactly six weeks time, <a href="https://2025.uxlondon.com/">UX London</a> is happening!</p><p>I am ridiculously excited about <a href="https://2025.uxlondon.com/speakers/">this year’s line-up</a> — I can’t wait to see the talks and get hands-on in the workshops.</p><p>If you haven’t yet got your ticket, now is the time. There’s a flash sale this week: use the discount code FLASH20 to get <a href="https://ti.to/clearleft/ux-london-2025/discount/FLASH20">a whopping 20% of any ticket</a>. Do it before the end of Friday!</p><p>Whether you’re coming for all three days or choosing one focused day, you’re in for a treat.</p><ul><li><a href="https://2025.uxlondon.com/schedule/day-one/">Day one</a> on Tuesday, 10 June is <strong>discovery day</strong>.</li><li><a href="https://2025.uxlondon.com/schedule/day-two/">Day two</a> on Wednesday, 11 June is <strong>design day</strong>.</li><li><a href="https://2025.uxlondon.com/schedule/day-three/">Day three</a> on Thursday, 12 June is <strong>deliver day</strong>.</li></ul><p>Head on over to <a href="https://2025.uxlondon.com/">the website</a> to get all the details and then <a href="https://ti.to/clearleft/ux-london-2025/discount/FLASH20">get your discounted ticket</a>.</p><p>See you there!</p><p><em>This was originally posted </em><a href="https://adactio.com/journal/21879"><em>on my site</em></a><em>, which is awesome.</em></p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=83fe5888091d" width="1" height="1" alt="">]]></content:encoded>
        </item>
    </channel>
</rss>