<rss version="2.0" xmlns:content="http://purl.org/rss/1.0/modules/content/"><channel><title>Web Design on Smashing Magazine — For Web Designers And Developers</title><link>https://www.smashingmagazine.com/category/web-design/index.xml</link><description>Recent content in Web Design on Smashing Magazine — For Web Designers And Developers</description><generator>Hugo -- gohugo.io</generator><language>en-us</language><lastBuildDate>Mon, 09 Feb 2026 03:03:08 +0000</lastBuildDate><item><author>Amit Sheen</author><title>Rethinking “Pixel Perfect” Web Design</title><link>https://www.smashingmagazine.com/2026/01/rethinking-pixel-perfect-web-design/</link><pubDate>Tue, 20 Jan 2026 10:00:00 +0000</pubDate><guid>https://www.smashingmagazine.com/2026/01/rethinking-pixel-perfect-web-design/</guid><description>Amit Sheen takes a hard look at the “Pixel Perfect” legacy concept, explaining why it’s failing us and redefining what “perfection” actually looks like in a multi-device, fluid world.</description><content:encoded><![CDATA[
          <html>
            <head>
              <meta charset="utf-8">
              <link rel="canonical" href="https://www.smashingmagazine.com/2026/01/rethinking-pixel-perfect-web-design/" />
              <title>Rethinking “Pixel Perfect” Web Design</title>
            </head>
            <body>
              <article>
                <header>
                  <h1>Rethinking “Pixel Perfect” Web Design</h1>
                  
                    
                    <address>Amit Sheen</address>
                  
                  <time datetime="2026-01-20T10:00:00&#43;00:00" class="op-published">2026-01-20T10:00:00+00:00</time>
                  <time datetime="2026-01-20T10:00:00&#43;00:00" class="op-modified">2026-02-09T03:03:08+00:00</time>
                </header>
                
                

<p>It’s 2026. We are operating in an era of incredible technological leaps, where advanced tooling and AI-enhanced workflows have fundamentally transformed how we design, build, and bridge the gap between the two. The web is moving faster than ever, with groundbreaking features and standards emerging almost daily.</p>

<p>Yet, in the middle of this high-speed evolution, there’s one thing we’ve been carrying with us since the early days of print, a phrase that feels increasingly out of sync with our modern reality: “Pixel Perfect.”</p>














<figure class="
  
  
  ">
  
    <a href="https://files.smashing.media/articles/rethinking-pixel-perfect-web-design/1-pixel-perfect-design.png">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="630"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/rethinking-pixel-perfect-web-design/1-pixel-perfect-design.png 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://files.smashing.media/articles/rethinking-pixel-perfect-web-design/1-pixel-perfect-design.png 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://files.smashing.media/articles/rethinking-pixel-perfect-web-design/1-pixel-perfect-design.png 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://files.smashing.media/articles/rethinking-pixel-perfect-web-design/1-pixel-perfect-design.png 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://files.smashing.media/articles/rethinking-pixel-perfect-web-design/1-pixel-perfect-design.png 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/rethinking-pixel-perfect-web-design/1-pixel-perfect-design.png"
			
			sizes="100vw"
			alt="Cartoon scene where a large, colorful pixelated painting hangs on the wall with the word “PIXEL” across it. A man points at the artwork, saying “Perfect!!” while a woman beside him replies “No, it’s not!”."
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      Pixel Perfect? Let’s see... (<a href='https://files.smashing.media/articles/rethinking-pixel-perfect-web-design/1-pixel-perfect-design.png'>Large preview</a>)
    </figcaption>
  
</figure>

<p>I’ll be honest, I’m not a fan. In fact, I believe the idea that we can have pixel-perfection in our designs has become <strong>misleading</strong>, <strong>vague</strong>, and ultimately <strong>counterproductive</strong> to the way we build for the modern web. As a community of developers and designers, it’s time we take a hard look at this legacy concept, understand why it’s failing us, and redefine what “perfection” actually looks like in a multi-device, fluid world.</p>

<h2 id="a-brief-history-of-a-rigid-mindset">A Brief History Of A Rigid Mindset</h2>

<p>To understand why many of us still aim for pixel perfection today, we have to look back at where it all began. It didn’t start on the web, but as a stowaway from the era when layout software first allowed us to design for print on a personal computer, and GUI design from the late 1980s and ’90s.</p>

<p>In the print industry, perfection was absolute. Once a design was sent to the press, every dot of ink had a fixed, unchangeable position on a physical page. When designers transitioned to the early web, they brought this <strong>“printed page” mentality</strong> with them. The goal was simple: The website must be an exact, pixel-for-pixel replica of the static mockup created in design applications like Photoshop and QuarkXPress.</p>














<figure class="
  
  
  ">
  
    <a href="https://files.smashing.media/articles/rethinking-pixel-perfect-web-design/2-printed-page-mentality.jpg">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="533"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/rethinking-pixel-perfect-web-design/2-printed-page-mentality.jpg 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://files.smashing.media/articles/rethinking-pixel-perfect-web-design/2-printed-page-mentality.jpg 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://files.smashing.media/articles/rethinking-pixel-perfect-web-design/2-printed-page-mentality.jpg 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://files.smashing.media/articles/rethinking-pixel-perfect-web-design/2-printed-page-mentality.jpg 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://files.smashing.media/articles/rethinking-pixel-perfect-web-design/2-printed-page-mentality.jpg 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/rethinking-pixel-perfect-web-design/2-printed-page-mentality.jpg"
			
			sizes="100vw"
			alt="Printing process in progress"
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      Credit: <a href='https://unsplash.com/@msgr?utm_source=unsplash&utm_medium=referral&utm_content=creditCopyText'>Geri Sakti</a> on <a href='https://unsplash.com/photos/a-large-machine-with-a-lot-of-papers-on-it-CYrYxz-uvE4?utm_source=unsplash&utm_medium=referral&utm_content=creditCopyText'>Unsplash</a>. (<a href='https://files.smashing.media/articles/rethinking-pixel-perfect-web-design/2-printed-page-mentality.jpg'>Large preview</a>)
    </figcaption>
  
</figure>

<p>I’m old enough to remember working with talented designers who had spent their entire careers in the print world. They would hand over web designs and, with total sincerity, insist on discussing the layout in centimeters and inches. To them, the screen was just another piece of paper, albeit one that glowed.</p>

<p>In those days, we “tamed” the web to achieve this. <a href="https://alistapart.com/article/journey/">We used table-based layouts</a>, nested three levels deep, and stretched <a href="https://css-tricks.com/snippets/html/base64-encode-of-1x1px-transparent-gif/">1×1 pixel “spacer GIFs”</a> to create precise gaps. We designed for a single, “standard” resolution (usually 800×600) because, back then, we could actually pretend we knew exactly what the user was seeing.</p>

<div class="break-out">
<pre><code class="language-html">&lt;!-- A typical "Pixel Perfect" layout from 1998 --&gt;
&lt;table width="800" border="0" cellpadding="0" cellspacing="0"&gt;
  &lt;tr&gt;
    &lt;td width="150" valign="top" bgcolor="&#35;CCCCCC"&gt;
      &lt;img src="spacer.gif" width="150" height="1"&gt; &lt;!-- Sidebar --&gt;
    &lt;/td&gt;
    &lt;td width="10"&gt;&lt;img src="spacer.gif" width="10" height="1"&gt;&lt;/td&gt;
    &lt;td width="640" valign="top"&gt;
      &lt;!-- Content goes here --&gt;
    &lt;/td&gt;
  &lt;/tr&gt;
&lt;/table&gt;
</code></pre>
</div>

<h2 id="cracks-in-the-foundation">Cracks In The Foundation</h2>

<p>The first major challenge to the fixed-table mindset came as early as 2000. In his seminal article, “<a href="https://alistapart.com/article/dao/">A Dao of Web Design</a>”, John Allsopp argued that by trying to force the web into the constraints of print, we were missing the point of the medium entirely. He called the quest for pixel-perfection a “ritual” that ignored the web’s inherent fluidity.</p>

<blockquote>When a new medium borrows from an existing one, some of what it borrows makes sense, but much of the borrowing is thoughtless, “ritual,” and often constrains the new medium. Over time, the new medium develops its own conventions, throwing off existing conventions that don’t make sense.</blockquote>

<p>Nonetheless, the “pixel-perfection” refused to die. While its meaning has shifted and morphed over the decades, it has rarely been well-defined. Many have tried, such as in 2010 when the design agency <strong>ustwo</strong> released the <a href="https://downloads.ctfassets.net/ve81k805bx04/2bMTFo4agkUgmsSgeu8uik/462da69baf7fc97876b2cd87bc4b857f/PP3.pdf">Pixel Perfect Precision (PPP)</a> (PDF) handbook. But that same year, <a href="https://alistapart.com/article/responsive-web-design/">Responsive Web Design</a> also gained massive momentum, effectively killing the idea that a website could look identical on every screen.</p>

<p>Yet, here we are, still using a term born from the limitations of monitors dated to the ’90s to describe the complex interfaces of 2026.</p>














<figure class="
  
  
  ">
  
    <a href="https://files.smashing.media/articles/rethinking-pixel-perfect-web-design/3-pixel-perfectt-web-design.png">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="283"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/rethinking-pixel-perfect-web-design/3-pixel-perfectt-web-design.png 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://files.smashing.media/articles/rethinking-pixel-perfect-web-design/3-pixel-perfectt-web-design.png 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://files.smashing.media/articles/rethinking-pixel-perfect-web-design/3-pixel-perfectt-web-design.png 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://files.smashing.media/articles/rethinking-pixel-perfect-web-design/3-pixel-perfectt-web-design.png 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://files.smashing.media/articles/rethinking-pixel-perfect-web-design/3-pixel-perfectt-web-design.png 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/rethinking-pixel-perfect-web-design/3-pixel-perfectt-web-design.png"
			
			sizes="100vw"
			alt="A meme stating, “You keep using that word. I’m not sure it means what you think it means.”"
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      You keep using that word. I’m not sure it means what you think it means....(<a href='https://files.smashing.media/articles/rethinking-pixel-perfect-web-design/3-pixel-perfectt-web-design.png'>Large preview</a>)
    </figcaption>
  
</figure>

<blockquote><strong>Note:</strong> Before we continue, it’s important to acknowledge the exceptions. There are, of course, scenarios where pixel precision is non-negotiable. Icon grids, sprite sheets, canvas rendering, game engines, or bitmap exports often require exact, pixel-level control to function correctly. These, however, are specialized technical requirements, not a general rule for modern UI development.</blockquote>

<h2 id="why-pixel-perfect-is-failing-the-modern-web">Why “Pixel Perfect” Is Failing the Modern Web</h2>

<p>In our current landscape, clinging to the idea of “pixel perfection” isn’t just anachronistic, it’s actively harmful to the products we build. Here is why.</p>

<h3 id="it-is-fundamentally-vague">It Is Fundamentally Vague</h3>

<p>Let’s start with a simple question: When a designer asks for a “pixel-perfect” implementation, what are they actually asking for? Is it the colors, the spacing, the typography, the borders, the alignment, the shadows, the interactions? Take a moment to think about it.</p>

<p>If your answer is “everything”, then you’ve just identified the core issue.</p>

<blockquote class="pull-quote">
  <p>
    <a class="pull-quote__link" aria-label="Share on Twitter" href="https://twitter.com/share?text=%0aThe%20term%20%e2%80%9cpixel-perfect%e2%80%9d%20is%20so%20all-encompassing%20that%20it%20lacks%20any%20real%20technical%20specificity.%20It%e2%80%99s%20a%20blanket%20statement%20that%20masks%20a%20lack%20of%20clear%20requirements.%20When%20we%20say%20%e2%80%9cmake%20it%20pixel%20perfect,%e2%80%9d%20we%20aren%e2%80%99t%20giving%20a%20directive;%20we%e2%80%99re%20expressing%20a%20feeling.%0a&url=https://smashingmagazine.com%2f2026%2f01%2frethinking-pixel-perfect-web-design%2f">
      
The term “pixel-perfect” is so all-encompassing that it lacks any real technical specificity. It’s a blanket statement that masks a lack of clear requirements. When we say “make it pixel perfect,” we aren’t giving a directive; we’re expressing a feeling.

    </a>
  </p>
  <div class="pull-quote__quotation">
    <div class="pull-quote__bg">
      <span class="pull-quote__symbol">“</span></div>
  </div>
</blockquote>

<h3 id="the-multi-surface-reality">The Multi-Surface Reality</h3>

<p>The concept of a “standard screen size” is now a relic of the past. We are building for an almost infinite variety of <a href="https://viewports.fyi/">viewports</a>, resolutions, and aspect-ratios, and this reality is not likely to change any time soon. Plus, the web is no longer confined to a flat, rectangular piece of glass; it can be on a foldable phone that changes aspect ratios mid-session, or on a spatial interface projected into a room.</p>

<p>Every Internet-connected device <a href="https://css-tricks.com/snippets/css/media-queries-for-standard-devices/">has its own pixel density, scaling factors, and rendering quirks</a>.</p>

<p>A design that is “perfect” on one set of pixels is, by definition, imperfect on another. Striving for a single, static “perfection” ignores the fluid, adaptive nature of the modern web. When the canvas is constantly shifting, the very idea of a fixed pixel implementation becomes a technical impossibility.</p>














<figure class="
  
  
  ">
  
    <a href="https://x.com/jbrewer/status/178528003402379265">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="353"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/rethinking-pixel-perfect-web-design/6-tweet.png 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://files.smashing.media/articles/rethinking-pixel-perfect-web-design/6-tweet.png 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://files.smashing.media/articles/rethinking-pixel-perfect-web-design/6-tweet.png 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://files.smashing.media/articles/rethinking-pixel-perfect-web-design/6-tweet.png 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://files.smashing.media/articles/rethinking-pixel-perfect-web-design/6-tweet.png 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/rethinking-pixel-perfect-web-design/6-tweet.png"
			
			sizes="100vw"
			alt="A tweet that reads: “If you think responsive’s simple, I feel bad for you son. We got 99 viewports, but the iPhone’s just one.”"
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      Source: <a href='https://x.com/jbrewer/status/178528003402379265'>x.com</a>. (<a href='https://files.smashing.media/articles/rethinking-pixel-perfect-web-design/6-tweet.png'>Large preview</a>)
    </figcaption>
  
</figure>

<h3 id="the-dynamic-nature-of-content">The Dynamic Nature Of Content</h3>

<p>A static mockup is a snapshot of a single state with a specific set of data. But content is rarely static like that in the real world. <a href="https://www.smashingmagazine.com/2014/12/how-to-conduct-website-localization/">Localization is a prime example</a>: a label that fits perfectly inside a button component in English might overflow the container in German or require a different font entirely for CJK languages.</p>

<p>Beyond text length, localization means changes with currency symbols, date formatting, and numeric systems. Any of these variables can significantly impact a page layout. If a design is built to be “pixel-perfect” based on a specific string of text, it is inherently fragile. A pixel-perfect layout completely collapses the moment content changes.</p>














<figure class="
  
    break-out article__image
  
  
  ">
  
    <a href="https://files.smashing.media/articles/rethinking-pixel-perfect-web-design/4-pricing-card.png">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="272"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/rethinking-pixel-perfect-web-design/4-pricing-card.png 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://files.smashing.media/articles/rethinking-pixel-perfect-web-design/4-pricing-card.png 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://files.smashing.media/articles/rethinking-pixel-perfect-web-design/4-pricing-card.png 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://files.smashing.media/articles/rethinking-pixel-perfect-web-design/4-pricing-card.png 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://files.smashing.media/articles/rethinking-pixel-perfect-web-design/4-pricing-card.png 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/rethinking-pixel-perfect-web-design/4-pricing-card.png"
			
			sizes="100vw"
			alt="A pricing card that looks balanced in English, but shifts or overflows when localized. The fixed-width containers and absolute positioning that work for the English mockup fail to adapt to other languages."
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      A pricing card that looks balanced in English, but shifts or overflows when localized. The fixed-width containers and absolute positioning that work for the English mockup fail to adapt to other languages. (<a href='https://files.smashing.media/articles/rethinking-pixel-perfect-web-design/4-pricing-card.png'>Large preview</a>)
    </figcaption>
  
</figure>

<h2 id="accessibility-is-the-real-perfection">Accessibility Is The Real Perfection</h2>

<p>True perfection means a site that works for everyone. If a layout is so rigid that it breaks when a user increases their font size or forces a high-contrast mode, it isn’t perfect &mdash; it’s broken. “Pixel perfect” often prioritizes visual aesthetics over functional accessibility, creating barriers for users who don’t fit the “standard” profile.</p>

<h2 id="think-systems-not-pages">Think Systems, Not Pages</h2>

<p>We no longer build pages; we build design systems. We create components that must work in isolation and a variety of contexts, whether in headers, in sidebars, or in dynamic grids. Trying to match a component to a specific pixel coordinate in a static mockup is a fool’s errand.</p>

<p>A pure “pixel-perfect” approach treats every instance as a unique snowflake, which is the antithesis of a scalable, <a href="https://www.smashingmagazine.com/2023/01/key-good-component-design-selfishness/">component-based architecture</a>. It forces developers to choose between following a static image and maintaining the integrity of the system.</p>

<h2 id="perfection-is-technical-debt">Perfection Is Technical Debt</h2>

<p>When we prioritize exact visual matching over sound engineering, we aren’t just making a design choice; we are incurring technical debt. Chasing that last pixel often forces developers to bypass the browser’s natural layout engine.</p>

<p>Working in exact units leads to <a href="https://css-tricks.com/magic-numbers-in-css/">“magic numbers”</a>, those arbitrary <code>margin-top: 3px</code> or <code>left: -1px</code> hacks, sprinkled throughout the codebase to force an element into a specific position on a specific screen. This creates a fragile, brittle architecture, leading to a never-ending cycle of “visual bug” tickets.</p>

<pre><code class="language-css">/&#42; The "Pixel Perfect" Hack &#42;/
.card-title {
  margin-top: 13px; /&#42; Matches the mockup exactly on 1440px &#42;/
  margin-left: -2px; /&#42; Optical adjustment for a specific font &#42;/
}
/&#42; The "Design Intent" Solution &#42;/
.card-title {
  margin-top: var(--space-m); /&#42; Part of a consistent scale &#42;/
  align-self: start; /&#42; Logical alignment &#42;/
}
</code></pre>

<p>By insisting on pixel-perfection, we are building a foundation that is difficult to automate, difficult to refactor, and ultimately, more expensive to maintain. We have much more flexible ways to calculate sizing in CSS, thanks to <a href="https://css-tricks.com/css-length-units/#relative-units">relative units</a>.</p>

<h2 id="moving-from-pixels-to-intent">Moving From Pixels To Intent</h2>

<p>So far, I’ve spent a lot of time talking about what we <em>shouldn’t</em> do. But let’s be clear: Moving away from “pixel perfection” isn’t an excuse for sloppy implementation or a “close enough” attitude. We still need consistency, we still want our products to look and feel high-quality, and we still need a shared methodology for achieving that.</p>

<p>So, if “pixel perfection” is no longer a viable goal, what <em>should</em> we be striving for?</p>

<p>The answer, I believe, lies in shifting our focus from individual pixels to <strong>design intent</strong>. In a fluid world, perfection isn’t about matching a static image, but ensuring that the core logic and visual integrity of the design are preserved across every possible context.</p>

<h3 id="design-intent-over-static-values">Design Intent Over Static Values</h3>

<p>Instead of asking for a <code>margin: 24px</code> in a design, we should be asking: <em>Why is this margin here?</em> Is it to create a visual separation between sections? Is it part of a consistent spacing scale? When we understand the intent, we can implement it using fluid units and functions (like <code>rem</code> and <code>clamp()</code>, respectively) and use advanced tools, like <a href="https://www.smashingmagazine.com/2021/05/complete-guide-css-container-queries/">CSS Container Queries</a>, that allow the design to breathe and adapt while still feeling “right”.</p>

<div class="break-out">
<pre><code class="language-css">/&#42; Intent: A heading that scales smoothly with the viewport &#42;/
h1 {
  font-size: clamp(2rem, 5vw + 1rem, 4rem);
}
/&#42; Intent: Change layout based on the component's own width, not the screen &#42;/
.card-container {
  container-type: inline-size;
}
@container (min-width: 400px) {
  .card {
    display: grid;
    grid-template-columns: 1fr 2fr;
  }
}
</code></pre>
</div>

<h3 id="speaking-in-tokens">Speaking In Tokens</h3>

<p><a href="https://css-tricks.com/what-are-design-tokens/">Design tokens</a> are the bridge between design and code. When a designer and developer agree on a token like <code>--spacing-large</code> instead of <code>32px</code>, they aren’t just syncing values, but instead syncing logic. This ensures that even if the underlying value changes to accommodate a specific condition, the relationship between elements remains perfect.</p>

<pre><code class="language-css">:root {
  /&#42; The logic is defined once &#42;/
  --color-primary: &#35;007bff;
  --spacing-unit: 8px;
  --spacing-large: calc(var(--spacing-unit) &#42; 4);
}

/&#42; And reused everwhere &#42;/
.button {
  background-color: var(--color-primary);
  padding: var(--spacing-large);
}
</code></pre>

<h3 id="fluidity-as-a-feature-not-a-bug">Fluidity As A Feature, Not A Bug</h3>

<p>We need to stop viewing the web’s flexibility as something to be tamed and start seeing that flexibility as its greatest strength. A “perfect” implementation is one that looks intentional at 320px, 1280px, and even in a 3D spatial environment. This means embracing intrinsic web design based on an element’s natural size in any context &mdash; and using modern CSS tools to create layouts that “know” how to arrange themselves based on the available space.</p>

<h2 id="death-to-the-handover">Death To The “Handover”</h2>

<p>In this intent-driven world, the “handover” of traditional design assets has become another relic of the past. We no longer pass static Photoshop files across a digital wall and hope for the best. Instead, we work within <a href="https://www.smashingmagazine.com/2022/04/artifacts-design-systems/"><strong>living design systems</strong></a>.</p>

<p>Modern tooling allows designers to specify behaviors, not just positions. When a designer defines a component, they aren’t just drawing a box; they’re defining its constraints, its fluid scales, and its relationship to the content. As developers, our job is to implement that logic.</p>

<p>The conversation has shifted from <em>“Why is this</em> <em>three</em> <em>pixels off?”</em> to <em>“How should this component behave when the container shrinks?”</em> and <em>“What happens to the hierarchy when the text is translated to a longer language?”</em></p>

<h2 id="better-language-better-outcomes">Better Language, Better Outcomes</h2>

<p>Speaking of conversations, when we aim for “pixel perfection”, we set ourselves up for friction. Mature teams have long moved past this binary “match-or-fail” mindset towards a more descriptive vocabulary that reflects the complexity of our work.</p>

<p>By replacing “pixel perfect” with more precise terms, we create shared expectations and eliminate pointless arguments. Here are a few phrases that have served me well for productive discussions around intent and fluidity:</p>

<ul>
<li><strong>“Visually consistent with the design system.”</strong><br />
Instead of matching a specific mockup, we ensure the implementation follows the established rules of our system.</li>
<li><strong>“Matches spacing and hierarchy.”</strong><br />
We focus on the relationships and rhythm between elements rather than their absolute coordinates.</li>
<li><strong>“Preserves proportions and alignment logic.”</strong><br />
We ensure that the <em>intent</em> of the layout remains intact, even as it scales and shifts.</li>
<li><strong>“Acceptable variance across platforms.”</strong><br />
We acknowledge that a site will look different, within a defined and agreed-upon range of variation, and that’s okay as long as the experience remains high-quality.</li>
</ul>

<blockquote class="pull-quote">
  <p>
    <a class="pull-quote__link" aria-label="Share on Twitter" href="https://twitter.com/share?text=%0aLanguage%20creates%20reality.%20Clear%20language%20doesn%e2%80%99t%20just%20improve%20the%20code,%20but%20the%20relationship%20between%20designers%20and%20developers.%20It%20moves%20us%20toward%20a%20shared%20ownership%20of%20the%20final,%20living%20product.%20When%20we%20speak%20the%20same%20language,%20%e2%80%9cperfection%e2%80%9d%20stops%20being%20a%20demand%20and%20starts%20being%20a%20collaborative%20achievement.%0a&url=https://smashingmagazine.com%2f2026%2f01%2frethinking-pixel-perfect-web-design%2f">
      
Language creates reality. Clear language doesn’t just improve the code, but the relationship between designers and developers. It moves us toward a shared ownership of the final, living product. When we speak the same language, “perfection” stops being a demand and starts being a collaborative achievement.

    </a>
  </p>
  <div class="pull-quote__quotation">
    <div class="pull-quote__bg">
      <span class="pull-quote__symbol">“</span></div>
  </div>
</blockquote>

<h2 id="a-note-to-my-design-colleagues">A Note To My Design Colleagues</h2>

<p>When you hand over a design, don’t give us a fixed width, but a set of rules. Tell us what should stretch, what should stay fixed, and what should happen when the content inevitably overflows. Your “perfection” lies in the logic you define, not the pixels you draw.</p>














<figure class="
  
  
  ">
  
    <a href="https://files.smashing.media/articles/rethinking-pixel-perfect-web-design/5-rethinking-pixel-perfect-web-design.png">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="511"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/rethinking-pixel-perfect-web-design/5-rethinking-pixel-perfect-web-design.png 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://files.smashing.media/articles/rethinking-pixel-perfect-web-design/5-rethinking-pixel-perfect-web-design.png 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://files.smashing.media/articles/rethinking-pixel-perfect-web-design/5-rethinking-pixel-perfect-web-design.png 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://files.smashing.media/articles/rethinking-pixel-perfect-web-design/5-rethinking-pixel-perfect-web-design.png 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://files.smashing.media/articles/rethinking-pixel-perfect-web-design/5-rethinking-pixel-perfect-web-design.png 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/rethinking-pixel-perfect-web-design/5-rethinking-pixel-perfect-web-design.png"
			
			sizes="100vw"
			alt="On the left, a styled food photo labeled “The Photo (Mockup)”; on the right, a recipe layout labeled “The Recipe (Rules)”."
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      Don’t give us the photo, give us the recipe. (<a href='https://files.smashing.media/articles/rethinking-pixel-perfect-web-design/5-rethinking-pixel-perfect-web-design.png'>Large preview</a>)
    </figcaption>
  
</figure>

<h2 id="the-new-standard-of-excellence">The New Standard Of Excellence</h2>

<p>The web was never meant to be a static gallery of frozen pixels. It was born to be a messy, fluid, and gloriously unpredictable medium. When we cling to an outdated model of “pixel perfection”, we are effectively trying to put a leash on a hurricane. It’s unnatural in today’s front-end landscape.</p>

<p>In 2026, we have the tools to build interfaces that think, adapt, and breathe. We have AI that can generate layouts in seconds and spatial interfaces that defy the very concept of a “screen”. In this world, perfection isn’t a fixed coordinate but a promise; <strong>it’s the promise that no matter who is looking, or what they are looking through, the <em>soul</em> of the design remains intact</strong>.</p>

<p>So, let’s bury the term once and for all. Let’s leave the centimeters to the architects and the spacer GIFs to the digital museums. If you want something to look exactly the same for the next hundred years, carve it in stone or print it on a high-quality cardstock. But if you want to build for the web, embrace the chaos.</p>

<p>Stop counting pixels. Start building <em>intent</em>.</p>

<div class="signature">
  <img src="https://www.smashingmagazine.com/images/logo/logo--red.png" alt="Smashing Editorial" width="35" height="46" loading="lazy" decoding="async" />
  <span>(gg, yk)</span>
</div>


              </article>
            </body>
          </html>
        ]]></content:encoded></item><item><author>Alex Williams</author><title>The Double-Edged Sustainability Sword Of AI In Web Design</title><link>https://www.smashingmagazine.com/2025/08/double-edged-sustainability-sword-ai-web-design/</link><pubDate>Wed, 20 Aug 2025 10:00:00 +0000</pubDate><guid>https://www.smashingmagazine.com/2025/08/double-edged-sustainability-sword-ai-web-design/</guid><description>AI has introduced huge efficiencies for web designers and is frequently being touted as the key to unlocking sustainable design and development. But do these gains outweigh the environmental cost of using energy-hungry AI tools?</description><content:encoded><![CDATA[
          <html>
            <head>
              <meta charset="utf-8">
              <link rel="canonical" href="https://www.smashingmagazine.com/2025/08/double-edged-sustainability-sword-ai-web-design/" />
              <title>The Double-Edged Sustainability Sword Of AI In Web Design</title>
            </head>
            <body>
              <article>
                <header>
                  <h1>The Double-Edged Sustainability Sword Of AI In Web Design</h1>
                  
                    
                    <address>Alex Williams</address>
                  
                  <time datetime="2025-08-20T10:00:00&#43;00:00" class="op-published">2025-08-20T10:00:00+00:00</time>
                  <time datetime="2025-08-20T10:00:00&#43;00:00" class="op-modified">2026-02-09T03:03:08+00:00</time>
                </header>
                
                

<p>Artificial intelligence is increasingly automating large parts of design and development workflows &mdash; tasks once reserved for skilled designers and developers. This streamlining can dramatically speed up project delivery. Even back in 2023, AI-assisted developers were found to complete tasks <a href="https://www.mckinsey.com/capabilities/mckinsey-digital/our-insights/unleashing-developer-productivity-with-generative-ai">twice as fast</a> as those without. And AI tools have advanced massively since then.</p>

<p>Yet this surge in capability raises a pressing dilemma:</p>

<blockquote>Does the environmental toll of powering AI infrastructure eclipse the efficiency gains?</blockquote>

<p>We can create websites faster that are optimized and more efficient to run, but the global consumption of energy by AI <a href="https://www.iea.org/news/ai-is-set-to-drive-surging-electricity-demand-from-data-centres-while-offering-the-potential-to-transform-how-the-energy-sector-works">continues to climb</a>.</p>

<p>As awareness grows around the <strong>digital sector’s hidden ecological footprint</strong>, web designers and businesses must grapple with this double-edged sword, weighing the grid-level impacts of AI against the cleaner, leaner code it can produce.</p>

<h2 id="the-good-how-ai-can-enhance-sustainability-in-web-design">The Good: How AI Can Enhance Sustainability In Web Design</h2>

<p>There’s no disputing that <a href="https://www.smashingmagazine.com/2023/03/ai-technology-transform-design/">AI-driven automation</a> has introduced higher speeds and efficiencies to many of the mundane aspects of web design. Tools that automatically generate responsive layouts, optimize image sizes, and refactor bloated scripts should free designers to focus on <a href="https://www.smashingmagazine.com/2023/04/skills-designers-ai-cant-replicate/">completing the creative</a> side of design and development.</p>

<p>By some interpretations, these accelerated project timelines could <a href="https://arxiv.org/abs/2411.11892">represent a reduction</a> in the required energy for development, and speedier production should mean less energy used.</p>

<p>Beyond automation, AI excels at <a href="https://www.smashingmagazine.com/2024/11/ai-transformative-impact-web-design-supercharging-productivity/">identifying inefficiencies in code and design</a>, as it can take a much more holistic view and assess things as a whole. Advanced algorithms can parse through stylesheets and JavaScript files to detect unused selectors or redundant logic, producing leaner, faster-loading pages. For example, AI-driven caching can <a href="https://www.researchgate.net/publication/383735847_Leveraging_AI_and_Machine_Learning_for_Performance_Optimization_in_Web_Applications">increase cache hit rates by 15%</a> by improving data availability and reducing latency. This means more user requests are served directly from the cache, reducing the need for data retrieval from the main server, which reduces energy expenditure.</p>

<p>AI tools can utilize <a href="https://wp-rocket.me/google-core-web-vitals-wordpress/serve-images-next-gen-formats/">next-generation image formats</a> like AVIF or WebP, as they’re basically designed to be understood by AI and automation, and selectively compress assets based on content sensitivity. This slashes media payloads without perceptible quality loss, as the AI can use Generative Adversarial Networks (GANs) that can learn compact representations of data.</p>

<p>AI’s impact also brings <strong>sustainability benefits via user experience (UX)</strong>. AI-driven personalization engines can <a href="https://www.researchgate.net/publication/378288736_AI-driven_personalization_in_web_content_delivery_A_comparative_study_of_user_engagement_in_the_USA_and_the_UK">dynamically serve only the content a visitor needs</a>, which eliminates superfluous scripts or images that they don’t care about. This not only enhances perceived performance but reduces the number of server requests and data transferred, cutting downstream energy use in network infrastructure.</p>

<p>With the right prompts, <strong>generative AI can be an accessibility tool</strong> and ensure <a href="https://arxiv.org/abs/2501.03572">sites meet inclusive design standards</a> by checking against accessibility standards, reducing the need for redesigns that can be costly in terms of time, money, and energy.</p>

<p>So, if you can take things in isolation, AI can and already acts as an important tool to make web design more efficient and sustainable. But do these gains outweigh the cost of the resources required in building and maintaining these tools?</p>

<h2 id="the-bad-the-environmental-footprint-of-ai-infrastructure">The Bad: The Environmental Footprint Of AI Infrastructure</h2>

<p>Yet the carbon savings engineered at the page level must be balanced against the prodigious resource demands of AI infrastructure. Large-scale AI hinges on data centers that already account for <a href="https://www2.deloitte.com/us/en/insights/industry/technology/technology-media-and-telecom-predictions/2025/genai-power-consumption-creates-need-for-more-sustainable-data-centers.html">roughly 2% of global electricity consumption</a>, a figure projected to swell as AI workloads grow.</p>

<p>The International Energy Agency warns that electricity consumption from data centers could <a href="https://www.iea.org/news/ai-is-set-to-drive-surging-electricity-demand-from-data-centres-while-offering-the-potential-to-transform-how-the-energy-sector-works">more than double by 2030</a> due to the increasing demand for AI tools, reaching nearly the current consumption of Japan. Training state-of-the-art language models generates carbon emissions <a href="https://www.reuters.com/business/microsoft-urge-senators-speed-permitting-ai-boost-government-data-access-2025-05-07/">on par with hundreds of transatlantic flights</a>, and inference workloads, serving billions of requests daily, can rival or exceed training emissions over a model’s lifetime.</p>

<p>Image generation tasks represent an even steeper energy hill to climb. Producing a single AI-generated image can consume energy <a href="https://www.scientificamerican.com/article/generative-ai-could-generate-millions-more-tons-of-e-waste-by-2030/">equivalent to charging a smartphone</a>.</p>

<blockquote class="pull-quote">
  <p>
    <a class="pull-quote__link" aria-label="Share on Twitter" href="https://twitter.com/share?text=%0aAs%20generative%20design%20and%20AI-based%20prototyping%20become%20more%20common%20in%20web%20development,%20the%20cumulative%20energy%20footprint%20of%20these%20operations%20can%20quickly%20undermine%20the%20carbon%20savings%20achieved%20through%20optimized%20code.%0a&url=https://smashingmagazine.com%2f2025%2f08%2fdouble-edged-sustainability-sword-ai-web-design%2f">
      
As generative design and AI-based prototyping become more common in web development, the cumulative energy footprint of these operations can quickly undermine the carbon savings achieved through optimized code.

    </a>
  </p>
  <div class="pull-quote__quotation">
    <div class="pull-quote__bg">
      <span class="pull-quote__symbol">“</span></div>
  </div>
</blockquote>

<p>Water consumption forms another hidden cost. Data centers rely heavily on evaporative cooling systems that can draw between <a href="https://www.axios.com/local/indianapolis/2025/05/09/midwest-data-center-boom-indiana">one and five million gallons of water</a> per day, depending on size and location, placing stress on local supplies, especially in drought-prone regions. Studies estimate a single ChatGPT query may <a href="https://eandt.theiet.org/2024/11/29/how-boil-egg-and-other-simple-searches-chatgpt-worse-environment-you-may-think">consume up to half a liter of water</a> when accounting for direct cooling requirements, with broader AI use potentially demanding billions of liters annually by 2027.</p>

<p><strong>Resource depletion</strong> and <strong>electronic waste</strong> are further concerns. High-performance components underpinning AI services, like GPUs, can have very small lifespans due to both wear and tear and being superseded by more powerful hardware. AI alone could add between <a href="https://www.scimex.org/newsfeed/generative-ai-could-create-1-000-times-more-e-waste-by-2030">1.2 and 5 million metric tons of e-waste</a> by 2030, due to the continuous demand for new hardware, amplifying one of the world’s fastest-growing waste streams.</p>

<p>Mining for the critical minerals in these devices often <a href="https://www.unep.org/news-and-stories/story/ai-has-environmental-problem-heres-what-world-can-do-about">proceeds under unsustainable conditions</a> due to a <strong>lack of regulations</strong> in many of the environments where rare metals can be sourced, and the resulting e-waste, rich in toxic metals like lead and mercury, poses another form of environmental damage if not properly recycled.</p>

<p>Compounding these physical impacts is a <strong>lack of transparency in corporate reporting</strong>. Energy and water consumption figures for AI workloads are often <a href="https://www2.deloitte.com/us/en/insights/industry/technology/technology-media-and-telecom-predictions/2025/genai-power-consumption-creates-need-for-more-sustainable-data-centers.html">aggregated under general data center operations</a>, which obscures the specific toll of AI training and inference among other operations.</p>

<p>And the energy consumption reporting of the data centres themselves has been found to have been obfuscated.</p>

<blockquote>Reports estimate that the emissions of data centers are up to <a href="https://www.theguardian.com/technology/2024/sep/15/data-center-gas-emissions-tech">662% higher than initially reported</a> due to misaligned metrics, and ‘creative’ interpretations of what constitutes an emission. This makes it hard to grasp the true scale of AI’s environmental footprint, leaving designers and decision-makers unable to make informed, environmentally conscious decisions.</blockquote>

<h2 id="do-the-gains-from-ai-outweigh-the-costs">Do The Gains From AI Outweigh The Costs?</h2>

<p>Some industry advocates argue that AI’s energy consumption isn’t as catastrophic as headlines suggest. Some groups have <a href="https://thebreakthrough.org/journal/no-20-spring-2024/unmasking-the-fear-of-ais-energy-demand">challenged ‘alarmist’ projections</a>, claiming that AI’s current contribution of ‘just’ <a href="https://www.ecb.europa.eu/press/economic-bulletin/focus/2025/html/ecb.ebbox202502_03~8eba688e29.en.html">0.02% of global energy consumption</a> isn’t a cause for concern.</p>

<p>Proponents also highlight AI’s supposed environmental benefits. There are claims that AI could reduce <a href="https://www.pwc.com/gx/en/issues/value-in-motion/ai-energy-consumption-net-zero.html">economy-wide greenhouse gas emissions by 0.1% to 1.1%</a> through efficiency improvements. <a href="https://aimagazine.com/articles/what-does-google-2025-environmental-report-say-about-tech">Google reported</a> that five AI-powered solutions removed 26 million metric tons of emissions in 2024. The optimistic view holds that AI’s capacity to optimize everything from energy grids to transportation systems will more than compensate for its data center demands.</p>

<p>However, recent scientific analysis reveals these arguments underestimate AI’s true impact. MIT found that data centers already consume <a href="https://www.technologyreview.com/2025/05/20/1116327/ai-energy-usage-climate-footprint-big-tech/">4.4% of all US electricity</a>, with projections showing AI alone could use as much power as 22% of US households by 2028. Research indicates AI-specific electricity use <a href="https://www.energy.gov/articles/doe-releases-new-report-evaluating-increase-electricity-demand-data-centers">could triple from current levels</a> annually by 2028. Moreover, <a href="https://www.technologyreview.com/2024/12/13/1108719/ais-emissions-are-about-to-skyrocket-even-further/">Harvard research</a> revealed that data centers use electricity with 48% higher carbon intensity than the US average.</p>

<h2 id="advice-for-sustainable-ai-use-in-web-design">Advice For Sustainable AI Use In Web Design</h2>

<p>Despite the environmental costs, AI’s use in business, particularly web design, isn’t going away anytime soon, with <a href="https://www.hostinger.com/tutorials/ai-in-business">70% of large businesses</a> looking to increase their AI investments to increase efficiencies. AI’s immense impact on productivity means those not using it are likely to be left behind. This means that environmentally conscious businesses and designers must find the right <strong>balance between AI’s environmental cost and the efficiency gains it brings</strong>.</p>

<h3 id="make-sure-you-have-a-strong-foundation-of-sustainable-web-design-principles">Make Sure You Have A Strong Foundation Of Sustainable Web Design Principles</h3>

<p>Before you plug in any AI magic, start by making sure the bones of your site are sustainable. <a href="https://www.evergrowingdev.com/p/a-guide-to-lean-web-design-for-developers">Lean web fundamentals</a>, like system fonts instead of hefty custom files, minimal JavaScript, and judicious image use, can slash a page’s carbon footprint by stripping out redundancies that increase energy consumption. For instance, the global average web page emits about <a href="https://www.websitecarbon.com/">0.8g of CO₂ per view</a>, whereas sustainably crafted sites can see a roughly 70% reduction.</p>

<p>Once that lean baseline is in place, AI-driven optimizations (image format selection, code pruning, responsive layout generation) aren’t adding to bloat but building on efficiency, ensuring every joule spent on AI actually yields downstream energy savings in delivery and user experience.</p>

<h3 id="choosing-the-right-tools-and-vendors">Choosing The Right Tools And Vendors</h3>

<p>In order to make sustainable tool choices, <strong>transparency</strong> and <strong>awareness</strong> are the first steps. Many AI vendors have pledged to <a href="https://sustainabilitymag.com/articles/which-companies-are-in-the-coalition-for-sustainable-ai">work towards sustainability</a>, but <strong>independent audits</strong> are necessary, along with clear, cohesive metrics. Standardized reporting on energy and water footprints will help us understand the true cost of AI tools, allowing for informed choices.</p>

<p>You can look for providers that publish detailed environmental reports and hold third-party renewable energy certifications. Many major providers now offer <a href="https://thenewstack.io/cloud-pue-comparing-aws-azure-and-gcp-global-regions/">PUE (Power Usage Effectiveness) metrics</a> alongside renewable energy matching to demonstrate real-world commitments to clean power.</p>

<p>When integrating AI into your build pipeline, choosing lightweight, specialized models for tasks like image compression or code linting can be more sustainable than full-scale generative engines. Task-specific tools often <a href="https://news.mit.edu/2023/new-tools-available-reduce-energy-that-ai-models-devour-1005">use considerably less energy</a> than general AI models, as general models must process what task you want them to complete.</p>

<p>There are a variety of guides and collectives out there that can guide you on choosing the ‘green’ web hosts that are best for your business. When choosing AI-model vendors, you should look at options that prioritize <strong>‘efficiency by design’</strong>: smaller, pruned models and edge-compute deployments can cut energy use by up to <a href="https://accesspartnership.com/12-key-principles-for-sustainable-ai/">50% compared to monolithic cloud-only models</a>. They’re trained for specific tasks, so they don’t have to expend energy computing what the task is and how to go about it.</p>

<h3 id="using-ai-tools-sustainably">Using AI Tools Sustainably</h3>

<p>Once you’ve chosen conscientious vendors, optimize how you actually use AI. You can take steps like <strong>batching non-urgent inference tasks</strong> to reduce idle GPU time, an approach shown to <a href="https://blog.purestorage.com/purely-educational/5-ways-to-reduce-your-ai-energy-footprint/">lower energy consumption overall</a> compared to requesting ad-hoc, as you don’t have to keep running the GPU constantly, only when you need to use it.</p>

<p>Smarter prompts can also help make AI usage slightly more sustainable. Sam Altman of ChatGPT revealed early in 2025 that people’s propensity for saying ‘please’ and ‘thank you’ to LLMs is <a href="https://futurism.com/altman-please-thanks-chatgpt">costing millions of dollars and wasting energy</a> as the Generative AI has to deal with extra phrases to compute that aren’t relevant to its task. You need to <strong>ensure that your prompts are direct and to the point</strong>, and deliver the context required to complete the task to reduce the need to reprompt.</p>

<h3 id="additional-strategies-to-balance-ai-s-environmental-cost">Additional Strategies To Balance AI’s Environmental Cost</h3>

<p>On top of being responsible with your AI tool choice and usage, there are other steps you can take to offset the carbon cost of AI usage and enjoy the efficiency benefits it brings. Organizations can <a href="https://earthly.org/the-guide-to-carbon-offsetting">reduce their own emissions and use carbon offsetting</a> to reduce their own carbon footprint as much as possible. Combined with the apparent sustainability benefits of AI use, this approach can help mitigate the harmful impacts of energy-hungry AI.</p>

<p>You can ensure that you’re using <strong>green server hosting</strong> (servers run on sustainable energy) for your own site and cloud needs beyond AI, and <a href="https://www.imperva.com/learn/performance/what-is-cdn-how-it-works/">refine your content delivery network</a> (CDN) to ensure your sites and apps are serving compressed, optimized assets from edge locations, cutting the distance data must travel, which should reduce the associated energy use.</p>

<p>Organizations and individuals, particularly those with thought leadership status, can be <a href="https://ai4good.org/what-we-do/sustainable-ai-policy/">advocates pushing for transparent sustainability specifications</a>. This involves both lobbying politicians and regulatory bodies to introduce and enforce sustainability standards and ensuring that other members of the public are kept aware of the environmental costs of AI use.</p>

<p>It’s only through collective action that we’re likely to see strict enforcement of both sustainable AI data centers and the standardization of emissions reporting.</p>

<p>Regardless, it remains a tricky path to walk, along the double-edged sword of AI’s use in web design.</p>

<blockquote class="pull-quote">
  <p>
    <a class="pull-quote__link" aria-label="Share on Twitter" href="https://twitter.com/share?text=%0aUse%20AI%20too%20much,%20and%20you%e2%80%99re%20contributing%20to%20its%20massive%20carbon%20footprint.%20Use%20it%20too%20little,%20and%20you%e2%80%99re%20likely%20to%20be%20left%20behind%20by%20rivals%20that%20are%20able%20to%20work%20more%20efficiently%20and%20deliver%20projects%20much%20faster.%0a&url=https://smashingmagazine.com%2f2025%2f08%2fdouble-edged-sustainability-sword-ai-web-design%2f">
      
Use AI too much, and you’re contributing to its massive carbon footprint. Use it too little, and you’re likely to be left behind by rivals that are able to work more efficiently and deliver projects much faster.

    </a>
  </p>
  <div class="pull-quote__quotation">
    <div class="pull-quote__bg">
      <span class="pull-quote__symbol">“</span></div>
  </div>
</blockquote>

<p>The best environmentally conscious designers and organizations can currently do is <strong>attempt to navigate it as best they can and stay informed on best practices</strong>.</p>

<h2 id="conclusion">Conclusion</h2>

<p>We can’t dispute that AI use in web design delivers on its promise of agility, personalization, and resource savings at the page-level. Yet without a holistic view that accounts for the environmental demands of AI infrastructure, these gains risk being overshadowed by an expanding energy and water footprint.</p>

<p>Achieving the balance between enjoying AI’s efficiency gains and managing its carbon footprint requires transparency, targeted deployment, human oversight, and a steadfast commitment to core sustainable web practices.</p>

<div class="signature">
  <img src="https://www.smashingmagazine.com/images/logo/logo--red.png" alt="Smashing Editorial" width="35" height="46" loading="lazy" decoding="async" />
  <span>(yk)</span>
</div>


              </article>
            </body>
          </html>
        ]]></content:encoded></item><item><author>Mikhail Prosmitskiy</author><title>Reliably Detecting Third-Party Cookie Blocking In 2025</title><link>https://www.smashingmagazine.com/2025/05/reliably-detecting-third-party-cookie-blocking-2025/</link><pubDate>Wed, 28 May 2025 10:00:00 +0000</pubDate><guid>https://www.smashingmagazine.com/2025/05/reliably-detecting-third-party-cookie-blocking-2025/</guid><description>The web is mired in a struggle to eliminate third-party cookies, with the World Wide Web Consortium Technical Architecture Group leading the charge. But there are obstacles preventing this from happening, and, as a result, many essential web features continue to rely on cookies to function properly. That’s why detecting third-party cookie blocking isn’t just good technical hygiene but a frontline defense for user experience.</description><content:encoded><![CDATA[
          <html>
            <head>
              <meta charset="utf-8">
              <link rel="canonical" href="https://www.smashingmagazine.com/2025/05/reliably-detecting-third-party-cookie-blocking-2025/" />
              <title>Reliably Detecting Third-Party Cookie Blocking In 2025</title>
            </head>
            <body>
              <article>
                <header>
                  <h1>Reliably Detecting Third-Party Cookie Blocking In 2025</h1>
                  
                    
                    <address>Mikhail Prosmitskiy</address>
                  
                  <time datetime="2025-05-28T10:00:00&#43;00:00" class="op-published">2025-05-28T10:00:00+00:00</time>
                  <time datetime="2025-05-28T10:00:00&#43;00:00" class="op-modified">2026-02-09T03:03:08+00:00</time>
                </header>
                
                

<p>The web is beginning to part ways with third-party cookies, a technology it once heavily relied on. <a href="https://en.wikipedia.org/wiki/HTTP_cookie">Introduced in 1994 by Netscape</a> to support features like virtual shopping carts, cookies have long been a staple of web functionality. However, concerns over <strong>privacy</strong> and <strong>security</strong> have led to a concerted effort to eliminate them. The World Wide Web Consortium Technical Architecture Group (W3C TAG) <a href="https://w3ctag.github.io/web-without-3p-cookies/">has been vocal in advocating</a> for the complete removal of third-party cookies from the web platform.</p>

<p>Major browsers (Chrome, Safari, Firefox, and Edge) are responding by phasing them out, though the transition is gradual. While this shift enhances user privacy, it also disrupts legitimate functionalities that rely on third-party cookies, such as single sign-on (SSO), fraud prevention, and embedded services. And because there is still no universal ban in place and many essential web features continue to depend on these cookies, developers must detect when third-party cookies are blocked so that applications can respond gracefully.</p>

<h2 id="don-t-let-silent-failures-win-why-cookie-detection-still-matters">Don’t Let Silent Failures Win: Why Cookie Detection Still Matters</h2>

<p>Yes, the ideal solution is to move away from third-party cookies altogether and redesign our integrations using privacy-first, purpose-built alternatives as soon as possible. But in reality, that migration can take months or even years, especially for legacy systems or third-party vendors. Meanwhile, users are already browsing with third-party cookies disabled and often have no idea that anything is missing.</p>

<p>Imagine a travel booking platform that embeds an iframe from a third-party partner to display live train or flight schedules. This embedded service uses a cookie on its own domain to authenticate the user and personalize content, like showing saved trips or loyalty rewards. But when the browser blocks third-party cookies, the iframe cannot access that data. Instead of a seamless experience, the user sees an error, a blank screen, or a login prompt that doesn’t work.</p>

<p>And while your team is still planning a long-term integration overhaul, this is already happening to real users. They don’t see a cookie policy; they just see a broken booking flow.</p>

<blockquote class="pull-quote">
  <p>
    <a class="pull-quote__link" aria-label="Share on Twitter" href="https://twitter.com/share?text=%0aDetecting%20third-party%20cookie%20blocking%20isn%e2%80%99t%20just%20good%20technical%20hygiene%20but%20a%20frontline%20defense%20for%20user%20experience.%0a&url=https://smashingmagazine.com%2f2025%2f05%2freliably-detecting-third-party-cookie-blocking-2025%2f">
      
Detecting third-party cookie blocking isn’t just good technical hygiene but a frontline defense for user experience.

    </a>
  </p>
  <div class="pull-quote__quotation">
    <div class="pull-quote__bg">
      <span class="pull-quote__symbol">“</span></div>
  </div>
</blockquote>

<h2 id="why-it-s-hard-to-tell-if-third-party-cookies-are-blocked">Why It’s Hard To Tell If Third-Party Cookies Are Blocked</h2>

<p>Detecting whether third-party cookies are supported isn’t as simple as calling <a href="https://developer.mozilla.org/en-US/docs/Web/API/Navigator/cookieEnabled"><code>navigator.cookieEnabled</code></a>. Even a well-intentioned check like this one may look safe, but it still won’t tell you what you actually need to know:</p>

<div class="break-out">
<pre><code class="language-javascript">// DOES NOT detect third-party cookie blocking
function areCookiesEnabled() {
  if (navigator.cookieEnabled === false) {
    return false;
  }

  try {
    document.cookie = "test&#95;cookie=1; SameSite=None; Secure";
    const hasCookie = document.cookie.includes("test&#95;cookie=1");
    document.cookie = "test&#95;cookie=; Max-Age=0; SameSite=None; Secure";

    return hasCookie;
  } catch (e) {
    return false;
  }
}
</code></pre>
</div>

<p>This function only confirms that cookies work in the current (first-party) context. <strong>It says nothing about third-party scenarios</strong>, like an iframe on another domain. Worse, it’s misleading: in some browsers, <code>navigator.cookieEnabled</code> may still return <code>true</code> inside a third-party iframe even when cookies are blocked. Others might behave differently, leading to inconsistent and unreliable detection.</p>

<p>These cross-browser inconsistencies &mdash; combined with the limitations of <a href="https://developer.mozilla.org/en-US/docs/Web/API/Document/cookie"><code>document.cookie</code></a> &mdash; make it clear that there is <strong>no shortcut for detection</strong>. To truly detect third-party cookie blocking, we need to understand <em>how</em> different browsers actually behave in embedded third-party contexts.</p>

<div data-audience="non-subscriber" data-remove="true" class="feature-panel-container">

<aside class="feature-panel" style="">
<div class="feature-panel-left-col">

<div class="feature-panel-description"><p>Meet <strong><a data-instant href="https://www.smashingconf.com/online-workshops/">Smashing Workshops</a></strong> on <strong>front-end, design &amp; UX</strong>, with practical takeaways, live sessions, <strong>video recordings</strong> and a friendly Q&amp;A. With Brad Frost, Stéph Walter and <a href="https://smashingconf.com/online-workshops/workshops">so many others</a>.</p>
<a data-instant href="smashing-workshops" class="btn btn--green btn--large" style="">Jump to the workshops&nbsp;↬</a></div>
</div>
<div class="feature-panel-right-col"><a data-instant href="smashing-workshops" class="feature-panel-image-link">
<div class="feature-panel-image">
<img
    loading="lazy"
    decoding="async"
    class="feature-panel-image-img"
    src="/images/smashing-cat/cat-scubadiving-panel.svg"
    alt="Feature Panel"
    width="257"
    height="355"
/>

</div>
</a>
</div>
</aside>
</div>

<h2 id="how-modern-browsers-handle-third-party-cookies">How Modern Browsers Handle Third-Party Cookies</h2>

<p>The behavior of modern browsers directly affects which detection methods will work and which ones silently fail.</p>

<h3 id="safari-full-third-party-cookie-blocking">Safari: Full Third-Party Cookie Blocking</h3>

<p>Since <a href="https://webkit.org/blog/10218/full-third-party-cookie-blocking-and-more/">version 13.1</a>, Safari blocks all third-party cookies by default, with no exceptions, even if the user previously interacted with the embedded domain. This policy is part of <a href="https://webkit.org/tracking-prevention/#intelligent-tracking-prevention-itp">Intelligent Tracking Prevention (ITP)</a>.</p>

<p>For embedded content (such as an SSO iframe) that requires cookie access, Safari exposes the <a href="https://developer.mozilla.org/en-US/docs/Web/API/Storage_Access_API">Storage Access API</a>, which requires a user gesture to grant storage permission. As a result, a test for third-party cookie support will nearly always fail in Safari unless the iframe explicitly requests access via this API.</p>

<h3 id="firefox-cookie-partitioning-by-design">Firefox: Cookie Partitioning By Design</h3>

<p>Firefox’s <a href="https://support.mozilla.org/en-US/kb/total-cookie-protection-and-website-breakage-faq#w_what-is-total-cookie-protection">Total Cookie Protection</a> isolates cookies on a per-site basis. Third-party cookies can still be set and read, but they are partitioned by the top-level site, meaning a cookie set by the same third-party on <em>siteA.com</em> and <em>siteB.com</em> is stored separately and cannot be shared.</p>

<p>As of <a href="https://support.mozilla.org/en-US/kb/introducing-total-cookie-protection-standard-mode">Firefox 102</a>, this behavior is enabled by default in the Standard (default) mode of <a href="https://support.mozilla.org/en-US/kb/enhanced-tracking-protection-firefox-desktop">Enhanced Tracking Protection</a>. Unlike the Strict mode &mdash; which <a href="https://support.mozilla.org/en-US/kb/enhanced-tracking-protection-firefox-desktop#w_strict-enhanced-tracking-protection">blocks third-party cookies entirely</a>, similar to Safari &mdash; the Standard mode does not block them outright. Instead, it neutralizes their tracking capability by isolating them per site.</p>

<p>As a result, even if a test shows that a third-party cookie was successfully set, it may be useless for cross-site logins or shared sessions due to this <strong>partitioning</strong>. Detection logic needs to account for that.</p>

<h3 id="chrome-from-deprecation-plans-to-privacy-sandbox-and-industry-pushback">Chrome: From Deprecation Plans To Privacy Sandbox (And Industry Pushback)</h3>

<p>Chromium-based browsers still allow third-party cookies by default &mdash; but the story is changing. Starting with <a href="https://blog.chromium.org/2019/10/developers-get-ready-for-new.html">Chrome 80</a>, third-party cookies must be explicitly marked with <code>SameSite=None; Secure</code>, or they will be rejected.</p>

<p>In <a href="https://blog.chromium.org/2020/01/building-more-private-web-path-towards.html">January 2020</a>, <strong>Google announced their intention</strong> to phase out third-party cookies by 2022. <strong>However, the timeline was updated multiple times</strong>, first in <a href="https://blog.google/products/chrome/updated-timeline-privacy-sandbox-milestones/?utm_source=chatgpt.com">June 2021</a> when the company pushed the rollout to begin in mid-2023 and conclude by the end of that year. Additional postponements followed in <a href="https://blog.google/products/chrome/update-testing-privacy-sandbox-web/">July 2022</a>, <a href="https://blog.google/products/chrome/privacy-sandbox-tracking-protection/">December 2023</a>, and <a href="https://privacysandbox.com/intl/en_us/news/update-on-the-plan-for-phase-out-of-third-party-cookies-on-chrome/">April 2024</a>.</p>

<p>In <a href="https://privacysandbox.com/news/privacy-sandbox-update/">July 2024</a>, <strong>Google has clarified that there is no plan to unilaterally deprecate third-party cookies or force users into a new model without consent</strong>. Instead, Chrome is shifting to a <strong>user-choice interface</strong> that will allow individuals to decide whether to block or allow third-party cookies globally.</p>

<p>This change was influenced in part by <a href="https://www.businessinsider.com/googles-plan-to-replace-tracking-cookies-faces-big-new-hurdles-2024-7">substantial pushback from the advertising industry</a>, as well as ongoing regulatory oversight, including <a href="https://www.gov.uk/cma-cases/investigation-into-googles-privacy-sandbox-browser-changes">scrutiny by the UK Competition and Markets Authority (CMA)</a> into <a href="https://privacysandbox.google.com">Google’s Privacy Sandbox initiative</a>. The CMA confirmed in a 2025 update that there is no intention to force a deprecation or trigger automatic prompts for cookie blocking.</p>

<p>As for now, <strong>third-party cookies remain enabled by default in Chrome</strong>. The new user-facing controls and the broader Privacy Sandbox ecosystem are still in various stages of experimentation and limited rollout.</p>

<h3 id="edge-chromium-based-tracker-focused-blocking-with-user-configurability">Edge (Chromium-Based): Tracker-Focused Blocking With User Configurability</h3>

<p>Edge (which is a Chromium-based browser) <a href="https://learn.microsoft.com/en-us/microsoftteams/platform/resources/samesite-cookie-update#samesite-cookie-attribute-2020-release">shares Chrome’s handling of third-party cookies</a>, including the <code>SameSite=None; Secure</code> requirement. Additionally, Edge introduces <a href="https://learn.microsoft.com/en-us/microsoft-edge/web-platform/tracking-prevention">Tracking Prevention</a> modes: Basic, Balanced (default), and Strict. In Balanced mode, it blocks known third-party trackers using Microsoft’s maintained list but allows many third-party cookies that are not classified as trackers. Strict mode blocks more resource loads than Balanced, which may result in some websites not behaving as expected.</p>

<h3 id="other-browsers-what-about-them">Other Browsers: What About Them?</h3>

<p>Privacy-focused browsers, like Brave, <a href="https://support.brave.com/hc/en-us/articles/360054509991-How-do-I-manage-Cookies-and-Site-data-in-Brave-on-Android?utm_source=chatgpt.com">block third-party cookies by default</a> as part of their strong anti-tracking stance.</p>

<p>Internet Explorer (IE) 11 <a href="https://support.microsoft.com/en-us/topic/description-of-cookies-ad01aa7e-66c9-8ab2-7898-6652c100999d">allowed third-party cookies depending on user privacy settings</a> and the presence of <a href="https://www.w3.org/P3P/">Platform for Privacy Preferences (P3P)</a> headers. However, IE usage is now negligible. Notably, the default “Medium” privacy setting in IE could block third-party cookies unless a valid P3P policy was present.</p>

<p>Older versions of Safari had partial third-party cookie restrictions (such as <em>“Allow from websites I visit”</em>), but, as mentioned before, this was replaced with full blocking via ITP.</p>

<p><strong>As of 2025, all major browsers either block or isolate third-party cookies by default, with the exception of Chrome, which still allows them in standard browsing mode pending the rollout of its new user-choice model.</strong></p>

<p>To account for these variations, your detection strategy must be grounded in real-world testing &mdash; specifically by reproducing a genuine third-party context such as loading your script within an iframe on a cross-origin domain &mdash; rather than relying on browser names or versions.</p>

<div class="partners__lead-place"></div>

<h2 id="overview-of-detection-techniques">Overview Of Detection Techniques</h2>

<p>Over the years, many techniques have been used to detect third-party cookie blocking. Most are unreliable or obsolete. Here’s a quick walkthrough of what doesn’t work (and why) and what does.</p>

<h3 id="basic-javascript-api-checks-misleading">Basic JavaScript API Checks (Misleading)</h3>

<p>As mentioned earlier, the <code>navigator.cookieEnabled</code> or setting <code>document.cookie</code> on the main page doesn’t reflect cross-site cookie status:</p>

<ul>
<li>In third-party iframes, <code>navigator.cookieEnabled</code> often returns <code>true</code> even when cookies are blocked.</li>
<li>Setting <code>document.cookie</code> in the parent doesn’t test the third-party context.</li>
</ul>

<p>These checks are first-party only. <strong>Avoid using them for detection.</strong></p>

<h3 id="storage-hacks-via-localstorage-obsolete">Storage Hacks Via <code>localStorage</code> (Obsolete)</h3>

<p>Previously, some developers inferred cookie support by checking if <code>window.localStorage</code> worked inside a third-party iframe &mdash; which is especially useful against older Safari versions that blocked all third-party storage.</p>

<p>Modern browsers often allow <code>localStorage</code> even when cookies are blocked. <strong>This leads to false positives and is no longer reliable.</strong></p>

<h3 id="server-assisted-cookie-probe-heavyweight">Server-Assisted Cookie Probe (Heavyweight)</h3>

<p>One classic method involves setting a cookie from a third-party domain via HTTP and then checking if it comes back:</p>

<ol>
<li>Load a script/image from a third-party server that sets a cookie.</li>
<li>Immediately load another resource, and the server checks whether the cookie was sent.</li>
</ol>

<p>This works, but it:</p>

<ul>
<li>Requires custom server-side logic,</li>
<li>Depends on HTTP caching, response headers, and cookie attributes (<code>SameSite=None; Secure</code>), and</li>
<li>Adds development and infrastructure complexity.</li>
</ul>

<p>While this is <strong>technically valid</strong>, it is not suitable for a front-end-only approach, which is our focus here.</p>

<h3 id="storage-access-api-supplemental-signal">Storage Access API (Supplemental Signal)</h3>

<p>The <code>document.hasStorageAccess()</code> method allows embedded third-party content to check if it has access to unpartitioned cookies:</p>

<ul>
<li><strong>Chrome</strong><br />
Supports <code>hasStorageAccess()</code> and <code>requestStorageAccess()</code> starting from <a href="https://privacysandbox.google.com/cookies/storage-access-api#top-level_page_access">version 119</a>. Additionally, <code>hasUnpartitionedCookieAccess()</code> is available as an alias for <code>hasStorageAccess()</code> from <a href="https://developer.mozilla.org/en-US/docs/Web/API/Document/hasUnpartitionedCookieAccess#browser_compatibility">version 125</a> onwards.</li>
<li><strong>Firefox</strong><br />
<a href="https://developer.mozilla.org/en-US/docs/Web/API/Storage_Access_API#browser_compatibility">Supports</a> both <code>hasStorageAccess()</code> and <code>requestStorageAccess()</code> methods.</li>
<li><strong>Safari</strong><br />
<a href="https://webkit.org/blog/11545/updates-to-the-storage-access-api/">Supports the Storage Access API</a>. However, <strong>access must always be triggered by a user interaction</strong>. For example, even calling <code>requestStorageAccess()</code> without a direct user gesture (like a click) is ignored.</li>
</ul>

<p>Chrome and Firefox also support the API, and in those browsers, it may work automatically or based on browser heuristics or site engagement.</p>

<p>This API is particularly useful for detecting scenarios where cookies are present but partitioned (e.g., Firefox’s Total Cookie Protection), as it helps determine if the iframe has unrestricted cookie access. But for now, it’s still best used as a <strong>supplemental signal</strong>, rather than a standalone check.</p>

<h3 id="iframe-postmessage-best-practice">iFrame + <code>postMessage</code> (Best Practice)</h3>

<p>Despite the existence of the Storage Access API, <strong>at the time of writing, this remains the most reliable and browser-compatible method</strong>:</p>

<ol>
<li>Embed a hidden iframe from a third-party domain.</li>
<li>Inside the iframe, attempt to set a test cookie.</li>
<li>Use <code>window.postMessage</code> to report success or failure to the parent.</li>
</ol>

<p>This approach works across all major browsers (when properly configured), requires no server (kind of, more on that next), and simulates a real-world third-party scenario.</p>

<p>We’ll implement this step-by-step next.</p>

<h3 id="bonus-sec-fetch-storage-access">Bonus: <code>Sec-Fetch-Storage-Access</code></h3>

<p>Chrome (starting in <a href="https://privacysandbox.google.com/blog/storage-access-headers-133">version 133</a>) is introducing <code>Sec-Fetch-Storage-Access</code>, an HTTP request header sent with cross-site requests to indicate whether the iframe has access to unpartitioned cookies. <strong>This header is only visible to servers and cannot be accessed via JavaScript.</strong> It’s useful for back-end analytics but not applicable for client-side cookie detection.</p>

<p>As of May 2025, this feature is only implemented in Chrome and is not supported by other browsers. However, it’s still good to know that it’s part of the evolving ecosystem.</p>

<h2 id="step-by-step-detecting-third-party-cookies-via-iframe">Step-by-Step: Detecting Third-Party Cookies Via iFrame</h2>

<p>So, what did I mean when I said that the last method we looked at “requires no server”? While this method doesn’t require any back-end logic (like server-set cookies or response inspection), it does require access to a separate domain &mdash; or at least a cross-site subdomain &mdash; to simulate a third-party environment. This means the following:</p>

<ul>
<li>You must serve the test page from a different domain or public subdomain, e.g., <code>example.com</code> and <code>cookietest.example.com</code>,</li>
<li>The domain needs HTTPS (for <code>SameSite=None; Secure</code> cookies to work), and</li>
<li>You’ll need to host a simple static file (the test page), even if no server code is involved.</li>
</ul>

<p>Once that’s set up, the rest of the logic is fully client-side.</p>

<h3 id="step-1-create-a-cookie-test-page-on-a-third-party-domain">Step 1: Create A Cookie Test Page (On A Third-Party Domain)</h3>

<p>Minimal version (e.g., <code>https://cookietest.example.com/cookie-check.html</code>):</p>

<div class="break-out">
<pre><code class="language-html">&lt;!DOCTYPE html&gt;
&lt;html&gt;
  &lt;body&gt;
    &lt;script&gt;
      document.cookie = "thirdparty&#95;test=1; SameSite=None; Secure; Path=/;";
      const cookieFound = document.cookie.includes("thirdparty&#95;test=1");
    
      const sendResult = (status) =&gt; window.parent?.postMessage(status, "&#42;");
    
      if (cookieFound && document.hasStorageAccess instanceof Function) {
        document.hasStorageAccess().then((hasAccess) =&gt; {
          sendResult(hasAccess ? "TP&#95;COOKIE&#95;SUPPORTED" : "TP&#95;COOKIE&#95;BLOCKED");
        }).catch(() =&gt; sendResult("TP&#95;COOKIE&#95;BLOCKED"));
      } else {
        sendResult(cookieFound ? "TP&#95;COOKIE_SUPPORTED" : "TP&#95;COOKIE_BLOCKED");
      }
    &lt;/script&gt;
  &lt;/body&gt;
&lt;/html&gt;
</code></pre>
</div>

<p>Make sure the page is served over HTTPS, and the cookie uses <code>SameSite=None; Secure</code>. Without these attributes, modern browsers will silently reject it.</p>

<h3 id="step-2-embed-the-iframe-and-listen-for-the-result">Step 2: Embed The iFrame And Listen For The Result</h3>

<p>On your main page:</p>

<div class="break-out">
<pre><code class="language-javascript">function checkThirdPartyCookies() {
  return new Promise((resolve) =&gt; {
    const iframe = document.createElement('iframe');
    iframe.style.display = 'none';
    iframe.src = "https://cookietest.example.com/cookie-check.html"; // your subdomain
    document.body.appendChild(iframe);

    let resolved = false;
    const cleanup = (result, timedOut = false) =&gt; {
      if (resolved) return;
      resolved = true;
      window.removeEventListener('message', onMessage);
      iframe.remove();
      resolve({ thirdPartyCookiesEnabled: result, timedOut });
    };

    const onMessage = (event) =&gt; {
      if (["TP&#95;COOKIE&#95;SUPPORTED", "TP&#95;COOKIE&#95;BLOCKED"].includes(event.data)) {
        cleanup(event.data === "TP&#95;COOKIE&#95;SUPPORTED", false);
      }
    };

    window.addEventListener('message', onMessage);
    setTimeout(() =&gt; cleanup(false, true), 1000);
  });
}
</code></pre>
</div>

<p>Example usage:</p>

<div class="break-out">
<pre><code class="language-javascript">checkThirdPartyCookies().then(({ thirdPartyCookiesEnabled, timedOut }) =&gt; {
  if (!thirdPartyCookiesEnabled) {
    someCookiesBlockedCallback(); // Third-party cookies are blocked.
    if (timedOut) {
      // No response received (iframe possibly blocked).
      // Optional fallback UX goes here.
      someCookiesBlockedTimeoutCallback();
    };
  }
});
</code></pre>
</div>

<h3 id="step-3-enhance-detection-with-the-storage-access-api">Step 3: Enhance Detection With The Storage Access API</h3>

<p>In Safari, even when third-party cookies are blocked, users can manually grant access through the Storage Access API &mdash; but only in response to a user gesture.</p>

<p>Here’s how you could implement that in your iframe test page:</p>

<div class="break-out">
<pre><code class="language-html">&lt;button id="enable-cookies"&gt;This embedded content requires cookie access. Click below to continue.&lt;/button&gt;

&lt;script&gt;
  document.getElementById('enable-cookies')?.addEventListener('click', async () =&gt; {
    if (document.requestStorageAccess && typeof document.requestStorageAccess === 'function') {
      try {
        const granted = await document.requestStorageAccess();
        if (granted !== false) {
          window.parent.postMessage("TP&#95;STORAGE&#95;ACCESS&#95;GRANTED", "&#42;");
        } else {
          window.parent.postMessage("TP&#95;STORAGE&#95;ACCESS&#95;DENIED", "&#42;");
        }
      } catch (e) {
        window.parent.postMessage("TP&#95;STORAGE&#95;ACCESS&#95;FAILED", "&#42;");
      }
    }
  });
&lt;/script&gt;
</code></pre>
</div>

<p>Then, on the parent page, you can listen for this message and retry detection if needed:</p>

<div class="break-out">
<pre><code class="language-javascript">// Inside the same `onMessage` listener from before:
if (event.data === "TP&#95;STORAGE&#95;ACCESS&#95;GRANTED") {
  // Optionally: retry the cookie test, or reload iframe logic
  checkThirdPartyCookies().then(handleResultAgain);
}
</code></pre>
</div>

<div class="partners__lead-place"></div>

<h2 id="bonus-a-purely-client-side-fallback-not-perfect-but-sometimes-necessary">(Bonus) A Purely Client-Side Fallback (Not Perfect, But Sometimes Necessary)</h2>

<p>In some situations, you might not have access to a second domain or can’t host third-party content under your control. That makes the iframe method unfeasible.</p>

<p>When that’s the case, your best option is to <strong>combine multiple signals</strong> &mdash; basic cookie checks, <code>hasStorageAccess()</code>, <code>localStorage</code> fallbacks, and maybe even passive indicators like load failures or timeouts &mdash; to <strong>infer</strong> whether third-party cookies are likely blocked.</p>

<p>The important caveat: <strong>This will never be 100% accurate.</strong> But, in constrained environments, “better something than nothing” may still improve the UX.</p>

<p>Here’s a basic example:</p>

<div class="break-out">
<pre><code class="language-javascript">async function inferCookieSupportFallback() {
  let hasCookieAPI = navigator.cookieEnabled;
  let canSetCookie = false;
  let hasStorageAccess = false;

  try {
    document.cookie = "testfallback=1; SameSite=None; Secure; Path=/;";
    canSetCookie = document.cookie.includes("test&#95;fallback=1");

    document.cookie = "test&#95;fallback=; Max-Age=0; Path=/;";
  } catch (&#95;) {
    canSetCookie = false;
  }

  if (typeof document.hasStorageAccess === "function") {
    try {
      hasStorageAccess = await document.hasStorageAccess();
    } catch (&#95;) {}
  }

  return {
    inferredThirdPartyCookies: hasCookieAPI && canSetCookie && hasStorageAccess,
    raw: { hasCookieAPI, canSetCookie, hasStorageAccess }
  };
}
</code></pre>
</div>

<p>Example usage:</p>

<div class="break-out">
<pre><code class="language-javascript">inferCookieSupportFallback().then(({ inferredThirdPartyCookies }) =&gt; {
  if (inferredThirdPartyCookies) {
    console.log("Cookies likely supported. Likely, yes.");
  } else {
    console.warn("Cookies may be blocked or partitioned.");
    // You could inform the user or adjust behavior accordingly
  }
});
</code></pre>
</div>

<p>Use this fallback when:</p>

<ul>
<li>You’re building a JavaScript-only widget embedded on unknown sites,</li>
<li>You don’t control a second domain (or the team refuses to add one), or</li>
<li>You just need <em>some</em> visibility into user-side behavior (e.g., debugging UX issues).</li>
</ul>

<p><strong>Don’t rely on it for security-critical logic (e.g., auth gating)!</strong> But it may help tailor the user experience, surface warnings, or decide whether to attempt a fallback SSO flow. Again, it’s better to have something rather than nothing.</p>

<h2 id="fallback-strategies-when-third-party-cookies-are-blocked">Fallback Strategies When Third-Party Cookies Are Blocked</h2>

<p>Detecting blocked cookies is only half the battle. Once you know they’re unavailable, what can you do? Here are some practical options that might be useful for you:</p>

<h3 id="redirect-based-flows">Redirect-Based Flows</h3>

<p>For auth-related flows, switch from embedded iframes to top-level redirects. Let the user authenticate directly on the identity provider&rsquo;s site, then redirect back. It works in all browsers, but the UX might be less seamless.</p>

<h3 id="request-storage-access">Request Storage Access</h3>

<p>Prompt the user using <code>requestStorageAccess()</code> after a clear UI gesture (Safari requires this). Use this to re-enable cookies <strong>without leaving the page</strong>.</p>

<h3 id="token-based-communication">Token-Based Communication</h3>

<p>Pass session info directly from parent to iframe via:</p>

<ul>
<li><a href="https://developer.mozilla.org/en-US/docs/Web/API/Window/postMessage"><code>postMessage</code></a> (with required <a href="https://owasp.org/www-project-web-security-testing-guide/latest/4-Web_Application_Security_Testing/11-Client-side_Testing/11-Testing_Web_Messaging"><code>origin</code></a>);</li>
<li>Query params (e.g., signed JWT in iframe URL).</li>
</ul>

<p>This avoids reliance on cookies entirely but requires coordination between both sides:</p>

<div class="break-out">
<pre><code class="language-javascript">// Parent
const iframe = document.getElementById('my-iframe');

iframe.onload = () =&gt; {
  const token = getAccessTokenSomehow(); // JWT or anything else
  iframe.contentWindow.postMessage(
    { type: 'AUTH&#95;TOKEN', token },
    'https://iframe.example.com' // Set the correct origin!
  );
};

// iframe
window.addEventListener('message', (event) =&gt; {
  if (event.origin !== 'https://parent.example.com') return;

  const { type, token } = event.data;

  if (type === 'AUTH&#95;TOKEN') {
    validateAndUseToken(token); // process JWT, init session, etc
  }
});
</code></pre>
</div>

<h3 id="partitioned-cookies-chips">Partitioned Cookies (CHIPS)</h3>

<p>Chrome (since version 114) and other Chromium-based browsers now support cookies with the Partitioned attribute (known as <a href="https://privacysandbox.google.com/cookies/chips">CHIPS</a>), allowing per-top-site cookie isolation. This is useful for widgets like chat or embedded forms where cross-site identity isn’t needed.</p>

<blockquote><strong>Note</strong>: Firefox and Safari don’t support the <code>Partitioned</code> cookie attribute. Firefox enforces cookie partitioning by default using a different mechanism (Total Cookie Protection), while Safari blocks third-party cookies entirely.</blockquote>

<p>But be careful, as they are treated as “blocked” by basic detection. Refine your logic if needed.</p>

<h2 id="final-thought-transparency-transition-and-the-path-forward">Final Thought: Transparency, Transition, And The Path Forward</h2>

<p>Third-party cookies are disappearing, albeit gradually and unevenly. Until the transition is complete, your job as a developer is to bridge the gap between technical limitations and real-world user experience. That means:</p>

<ul>
<li><strong>Keep an eye on the standards.</strong><br />
APIs like <a href="https://privacysandbox.google.com/cookies/fedcm">FedCM</a> and Privacy Sandbox features (<a href="https://privacysandbox.google.com/private-advertising/topics?hl=en">Topics</a>, <a href="https://privacysandbox.google.com/private-advertising/attribution-reporting">Attribution Reporting</a>, <a href="https://privacysandbox.google.com/private-advertising/fenced-frame">Fenced Frames</a>) are reshaping how we handle identity and analytics without relying on cross-site cookies.</li>
<li><strong>Combine detection with graceful fallback.</strong><br />
Whether it’s offering a redirect flow, using <code>requestStorageAccess()</code>, or falling back to token-based messaging &mdash; every small UX improvement adds up.</li>
<li><strong>Inform your users.</strong><br />
Users shouldn&rsquo;t be left wondering why something worked in one browser but silently broke in another. Don’t let them feel like they did something wrong &mdash; just help them move forward. A clear, friendly message can prevent this confusion.</li>
</ul>

<p>The good news? You don’t need a perfect solution today, just a resilient one. By detecting issues early and handling them thoughtfully, you protect both your users and your future architecture, one cookie-less browser at a time.</p>

<p>And as seen with Chrome’s pivot away from automatic deprecation, the transition is not always linear. Industry feedback, regulatory oversight, and evolving technical realities continue to shape the time and the solutions.</p>

<p>And don’t forget: <em>having something is better than nothing</em>.</p>

<div class="signature">
  <img src="https://www.smashingmagazine.com/images/logo/logo--red.png" alt="Smashing Editorial" width="35" height="46" loading="lazy" decoding="async" />
  <span>(yk)</span>
</div>


              </article>
            </body>
          </html>
        ]]></content:encoded></item><item><author>Vitaly Friedman</author><title>Data Vs. Findings Vs. Insights In UX</title><link>https://www.smashingmagazine.com/2025/05/data-vs-findings-vs-insights-ux/</link><pubDate>Tue, 27 May 2025 13:00:00 +0000</pubDate><guid>https://www.smashingmagazine.com/2025/05/data-vs-findings-vs-insights-ux/</guid><description>What’s the difference between data, findings, and UX insights? And how do you argue for statistical significance in your UX research? Let’s unpack it. Kindly powered by &lt;a href="https://measure-ux.com">How To Measure UX and Design Impact&lt;/a>, a friendly course on how to show the impact of your incredible UX work on business.</description><content:encoded><![CDATA[
          <html>
            <head>
              <meta charset="utf-8">
              <link rel="canonical" href="https://www.smashingmagazine.com/2025/05/data-vs-findings-vs-insights-ux/" />
              <title>Data Vs. Findings Vs. Insights In UX</title>
            </head>
            <body>
              <article>
                <header>
                  <h1>Data Vs. Findings Vs. Insights In UX</h1>
                  
                    
                    <address>Vitaly Friedman</address>
                  
                  <time datetime="2025-05-27T13:00:00&#43;00:00" class="op-published">2025-05-27T13:00:00+00:00</time>
                  <time datetime="2025-05-27T13:00:00&#43;00:00" class="op-modified">2026-02-09T03:03:08+00:00</time>
                </header>
                
                

<p>In many companies, <strong>data, findings, and insights</strong> are all used interchangeably. Slack conversations circle around convincing data points, statistically significant findings, reliable insights, and emerging trends. Unsurprisingly, conversations often <strong>mistake sporadic observations</strong> for consistent patterns.</p>

<p>But how impactful is the weight that each of them carries? And how do we <strong>turn raw data into meaningful insights</strong> to make better decisions? Well, let’s find out.</p>














<figure class="
  
  
  ">
  
    <a href="https://www.nngroup.com/videos/data-findings-insights/">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="735"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/mailing-94-data-findings-insights/1-mailing-94-data-findings-insights.jpg 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://files.smashing.media/articles/mailing-94-data-findings-insights/1-mailing-94-data-findings-insights.jpg 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://files.smashing.media/articles/mailing-94-data-findings-insights/1-mailing-94-data-findings-insights.jpg 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://files.smashing.media/articles/mailing-94-data-findings-insights/1-mailing-94-data-findings-insights.jpg 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://files.smashing.media/articles/mailing-94-data-findings-insights/1-mailing-94-data-findings-insights.jpg 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/mailing-94-data-findings-insights/1-mailing-94-data-findings-insights.jpg"
			
			sizes="100vw"
			alt="Data vs. Findings vs. Insights"
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      Data ≠ Findings ≠ Insights. <a href='https://www.nngroup.com/videos/data-findings-insights/'>Short video by NN/g</a> explains the differences between them.(<a href='https://files.smashing.media/articles/mailing-94-data-findings-insights/1-mailing-94-data-findings-insights.jpg'>Large preview</a>)
    </figcaption>
  
</figure>

<h2 id="why-it-all-matters">Why It All Matters</h2>

<p>At first, it may seem that the differences are very nuanced and merely technical. But when we <strong>review inputs and communicate the outcomes of our UX work</strong>, we need to be careful not to conflate terminology &mdash; to avoid wrong assumptions, wrong conclusions, and early dismissals.</p>














<figure class="
  
  
  ">
  
    <a href="https://swipefile.com/from-data-to-impact">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="800"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/mailing-94-data-findings-insights/2-mailing-94-data-findings-insights.jpg 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://files.smashing.media/articles/mailing-94-data-findings-insights/2-mailing-94-data-findings-insights.jpg 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://files.smashing.media/articles/mailing-94-data-findings-insights/2-mailing-94-data-findings-insights.jpg 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://files.smashing.media/articles/mailing-94-data-findings-insights/2-mailing-94-data-findings-insights.jpg 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://files.smashing.media/articles/mailing-94-data-findings-insights/2-mailing-94-data-findings-insights.jpg 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/mailing-94-data-findings-insights/2-mailing-94-data-findings-insights.jpg"
			
			sizes="100vw"
			alt="Gapingvoid illustration"
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      Raw data points is random and inconclusive. For it to be valuable, it must be turned into insights. Cartoon by <a href='https://swipefile.com/from-data-to-impact'>Hugh MacLeod</a>. (<a href='https://files.smashing.media/articles/mailing-94-data-findings-insights/2-mailing-94-data-findings-insights.jpg'>Large preview</a>)
    </figcaption>
  
</figure>

<p>When <strong>strong recommendations and bold statements</strong> emerge in a big meeting, inevitably, there will be people questioning the decision-making process. More often than not, they will be the loudest voices in the room, often with their own agenda and priorities that they are trying to protect.</p>

<p>As UX designers, we need to be prepared for it. The last thing we want is to have a <strong>weak line of thinking</strong>, easily dismantled under the premise of “weak research”, “unreliable findings”, “poor choice of users” &mdash; and hence dismissed straight away.</p>

<h2 id="data-findings-insights">Data ≠ Findings ≠ Insights</h2>

<p>People with different roles &mdash; analysts, data scientists, researchers, strategists &mdash; often rely on fine distinctions to make their decisions. The general difference is easy to put together:</p>

<ul>
<li><strong>Data</strong> is raw observations (logs, notes, survey answers) (<em>what was recorded</em>).</li>
<li><strong>Findings</strong> describe emerging patterns in data but aren’t actionable (<em>what happened</em>).</li>
<li><strong>Insights</strong> are business opportunities (<em>what happened + why + so what</em>).</li>
<li><strong>Hindsights</strong> are reflections of past actions and outcomes (<em>what we learned in previous work</em>).</li>
<li><strong>Foresights</strong> are informed projections, insights with extrapolation (<em>what could happen next</em>).</li>
</ul>














<figure class="
  
    break-out article__image
  
  
  ">
  
    <a href="https://dataforest.ai/blog/what-impact-do-data-insights-have-on-business-development">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="1011"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/mailing-94-data-findings-insights/3-mailing-94-data-findings-insights.jpg 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://files.smashing.media/articles/mailing-94-data-findings-insights/3-mailing-94-data-findings-insights.jpg 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://files.smashing.media/articles/mailing-94-data-findings-insights/3-mailing-94-data-findings-insights.jpg 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://files.smashing.media/articles/mailing-94-data-findings-insights/3-mailing-94-data-findings-insights.jpg 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://files.smashing.media/articles/mailing-94-data-findings-insights/3-mailing-94-data-findings-insights.jpg 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/mailing-94-data-findings-insights/3-mailing-94-data-findings-insights.jpg"
			
			sizes="100vw"
			alt="Data analytics value chart"
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      Business value emerges from turning hindsights into insights, then insights into foresights. (Image source: <a href='https://dataforest.ai/blog/what-impact-do-data-insights-have-on-business-development'>The Hidden Truth of Business</a>) (<a href='https://files.smashing.media/articles/mailing-94-data-findings-insights/3-mailing-94-data-findings-insights.jpg'>Large preview</a>)
    </figcaption>
  
</figure>

<p>Here’s what it then looks like in real life:</p>

<ul>
<li><strong>Data ↓</strong><br />
Six users were looking for ”Money transfer” in “Payments”, and <strong>4 users discovered</strong> the feature in their personal dashboard.</li>
<li><strong>Finding ↓</strong><br />
60% of users <strong>struggled to find</strong> the “Money transfer” feature on a dashboard, often confusing it with the “Payments” section.</li>
<li><strong>Insight ↓</strong><br />
Navigation doesn’t match users’ mental models for money transfers, causing confusion and delays. We recommend <strong>renaming sections or reorganizing the dashboard</strong> to prioritize “Transfer Money”. It could make task completion more intuitive and efficient.</li>
<li><strong>Hindsight ↓</strong><br />
After renaming the section to “Transfer Money” and moving it to the main dashboard, <strong>task success increased by 12%</strong>. User confusion dropped in follow-up tests. It proved to be an effective solution.</li>
<li><strong>Foresight ↓</strong><br />
As our financial products become more complex, users will expect simpler <strong>task-oriented navigation</strong> (e.g., “Send Money”, “Pay Bills“) instead of categories like “Payments”. We should evolve the dashboard towards action-driven IA to meet user expectations.</li>
</ul>

<p><strong>Only insights create understanding</strong> and drive strategy. Foresights shape strategy, too, but are always shaped by bets and assumptions. So, unsurprisingly, stakeholders are interested in insights, not findings. They rarely need to dive into raw data points. But often, they do want to make sure that <strong>findings are reliable</strong>.</p>

<p>That’s when, eventually, the big question about <strong>statistical significance</strong> comes along. And that’s when ideas and recommendations often get dismissed without a chance to be explored or explained.</p>

<div class="partners__lead-place"></div>

<h2 id="but-is-it-statistically-significant">But Is It Statistically Significant?</h2>

<p>Now, for UX designers, that’s an incredibly difficult question to answer. As Nikki Anderson <a href="https://www.linkedin.com/posts/nikkianderson-ux_is-this-statistically-significant-every-activity-7307757817434697729-qZk5/">pointed out</a>, statistical significance <strong>was never designed for qualitative research</strong>. And with UX work, we’re not trying to publish academic research or prove universal truths.</p>

<p>What we <em>are</em> trying to do is reach <strong>theoretical saturation</strong>, the point where additional research doesn’t give us new insights. Research isn’t about proving something is true. It’s about preventing costly mistakes before they happen.</p>














<figure class="
  
  
  ">
  
    <a href="https://www.linkedin.com/posts/nikkianderson-ux_stop-calling-it-an-insight-if-its-just-activity-7317547275021344770-hiZI/">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="707"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/mailing-94-data-findings-insights/4-mailing-94-data-findings-insights.jpg 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://files.smashing.media/articles/mailing-94-data-findings-insights/4-mailing-94-data-findings-insights.jpg 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://files.smashing.media/articles/mailing-94-data-findings-insights/4-mailing-94-data-findings-insights.jpg 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://files.smashing.media/articles/mailing-94-data-findings-insights/4-mailing-94-data-findings-insights.jpg 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://files.smashing.media/articles/mailing-94-data-findings-insights/4-mailing-94-data-findings-insights.jpg 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/mailing-94-data-findings-insights/4-mailing-94-data-findings-insights.jpg"
			
			sizes="100vw"
			alt="Data analytics value chart"
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      <a href='https://www.linkedin.com/posts/nikkianderson-ux_stop-calling-it-an-insight-if-its-just-activity-7317547275021344770-hiZI/'>Consequence cheat sheet by Nikki Anderson</a> for turning findings into insights. (<a href='https://files.smashing.media/articles/mailing-94-data-findings-insights/4-mailing-94-data-findings-insights.jpg'>Large preview</a>)
    </figcaption>
  
</figure>

<p>Here are some <strong>useful talking points</strong> to handle the question:</p>

<ul>
<li><strong>Five users per segment</strong> often <strong>surface major issues</strong>, and 10&ndash;15 users per segment usually reach saturation. If we’re still getting new insights after that, our scope is too broad.</li>
<li>“If five people hit the same pothole and wreck their car, how many more do you need before fixing the road?”</li>
<li>“If three enterprise customers say onboarding is confusing, that’s a <strong>churn risk</strong>.”</li>
<li>“If two usability tests expose a checkout issue, that’s <strong>abandoned revenue</strong>.”</li>
<li>“If one customer interview reveals a security concern, that’s a <strong>crisis waiting to happen</strong>.”</li>
<li>“How many user complaints exactly do we need to take this seriously?”</li>
<li>“How much revenue exactly are we willing to lose before fixing this issue?”</li>
</ul>

<p>And: it might not be necessary to focus on the number of participants, but instead, argue about <strong>users consistently struggling with a feature</strong>, mismatch of expectations, and a clear pattern emerging around a particular pain point.</p>

<h2 id="how-to-turn-findings-into-insights">How To Turn Findings Into Insights</h2>

<p>Once we notice patterns emerging, we need to turn them into actionable recommendations. Surprisingly, this isn’t always easy &mdash; we need to <strong>avoid easy guesses and assumptions</strong> as far as possible, as they will invite wrong conclusions.</p>

<p>To do that, you can rely on a very simple but effective framework to turn findings into insights: <strong>What Happened + Why + So What</strong>:</p>

<ul>
<li><strong>“What happened”</strong> covers observed behavior and patterns.</li>
<li><strong>“Why”</strong> includes beliefs, expectations, or triggers.</li>
<li><strong>“So What”</strong> addresses impact, risk, and business opportunity.</li>
</ul>

<p>To better assess the “so what” part, we should pay close attention to the impact of what we have noticed on desired business outcomes. It can be anything from high-impact blockers and confusion to <strong>hesitation and inaction</strong>.</p>

<p>I can wholeheartedly recommend exploring <strong>Findings → Insights Cheatsheet</strong> in <a href="https://www.linkedin.com/posts/nikkianderson-ux_stop-calling-it-an-insight-if-its-just-activity-7317547275021344770-hiZI/">Nikki Anderson’s wonderful slide deck</a>, which has examples and prompts to use to turn findings into insights.</p>

<h2 id="stop-sharing-findings-deliver-insights">Stop Sharing Findings — Deliver Insights</h2>

<p>When presenting the outcomes of your UX work, focus on <strong>actionable recommendations and business opportunities</strong> rather than patterns that emerged during testing.</p>

<p>To me, it’s all about telling a <strong>good damn story</strong>. Memorable, impactful, feasible, and convincing. Paint the picture of what the future could look like and the difference it would produce. That’s where the biggest impact of UX work emerges.</p>

<h2 id="how-to-measure-ux-and-design-impact">How To Measure UX And Design Impact</h2>

<p>Meet <a href="https://measure-ux.com/">Measure UX &amp; Design Impact</a> (8h), a <strong>practical guide for designers and UX leads</strong> to shape, measure, and explain your incredible UX impact on business. Recorded and updated by Vitaly Friedman. Use the friendly code 🎟 <strong><code>IMPACT</code></strong> to <strong>save 20% off</strong> today. <a href="https://measure-ux.com">Jump to the details</a>.</p>

<figure style="margin-bottom:0;padding-bottom:0" class="break-out article__image">
    <a href="https://measure-ux.com/" title="How To Measure UX and Design Impact, with Vitaly Friedman">
    <img width="900" height="466" style="border-radius: 11px" src="https://files.smashing.media/articles/ux-metrics-video-course-release/measure-ux-and-design-impact-course.png" alt="How to Measure UX and Design Impact, with Vitaly Friedman.">
    </a>
</figure>

<div class="book-cta__inverted"><div class="book-cta" data-handler="ContentTabs" data-mq="(max-width: 480px)"><nav class="content-tabs content-tabs--books"><ul><li class="content-tab"><a href="#"><button class="btn btn--small btn--white btn--white--bordered">
Video + UX Training</button></a></li><li class="content-tab"><a href="#"><button class="btn btn--small btn--white btn--white--bordered">Video only</button></a></li></ul></nav><div class="book-cta__col book-cta__hardcover content-tab--content"><h3 class="book-cta__title"><span>Video + UX Training</span></h3><span class="book-cta__price"><span><span class=""><span class="currency-sign">$</span>&nbsp;<span>495<span class="sup">.00</span></span></span> <span class="book-cta__price--old"><span class="currency-sign">$</span>&nbsp;<span>799<span class="sup">.00</span></span></span></span></span>
<a href="https://smart-interface-design-patterns.thinkific.com/enroll/3081832?price_id=3951439" class="btn btn--full btn--medium btn--text-shadow">
Get Video + UX Training<div></div></a><p class="book-cta__desc">25 video lessons (8h) + <a href="https://smashingconf.com/online-workshops/workshops/vitaly-friedman-impact-design/">Live UX Training</a>.<br>100 days money-back-guarantee.</p></div><div class="book-cta__col book-cta__ebook content-tab--content"><h3 class="book-cta__title"><span>Video only</span></h3><div data-audience="anonymous free supporter" data-remove="true"><span class="book-cta__price" data-handler="PriceTag"><span><span class=""><span class="currency-sign">$</span>&nbsp;<span>250<span class="sup">.00</span></span></span><span class="book-cta__price--old"><span class="currency-sign">$</span>&nbsp;<span>395<span class="sup">.00</span></span></span></span></div>
<a href="https://smart-interface-design-patterns.thinkific.com/enroll/3081832?price_id=3950630" class="btn btn--full btn--medium btn--text-shadow">
Get the video course<div></div></a><p class="book-cta__desc" data-audience="anonymous free supporter" data-remove="true">25 video lessons (8h). Updated yearly.<br>Also available as a <a href="https://smart-interface-design-patterns.thinkific.com/enroll/3082557?price_id=3951421">UX Bundle with 2 video courses.</a></p></div><span></span></div></div>

<h3 id="further-reading-on-smashing-magazine">Further Reading on Smashing Magazine</h3>

<ul>
<li>“<a href="https://www.smashingmagazine.com/2025/02/human-element-using-research-psychology-elevate-data-storytelling/">The Human Element: Using Research And Psychology To Elevate Data Storytelling</a>,” Victor Yocco &amp; Angelica Lo Duca</li>
<li>“<a href="https://www.smashingmagazine.com/2025/02/integrations-from-simple-data-transfer-to-composable-architectures/">Integrations: From Simple Data Transfer To Modern Composable Architectures</a>,” Edoardo Dusi</li>
<li>“<a href="https://www.smashingmagazine.com/2024/06/scaling-success-key-insights-pratical-takeaways/">Scaling Success: Key Insights And Practical Takeaways</a>,” Addy Osmani</li>
<li>“<a href="https://www.smashingmagazine.com/2024/09/embracing-introversion-in-ux/">Embracing Introversion In UX</a>,” Victor Yocco</li>
</ul>

<div class="signature">
  <img src="https://www.smashingmagazine.com/images/logo/logo--red.png" alt="Smashing Editorial" width="35" height="46" loading="lazy" decoding="async" />
  <span>(mrn, yk)</span>
</div>


              </article>
            </body>
          </html>
        ]]></content:encoded></item><item><author>Frederick O’Brien</author><title>What Zen And The Art Of Motorcycle Maintenance Can Teach Us About Web Design</title><link>https://www.smashingmagazine.com/2025/05/what-zen-art-motorcycle-maintenance-teach-web-design/</link><pubDate>Fri, 23 May 2025 11:00:00 +0000</pubDate><guid>https://www.smashingmagazine.com/2025/05/what-zen-art-motorcycle-maintenance-teach-web-design/</guid><description>Road-tripping along the line between engineering and spirituality, Robert M. Pirsig’s musings on the arts, sciences, and Quality ring as true now as they ever have.</description><content:encoded><![CDATA[
          <html>
            <head>
              <meta charset="utf-8">
              <link rel="canonical" href="https://www.smashingmagazine.com/2025/05/what-zen-art-motorcycle-maintenance-teach-web-design/" />
              <title>What Zen And The Art Of Motorcycle Maintenance Can Teach Us About Web Design</title>
            </head>
            <body>
              <article>
                <header>
                  <h1>What Zen And The Art Of Motorcycle Maintenance Can Teach Us About Web Design</h1>
                  
                    
                    <address>Frederick O’Brien</address>
                  
                  <time datetime="2025-05-23T11:00:00&#43;00:00" class="op-published">2025-05-23T11:00:00+00:00</time>
                  <time datetime="2025-05-23T11:00:00&#43;00:00" class="op-modified">2026-02-09T03:03:08+00:00</time>
                </header>
                
                

<p>I think we, as engineers and designers, have a lot to gain by stepping outside of our worlds. That’s why in previous pieces I’ve been drawn towards <a href="https://www.smashingmagazine.com/2020/06/vitruvius-web-design/">architecture</a>, <a href="https://www.smashingmagazine.com/2019/11/newspapers-teach-web-design/">newspapers</a>, and the occasional <a href="https://www.smashingmagazine.com/2023/03/leonardo-da-vinci-teach-web-design/">polymath</a>. Today, we stumble blindly into the world of <strong>philosophy</strong>. Bear with me. I think there’s something to it.</p>

<p>In 1974, the American philosopher Robert M. Pirsig published a book called <em>Zen and the Art of Motorcycle Maintenance</em>. A flowing blend of autobiography, road trip diary, and philosophical musings, the book’s <a href="https://en.wikipedia.org/wiki/Chautauqua">‘chautauqua’</a> is an <strong>interplay between art, science, and self</strong>. Its outlook on life has stuck with me since I read it.</p>

<p>The book often feels prescient, at times surreal to read given it’s now 50 years old. Pirsig’s reflections on arts vs. sciences, subjective vs. objective, and systems vs. people translate seamlessly to the digital age. There are lessons there that I think are useful when trying to navigate &mdash; and build &mdash; the web. Those lessons are what this piece is about.</p>

<p>I feel obliged at this point to echo Pirsig and say that what follows should in no way be associated with the great body of factual information about Zen Buddhist practice. It’s not very factual in terms of web development, either.</p>

<div data-audience="non-subscriber" data-remove="true" class="feature-panel-container">

<aside class="feature-panel" style="">
<div class="feature-panel-left-col">

<div class="feature-panel-description"><p>Roll up your sleeves and <strong>boost your UX skills</strong>! Meet <strong><a data-instant href="https://smart-interface-design-patterns.com/">Smart Interface Design Patterns</a></strong>&nbsp;🍣, a 10h video library by Vitaly Friedman. <strong>100s of real-life examples</strong> and live UX training. <a href="https://www.youtube.com/watch?v=3mwZztmGgbE">Free preview</a>.</p>
<a data-instant href="https://smart-interface-design-patterns.com/" class="btn btn--green btn--large" style="">Jump to table of contents&nbsp;↬</a></div>
</div>
<div class="feature-panel-right-col"><a data-instant href="https://smart-interface-design-patterns.com/" class="feature-panel-image-link">
<div class="feature-panel-image"><picture><source type="image/avif" srcSet="https://archive.smashing.media/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/3155f571-450d-42f9-81b4-494aa9b52841/video-course-smart-interface-design-patterns-vitaly-friedman.avif" />
<img
    loading="lazy"
    decoding="async"
    class="feature-panel-image-img"
    src="https://archive.smashing.media/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/8c98e7f9-8e62-4c43-b833-fc6bf9fea0a9/video-course-smart-interface-design-patterns-vitaly-friedman.jpg"
    alt="Feature Panel"
    width="690"
    height="790"
/>
</picture>
</div>
</a>
</div>
</aside>
</div>

<h2 id="buddha-in-the-machine">Buddha In The Machine</h2>

<p><em>Zen</em> is written in stages. It sets a scene before making its central case. That backdrop is important, so I will mirror it here. The book opens with the start of a motorcycle road trip undertaken by Pirsig and his son. It’s a winding journey that takes them most of the way across the United States.</p>

<p>Despite the trip being in part characterized as a flight from the machine, from the industrial ‘death force’, Pirsig takes great pains to emphasize that technology is not inherently bad or destructive. Treating it as such actually prevents us from finding ways in which machinery and nature can be harmonious.</p>

<p>Granted, at its worst, the technological world does feel like a death force. In the book’s 1970s backdrop, it manifests as things like efficiency, profit, optimization, automation, growth &mdash; the kinds of words that, when we read them listed together, a part of our soul wants to curl up in the fetal position.</p>

<p>In modern tech, those same forces apply. We might add things like engagement and tracking to them. Taken to the extreme, these forces contribute to the web feeling like a <strong>deeply inhuman place</strong>. Something cold, calculating, and relentless, yet without a fire in its belly. Impersonal, mechanical, inhuman.</p>

<p>Faced with these forces, the impulse is often to recoil. To shut our laptops and wander into the woods. However, there is a big difference between clearing one’s head and burying it in the sand. Pirsig argues that <em>“Flight from and hatred of technology is self-defeating.”</em> To throw our hands up and step away from tech is to concede to the power of its more sinister forces.</p>

<blockquote>“The Buddha, the Godhead, resides quite as comfortably in the circuits of a digital computer or the gears of a cycle transmission as he does at the top of a mountain or in the petals of a flower. To think otherwise is to demean the Buddha &mdash; which is to demean oneself.”<br /><br />&mdash; Robert M. Pirsig</blockquote>

<p>Before we can concern ourselves with questions about what we might do, we must try our best to marshal how we might be. We take our heads and hearts with us wherever we go. If we characterize ourselves as powerless pawns, then that is what we will be.</p>














<figure class="
  
  
  ">
  
    <a href="https://files.smashing.media/articles/zen-and-art-of-motorcycle-maintenance-teach-us-about-web-design/2-zen-and-art-of-motorcycle-maintenance-teach-us-about-web-design.png">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="497"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/zen-and-art-of-motorcycle-maintenance-teach-us-about-web-design/2-zen-and-art-of-motorcycle-maintenance-teach-us-about-web-design.png 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://files.smashing.media/articles/zen-and-art-of-motorcycle-maintenance-teach-us-about-web-design/2-zen-and-art-of-motorcycle-maintenance-teach-us-about-web-design.png 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://files.smashing.media/articles/zen-and-art-of-motorcycle-maintenance-teach-us-about-web-design/2-zen-and-art-of-motorcycle-maintenance-teach-us-about-web-design.png 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://files.smashing.media/articles/zen-and-art-of-motorcycle-maintenance-teach-us-about-web-design/2-zen-and-art-of-motorcycle-maintenance-teach-us-about-web-design.png 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://files.smashing.media/articles/zen-and-art-of-motorcycle-maintenance-teach-us-about-web-design/2-zen-and-art-of-motorcycle-maintenance-teach-us-about-web-design.png 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/zen-and-art-of-motorcycle-maintenance-teach-us-about-web-design/2-zen-and-art-of-motorcycle-maintenance-teach-us-about-web-design.png"
			
			sizes="100vw"
			alt="Buddha in the machine"
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      (<a href='https://files.smashing.media/articles/zen-and-art-of-motorcycle-maintenance-teach-us-about-web-design/2-zen-and-art-of-motorcycle-maintenance-teach-us-about-web-design.png'>Large preview</a>)
    </figcaption>
  
</figure>

<p>Where design and development are concerned, that means <strong>residing in the technology without losing our sense of self</strong> &mdash; or power. Technology is only as good or evil, as useful or as futile, as the people shaping it. Be it the internet or artificial intelligence, to direct blame or ire at the technology itself is to absolve ourselves of the responsibility to use it better. It is better not to demean oneself, I think.</p>

<p>So, with the Godhead in mind, to business.</p>

<h2 id="classical-and-romantic">Classical And Romantic</h2>

<p>A core concern of <em>Zen and the Art of Motorcycle Maintenance</em> is the tension between the arts and sciences. The two worlds have a long, rich history of squabbling and dysfunction. There is often mutual distrust, suspicion, and even hostility. This, again, is self-defeating. Hatred of technology is a symptom of it.</p>

<blockquote>“A classical understanding sees the world primarily as the underlying form itself. A romantic understanding sees it primarily in terms of immediate appearance.”<br /><br />&mdash; Robert M. Pirsig</blockquote>

<p>If we were to characterize the two as bickering siblings, familiar adjectives might start to appear:</p>

<table class="tablesaw break-out">
    <thead>
        <tr>
            <th>Classical</th>
            <th>Romantic</th>
        </tr>
    </thead>
    <tbody>
        <tr>
            <td>Dull</td>
            <td>Frivolous</td>
        </tr>
        <tr>
            <td>Awkward</td>
            <td>Irrational</td>
        </tr>
        <tr>
            <td>Ugly</td>
            <td>Erratic</td>
        </tr>
    <tr>
            <td>Mechanical</td>
            <td>Untrustworthy</td>
        </tr>
    <tr>
            <td>Cold</td>
            <td>Fleeting</td>
        </tr>
    </tbody>
</table>

<p>Anyone in the world of web design and development will have come up against these kinds of standoffs. Tensions arise between testing and intuition, best practices and innovation, structure and fluidity. Is design about following rules or breaking them?</p>

<p>Treating such questions as binary is a fallacy. In doing so, we place ourselves in adversarial positions, whatever we consider ourselves to be. The best work comes from these worlds working together &mdash; from recognising <strong>they are bound</strong>.</p>

<p>Steve Jobs was a famous advocate of this.</p>

<blockquote>“Technology alone is not enough &mdash; it’s technology married with liberal arts, married with the humanities, that yields us the result that makes our heart sing.”<br /><br />&mdash; <a href="https://www.nexxworks.com/blog/why-liberal-arts-and-the-humanities-are-as-important-as-engineering-guest-blog#:~:text=Steve%20Jobs%20touted%20the%20importance,that%20more%20true%20than%20in">Steve Jobs</a></blockquote>

<p>Whatever you may feel about Jobs himself, I think this sentiment is watertight. No one field holds all the keys. <a href="https://www.smashingmagazine.com/2023/03/leonardo-da-vinci-teach-web-design/">Leonardo da Vinci</a> was a shining example of doing away with this needless siloing of worlds. He was a student of light, anatomy, art, architecture, everything and anything that interested him. And they complemented each other. <strong>Excellence is a question of harmony.</strong></p>

<p>Is a motorcycle a romantic or classical artifact? Is it a machine or a symbol? A series of parts or a whole? It’s all these things and more. To say otherwise does a disservice to the motorcycle and deprives us of its full beauty.</p>














<figure class="
  
  
  ">
  
    <a href="https://files.smashing.media/articles/zen-and-art-of-motorcycle-maintenance-teach-us-about-web-design/4-motorcycle.png">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="766"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/zen-and-art-of-motorcycle-maintenance-teach-us-about-web-design/4-motorcycle.png 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://files.smashing.media/articles/zen-and-art-of-motorcycle-maintenance-teach-us-about-web-design/4-motorcycle.png 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://files.smashing.media/articles/zen-and-art-of-motorcycle-maintenance-teach-us-about-web-design/4-motorcycle.png 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://files.smashing.media/articles/zen-and-art-of-motorcycle-maintenance-teach-us-about-web-design/4-motorcycle.png 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://files.smashing.media/articles/zen-and-art-of-motorcycle-maintenance-teach-us-about-web-design/4-motorcycle.png 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/zen-and-art-of-motorcycle-maintenance-teach-us-about-web-design/4-motorcycle.png"
			
			sizes="100vw"
			alt="artifact"
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      (<a href='https://files.smashing.media/articles/zen-and-art-of-motorcycle-maintenance-teach-us-about-web-design/4-motorcycle.png'>Large preview</a>)
    </figcaption>
  
</figure>

<p>Just by reframing the relationship in this way, the kinds of adjectives that come to mind naturally shift toward more harmonious territory.</p>

<table class="tablesaw break-out">
    <thead>
        <tr>
            <th>Classical</th>
            <th>Romantic</th>
        </tr>
    </thead>
    <tbody>
        <tr>
            <td>Organized</td>
            <td>Vibrant</td>
        </tr>
        <tr>
            <td>Scaleable</td>
            <td>Evocative</td>
        </tr>
        <tr>
            <td>Reliable</td>
            <td>Playful</td>
        </tr>
    <tr>
            <td>Efficient</td>
            <td>Fun</td>
        </tr>
    <tr>
            <td>Replicable</td>
            <td>Expressive</td>
        </tr>
    </tbody>
</table>

<p>And, of course, when we try thinking this way, the distinction itself starts feeling fuzzier. There is so much that they share.</p>

<p>Pirsig posits that the division between the subjective and objective is one of the great missteps of the Greeks, one that has been embraced wholeheartedly by the West in the millennia since. That doesn’t have to be the lens, though. Perhaps <strong>monism</strong>, not dualism, is the way.</p>

<p>In a sense, technology marks the ultimate interplay between the arts and the sciences, the classical and the romantic. It is the human condition brought to you with ones and zeros. To separate those parts of it is to tear apart the thing itself.</p>














<figure class="
  
  
  ">
  
    <a href="https://files.smashing.media/articles/zen-and-art-of-motorcycle-maintenance-teach-us-about-web-design/5-zen-and-art-of-motorcycle-maintenance-teach-us-about-web-design.png">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="759"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/zen-and-art-of-motorcycle-maintenance-teach-us-about-web-design/5-zen-and-art-of-motorcycle-maintenance-teach-us-about-web-design.png 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://files.smashing.media/articles/zen-and-art-of-motorcycle-maintenance-teach-us-about-web-design/5-zen-and-art-of-motorcycle-maintenance-teach-us-about-web-design.png 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://files.smashing.media/articles/zen-and-art-of-motorcycle-maintenance-teach-us-about-web-design/5-zen-and-art-of-motorcycle-maintenance-teach-us-about-web-design.png 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://files.smashing.media/articles/zen-and-art-of-motorcycle-maintenance-teach-us-about-web-design/5-zen-and-art-of-motorcycle-maintenance-teach-us-about-web-design.png 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://files.smashing.media/articles/zen-and-art-of-motorcycle-maintenance-teach-us-about-web-design/5-zen-and-art-of-motorcycle-maintenance-teach-us-about-web-design.png 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/zen-and-art-of-motorcycle-maintenance-teach-us-about-web-design/5-zen-and-art-of-motorcycle-maintenance-teach-us-about-web-design.png"
			
			sizes="100vw"
			alt="Guardian Website Code"
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      <a href='https://mango-dune-07a8b7110.1.azurestaticapps.net/?repo=guardian%2Fdotcom-rendering'>A visualization of the Guardian website’s code.</a> You tell me where the classical stops and the romantic begins. (<a href='https://files.smashing.media/articles/zen-and-art-of-motorcycle-maintenance-teach-us-about-web-design/5-zen-and-art-of-motorcycle-maintenance-teach-us-about-web-design.png'>Large preview</a>)
    </figcaption>
  
</figure>

<p>The same is true of the web. Is it romantic or classical? Art or science? Structured or anarchic? It is all those things and more. Engineering at its best is where all these apparent contradictions meet and become one.</p>

<p>What is this place? Well, that brings us to a core concept of Pirsig’s book: <strong>Quality</strong>.</p>

<div class="partners__lead-place"></div>

<h2 id="quality">Quality</h2>

<p>The central concern of <em>Zen and the Art of Motorcycle Maintenance</em> is the ‘Metaphysics of Quality’. Pirsig argues that ‘Quality’ is where subjective and objective experience meet. Quality is at the <strong>knife edge of experience</strong>.</p>

<blockquote>“Quality is the continuing stimulus which our environment puts upon us to create the world in which we live. All of it. Every last bit of it.”<br /><br />&mdash; Robert M. Pirsig</blockquote>

<p>Pirsig&rsquo;s writings overlap a lot with Taoism and Eastern philosophy, to the extent that he likens Quality to the Tao. Quality is similarly <strong>undefinable</strong>, with Pirsig himself making a point of not defining it. Like the Tao, Plato’s Form of the Good, or the <a href="https://blog.gitbutler.com/why-github-actually-won/">‘good taste’</a> to which GitHub cofounder Scott Chacon recently attributed the platform’s success, it simply is.</p>














<figure class="
  
  
  ">
  
    <a href="https://files.smashing.media/articles/zen-and-art-of-motorcycle-maintenance-teach-us-about-web-design/6-metaphysics-quality.png">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="555"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/zen-and-art-of-motorcycle-maintenance-teach-us-about-web-design/6-metaphysics-quality.png 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://files.smashing.media/articles/zen-and-art-of-motorcycle-maintenance-teach-us-about-web-design/6-metaphysics-quality.png 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://files.smashing.media/articles/zen-and-art-of-motorcycle-maintenance-teach-us-about-web-design/6-metaphysics-quality.png 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://files.smashing.media/articles/zen-and-art-of-motorcycle-maintenance-teach-us-about-web-design/6-metaphysics-quality.png 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://files.smashing.media/articles/zen-and-art-of-motorcycle-maintenance-teach-us-about-web-design/6-metaphysics-quality.png 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/zen-and-art-of-motorcycle-maintenance-teach-us-about-web-design/6-metaphysics-quality.png"
			
			sizes="100vw"
			alt="Metaphysics of Quality"
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      (<a href='https://files.smashing.media/articles/zen-and-art-of-motorcycle-maintenance-teach-us-about-web-design/6-metaphysics-quality.png'>Large preview</a>)
    </figcaption>
  
</figure>

<p>Despite its nebulous nature, Quality is something we recognise when we see it. Any given problem or question has an infinite number of potential solutions, but we are drawn to the best ones as water flows toward the sea. When in a hostile environment, we withdraw from it, responding to a lack of Quality around us.</p>

<p>We are drawn to Quality, to the <strong>point at which subjective and objective, romantic and classical, meet</strong>. There is no map, there isn’t a bullet point list of instructions for finding it, but we know it when we’re there.</p>

<h2 id="a-quality-web">A Quality Web</h2>

<p>So, what does all this look like in a web context? How can we recognize and pursue Quality for its own sake and resist the forces that pull us away from it?</p>

<p>There are a lot of ways in which the web is not what we’d call a Quality environment. When we use social media sites with algorithms designed around provocation rather than communication, when we’re assailed with ads to such an extent that content feels (and often is) secondary, and when AI-generated slop replaces artisanal craft, something feels off. We feel the absence of Quality.</p>

<p>Here are a few habits that I think work in the service of more Quality on the web.</p>

<h3 id="seek-to-understand-how-things-work">Seek To Understand How Things Work</h3>

<p>I’m more guilty than anyone of diving into projects without taking time to step back and assess what I’m actually dealing with. As you can probably guess from the title, a decent amount of time in <em>Zen and the Art of Motorcycle Maintenance</em> is spent with the author as he tinkers with his motorcycle. Keeping it tuned up and in good repair makes it work better, of course, but the practice has deeper, more understated value, too. It lends itself to <em>understanding</em>.</p>

<p>To maintain a motorcycle, one must have some idea of how it works. To take an engine apart and put it back together, one must know what each piece does and how it connects. For Pirsig, this process becomes almost meditative, offering <strong>perspective</strong> and <strong>clarity</strong>. The same is true of code. Rushing to the quick fix, be it due to deadlines or lethargy, will, at best, lead to a shoddy result and, in all likelihood, make things worse.</p>

<p>“Black boxes” are as much a choice not to learn as they are something innately mysterious or unknowable. One of the reasons the web feels so ominous at times is that we don’t know how it works. Why am I being recommended this? Why are ads about ivory backscratchers following me everywhere? The inner workings of web tracking or AI models may not always be available, but just about any concept can be understood in principle.</p>

<p>So, in concrete terms:</p>

<ul>
<li><strong>Read the documentation</strong>, for the love of god.<br />
Sometimes we don’t understand how things work because the manual’s bad; more often, it’s because we haven’t looked at it.</li>
<li><strong>Follow pipelines from their start to their finish.</strong><br />
How does data get from point A to point Z? What functions does it pass through, and how do they work?</li>
<li><strong>Do health work</strong>.<br />
Changing the oil in a motorcycle and bumping project dependencies amount to the same thing: a caring and long-term outlook. Shiny new gizmos are cool, but old ones that still run like a dream are beautiful.</li>
<li><strong>Always be studying</strong>.<br />
We are all works in progress, and clinging on to the way things were won’t make the brave new world go away. Be open to things you don’t know, and try not to treat those areas with suspicion.</li>
</ul>

<p>Bound up with this is nurturing a love for what might easily be mischaracterized as the ‘boring’ bits. Motorcycles are for road trips, and code powers products and services, but understanding how they work and tending to their inner workings will bring greater benefits in the long run.</p>

<h3 id="reframe-the-questions">Reframe The Questions</h3>

<p>Much of the time, our work is understandably organized in terms of goals. OKRs, metrics, milestones, and the like help keep things organized and stuff happening. We shouldn’t get too hung up on them, though. Looking at the things we do in terms of Quality helps us reframe the process.</p>

<p>The highest Quality solution isn’t always the same as the solution that performed best in A/B tests. <em>The Dark Side of the Moon</em> doesn’t exist because of focus groups. The <a href="https://www.latimes.com/entertainment-arts/movies/story/2024-04-18/david-fincher-seven-imax-tcm-classic-film-festival-interview">test screenings</a> for <em>Se7en</em> were dreadful. Reducing any given task to a single metric &mdash; or even a handful of metrics &mdash; hamstrings the entire process.</p>

<p>Rory Sutherland suggests much the same thing in <a href="https://behavioralscientist.org/are-we-too-impatient-to-be-intelligent/"><em>Are We Too Impatient to Be Intelligent?</em></a> when he talks about looking at <strong>things as open-ended questions</strong> rather than reducing them to binary metrics to be optimized. Instead of fixating on making trains faster, wouldn’t it be more useful to ask, How do we improve their Quality?</p>

<p><strong>Challenge metrics.</strong> Good ones &mdash; which is to say, Quality ones &mdash; can handle the scrutiny. The bad ones deserve to crumble. Either way, you’re doing the world a service. With any given action you take on a website &mdash; from button design to database choices &mdash; ask yourself, <em>Does this improve the Quality of what I’m working on?</em> Not the bottom line. Not the conversion rate. Not egos. The Quality. Quality pulls us away from <a href="https://arstechnica.com/tech-policy/2024/09/sony-ubisoft-scandals-prompt-calif-ban-on-deceptive-sales-of-digital-goods/">dark patterns</a> and towards the delightful.</p>

<p>The will to Quality is itself a paradigm shift. Aspiring to Quality removes a lot of noise from what is often a deafening environment. It may make things that once seemed big appear small.</p>

<h3 id="seek-to-wed-art-with-science-and-whatever-else-fits-the-bill">Seek To Wed Art With Science (And Whatever Else Fits The Bill)</h3>

<p>None of the above is to say that rules, best practices, conventions, and the like don’t have their place or are antithetical to Quality. They aren’t. To think otherwise is to slip into the kind of dualities Pirsig rails against in <em>Zen</em>.</p>

<p>In a lot of ways, the main underlying theme in my <em>What X Can Teach Us About Web Design</em> pieces over the years has been <strong>how connected seemingly disparate worlds are</strong>. Yes, Vitruvius’s 1st-century tenets about architecture are useful to web design. Yes, newspapers can teach us much about grid systems and organising content. And yes, a piece of philosophical fiction from the 1970s holds many lessons about how to meet the challenges of artificial intelligence.</p>

<p>Do not close your work off from atypical companions. Stuck on a highly technical problem? Perhaps a piece of children’s literature will help you to make the complicated simple. Designing a new homepage for your website? Look at some architecture.</p>

<blockquote class="pull-quote">
  <p>
    <a class="pull-quote__link" aria-label="Share on Twitter" href="https://twitter.com/share?text=%0aThe%20best%20outcomes%20are%20harmonies%20of%20seemingly%20disparate%20worlds.%20Cling%20to%20nothing%20and%20throw%20nothing%20away.%0a&url=https://smashingmagazine.com%2f2025%2f05%2fwhat-zen-art-motorcycle-maintenance-teach-web-design%2f">
      
The best outcomes are harmonies of seemingly disparate worlds. Cling to nothing and throw nothing away.

    </a>
  </p>
  <div class="pull-quote__quotation">
    <div class="pull-quote__bg">
      <span class="pull-quote__symbol">“</span></div>
  </div>
</blockquote>

<h3 id="make-time-for-doing-nothing">Make Time For Doing Nothing</h3>

<p>Here’s the rub. Just as Quality itself cannot be defined, the way to attain it is also not reducible to a neat bullet point list. Neither waterfall, agile or any other management framework holds the keys.</p>

<p>If we are serious about putting Buddha in the machine, then we must allow ourselves time and space to not do things. Distancing ourselves from the myriad distractions of modern life puts us in states where the drift toward Quality is almost inevitable. In the absence of distracting forces, that’s where we head.</p>

<ul>
<li><strong>Get away from the screen.</strong><br />
We all have those moments where the solution to a problem appears as if out of nowhere. We may be on a walk or doing chores, then pop!</li>
<li><strong>Work on side projects.</strong><br />
I’m not naive. I know some work environments are hostile to anything that doesn’t look like relentless delivery. Pet projects are ideal spaces for you to breathe. They’re yours, and you don’t have to justify them to anyone.</li>
</ul>

<p>As I go into more detail in “<a href="https://www.smashingmagazine.com/2025/01/ode-to-side-project-time/">An Ode to Side Project Time</a>,” there is immense good in non-doing, in letting the water clear. There is so much urgency, so much of the time. Stepping away from that is vital not just for well-being, but actually leads to better quality work too.</p>

<p>From time to time, let go of your sense of urgency.</p>

<div class="partners__lead-place"></div>

<h2 id="spirit-of-play">Spirit Of Play</h2>

<p>Despite appearances, the web remains a deeply human experiment. The very best and very worst of our souls spill out into this place. It only makes sense, therefore, to think of the web &mdash; and how we shape it &mdash; in spiritual terms. We can’t leave those questions at the door.</p>

<p><em>Zen and the Art of Motorcycle Maintenance</em> has a lot to offer the modern web. It’s not a manifesto or a way of life, but it articulates an outlook on technology, art, and the self that many of us recognise on a deep, fundamental level. For anyone even vaguely intrigued by what’s been written here, I suggest reading the book. It’s much better than this article.</p>

<p>Be inspired. So much of the web is beautiful. The <a href="https://www.awwwards.com/winner-list/">highest-rated Awwwards profiles</a> are just a fraction of the amazing things being made every day. Allow yourself to be delighted. Aspire to be delightful. Find things you care about and make them the highest form of themselves you can. And always do so in a spirit of play.</p>

<p>We can carry those sentiments to the web. Do away with artificial divides between arts and science and bring out the best in both. Nurture a taste for Quality and let it guide the things you design and engineer. Allow yourself space for the water to clear in defiance of the myriad forces that would have you do otherwise.</p>

<p>The Buddha, the Godhead, resides quite as comfortably in a social media feed or the inner machinations of cloud computing as at the top of a mountain or in the petals of a flower. To think otherwise is to demean the Buddha, which is to demean oneself.</p>

<h3 id="other-resources">Other Resources</h3>

<ul>
<li><a href="https://en.wikipedia.org/wiki/Zen_and_the_Art_of_Motorcycle_Maintenance"><em>Zen and the Art of Motorcycle Maintenance</em></a> by Robert M. Pirsig</li>
<li><a href="https://www.amazon.co.uk/Beauty-Everyday-Things-Penguin-Classics/dp/0241366356"><em>The Beauty of Everyday Things</em></a> by Soetsu Yanagi</li>
<li><a href="https://terebess.hu/english/tao/mitchell.html">Tao Te Ching</a></li>
<li>“<a href="https://www.theguardian.com/books/2023/jan/10/the-creative-act-a-way-of-being-by-rick-rubin-review-thoughts-of-the-bearded-beat-master">The Creative Act</a>” by Rick Rubin</li>
<li>“<a href="https://philosophynow.org/issues/122/Robert_Pirsig_and_His_Metaphysics_of_Quality">Robert Pirsig &amp; His Metaphysics of Quality</a>” by Anthony McWatt</li>
<li>“<a href="https://medium.com/design-bootcamp/dark-patterns-in-ux-how-to-identify-and-avoid-unethical-design-practices-4bfa6d5fcd3e">Dark Patterns in UX: How to Identify and Avoid Unethical Design Practices</a>” by Daria Zaytseva</li>
</ul>

<h3 id="further-reading-on-smashing-magazine">Further Reading on Smashing Magazine</h3>

<ul>
<li>“<a href="https://www.smashingmagazine.com/2024/12/three-approaches-amplify-design-projects/">Three Approaches To Amplify Your Design Projects</a>,” Olivia De Alba</li>
<li>“<a href="https://www.smashingmagazine.com/2024/11/ai-transformative-impact-web-design-supercharging-productivity/">AI’s Transformative Impact On Web Design: Supercharging Productivity Across The Industry</a>,” Paul Boag</li>
<li>“<a href="https://www.smashingmagazine.com/2024/10/how-bottom-up-design-approach-enhances-site-accessibility/">How A Bottom-Up Design Approach Enhances Site Accessibility</a>,” Eleanor Hecks</li>
<li>“<a href="https://www.smashingmagazine.com/2024/02/accessibility-standards-empower-better-chart-visual-design/">How Accessibility Standards Can Empower Better Chart Visual Design</a>,” Kent Eisenhuth</li>
</ul>

<div class="signature">
  <img src="https://www.smashingmagazine.com/images/logo/logo--red.png" alt="Smashing Editorial" width="35" height="46" loading="lazy" decoding="async" />
  <span>(mrn, yk)</span>
</div>


              </article>
            </body>
          </html>
        ]]></content:encoded></item><item><author>Eleanor Hecks</author><title>What Does It Really Mean For A Site To Be Keyboard Navigable</title><link>https://www.smashingmagazine.com/2025/04/what-mean-site-be-keyboard-navigable/</link><pubDate>Fri, 18 Apr 2025 13:00:00 +0000</pubDate><guid>https://www.smashingmagazine.com/2025/04/what-mean-site-be-keyboard-navigable/</guid><description>Keyboard navigation is a vital aspect of accessible web design, and a detail-oriented approach is crucial. Prioritizing keyboard navigation prioritizes the user experience for a diverse audience, extending your reach while simultaneously fostering a more inclusive web environment.</description><content:encoded><![CDATA[
          <html>
            <head>
              <meta charset="utf-8">
              <link rel="canonical" href="https://www.smashingmagazine.com/2025/04/what-mean-site-be-keyboard-navigable/" />
              <title>What Does It Really Mean For A Site To Be Keyboard Navigable</title>
            </head>
            <body>
              <article>
                <header>
                  <h1>What Does It Really Mean For A Site To Be Keyboard Navigable</h1>
                  
                    
                    <address>Eleanor Hecks</address>
                  
                  <time datetime="2025-04-18T13:00:00&#43;00:00" class="op-published">2025-04-18T13:00:00+00:00</time>
                  <time datetime="2025-04-18T13:00:00&#43;00:00" class="op-modified">2026-02-09T03:03:08+00:00</time>
                </header>
                
                

<p>Efficient navigation is vital for a functional website, but not everyone uses the internet the same way. While most visitors either scroll on mobile or click through with a mouse, many people only use their keyboards. Up to <a href="https://www.ama-assn.org/delivering-care/public-health/what-doctors-wish-patients-knew-about-carpal-tunnel-syndrome">10 million American adults</a> have carpal tunnel syndrome, which may cause pain when holding a mouse, and vision problems can make it difficult to follow a cursor. Consequently, you should keep your site <strong>keyboard navigable</strong> to achieve universal appeal and accessibility.</p>

<h2 id="understanding-keyboard-navigation">Understanding Keyboard Navigation</h2>

<p>Keyboard navigation allows users to engage with your website solely through keyboard input. That includes using shortcuts and selecting elements with the <kbd>Tab</kbd> and <kbd>Enter</kbd> keys.</p>

<p>There are <a href="https://www.geeksforgeeks.org/computer-shortcut-keys/">more than 500 keyboard shortcuts</a> among operating systems and specific apps your audience may use. Standard ones for web navigation include <kbd>Ctrl</kbd> + <kbd>F</kbd> to find words or resources, <kbd>Shift</kbd> + <kbd>Arrow</kbd> to select text, and <kbd>Ctrl</kbd> + <kbd>Tab</kbd> to move between browser tabs. While these are largely the responsibilities of the software companies behind the specific browser or OS, you should still consider them.</p>

<p><strong>Single-button navigation</strong> is another vital piece of keyboard navigability. Users may move between clickable items with the <kbd>Tab</kbd> and <kbd>Shift</kbd> keys, use the <kbd>Arrow</kbd> keys to scroll, press <kbd>Enter</kbd> or <kbd>Space</kbd> to “click” a link, and exit pop-ups with <kbd>Esc</kbd>.</p>














<figure class="
  
    break-out article__image
  
  
  ">
  
    <a href="https://files.smashing.media/articles/what-mean-site-be-keyboard-navigable/1-washington-post-homepage.png">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="417"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/what-mean-site-be-keyboard-navigable/1-washington-post-homepage.png 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://files.smashing.media/articles/what-mean-site-be-keyboard-navigable/1-washington-post-homepage.png 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://files.smashing.media/articles/what-mean-site-be-keyboard-navigable/1-washington-post-homepage.png 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://files.smashing.media/articles/what-mean-site-be-keyboard-navigable/1-washington-post-homepage.png 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://files.smashing.media/articles/what-mean-site-be-keyboard-navigable/1-washington-post-homepage.png 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/what-mean-site-be-keyboard-navigable/1-washington-post-homepage.png"
			
			sizes="100vw"
			alt="The Washington Post homepage"
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      (<a href='https://files.smashing.media/articles/what-mean-site-be-keyboard-navigable/1-washington-post-homepage.png'>Large preview</a>)
    </figcaption>
  
</figure>

<p>The <a href="https://www.washingtonpost.com/">Washington Post homepage</a> goes further. Pressing <kbd>Tab</kbd> highlights clickable elements as it should, but the first button press brings up a link to the site’s accessibility statement first. Users can navigate past this, but including it highlights how the design understands how <strong>keyboard navigability is a matter of accessibility</strong>.</p>

<p>You should understand how people may use these controls so you can build a site that facilitates them. These navigation options are generally standard, so any deviation or lack of functionality will stand out. Ensuring keyboard navigability, especially in terms of enabling these specific shortcuts and controls, will help you meet such expectations and avoid turning users away.</p>

<div data-audience="non-subscriber" data-remove="true" class="feature-panel-container">

<aside class="feature-panel" style="">
<div class="feature-panel-left-col">

<div class="feature-panel-description"><p>Meet <strong><a data-instant href="https://www.smashingconf.com/online-workshops/">Smashing Workshops</a></strong> on <strong>front-end, design &amp; UX</strong>, with practical takeaways, live sessions, <strong>video recordings</strong> and a friendly Q&amp;A. With Brad Frost, Stéph Walter and <a href="https://smashingconf.com/online-workshops/workshops">so many others</a>.</p>
<a data-instant href="smashing-workshops" class="btn btn--green btn--large" style="">Jump to the workshops&nbsp;↬</a></div>
</div>
<div class="feature-panel-right-col"><a data-instant href="smashing-workshops" class="feature-panel-image-link">
<div class="feature-panel-image">
<img
    loading="lazy"
    decoding="async"
    class="feature-panel-image-img"
    src="/images/smashing-cat/cat-scubadiving-panel.svg"
    alt="Feature Panel"
    width="257"
    height="355"
/>

</div>
</a>
</div>
</aside>
</div>

<h2 id="why-keyboard-navigation-matters-in-web-design">Why Keyboard Navigation Matters In Web Design</h2>

<p>Keyboard navigability is crucial for a few reasons. Most notably, it makes your site more accessible. In the U.S. alone, <a href="https://www.cdc.gov/media/releases/2024/s0716-Adult-disability.html">over one in four people</a> have a disability, and many such conditions affect technology use. For instance, motor impairments make it challenging for someone to use a standard mouse, and users with vision problems typically require keyboard and screen reader use.</p>

<p>Beyond accounting for various usage needs, enabling a wider range of control methods makes a site convenient. Using a keyboard rather than a mouse is faster when it works as it should and may feel more comfortable. Considering how workers spend <a href="https://winfosoft.com/about-us/blogs-insights/benefits-of-implementing-erp-system/">nearly a third of their workweek</a> looking for information, any obstacles to efficiency can be highly disruptive.</p>

<p>Falling short in these areas may lead to legal complications. Regulations like the <strong>Americans with Disabilities Act</strong> necessitate tech accessibility. While the ADA <a href="https://www.congress.gov/crs-product/LSB10845">has no binding rules</a> for what constitutes an accessible website, it specifically mentions keyboard navigation in its nonbinding guidance. Failing to support such functionality does not necessarily mean you’ll face legal penalties, but courts can use these standards to inform their decision on whether your site is reasonably accessible.</p>

<p>In 2023, Kitchenaid <a href="https://topclassactions.com/disability-class-action-lawsuit/whirlpool-class-action-alleges-kitchenaid-website-not-accessible-to-visually-impaired-blind-visitors/">faced a class-action lawsuit</a> for failing to meet such standards. Plaintiffs alleged that the company’s site didn’t support alt text or keyboard navigation, making it inaccessible to users with visual impairments. While the case ultimately settled out of court, it’s a reminder of the <strong>potential legal and financial repercussions of overlooking inclusivity</strong>.</p>

<p>Outside the law, an inaccessible site presents <strong>ethical concerns</strong>, as it shows preferential treatment for those who can use a mouse, even if that’s unintentional. Even without legal action, public recognition of this bias may lead to a drop in visitors and a tainted public image.</p>

<div class="partners__lead-place"></div>

<h2 id="elements-of-a-keyboard-navigable-site">Elements Of A Keyboard-Navigable Site</h2>

<p>Thankfully, ensuring <strong>keyboard navigability</strong> is a straightforward user experience design practice. Because navigation is standard across OSes and browsers, keyboard-accessible sites employ a few consistent elements.</p>

<h3 id="focus-indicators">Focus Indicators</h3>

<p>Web Accessibility In Mind states that sites <a href="https://webaim.org/techniques/keyboard/">must provide a visual indicator</a> of elements currently in focus when users press <kbd>Tab</kbd>. Focus indicators are typically a simple box around the highlighted icon.</p>

<p>These are standard in CSS, but some designers hide them, so avoid using <code>outline:0</code> or <code>outline:none</code> to limit their visibility. You can also increase the contrast or change the indicator’s color in CSS.</p>














<figure class="
  
    break-out article__image
  
  
  ">
  
    <a href="https://files.smashing.media/articles/what-mean-site-be-keyboard-navigable/3-cnn-homepage.png">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="412"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/what-mean-site-be-keyboard-navigable/3-cnn-homepage.png 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://files.smashing.media/articles/what-mean-site-be-keyboard-navigable/3-cnn-homepage.png 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://files.smashing.media/articles/what-mean-site-be-keyboard-navigable/3-cnn-homepage.png 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://files.smashing.media/articles/what-mean-site-be-keyboard-navigable/3-cnn-homepage.png 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://files.smashing.media/articles/what-mean-site-be-keyboard-navigable/3-cnn-homepage.png 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/what-mean-site-be-keyboard-navigable/3-cnn-homepage.png"
			
			sizes="100vw"
			alt="CNN Breaking News homepage"
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      (<a href='https://files.smashing.media/articles/what-mean-site-be-keyboard-navigable/3-cnn-homepage.png'>Large preview</a>)
    </figcaption>
  
</figure>

<p>The <a href="https://www.cnn.com/">CNN Breaking News homepage</a> is a good example of <strong>a strong focus indicator</strong>. Pressing <kbd>Tab</kbd> immediately brings up the box, which is bold enough to see easily and even uses a white border when necessary to stand out against black or dark-colored site elements.</p>

<h3 id="logical-tab-order">Logical Tab Order</h3>

<p>The order in which the focus indicator moves between elements also matters. Generally speaking, pressing the <kbd>Tab</kbd> key should move it from left to right and top to bottom &mdash; the same way people read in English.</p>

<p>A few errors can stand in the way. Disabled buttons <a href="https://designerly.com/disabled-buttons/">disrupt keyboard navigation flow</a> by skipping an element with no explanation or highlighting it without making it clickable. Similarly, an interface where icons don’t fall in a predictable left-to-right, top-to-bottom order will make logical tab movement difficult.</p>














<figure class="
  
    break-out article__image
  
  
  ">
  
    <a href="https://files.smashing.media/articles/what-mean-site-be-keyboard-navigable/4-sutton-maddock-vehicle-rental-site.png">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="415"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/what-mean-site-be-keyboard-navigable/4-sutton-maddock-vehicle-rental-site.png 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://files.smashing.media/articles/what-mean-site-be-keyboard-navigable/4-sutton-maddock-vehicle-rental-site.png 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://files.smashing.media/articles/what-mean-site-be-keyboard-navigable/4-sutton-maddock-vehicle-rental-site.png 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://files.smashing.media/articles/what-mean-site-be-keyboard-navigable/4-sutton-maddock-vehicle-rental-site.png 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://files.smashing.media/articles/what-mean-site-be-keyboard-navigable/4-sutton-maddock-vehicle-rental-site.png 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/what-mean-site-be-keyboard-navigable/4-sutton-maddock-vehicle-rental-site.png"
			
			sizes="100vw"
			alt="Sutton Maddock Vehicle Rental homepage"
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      (<a href='https://files.smashing.media/articles/what-mean-site-be-keyboard-navigable/4-sutton-maddock-vehicle-rental-site.png'>Large preview</a>)
    </figcaption>
  
</figure>

<p>The <a href="https://www.suttonmaddock.co.uk/">Sutton Maddock Vehicle Rental</a> site is a good example of what not to do. When you press <kbd>Tab</kbd>, the focus indicator jumps from “Contact” to the Facebook link before going backward to the Twitter link. It starts at the right and moves left when it goes to the next line &mdash; the opposite order of what feels natural.</p>

<h3 id="skip-navigation-links">Skip Navigation Links</h3>

<p>Skip links are also essential. These interactive elements let keyboard users jump to specific content without repeated keystrokes. Remember, these skips must be one of the first areas highlighted when you press <kbd>Tab</kbd> so they work as intended.</p>














<figure class="
  
    break-out article__image
  
  
  ">
  
    <a href="https://files.smashing.media/articles/what-mean-site-be-keyboard-navigable/5-hsbc-group-homepage.png">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="418"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/what-mean-site-be-keyboard-navigable/5-hsbc-group-homepage.png 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://files.smashing.media/articles/what-mean-site-be-keyboard-navigable/5-hsbc-group-homepage.png 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://files.smashing.media/articles/what-mean-site-be-keyboard-navigable/5-hsbc-group-homepage.png 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://files.smashing.media/articles/what-mean-site-be-keyboard-navigable/5-hsbc-group-homepage.png 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://files.smashing.media/articles/what-mean-site-be-keyboard-navigable/5-hsbc-group-homepage.png 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/what-mean-site-be-keyboard-navigable/5-hsbc-group-homepage.png"
			
			sizes="100vw"
			alt="HSBC Group homepage"
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      (<a href='https://files.smashing.media/articles/what-mean-site-be-keyboard-navigable/5-hsbc-group-homepage.png'>Large preview</a>)
    </figcaption>
  
</figure>

<p>The <a href="https://www.hsbc.com/">HSBC Group homepage</a> has a few skip navigation links. Pressing <kbd>Tab</kbd> pulls up three options, letting users quickly jump to whichever part of the site interests them.</p>

<h3 id="keyboard-accessible-interactive-elements">Keyboard-Accessible Interactive Elements</h3>

<p>Finally, all interactive elements on a keyboard-navigable site should be accessible via <strong>keystrokes</strong>. Anything people can click on or drag with a cursor should also support navigation and interaction. Enabling this is as simple as letting users select all items with the <kbd>Tab</kbd> or <kbd>Arrow</kbd> keys and press them with <kbd>Space</kbd> or <kbd>Enter</kbd>.</p>














<figure class="
  
    break-out article__image
  
  
  ">
  
    <a href="https://files.smashing.media/articles/what-mean-site-be-keyboard-navigable/6-arizona-state-university-keyboard-accessibility.png">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="414"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/what-mean-site-be-keyboard-navigable/6-arizona-state-university-keyboard-accessibility.png 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://files.smashing.media/articles/what-mean-site-be-keyboard-navigable/6-arizona-state-university-keyboard-accessibility.png 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://files.smashing.media/articles/what-mean-site-be-keyboard-navigable/6-arizona-state-university-keyboard-accessibility.png 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://files.smashing.media/articles/what-mean-site-be-keyboard-navigable/6-arizona-state-university-keyboard-accessibility.png 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://files.smashing.media/articles/what-mean-site-be-keyboard-navigable/6-arizona-state-university-keyboard-accessibility.png 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/what-mean-site-be-keyboard-navigable/6-arizona-state-university-keyboard-accessibility.png"
			
			sizes="100vw"
			alt="Arizona State University page on keyboard accessibility"
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      (<a href='https://files.smashing.media/articles/what-mean-site-be-keyboard-navigable/6-arizona-state-university-keyboard-accessibility.png'>Large preview</a>)
    </figcaption>
  
</figure>

<p>Appropriately, this <a href="https://accessibility.asu.edu/articles/keyboard">Arizona State University page on keyboard accessibility</a> showcases this concept well. All drop-down menus are possible to open by navigating to them via <kbd>Tab</kbd> and pressing <kbd>Enter</kbd>, so users don’t need a mouse to interact with them.</p>

<h2 id="how-to-test-for-keyboard-navigability">How to Test for Keyboard Navigability</h2>

<p>After designing a keyboard-accessible UX, you should test it to ensure that it works properly. The easiest way to do this is to explore the site solely with your keyboard. The chart below outlines the criteria to look for when determining whether your site is legitimately keyboard navigable.</p>

<table class="tablesaw break-out">
    <thead>
        <tr>
            <th></th>
            <th>Keyboard Navigable</th>
      <th>Not Keyboard Navigable</th>
        </tr>
    </thead>
    <tbody>
        <tr>
            <td><strong>Clickable Elements</strong></td>
            <td>All elements are reachable through the keyboard and open when you press <kbd>Enter</kbd>.</td>
      <td>Only some elements are possible to reach through the keyboard. Some links may be broken or not open when you press <kbd>Enter</kbd>.</td>
        </tr>
        <tr>
            <td><strong>Focus Indicators</strong></td>
            <td>Pressing <kbd>Tab</kbd>, <kbd>Space</kbd>, or <kbd>Enter</kbd> brings up a focus indicator that is easy to see in all browsers.</td>
      <td>Focus indicators may not appear when pressing all buttons. The box may be hard to see or only appear in some browsers.</td>
        </tr>
        <tr>
            <td><strong>Skip Navigation Links</strong></td>
            <td>Pressing <kbd>Tab</kbd> for the first time pulls up at least one skip link to take users to much-visited content or menus. Continuing to press <kbd>Tab</kbd> moves the focus indicator past these links to highlight elements on the page as normal.</td>
      <td>No skip links appear when pressing <kbd>Tab</kbd> for the first time. Alternatively, they appear after moving through all other elements. Skip links may not be functional.</td>
        </tr>
    <tr>
            <td><strong>Screen Reader Support</strong></td>
            <td>Screen readers can read each element when highlighted with the focus indicator.</td>
      <td>Some elements may not encourage any action from screen readers when highlighted.</td>
        </tr>
    </tbody>
</table>

<p>The <strong>Web Content Accessibility Guidelines</strong> <a href="https://www.w3.org/WAI/WCAG21/Understanding/keyboard.html">outline two test rules</a> to verify keyboard navigability:</p>

<ol>
<li>The first ensures all interactive elements are accessible via the <kbd>Tab</kbd> key,</li>
<li>The second checks for keyboard scroll functionality.</li>
</ol>

<p>Employ both standards to review your UX before making a site live.</p>

<p>Typical issues include the inability to highlight elements with the <kbd>Tab</kbd> key or things that don’t fall in a natural order. You can discover both problems by trying to access everything with your keyboard. However, you may prefer to conduct a navigability audit through a third party. Many private companies offer these services, but you can also <a href="https://www.boia.org/">use the Bureau of Internet Accessibility</a> for a basic WCAG audit.</p>

<div class="partners__lead-place"></div>

<h2 id="make-your-site-keyboard-navigable-today">Make Your Site Keyboard Navigable Today</h2>

<p>Keyboard navigability ensures you cater to all needs and preferences for an inclusive, accessible website design. While it’s straightforward to implement, it’s also easy to miss, so remember these principles when designing your UX and testing your site.</p>

<p>WCAG provides several techniques you can employ to meet keyboard accessibility standards and enhance your users’ experience:</p>

<ul>
<li><a href="https://www.w3.org/WAI/WCAG21/Techniques/general/G90">Technique G90</a>, for keyboard-triggered event handlers</li>
<li><a href="https://www.w3.org/WAI/WCAG21/Techniques/general/G202">Technique G202</a>, for general keyboard functionality</li>
<li><a href="https://www.w3.org/WAI/WCAG21/Techniques/html/H91">Technique H91</a>, for forming controls and links in HTML</li>
</ul>

<p>Follow these guidelines and use WCAG’s test rules to create an accessible site. Remember to re-check it every time you add elements or change your UX.</p>

<p>Additionally, consider the following recommended reads to learn more about keyboards and their role in accessibility:</p>

<ul>
<li>“<a href="https://www.smashingmagazine.com/2022/11/guide-keyboard-accessibility-html-css-part1/">A Guide To Keyboard Accessibility: HTML And CSS (Part 1)</a>,” Cristian Díaz</li>
<li>“<a href="https://www.smashingmagazine.com/2022/11/guide-keyboard-accessibility-javascript-part2/">A Guide To Keyboard Accessibility: JavaScript (Part 2)</a>,” Cristian Díaz</li>
<li>“<a href="https://www.smashingmagazine.com/2020/05/complete-guide-mechanical-keyboards/">A Complete Guide To Mechanical Keyboards</a>,” Ben Frain</li>
<li>“<a href="https://www.smashingmagazine.com/2019/07/ux-improvements-keyboard-accessibility/">UX Improvements For Keyboard Accessibility</a>,” Vitaly Friedman</li>
<li>“<a href="https://www.smashingmagazine.com/2018/07/web-with-just-a-keyboard/">I Used The Web For A Day With Just A Keyboard</a>,” Chris Ashton</li>
</ul>

<p>User-friendliness is an industry best practice that demonstrates your commitment to inclusivity for all. Even users without disabilities will appreciate intuitive, efficient keyboard navigation.</p>

<div class="signature">
  <img src="https://www.smashingmagazine.com/images/logo/logo--red.png" alt="Smashing Editorial" width="35" height="46" loading="lazy" decoding="async" />
  <span>(yk)</span>
</div>


              </article>
            </body>
          </html>
        ]]></content:encoded></item><item><author>Daniel Devesa Derksen-Staats</author><title>Fostering An Accessibility Culture</title><link>https://www.smashingmagazine.com/2025/04/fostering-accessibility-culture/</link><pubDate>Thu, 17 Apr 2025 08:00:00 +0000</pubDate><guid>https://www.smashingmagazine.com/2025/04/fostering-accessibility-culture/</guid><description>Building an accessibility culture isn’t easy, and there’s no clear playbook. But Dani offers insights from his own journey, where small, consistent habits made a big difference.</description><content:encoded><![CDATA[
          <html>
            <head>
              <meta charset="utf-8">
              <link rel="canonical" href="https://www.smashingmagazine.com/2025/04/fostering-accessibility-culture/" />
              <title>Fostering An Accessibility Culture</title>
            </head>
            <body>
              <article>
                <header>
                  <h1>Fostering An Accessibility Culture</h1>
                  
                    
                    <address>Daniel Devesa Derksen-Staats</address>
                  
                  <time datetime="2025-04-17T08:00:00&#43;00:00" class="op-published">2025-04-17T08:00:00+00:00</time>
                  <time datetime="2025-04-17T08:00:00&#43;00:00" class="op-modified">2026-02-09T03:03:08+00:00</time>
                </header>
                
                

<p>A year ago, I learned that my role as an accessibility engineer was at risk of redundancy. It was a tough moment, both professionally and personally. For quite some time, my mind raced with guilt, self-doubt, plain sadness&hellip; But as I sat with these emotions, I found one line of thought that felt productive: reflection. What did I do well? What could I have done better? What did I learn?</p>

<p>Looking back, I realized that as part of a small team in a massive organization, we focused on a long-term goal that we also believed was the most effective and sustainable path: gradually shaping the organization’s culture to embrace accessibility.</p>

<p>Around the same time, I started listening to <a href="https://jamesclear.com/atomic-habits">“Atomic Habits” by James Clear</a>. The connection was immediate. Habits and culture are tightly linked concepts, and fostering an accessibility culture was really about <strong>embedding accessibility habits into everyone’s processes</strong>. That’s what we focused on. It took us time (and plenty of trial and error) to figure this out, and while there’s no definitive playbook for creating an accessibility program at a large organization, I thought it might help others if I shared my experiences.</p>

<p><strong>Before we dive in, here’s a quick note</strong>: <em>This is purely my personal perspective, and you’ll find a bias towards culture and action in big organizations. I’m not speaking on behalf of any employer, past or present. The progress we made was thanks to the incredible efforts of every member of the team and beyond. I hope these reflections resonate with those looking to foster an accessibility culture at their own companies.</em></p>

<div data-audience="non-subscriber" data-remove="true" class="feature-panel-container">

<aside class="feature-panel" style="">
<div class="feature-panel-left-col">

<div class="feature-panel-description"><p>Meet <strong><a data-instant href="https://www.smashingconf.com/online-workshops/">Smashing Workshops</a></strong> on <strong>front-end, design &amp; UX</strong>, with practical takeaways, live sessions, <strong>video recordings</strong> and a friendly Q&amp;A. With Brad Frost, Stéph Walter and <a href="https://smashingconf.com/online-workshops/workshops">so many others</a>.</p>
<a data-instant href="smashing-workshops" class="btn btn--green btn--large" style="">Jump to the workshops&nbsp;↬</a></div>
</div>
<div class="feature-panel-right-col"><a data-instant href="smashing-workshops" class="feature-panel-image-link">
<div class="feature-panel-image">
<img
    loading="lazy"
    decoding="async"
    class="feature-panel-image-img"
    src="/images/smashing-cat/cat-scubadiving-panel.svg"
    alt="Feature Panel"
    width="257"
    height="355"
/>

</div>
</a>
</div>
</aside>
</div>

<h2 id="goals-vs-systems">Goals Vs. Systems</h2>

<p>To effectively shape habits, it’s crucial to focus on systems and processes (who we want to become) rather than obsessing over a final goal (or what we want to achieve). This perspective is especially relevant in accessibility.</p>

<p>Take the goal of making your app accessible. If you focus solely on achieving compliance without changing your systems (embedding accessibility into processes and culture), progress will be temporary.</p>

<p>For example, you might request an accessibility audit and fix the flagged issues to achieve compliance. While this can provide “quick” results, it’s often a short-lived solution.</p>

<p>Software evolves constantly: features are rewritten, old code is removed, and new functionality is added. Without an underlying system in place, accessibility issues can quickly resurface. Worse, this approach may reinforce the idea that accessibility is something external, checked by someone else, and fixed only when flagged. Not to mention that <a href="https://www.browserstack.com/guide/what-is-shift-left-testing">it becomes increasingly expensive the later accessibility issues are addressed in the process</a>. It can also feel demoralizing when accessibility becomes synonymous with a long list of last-minute tickets when you are busiest.</p>














<figure class="
  
  
  ">
  
    <a href="https://files.smashing.media/articles/fostering-accessibility-culture/bug-fix-cost.jpg">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="400"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/fostering-accessibility-culture/bug-fix-cost.jpg 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://files.smashing.media/articles/fostering-accessibility-culture/bug-fix-cost.jpg 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://files.smashing.media/articles/fostering-accessibility-culture/bug-fix-cost.jpg 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://files.smashing.media/articles/fostering-accessibility-culture/bug-fix-cost.jpg 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://files.smashing.media/articles/fostering-accessibility-culture/bug-fix-cost.jpg 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/fostering-accessibility-culture/bug-fix-cost.jpg"
			
			sizes="100vw"
			alt="A graph showing a relative cost to fix bugs based on time of detection"
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      Image source: <a href='https://www.browserstack.com/guide/what-is-shift-left-testing'>BrowserStack</a>. (<a href='https://files.smashing.media/articles/fostering-accessibility-culture/bug-fix-cost.jpg'>Large preview</a>)
    </figcaption>
  
</figure>

<p>Despite this, companies constantly focus on the goal rather than the systems.</p>

<blockquote>“Accessibility is both a state and a practice.”<br /><br />&mdash; Sommer Panage, SwiftTO talk, “<a href="https://youtu.be/sb_fhIa3PKg?si=YUKpoxB31-yhv7yD">Building Accessibility into Your Company, Team, and Culture</a>”</blockquote>

<p>I’ll take the liberty of tweaking that to an aspirational state. Without recognizing the importance of the practice, any progress made is at risk of regression.</p>

<p>Instead, I encourage organizations to focus on building habits and embedding good accessibility practices into their workflows. A strong system not only ensures lasting progress but also fosters a culture where accessibility becomes second nature.</p>

<h2 id="what-is-your-actual-goal">What Is Your Actual Goal?</h2>

<p>That doesn’t mean goals are useless &mdash; they’re very effective in setting up direction.</p>

<p>In my team, we often said (only half-jokingly) that our ultimate goal was to put ourselves out of a job. This mindset reflects an important principle: <strong>accessibility is a cross-organizational responsibility</strong>, not the task of a single person or team.</p>

<p>That’s why, in my opinion, focusing solely on compliance rather than culture transformation (or prioritizing the “state” of accessibility over the “practice”) is a flawed strategy.</p>

<p>The real goal should be to build <strong>a user-centric culture</strong> where accessibility is embedded in every workflow, decision, and process. By doing so, companies can create products where accessibility is not about checking boxes and closing tickets but delivering <strong>meaningful and inclusive experiences</strong> to all users.</p>

<h2 id="how-do-we-get-there">How Do We Get There?</h2>

<p>Different companies (of various sizes, structures, and cultures) will approach accessibility differently, depending on where they are in their journey. I still have to meet, though, an accessibility team that ever felt they had enough resources. This makes careful resource allocation a cornerstone of your strategy. And while there’s no one-size-fits-all solution, shifting left (addressing issues earlier in the development process) tends to be the most effective approach in most cases.</p>

<h3 id="design-systems">Design Systems</h3>

<p>If your company has a design system, partnering with the team that owns it can be one of your biggest wins. Fixing a single component used across dozens of places improves the experience everywhere it’s used. This approach scales beautifully.</p>

<p class="c-pre-sidenote--left">Involvement in foundational decisions and discussions, like choosing color palettes, typography, and component interactions, and so on, can also be very valuable. Contributing to documentation and guidelines tailored to accessibility can help teams across the organization make informed decisions.</p>
<p class="c-sidenote c-sidenote--right">For a deeper dive, I recommend Feli Bernutz’s excellent talk, “<a href="https://youtu.be/tHYtjAXnQcI?si=FpkSxJ3QQ86aaOu6">Designing APIs: How to Ensure Accessibility in Design Systems</a>.”</p>


<figure class="video-embed-container">
  <div
  
  class="video-embed-container--wrapper">
		<lite-youtube
			videoid="tHYtjAXnQcI"
      
			
		></lite-youtube>
	</div>
	
</figure>

<h3 id="community-building">Community Building</h3>

<p>It is worth repeating, you’ll need as many allies as possible. The more limited your resources, the more important this becomes. Something as simple as a Slack channel that becomes a safe space where people can ask questions and share tips can go a long way. Other ideas include lunch-and-learns, regular meetups, office hours, or building a more formal champions network. And, very importantly, it is about finding ways of recognising and celebrating wins and everyone’s good work.</p>

<p>If you’re exploring this, I highly recommend joining the <a href="https://www.linkedin.com/groups/12499821/">Champions of Accessibility Network (CAN) group</a>. It’s a great way to learn and connect with others who are passionate about accessibility.</p>

<h3 id="education">Education</h3>

<p>Education is key for scaling accessibility efforts. While not everyone needs to be an expert, <strong>we should strive for everyone to know the basics</strong>. Repeatedly raising basic issues like missing accessibility labels, small target sizes, poor color contrast, and so on, can’t be productive.</p>

<p>Consider periodic training for different roles (PMs, designers, engineers…), embedding accessibility into onboarding sessions and documentation. You’ll need to find what works for you.</p>

<p>At Spotify, I found onboarding sessions for designers highly effective, as most features start with design. <a href="https://www.deque.com/blog/auditing-design-systems-for-accessibility/#design-should-consider-accessibility">A Deque case study found that 67% of automatically detectable accessibility issues originate with design</a>, reinforcing the importance of this approach. If your company has an education or training programme, partner with them. <a href="https://makeitfable.com/article/how-to-scale-accessibility-knowledge-from-experts-at-spotify/">At Spotify, they were our biggest allies</a>. They’ll help you get it right.</p>

<h3 id="automation">Automation</h3>

<p>Everything that can be automated should eventually be automated. We know there’s already a lot on your plate, and automation should help lighten the load. This is especially true in larger organizations, where it can help scale efforts more efficiently. However, automated accessibility checks are not the silver bullet some might hope for.</p>

<p>One key issue is viewing automation as the solution rather than a safety net. Some companies claim automated tools catch as much as <a href="https://www.deque.com/automated-accessibility-testing-coverage/">57% of all issues</a> or even <a href="https://accessibility.deque.com/hubfs/Semi-Automated-Accessibility-Testing-Coverage-Report.pdf">80% of issues by volume</a> (PDF), though it is widely accepted that the figure is about 30%. Native mobile apps present greater challenges, making it likely that the real number is significantly lower for iOS and Android. These tools, and the high expectations around them, can create a false sense of security or reduce efforts to merely appease an automated tool of choice.</p>

<blockquote class="pull-quote">
  <p>
    <a class="pull-quote__link" aria-label="Share on Twitter" href="https://twitter.com/share?text=%0aAutomation%20doesn%e2%80%99t%20%28and%20shouldn%e2%80%99t%29%20replace%20intentionality.%20We%20should%20aim%20to%20deliver%20great%20accessible%20experiences%20from%20the%20start%20rather%20than%20wait%20for%20a%20tool%20to%20flag%20issues%20after%20the%20fact.%0a&url=https://smashingmagazine.com%2f2025%2f04%2ffostering-accessibility-culture%2f">
      
Automation doesn’t (and shouldn’t) replace intentionality. We should aim to deliver great accessible experiences from the start rather than wait for a tool to flag issues after the fact.

    </a>
  </p>
  <div class="pull-quote__quotation">
    <div class="pull-quote__bg">
      <span class="pull-quote__symbol">“</span></div>
  </div>
</blockquote>

<p>Whether your focus is on compliance or customer satisfaction, manual testing remains an essential part of the process. Whenever possible, you should also be testing with real users.</p>

<p>For me, the greatest value of automation is in <strong>catching basic regressions before release</strong> and serving as <strong>a gentle nudge</strong> to developers, reminding them to consider accessibility more thoughtfully. Ideally, they don’t just fix an issue and move on but take a moment to reflect:</p>

<ul>
<li>How did this issue arise in the first place?</li>
<li>Did we consider accessibility during development?</li>
<li>Did we skip manual testing with a screen reader?</li>
</ul>

<p>When it comes to shaping habits, the environment matters. A strong accessibility culture isn’t built on willpower alone. It thrives on systems that encourage good practices and make bad ones harder to fall into. Nudges like automated checks, documentation, and proactive education are invaluable for keeping accessibility at the top of the mind.</p>

<h3 id="remediation">Remediation</h3>

<p>I won’t lie; the moment I was first told my new job was to work on accessibility, I immediately jumped in, doing what I knew best, trying to fix as many issues as possible myself. While rewarding at first, this approach isn’t scalable in larger organizations. It can quickly lead to burnout. It also sets an expectation within the company that it’s your team’s responsibility to get it done, an expectation that becomes increasingly difficult to reset as time goes on.</p>

<p>Not saying you shouldn’t be hands-on, though! But you need to be <strong>strategic</strong>. Try to focus on supporting teams with complex issues, pair programming with colleagues, code reviews, or implementing cross-app improvements, ideally in partnership with the design system teams. This way, your efforts can have a broader impact.</p>

<div class="partners__lead-place"></div>

<h3 id="auditing">Auditing</h3>

<p>Accessibility audits are another tool in your toolbox. Audits can be valuable but are often overused. They’re most effective after teams have done their best to make the product accessible, serving as <strong>a validation step rather than the starting point</strong>. After all, how useful is an audit if a significant portion of the flagged issues are basic problems that automated tools could have detected?</p>

<p>Alternatively, audits might help when you need quick results but don’t have the time or resources to upskill your workforce in time for a timely and necessary remediation.</p>

<p>While audits have their place and, as mentioned, can be valuable in certain situations, I wouldn’t rely on them to be the cornerstone of your strategy.</p>

<h3 id="and-so-much-more">And So Much More</h3>

<p>​​Try to find what works for your team, and, most importantly, adapt as circumstances change. Beyond the strategies mentioned, you might explore other initiatives:</p>

<ul>
<li>Collecting accessibility metrics,</li>
<li>Conducting user research and testing,</li>
<li>Improving procurement practices,</li>
<li>Ensuring accessible content and communications,</li>
<li>Supporting accessible hiring, workplace platforms, and tools.</li>
</ul>

<p>It doesn’t mean one area of action is more important than another. Actually, in my view, one of the biggest reasons cultural change around accessibility takes longer than other areas is the <strong>lack of diversity in the workforce</strong>. Contributing to lines of action to address this issue might not be as immediately obvious as others.</p>

<p><a href="https://www.bcs.org/policy-and-influence/equity-diversity-and-inclusion/bcs-diversity-report-2023-disability/disability-and-it-employment/">The industry hasn’t done enough to hire people with disabilities</a>, leaving them underrepresented in building products that truly work for them. Worse yet, they face more barriers in the hiring process. And even when they do get hired, they may find that the tools meant to enable us to do our work and be productive don’t work for them.</p>

<p>The key is to identify and lay out your areas of action first, then prioritize strategically while staying flexible as circumstances evolve. A thoughtful, adaptive approach ensures that no matter the challenge, your efforts remain impactful, avoiding stretching your team too thin and losing focus.</p>

<h2 id="valley-of-despair">Valley Of Despair</h2>

<p>Here’s the truth that everyone working in accessibility inevitably and unfortunately faces sooner rather than later: <strong>accessibility done right, as we’ve seen so far, takes time</strong>. And that goes against the “move fast and break things” culture of quick results and short-termism that many companies still follow, even if they won’t openly admit it.</p>

<p>The slow-cooking nature of the process can, therefore, work against us. Being patient and trusting that small changes will aggregate and compound over time is incredibly challenging and sometimes nerve-racking. On top of that, if there’s a misalignment with leadership about what the ultimate goal is, or if there’s pressure to deliver quick results, it’s easy to feel like throwing in the towel, or worse, to experience burnout.</p>

<p class="c-pre-sidenote--left">Unfortunately, burnout is an all-too-common issue in the accessibility community.</p>
<p class="c-sidenote c-sidenote--right">If you’d like to learn more about it, I highly recommend Shell Little’s talk, “<a href="https://www.youtube.com/watch?v=5gs54WDVBIw">The Accessibility to Burnout Pipeline</a>.”</p>

<p>In those moments of doubt, it is useful to remember the <a href="https://www.cbssports.com/nba/news/nba-finals-a-rock-hammer-and-cracking-of-spurs-majesty-in-game-7/">quote embraced by the San Antonio Spurs NBA team, originally from social reformer Jacob Riis</a>:</p>

<blockquote>“When nothing seems to help, I go and look at a stonecutter hammering away at his rock perhaps a hundred times without as much as a crack showing in it. Yet at the hundred and first blow it will split in two, and I know it was not that blow that did it &mdash; but all that had gone before.”<br /><br />&mdash; Jacob Riis</blockquote>

<p>This serves as a powerful reminder that every small effort contributes to the eventual breakthrough, even when progress feels invisible.</p>

<h2 id="an-uncomfortable-truth">An Uncomfortable Truth</h2>

<p>Top-down approaches are easier, and yet, most accessibility initiatives start from the bottom. For a sustainable strategy, however, you’ll need both. If necessary, you’ll have to get buy-in from leadership or risk feeling like you’re constantly swimming upstream. Surprisingly, this is often harder than it seems. This topic could easily be an article on its own, but Vitaly Friedman offers some useful pointers in his piece “<a href="https://www.smashingmagazine.com/2024/06/how-make-strong-case-accessibility/">How To Make A Strong Case For Accessibility</a>.”</p>

<p>In my experience, <strong>leadership buy-in is crucial to fostering an accessibility culture</strong>. Leaders often want to see how accessibility impacts the bottom line and whether investing in it is profitable. The hardest part is getting started, so if you can make a convincing case this way, do it.</p>

<p>I once watched a talk by <a href="https://www.linkedin.com/in/daviddame?miniProfileUrn=urn%3Ali%3Afsd_profile%3AACoAAAA5GpQBnIE99fhtGBHhwX8OG8mUW2SqBaI&amp;lipi=urn%3Ali%3Apage%3Ad_flagship3_detail_base%3Bhd0Q7%2BvrQGKtdxtNjXHe6w%3D%3D">Dave Dame</a> titled “Stakeholders Agree That Accessibility Is Important, But That Does Not Mean They Will Invest In Accessibility.” He made an excellent point: You may need to speak the business language to get their attention. As Dave put it, “<a href="https://www.linkedin.com/posts/daviddame_accessibility-activity-7291902787003551745-ZUDt?utm_source=share&amp;utm_medium=member_desktop&amp;rcm=ACoAAAddFqsBZwIBQzaaJzWCPkPlL5CFAxXi5Rc">I have Cerebral Palsy, but my money doesn’t</a>.”</p>

<p>There is also <a href="https://hdsunflower.com/uk/insights/post/who-is-purple">data out there suggesting that accessibility can be a worthwhile investment</a>.</p>














<figure class="
  
    break-out article__image
  
  
  ">
  
    <a href="https://files.smashing.media/articles/fostering-accessibility-culture/inforgraphic-showing-stats-purple-pound.jpg">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="533"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/fostering-accessibility-culture/inforgraphic-showing-stats-purple-pound.jpg 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://files.smashing.media/articles/fostering-accessibility-culture/inforgraphic-showing-stats-purple-pound.jpg 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://files.smashing.media/articles/fostering-accessibility-culture/inforgraphic-showing-stats-purple-pound.jpg 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://files.smashing.media/articles/fostering-accessibility-culture/inforgraphic-showing-stats-purple-pound.jpg 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://files.smashing.media/articles/fostering-accessibility-culture/inforgraphic-showing-stats-purple-pound.jpg 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/fostering-accessibility-culture/inforgraphic-showing-stats-purple-pound.jpg"
			
			sizes="100vw"
			alt="Inforgraphic showing stats of the Purple pound"
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      Image source: <a href='https://hdsunflower.com/uk/insights/post/who-is-purple'>Hidden Disabilities Sunflower</a>. (<a href='https://files.smashing.media/articles/fostering-accessibility-culture/inforgraphic-showing-stats-purple-pound.jpg'>Large preview</a>)
    </figcaption>
  
</figure>

<p>Still, I would encourage everyone to strive to change that mindset.</p>

<blockquote class="pull-quote">
  <p>
    <a class="pull-quote__link" aria-label="Share on Twitter" href="https://twitter.com/share?text=%0aDoing%20accessibility%20for%20economic%20or%20legal%20reasons%20is%20valid,%20but%20it%20can%20lead%20to%20perverse%20incentives,%20where%20the%20bare%20minimum%20and%20compliance%20become%20the%20strategy,%20or%20where%20teams%20constantly%20need%20to%20prove%20their%20return%20on%20investment.%0a&url=https://smashingmagazine.com%2f2025%2f04%2ffostering-accessibility-culture%2f">
      
Doing accessibility for economic or legal reasons is valid, but it can lead to perverse incentives, where the bare minimum and compliance become the strategy, or where teams constantly need to prove their return on investment.

    </a>
  </p>
  <div class="pull-quote__quotation">
    <div class="pull-quote__bg">
      <span class="pull-quote__symbol">“</span></div>
  </div>
</blockquote>

<p>It is better to do it for the “wrong” reasons than not to do it at all. But ultimately, those aren’t the reasons we should be doing it.</p>

<p>The “<a href="https://www.bemyeyes.com/podcasts/who-invented-voiceover/">13 Letters</a>” podcast opened with an incredibly interesting two-part episode featuring Mike Shebanek. In it, Mike explains how Apple eventually renewed its commitment to accessibility because, in the state of Maine, schools were providing Macs and needed a screen reader for students who required one. It seems like a somewhat business-driven decision. But years later, Tim Cook famously stated, “<a href="https://www.forbes.com/sites/stevedenning/2014/03/07/why-tim-cook-doesnt-care-about-the-bloody-roi/">When we work on making our devices accessible by the blind, I don’t consider the bloody ROI.</a>” He also remarked, “<a href="https://x.com/tim_cook/status/624584736862679040">Accessibility rights are human rights.</a>”</p>

<p>That’s the mindset I wish more CEOs and leaders had. It is a story of how a change of mindset from “we have to do it” to “it is a core part of what we do” leads to a lasting and successful accessibility culture. Going beyond the bare minimum, Apple has become a leader in accessibility. An innovative company that consistently makes products more accessible and pushes the entire industry forward.</p>

<h2 id="the-good-news">The Good News</h2>

<p>Once good habits are established, they tend to stick around. When I was let go, some people (I’m sure trying to comfort me) said the accessibility of the app would quickly regress and that the company would soon realize their mistake. Unexpectedly for them, I responded that I actually hoped it wouldn’t regress anytime soon. That, to me, would be the sign that I had done my job well.</p>

<p>And honestly, I felt confident it wouldn’t. Incredible people with deep knowledge and a passion for accessibility and building high-quality products stayed at the company. I knew the app was in good hands.</p>

<p>But it’s important not to fall into complacency. Cultures can be taken for granted, but they need constant <strong>nurturing</strong> and <strong>protection</strong>. A company that hires too fast, undergoes a major layoff, gets acquired, experiences high turnover, or sees changes in leadership or priorities… Any of these can pretty quickly destabilize something that took years to build.</p>

<div class="partners__lead-place"></div>

<h2 id="wrapping-up">Wrapping Up</h2>

<p>This might not be your experience, and what we did may not work for you, but I hope you find this insight useful. I have, as they say, strong opinions, but loosely held. So I’m looking forward to knowing what you think and learning about your experiences too.</p>

<p>There’s no easy way or silver bullet! It’s actually very hard! The odds are against you. And we tend to constantly be puzzled about why the world is against us doing something that seems so obviously the right thing to do: to invite and include as many people as possible to use your product, to remove barriers, to avoid exclusion. It is important to talk about <strong>exclusion</strong>, too, when we talk about accessibility.</p>

<blockquote>“Even though we were all talking about inclusion, we each had a different understanding of that word. Exclusion, on the other hand, is unanimously understood as being left out (...) Once we learn how to recognize exclusion, we can begin to see where a product or experience that works well for some might have barriers for someone else. Recognizing exclusion sparks a new kind of creativity on how a solution can be better.”<br /><br />&mdash; <a href="https://www.campaignlive.com/article/recognizing-exclusion-key-inclusive-design-conversation-kat-holmes/1488872">Kat Holmes</a></blockquote>

<p>Something that might help: always assume goodwill and try to meet people where they are. I need to remind myself of this quite often.</p>

<blockquote>“It is all about understanding where people are, meeting them where they’re at (...) People want to fundamentally do the right thing (...) They might not know what they don’t know (...) It might mean stepping back and going to the fundamentals (...) I know some people get frustrated about having to re-explain accessibility over and over again, but I believe that if we are not willing to do that, then how are we gonna change the hearts and minds of people?”<br /><br />&mdash; <a href="https://www.linkedin.com/posts/bencongleton_ndeam-goodjobsforall-inclusionworks-activity-7257013809737789440-CRwS?utm_source=share&utm_medium=member_desktop&rcm=ACoAAAddFqsBZwIBQzaaJzWCPkPlL5CFAxXi5Rc">Jennison Asuncion</a></blockquote>

<p>I’d encourage you to:</p>

<ul>
<li>If you haven’t, just start. No matter what.</li>
<li>Play the long game, and focus more on systems and processes than just goals.</li>
<li>Build a network: rally allies around you and secure buy-in from leadership by showing that accessibility is not extra work; if considered after the fact, they’re actually missed steps.</li>
<li>Shift left and be strategic: reflect on where your limited resources can have the biggest, most lasting impact.</li>
<li>Be persistent. Be resilient.</li>
</ul>

<p>But honestly, anything you can do is progress. And progress is all we need, just for things to be a little better every day. Your job is incredibly important. Thanks for all you do!</p>

<p>Accessibility: This is the way!</p>

<div class="signature">
  <img src="https://www.smashingmagazine.com/images/logo/logo--red.png" alt="Smashing Editorial" width="35" height="46" loading="lazy" decoding="async" />
  <span>(yk)</span>
</div>


              </article>
            </body>
          </html>
        ]]></content:encoded></item><item><author>Steven Garrity</author><title>Gild Just One Lily</title><link>https://www.smashingmagazine.com/2025/04/gild-just-one-lily/</link><pubDate>Thu, 10 Apr 2025 15:00:00 +0000</pubDate><guid>https://www.smashingmagazine.com/2025/04/gild-just-one-lily/</guid><description>“Gilding the lily” isn’t always bad. In design, a touch of metaphorical gold — a subtle animated transition, a hint of color, or added depth in a drop shadow — can help communicate a level of care and attention that builds trust. But first? You need a lily. Nail the fundamentals. Then, gild it carefully.</description><content:encoded><![CDATA[
          <html>
            <head>
              <meta charset="utf-8">
              <link rel="canonical" href="https://www.smashingmagazine.com/2025/04/gild-just-one-lily/" />
              <title>Gild Just One Lily</title>
            </head>
            <body>
              <article>
                <header>
                  <h1>Gild Just One Lily</h1>
                  
                    
                    <address>Steven Garrity</address>
                  
                  <time datetime="2025-04-10T15:00:00&#43;00:00" class="op-published">2025-04-10T15:00:00+00:00</time>
                  <time datetime="2025-04-10T15:00:00&#43;00:00" class="op-modified">2026-02-09T03:03:08+00:00</time>
                </header>
                
                

<p>The phrase “gild the lily” implies <a href="https://grammarist.com/usage/gild-the-lily/">unnecessary ornamentation</a>, the idea being that adorning a lily with superficial decoration only serves to obscure its natural beauty. Well, I’m here to tell you that a little touch of what might seem like <em>unnecessary</em> ornamentation in design is exactly what you need.</p>

<p>When your design is solid, and you’ve nailed the fundamentals, adding <em>one</em> layer of decoration can help communicate <strong>a level of care</strong> and <strong>attention</strong>.</p>

<h2 id="first-you-need-a-lily">First, You Need A Lily</h2>

<p>Let’s break down the “gild the lily” metaphor. First, you need a lily. Lilies are naturally beautiful, and each is unique. They don’t need further decoration. To play in this metaphor, let’s assume your design is <em>already great</em>. If not, you don’t have a lily. Get back to work on the fundamentals and check back in later (or keep reading anyhow).</p>

<p>Now that you’ve got a lily, let’s talk gilding. To “gild” is to cover it with a thin layer of gold. We’re not talking about the inner beauty baked into the very soul of your product (that’s the <em>lily</em> part of the metaphor). A touch of metaphorical gold foil on the surface can send a message of delight with <strong>a hint of decadence</strong>.</p>

<p>This gilding might come in the form of a subtle, animated transition or through a hint of colour and added depth in a drop shadow. Before we get into specifics, let’s make sure our metaphor doesn’t carry us too far.</p>

<div data-audience="non-subscriber" data-remove="true" class="feature-panel-container">

<aside class="feature-panel" style="">
<div class="feature-panel-left-col">

<div class="feature-panel-description"><p>Roll up your sleeves and <strong>boost your UX skills</strong>! Meet <strong><a data-instant href="https://smart-interface-design-patterns.com/">Smart Interface Design Patterns</a></strong>&nbsp;🍣, a 10h video library by Vitaly Friedman. <strong>100s of real-life examples</strong> and live UX training. <a href="https://www.youtube.com/watch?v=3mwZztmGgbE">Free preview</a>.</p>
<a data-instant href="https://smart-interface-design-patterns.com/" class="btn btn--green btn--large" style="">Jump to table of contents&nbsp;↬</a></div>
</div>
<div class="feature-panel-right-col"><a data-instant href="https://smart-interface-design-patterns.com/" class="feature-panel-image-link">
<div class="feature-panel-image"><picture><source type="image/avif" srcSet="https://archive.smashing.media/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/3155f571-450d-42f9-81b4-494aa9b52841/video-course-smart-interface-design-patterns-vitaly-friedman.avif" />
<img
    loading="lazy"
    decoding="async"
    class="feature-panel-image-img"
    src="https://archive.smashing.media/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/8c98e7f9-8e62-4c43-b833-fc6bf9fea0a9/video-course-smart-interface-design-patterns-vitaly-friedman.jpg"
    alt="Feature Panel"
    width="690"
    height="790"
/>
</picture>
</div>
</a>
</div>
</aside>
</div>

<h2 id="gild-sparingly">Gild Sparingly</h2>

<blockquote>If we go too far with our gilding, we can communicate indulgence and excess rather than a hint of decadence.</blockquote>

<p>An over-the-top design can be particularly irritating, depending on the state of mind of the person you’re designing for. For example, a flashy animation bragging about your new AI chat feature may not sit so well with a frustrated customer who can’t get their password reset to use it in the first place.</p>

<h2 id="wink-at-the-audience-once">Wink At The Audience (Once)</h2>

<p>Not every great product design can be so obviously beautiful as a lily. Even if you have a great design, it may not be noticeable to those enjoying the benefits of that design. Our designs shouldn’t always be noticeable, but sometimes it’s <em>fun</em> to notice and appreciate a great design.</p>

<p>If you’re Apple, you don’t need to worry about your design going unnoticed. Nobody thinks the background color of the Apple website is white (<strong><code>#FFFFFF</code></strong>) because they forgot to specify one in their stylesheet (though I’m old enough to remember a time when the default background of the web was a battleship gray, <strong><code>#CCCCCC</code></strong>). It’s so clear from the general level of refinement and production quality on the Apple site that the white background is a deliberate <em>choice</em>.</p>














<figure class="
  
    break-out article__image
  
  
  ">
  
    <a href="https://files.smashing.media/articles/gild-just-one-lily/1-apple-wwebsite.png">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="597"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/gild-just-one-lily/1-apple-wwebsite.png 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://files.smashing.media/articles/gild-just-one-lily/1-apple-wwebsite.png 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://files.smashing.media/articles/gild-just-one-lily/1-apple-wwebsite.png 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://files.smashing.media/articles/gild-just-one-lily/1-apple-wwebsite.png 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://files.smashing.media/articles/gild-just-one-lily/1-apple-wwebsite.png 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/gild-just-one-lily/1-apple-wwebsite.png"
			
			sizes="100vw"
			alt="Screenshot of the Apple iMac website showing bright product photography on a white background"
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      The Apple website, featuring their trademark product photos in Jony Ive’s white world. (<a href='https://files.smashing.media/articles/gild-just-one-lily/1-apple-wwebsite.png'>Large preview</a>)
    </figcaption>
  
</figure>

<p>You and I are not Apple. Your client is (probably) not Apple. You don’t have an army of world-class product photographers and motion designers working in a glass spaceship in Cupertino. You’re on a small team pushing up against budget and schedule constraints. Even with these limitations, you’re managing to make great products.</p>

<p>The great design behind your products might be so well done that it is invisible. The door handle is so well-shaped that you don’t notice how well-shaped it is. That button is so well-placed that no one thinks about where it is positioned.</p>

<blockquote>When you’re nailing the fundamentals, it’s ok to wink at the audience once in a while. Not only is it ok, but it can even augment your design.</blockquote>

<p>By calling just a touch of attention to the thoughtfulness of your design, you may make it even more delightful to experience. Take it one inch too far, though, and you’re distracting from the experience and begging for applause. Walk this line carefully.</p>

<div class="partners__lead-place"></div>

<h2 id="digital-lilies">Digital Lilies</h2>

<p>A metaphor &mdash; even one with gold and lilies &mdash; only takes us so far. Let’s consider some concrete examples of gilding a digital product. When it comes to the web, a few touches of polish to reach for can include the following:</p>














<figure class="
  
    break-out article__image
  
  
  ">
  
    <a href="https://files.smashing.media/articles/gild-just-one-lily/2-supabase-site.png">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="457"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/gild-just-one-lily/2-supabase-site.png 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://files.smashing.media/articles/gild-just-one-lily/2-supabase-site.png 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://files.smashing.media/articles/gild-just-one-lily/2-supabase-site.png 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://files.smashing.media/articles/gild-just-one-lily/2-supabase-site.png 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://files.smashing.media/articles/gild-just-one-lily/2-supabase-site.png 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/gild-just-one-lily/2-supabase-site.png"
			
			sizes="100vw"
			alt="Screenshot of Supabase website showing half in a dark theme with a dark grey background and half in a light theme with an off-white background"
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      The Supabase site has dark and light themes, both of which are just a touch of a pure black and pure white (pure black and white are shown at the bottom of the screenshot to highlight the tiny difference). (<a href='https://files.smashing.media/articles/gild-just-one-lily/2-supabase-site.png'>Large preview</a>)
    </figcaption>
  
</figure>

<p><strong>Not-quite black and not-quite white</strong>: Instead of solid black (<strong><code>#000000</code></strong>) and solid white (<strong><code>#FFFFFF</code></strong>) colors on the web, <a href="https://uxmovement.com/content/why-you-should-never-use-pure-black-for-text-or-backgrounds/">find subtle variations</a>. They may look black/white on a first glance, but there’s a subtle implication of care and customization. An off-white background also allows you to have pure white elements, like form inputs, that stand out nicely against the backdrop. Be careful to <a href="https://www.a11yproject.com/checklist/#color-contrast">preserve enough contrast to ensure accessible text</a>.</p>














<figure class="
  
    break-out article__image
  
  
  ">
  
    <a href="https://files.smashing.media/articles/gild-just-one-lily/3-comeau-example.png">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="294"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/gild-just-one-lily/3-comeau-example.png 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://files.smashing.media/articles/gild-just-one-lily/3-comeau-example.png 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://files.smashing.media/articles/gild-just-one-lily/3-comeau-example.png 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://files.smashing.media/articles/gild-just-one-lily/3-comeau-example.png 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://files.smashing.media/articles/gild-just-one-lily/3-comeau-example.png 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/gild-just-one-lily/3-comeau-example.png"
			
			sizes="100vw"
			alt="A screenshot of three white rectangles on a blue background, one with a grey shadow labeled &#39;Too grey&#39;, one with a bright blue shadow labeled &#39;Too bright&#39;, and one with a subtle blue shadow labeled ‘Just right’"
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      Josh W. Comeau’s example shows how color can improve shadows. (<a href='https://files.smashing.media/articles/gild-just-one-lily/3-comeau-example.png'>Large preview</a>)
    </figcaption>
  
</figure>

<p><strong>Layered and color-hinted shadows</strong>: <a href="https://www.joshwcomeau.com/css/designing-shadows/">Josh Comeau writes about bringing color into shadows</a>, including a <a href="https://www.joshwcomeau.com/css/introducing-shadow-palette-generator/">tool to help generate shadows</a> that just feel better.</p>














<figure class="
  
    break-out article__image
  
  
  ">
  
    <a href="https://files.smashing.media/articles/gild-just-one-lily/4-chart-utopia-blog.png">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="450"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/gild-just-one-lily/4-chart-utopia-blog.png 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://files.smashing.media/articles/gild-just-one-lily/4-chart-utopia-blog.png 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://files.smashing.media/articles/gild-just-one-lily/4-chart-utopia-blog.png 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://files.smashing.media/articles/gild-just-one-lily/4-chart-utopia-blog.png 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://files.smashing.media/articles/gild-just-one-lily/4-chart-utopia-blog.png 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/gild-just-one-lily/4-chart-utopia-blog.png"
			
			sizes="100vw"
			alt="Complex chart showing heading font sizes scaling to different sizes at different viewport sizes"
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      This chart from the <a href='https://utopia.fyi/blog/designing-with-fluid-type-scales'>Utopia blog</a> shows how font sizes can scale smoothly in proportion to the viewport width. (<a href='https://files.smashing.media/articles/gild-just-one-lily/4-chart-utopia-blog.png'>Large preview</a>)
    </figcaption>
  
</figure>

<p><strong>Comfortable lettering</strong>: Find a comfortable line height and letter spacing for the font family you’re using. A responsive type system like <a href="https://utopia.fyi/">Utopia</a> can help define spacing that looks and feels comfortable across a variety of device sizes.</p>














<figure class="
  
    break-out article__image
  
  
  ">
  
    <a href="https://files.smashing.media/articles/gild-just-one-lily/5-one-react-framework-site.png">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="488"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/gild-just-one-lily/5-one-react-framework-site.png 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://files.smashing.media/articles/gild-just-one-lily/5-one-react-framework-site.png 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://files.smashing.media/articles/gild-just-one-lily/5-one-react-framework-site.png 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://files.smashing.media/articles/gild-just-one-lily/5-one-react-framework-site.png 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://files.smashing.media/articles/gild-just-one-lily/5-one-react-framework-site.png 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/gild-just-one-lily/5-one-react-framework-site.png"
			
			sizes="100vw"
			alt="Screenshot of One react framework website included a softly curved bright yellow border highlight along the top of the page"
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      The One React framework site includes a distinctive splash of color along the top. Note the gentle curve of the color element. (<a href='https://files.smashing.media/articles/gild-just-one-lily/5-one-react-framework-site.png'>Large preview</a>)
    </figcaption>
  
</figure>

<p><strong>A touch of color</strong>: When you don’t want your brand colors to overwhelm your design or you would like a complementary color to accent an otherwise monotone site, consider adding a single, simple stripe of solid color along the top of the viewport. Even something a few pixels tall can add a nice splash of color without complicating the rest of the design. The <a href="https://onestack.dev/">site for the One React web framework</a> does this nicely and goes further with a uniquely shaped yellow accent at the top of the site. It’s even more subtle if you’re seeing their dark-mode design, but it’s still there.</p>














<figure class="
  
    break-out article__image
  
  
  ">
  
    <a href="https://files.smashing.media/articles/gild-just-one-lily/6-a-list-apart-site.png">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="597"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/gild-just-one-lily/6-a-list-apart-site.png 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://files.smashing.media/articles/gild-just-one-lily/6-a-list-apart-site.png 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://files.smashing.media/articles/gild-just-one-lily/6-a-list-apart-site.png 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://files.smashing.media/articles/gild-just-one-lily/6-a-list-apart-site.png 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://files.smashing.media/articles/gild-just-one-lily/6-a-list-apart-site.png 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/gild-just-one-lily/6-a-list-apart-site.png"
			
			sizes="100vw"
			alt="Screenshot of A List Apart website including a hand-sketched illustration of a sports team getting their photo taken"
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      The A List Apart site features custom illustrations for its articles and has done that long before the advent of AI image generation. Visit the seminal <a href='https://alistapart.com/article/responsive-web-design/'>Responsive Web Design</a> article and try resizing your browser for an especially apt response. (<a href='https://files.smashing.media/articles/gild-just-one-lily/6-a-list-apart-site.png'>Large preview</a>)
    </figcaption>
  
</figure>

<p><strong>Illustration and photography</strong>: It’s easier than ever to find whimsical and fun illustrations for your site, but no stock image can replace a relevant illustration or photo so apt that it <em>must</em> have been crafted just for this case. <a href="https://alistapart.com/article/the-wax-and-the-wane-of-the-web/"><em>A List Apart</em></a> has commissioned a unique illustration in a consistent style for each of their articles for <em>decades</em>. You don’t have to be a gifted illustrator. There may be charm in your amateur scribbles. If not, <a href="https://hicks.design/">hire a great artist</a>.</p>

<h2 id="beware-cheap-gilding">Beware, Cheap Gilding</h2>

<p>Symbols of decadence are valued because they are precious in some way. This is why we talk about gilding with gold and not brass. This is also why a business card with rounded corners may feel more premium than a simple rectangle. It feels more expensive because it is.</p>

<p>Printing has gotten pretty cheap, though, even with premium touches. Printing flourishes like rounded corners or a smooth finish don’t convey the same value and care as they did before they became quick up-sell options from your local (or budget online) print shop.</p>

<p>A well-worded and thoughtful cover letter used to be a great way to stand out from a pile of similar resumes. Now, it takes a whole different approach to stand out from a wall of AI-LLM-generated cover letters that say everything an employer might want to hear.</p>

<p>On the web, a landing page where new page sections slide and fade in with animation is used to imply that someone spent extra time on the implementation. Now, a page with too much motion feels more like a million other templates enabled by site-building tools like Wix, Squarespace, and Webflow.</p>

<p>Custom fonts have also become so easy and ubiquitous on the web that sticking to system default fonts can be as strong a statement as a stylish typeface.</p>

<div class="partners__lead-place"></div>

<h2 id="does-anyone-care">Does Anyone Care?</h2>

<p>Is everyone going to notice that the drop shadows on your website have a hint of color? No. Is <em>anyone</em> going to notice? Maybe not. If you get the details right, though, people will <em>feel</em> it. These levels of polish are <strong>cumulative</strong>, contributing one percent here and there to the overall experience. They may not notice the hue of your drop shadow, but they may <strong>impart some trust</strong> from a sense of the care that went into the design.</p>

<p>Most people aren’t web developers or designers. They don’t know the implementation details of CSS animations and box-shadows. Similarly, I’m not a car expert &mdash; far from it. I value reliability and affordability more than performance and luxury in a car. Even so, when I close the door on a high-quality vehicle, I can <em>feel</em> the difference.</p>

<p>On that next project, allow yourself to gild just one lily.</p>

<div class="signature">
  <img src="https://www.smashingmagazine.com/images/logo/logo--red.png" alt="Smashing Editorial" width="35" height="46" loading="lazy" decoding="async" />
  <span>(gg, yk)</span>
</div>


              </article>
            </body>
          </html>
        ]]></content:encoded></item><item><author>Tomasz Jakut</author><title>Taking RWD To The Extreme</title><link>https://www.smashingmagazine.com/2025/02/taking-rwd-to-the-extreme/</link><pubDate>Fri, 07 Feb 2025 13:00:00 +0000</pubDate><guid>https://www.smashingmagazine.com/2025/02/taking-rwd-to-the-extreme/</guid><description>Tomasz Jakut reflects on the evolution of web design, recalling the days when table layouts were all the rage and Flash games were shaping the online culture. And then &lt;strong>responsive web design&lt;/strong> (RWD) happened &amp;mdash; and it often feels like the end of history; well, at least for web design. After all, we still create responsive websites, and that’s The True Way™ of doing layouts on the web. Yet the current year, 2025, marks the &lt;em>15th&lt;/em> anniversary of &lt;a href="https://alistapart.com/article/responsive-web-design/">Ethan Marcotte’s article&lt;/a>, which forever changed web development. That’s a whole era in “web” years. So, maybe &lt;em>something&lt;/em> happened after RWD, but it was so obvious that it went nearly invisible. Let’s try to uncover this &lt;em>something&lt;/em>.</description><content:encoded><![CDATA[
          <html>
            <head>
              <meta charset="utf-8">
              <link rel="canonical" href="https://www.smashingmagazine.com/2025/02/taking-rwd-to-the-extreme/" />
              <title>Taking RWD To The Extreme</title>
            </head>
            <body>
              <article>
                <header>
                  <h1>Taking RWD To The Extreme</h1>
                  
                    
                    <address>Tomasz Jakut</address>
                  
                  <time datetime="2025-02-07T13:00:00&#43;00:00" class="op-published">2025-02-07T13:00:00+00:00</time>
                  <time datetime="2025-02-07T13:00:00&#43;00:00" class="op-modified">2026-02-09T03:03:08+00:00</time>
                </header>
                
                

<p>When Ethan Marcotte conceived RWD, web technologies were far less mature than today. As web developers, we started to grasp how to do things with <code>float</code>s after years of stuffing everything inside table cells. There weren’t many possible ways to achieve a responsive site. There were two of them: <strong>fluid grids</strong> (based on percentages) and <strong>media queries</strong>, which were a hot new thing back then.</p>

<p>What was lacking was a <em>real</em> layout system that would allow us to <em>lay</em> <em>things</em> <em>out</em> on a page instead of improvising with floating content. We had to wait several years for Flexbox to appear. And CSS Grid followed that.</p>

<p>Undoubtedly, new layout systems native to the browser were groundbreaking 10 years ago. They were revolutionary enough to usher in a new era. In her talk “<a href="https://talks.jensimmons.com/jugbbe/everything-you-know-about-web-design-just-changed">Everything You Know About Web Design Just Changed</a>” at the An Event Apart conference in 2019, Jen Simmons proposed a name for it: <strong>Intrinsic Web Design (IWD)</strong>. Let’s disarm that fancy word first. According to the Merriam-Webster dictionary, intrinsic means “<a href="https://www.merriam-webster.com/dictionary/intrinsic"><em>belonging to the essential nature or constitution of a thing</em></a>.” In other words, IWD is a natural way of doing design for the web. And that boils down to using CSS layout systems for… laying out things. That’s it.</p>

<p>It does not sound that groundbreaking on its own. But it opens a lot of possibilities that weren’t earlier available with float-based layouts or table ones. We got the best things from both worlds: two-dimensional layouts (like tables with their rows and columns) with wrapping abilities (like floating content when there is not enough space for it). And there are even more goodies, like mixing fixed-sized content with fluid-sized content or intentionally overlapping elements:</p>

<figure class="break-out">
	<p data-height="480"
	data-theme-id="light"
	data-slug-hash="zxOgdoM"
	data-user="smashingmag"
	data-default-tab="result"
	class="codepen">See the Pen [Overlapping elements [forked]](https://codepen.io/smashingmag/pen/zxOgdoM) by <a href="https://codepen.io/Comandeer">Comandeer</a>.</p>
	<figcaption>See the Pen <a href="https://codepen.io/smashingmag/pen/zxOgdoM">Overlapping elements [forked]</a> by <a href="https://codepen.io/Comandeer">Comandeer</a>.</figcaption>
</figure>

<p>As Jen points out in her presentation, this allows us to finally make even <em>fancy</em> designs in the “web” way, eliminating the tension between web designers and developers. No more <em>“This print design can’t be translated for the web!”</em> Well, at least far fewer arguments…</p>

<p>But here’s the strange part: that new era didn’t come. IWD never became a household term, the same way that RWD has. We’re still stuck to the good and old RWD era. Yet, Flexbox and Grid became indispensable tools in (nearly) every web developer’s tool belt. They are so natural and <em>intrinsic</em> that we intuitively started to use them, missing their whole revolutionary aspect. Instead of a groundbreaking revolution of IWD, we chose a longer but steadier evolution of RWD.</p>

<h2 id="enter-the-browser">Enter The Browser</h2>

<p>I believe that IWD paved the way for more radical ideas, even if it hasn’t developed into a bonafide era. And the central point of all of those radical ideas is a browser &mdash; that part of the web that sits between our code and the user. Web developers have always had a love-hate relationship with browsers. (Don’t get me started on Internet Explorer!) They often amuse us both with new features (<a href="https://developer.mozilla.org/en-US/docs/Web/API/WebGPU_API">WebGPU</a> for the win!) and cryptic bugs (<a href="https://issues.chromium.org/issues/40825240">points suddenly take up more space</a>, what the heck?). But at the end of the day, we tell the browser what to do to display our page the way <em>we</em> want it to be displayed to the user.</p>

<p>In some ways, IWD challenged that approach. CSS layout systems aren’t taking direct orders from a web developer. <a href="https://www.miriamsuzanne.com/2019/10/03/css-is-weird/">We can barely <em>hint</em> at what we want them to do</a>. But the final decision lies with the browser. And what if we take it even further?</p>

<p>Heydon Pickering proposed the term <a href="https://every-layout.dev/blog/algorithmic-design/"><em>algorithmic layouts</em></a> to describe such an approach. The web is inherently algorithmic. Even <a href="https://motherfuckingwebsite.com/">the simplest page</a> uses internal algorithms to lay things out: a block of text forms a flow layout that will wrap when there is not enough space in the line. And that’s so obvious that we don’t even think about it. That’s just how text works, and that’s how it has always worked. And yet, there is an algorithm behind that. That and all CSS layout systems. We can use Flexbox to make a simple layout that displays on a single line by default and falls back to wrapping up multiple lines if there is not enough space, just like text.</p>

<figure class="break-out">
	<p data-height="480"
	data-theme-id="light"
	data-slug-hash="wBwVqJJ"
	data-user="smashingmag"
	data-default-tab="result"
	class="codepen">See the Pen [Resizable flexbox container [forked]](https://codepen.io/smashingmag/pen/wBwVqJJ) by <a href="https://codepen.io/Comandeer">Comandeer</a>.</p>
	<figcaption>See the Pen <a href="https://codepen.io/smashingmag/pen/wBwVqJJ">Resizable flexbox container [forked]</a> by <a href="https://codepen.io/Comandeer">Comandeer</a>.</figcaption>
</figure>

<p>And we get all of these algorithms for free! The only thing we need to do is to allow Flexbox to wrap with the <a href="https://developer.mozilla.org/en-US/docs/Web/CSS/flex-wrap"><code>flex-wrap</code> property</a>. And it wraps by itself. Imagine that you need to calculate when and how the layout should wrap &mdash; that would be a nightmare. Fortunately, browsers are good at laying out things. After all, they have been doing it for over 35 years. They’re experienced in that, so just let them handle this stuff. That’s the power of algorithmic layouts: they work the best when left alone.</p>

<p>Andy Bell summed it pretty well during <em>All Day Hey!</em> in 2022 when he recommended that we “<a href="https://www.youtube.com/watch?v=5uhIiI9Ld5M">be the browser’s mentor, not its micromanager</a>.” Don’t try to be smarter than a browser because it knows things you can’t possibly know. You don’t know what device the user uses &mdash; its processing power, current battery level, <a href="https://viewports.fyi/">viewport</a>, and connection stability. You don’t know what assistive technologies the user uses or how they configured their operating system. You don’t know if they disable cookies and JavaScript.</p>

<p>You know only one thing: there is that peculiar thing between your website and the user called browser &mdash; and it knows much more about the page and the user than you do. It’s like an excellent translator that you hire for those extremely important business negotiations with someone from a totally foreign culture that you don’t know anything about. But the translator knows it well and translates your words with ease, gently closing the cultural chasm between you and the potential customer. You don’t want to force them to translate your words literally &mdash; that could be catastrophic. What you want is to provide them with your message and allow them to do the magic of shaping it into a message understandable to the customer. And the same applies to browsers; they know better how to display your website.</p>

<h2 id="enter-the-declarative-design">Enter The Declarative Design</h2>

<p>I think that Jen, Heydon, and Andy speak of the same thing &mdash; an approach that shifts much of the work from the web developer to the browser. Instead of telling it <em>how</em> to do things, we rather tell it <em>what</em> to do and leave it to figure out the “how” part by itself.</p>

<p>As Jeremy Keith notices, there has been a shift from an <strong>imperative</strong> design (telling the browser “how”) to a <strong>declarative</strong> one (telling the browser “what”). Specifically, <a href="https://adactio.com/journal/18982">Jeremy says</a> that we ought to “focus on creating the right <em>inputs</em> rather than trying to control every possible <em>output</em>.”</p>

<p>That’s quite similar to what we do with AI today: we meticulously craft our prompts (inputs) and hope to get the right answer (output). However, there is a very important difference between AI and browsers: the latter is not a black box.</p>

<p>Everything (well, most of what) the browser does is described in detail in open web standards, so we’re able to make educated guesses about the output. Granted, we can’t be sure if the user sees the two-column layout on their 8K screen or a one-column layout on their microwave’s small screen (<a href="https://www.reddit.com/r/itrunsdoom/comments/cuoymo/doom_on_a_microwave/">if it can run DOOM</a>, it can run a web browser!). But we know for sure that we defined these two edge cases, and the browser works out everything in between.</p>

<p>In theory, it all sounds nice and easy. Let’s try to make the declarative design more actionable. If we gather the techniques mentioned by Jen, Heydon, Andy, and Jeremy, we will end up with roughly the following list:</p>

<h3 id="use-native-layout-systems">Use Native Layout Systems</h3>

<p>They’re available in basically every browser on the market and have been for years, and I believe that they are, indeed, widely used. But from time to time, a question pops up: <strong>Which layout system should I use?</strong> And the answer is: Yes. Mix and match! After all, different elements on the page would work better with different layout systems. Take, for example, this navigation on top with several links in one row that should wrap if there is not enough space. Sounds like Flexbox. Is the main part divided into three columns, with the third column positioned at the bottom of the content? Definitely CSS Grid. As for the text content? Well, that’s flow.</p>














<figure class="
  
    break-out article__image
  
  
  ">
  
    <a href="https://files.smashing.media/articles/taking-rwd-to-the-extreme/1-layouts.png">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="677"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/taking-rwd-to-the-extreme/1-layouts.png 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://files.smashing.media/articles/taking-rwd-to-the-extreme/1-layouts.png 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://files.smashing.media/articles/taking-rwd-to-the-extreme/1-layouts.png 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://files.smashing.media/articles/taking-rwd-to-the-extreme/1-layouts.png 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://files.smashing.media/articles/taking-rwd-to-the-extreme/1-layouts.png 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/taking-rwd-to-the-extreme/1-layouts.png"
			
			sizes="100vw"
			alt="A layout of the page: there is a navigation in the top left corner, based on the flexbox; the main area is based on the grid and divided into three columns and two rows; the first column contains an aside content; the second column contains the main content; the third column contains another aside content that occupies the second row."
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      (<a href='https://files.smashing.media/articles/taking-rwd-to-the-extreme/1-layouts.png'>Large preview</a>)
    </figcaption>
  
</figure>

<blockquote class="pull-quote">
  <p>
    <a class="pull-quote__link" aria-label="Share on Twitter" href="https://twitter.com/share?text=%0aNative%20layout%20systems%20are%20here%20to%20make%20the%20browser%20work%20for%20you%20%e2%80%94%20don%e2%80%99t%20hesitate%20to%20use%20that%20to%20your%20advantage.%0a&url=https://smashingmagazine.com%2f2025%2f02%2ftaking-rwd-to-the-extreme%2f">
      
Native layout systems are here to make the browser work for you — don’t hesitate to use that to your advantage.

    </a>
  </p>
  <div class="pull-quote__quotation">
    <div class="pull-quote__bg">
      <span class="pull-quote__symbol">“</span></div>
  </div>
</blockquote>

<h3 id="start-with-semantic-html">Start With Semantic HTML</h3>

<p>HTML is the backbone of the web. It’s the language that structures and formats the content for the user. And it comes with a huge bonus: it loads and displays to the user, even if CSS and JavsScript fail to load for whatever reason. In other words, the website should still make sense to the user even if the CSS that provides the layout and the JavsScript that provides the interactivity are no-shows. A website is a text document, not so different from the one you can create in a text processor, like Word or LibreWriter.</p>

<p>Semantic HTML also provides important accessibility features, like headings that are often <a href="https://webaim.org/projects/screenreadersurvey10/#finding">used by screen-reader users for navigating pages</a>. This is why starting not just with any markup but <em>semantic</em> markup for meaningful structure is a crucial step to embracing native web features.</p>

<h3 id="use-fluid-type-with-fluid-space">Use Fluid Type With Fluid Space</h3>

<p>We often need to adjust the font size of our content when the screen size changes. Smaller screens mean being able to display less content, and larger screens provide more affordance for additional content. This is why we ought to make content as <em>fluid</em> as possible, by which I mean the content should automatically adjust based on the screen’s size. A fluid typographic system optimizes the content’s legibility when it’s being viewed in different contexts.</p>

<p>Nowadays, we can achieve truly fluid type with one line of CSS, thanks to the <a href="https://developer.mozilla.org/en-US/docs/Web/CSS/clamp"><code>clamp()</code> function</a>:</p>

<pre><code class="language-css">font-size: clamp(1rem, calc(1rem + 2.5vw), 6rem);
</code></pre>

<p>The maths involved in it goes quite above my head. Thankfully, there is a <a href="https://www.smashingmagazine.com/2022/01/modern-fluid-typography-css-clamp/">detailed article on fluid type by Adrian Bece</a> here on Smashing Magazine and <a href="https://utopia.fyi/">Utopia</a>, a handy tool for doing the maths for us. But beware &mdash; there be dragons! Or at least <a href="https://adrianroselli.com/2019/12/responsive-type-and-zoom.html">possible accessibility issues</a>. By limiting the maximum font size, we could break the ability to zoom the text content, violating <a href="https://www.w3.org/WAI/WCAG21/Understanding/resize-text.html">one of the WCAG’s requirements</a> (though there are <a href="https://www.smashingmagazine.com/2023/11/addressing-accessibility-concerns-fluid-type/">ways to address that</a>).</p>

<p>Fortunately, fluid space is much easier to grasp: if gaps (margins) between elements are defined in font-dependent units (like <code>rem</code> or <code>em</code>), they will scale alongside the font size. Yet rest assured, <a href="https://ashleemboyer.com/blog/why-you-should-use-px-units-for-margin-padding-and-other-spacing-techniques">there are also caveats</a>.</p>

<h3 id="always-bet-on-progressive-enhancement">Always Bet On Progressive Enhancement</h3>

<p>Yes, that’s this over-20-year-old technique for creating web pages. And it’s still relevant today in 2025. Many interesting features have limited availability &mdash; like cross-page <a href="https://developer.mozilla.org/en-US/docs/Web/API/View_Transition_API">view transitions</a>. They won’t work for every user, but enabling them is as simple as adding one line of CSS:</p>

<pre><code class="language-css">@view-transition { navigation: auto; }
</code></pre>

<p>It won’t work in some browsers, but it also won’t break anything. And if some browser catches up with the standard, the code is already there, and view transitions start to work in that browser on your website. It’s sort of like opting into the feature when it’s ready.</p>

<blockquote class="pull-quote">
  <p>
    <a class="pull-quote__link" aria-label="Share on Twitter" href="https://twitter.com/share?text=%0aThat%e2%80%99s%20progressive%20enhancement%20at%20its%20best:%20allowing%20you%20to%20make%20your%20stairs%20into%20an%20escalator%20whenever%20it%e2%80%99s%20possible.%0a&url=https://smashingmagazine.com%2f2025%2f02%2ftaking-rwd-to-the-extreme%2f">
      
That’s progressive enhancement at its best: allowing you to make your stairs into an escalator whenever it’s possible.

    </a>
  </p>
  <div class="pull-quote__quotation">
    <div class="pull-quote__bg">
      <span class="pull-quote__symbol">“</span></div>
  </div>
</blockquote>

<p>It applies to many more things in CSS (unsupported grid is just a flow layout, unsupported <a href="https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_grid_layout/Masonry_layout">masonry layout</a> is just a grid, and so on) and other web technologies.</p>

<h3 id="trust-the-browser">Trust The Browser</h3>

<p>Trust it because it knows much more about how safe it is for users to surf the web. Besides, it’s a computer program, and computer programs are pretty good at calculating things. So instead of calculating all these breakpoints ourselves, take their helping hand and allow them to do it for you. Just give them some constraints. Make that <code>&lt;main&gt;</code> element no wider than 60 characters and no narrower than 20 characters &mdash; and then relax, watching the browser make it 37 characters on some super rare viewport you’ve never encountered before. It Just Works™.</p>

<p>But trusting the browser also means trusting <a href="https://www.w3.org/standards/">the open web</a>. After all, these algorithms responsible for laying things out are all parts of the standards.</p>

<h3 id="ditch-the-physical-css">Ditch The “Physical” CSS</h3>

<p>That’s a bonus point from me. Layout systems introduced the concept of logical CSS. Flexbox does not have a notion of a left or right side &mdash; it has a start and an end. And that way of thinking lurked into other areas of CSS, creating the whole <a href="https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_logical_properties_and_values">CSS Logical Properties and Values module</a>. After working more with layout systems, logical CSS seems much more intuitive than the old “physical” one. It also has at least one advantage over the old way of doing things: <strong>it works far better with internationalized content</strong>.</p>

<figure class="break-out">
	<p data-height="480"
	data-theme-id="light"
	data-slug-hash="mybNMzR"
	data-user="smashingmag"
	data-default-tab="result"
	class="codepen">See the Pen [Physical vs logical CSS [forked]](https://codepen.io/smashingmag/pen/mybNMzR) by <a href="https://codepen.io/Comandeer">Comandeer</a>.</p>
	<figcaption>See the Pen <a href="https://codepen.io/smashingmag/pen/mybNMzR">Physical vs logical CSS [forked]</a> by <a href="https://codepen.io/Comandeer">Comandeer</a>.</figcaption>
</figure>

<p>The demo above shows the difference between physical and logical CSS. The physical tiles have the <code>text-align: left</code> property applied, while the logical ones have <code>text-align: start</code>. When the “left to right” inline text direction is set, both of them look the same. But when the “right to left” one is set, the logical tiles “move” their start to the right, moving the text alongside it.</p>

<p>Additionally, containers with tiles have their width set &mdash; the physical container with the <code>width: 400px</code> property and the logical one with the <code>inline-size: 400px</code> property. They both look the same as long as the block text direction is set to “horizontal.” But when it is set to “vertical,” the logical one switches its width with the height (as now the line of text is going from top to bottom, not from left to right), and the physical one keeps its initial width and height.</p>

<h2 id="taking-it-to-the-extreme">Taking It To The Extreme</h2>

<blockquote>“What do you mean by taking RWD to the extreme &mdash; it’s already pretty extreme!”</blockquote>

<p>I hear you. But I believe that there’s still room for more. The changes described above are a big shift in the RWD world. But this shift is mainly technological. Fluid type without the <code>clamp()</code> method or algorithmic layouts without flexbox and grid couldn’t possibly exist &mdash; at least not without some horrible hacks (does anyone still remember <a href="https://fvsch.com/css-locks">CSS locks</a>?). Our web development routine just caught up to what the modern browser can do. Yet, there is still another shift that could happen: a mental one.</p>

<p>I’ll be honest: I’m a die-hard fanatic of using <code>rem</code> and <code>em</code> length units. I’ve been using them for years, but they clicked for me only when I stopped trying to translate them into pixels. And what helped me in it was a… chemistry class I attended many years ago. When working with all these chemical concoctions, you often need to calculate their ratios. There’s that fancy method for doing that:</p>

<pre><code class="language-css">60 — 100%
20 — x

x=100%&#42;20/60=33.(3)%
</code></pre>

<p>After I applied this way of thinking to <code>rem</code> and <code>em</code> units, I entered a new world of thinking about layouts: a ratio-based one. Because there is still a myth that 1 rem roughly equals 16 pixels &mdash; except <a href="https://nicolas-hoizey.com/articles/2016/03/02/people-don-t-change-the-default-16px-font-size-in-their-browser/">it doesn’t</a>. It could equal any number of pixels because it all depends on what value the user sets in their browser. So, thinking in concrete numbers is, in fact, incompatible with <code>rem</code> and <code>em</code> units. The only fully compatible way is to… keep it as-is.</p>














<figure class="
  
    break-out article__image
  
  
  ">
  
    <a href="https://files.smashing.media/articles/taking-rwd-to-the-extreme/2-meme-one-rem.png">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="540"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/taking-rwd-to-the-extreme/2-meme-one-rem.png 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://files.smashing.media/articles/taking-rwd-to-the-extreme/2-meme-one-rem.png 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://files.smashing.media/articles/taking-rwd-to-the-extreme/2-meme-one-rem.png 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://files.smashing.media/articles/taking-rwd-to-the-extreme/2-meme-one-rem.png 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://files.smashing.media/articles/taking-rwd-to-the-extreme/2-meme-one-rem.png 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/taking-rwd-to-the-extreme/2-meme-one-rem.png"
			
			sizes="100vw"
			alt="A confused teenager asks his father: “So how do I know how big is 1 rem?” and the father answers with a smile: “That’s the neat part, you don’t”."
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      (<a href='https://files.smashing.media/articles/taking-rwd-to-the-extreme/2-meme-one-rem.png'>Large preview</a>)
    </figcaption>
  
</figure>

<p>And I know that sounds crazy, but it forces a change in thinking about websites. If you don’t know the most basic information about your content (the font size), you can’t really apply any concrete numbers to your layout. You can only think in <em>ratios</em>. If the font size equals <code>✕</code>, your heading could equal <code>2✕</code>, the main column <code>60✕</code>, some text input &mdash; <code>10✕</code>, and so on. This way, everything should work out with any font size and, by extension, scale up with any font size.</p>

<p>We’ve already been doing that with layout systems &mdash; we allow them to work on ratios and figure out how big each part of the layout should be. And we’ve also been doing that with <code>rem</code> and <code>em</code> units for <a href="https://css-tricks.com/rems-ems/">scaling things up depending on font size</a>. The only thing left is to completely forget the “<code>1rem</code> = <code>16px</code>” equation and fully embrace the exciting shores of unknown dimensions.</p>

<p>But that sort of mental shift comes with one not-so-straightforward consequence. Not setting the font size and working with the user-provided one instead fully <strong>moves the power from the web developer to the browser and, effectively, the user</strong>. And the browser can provide us with <a href="https://www.smashingmagazine.com/2023/08/css-accessibility-inclusion-user-choice/">far more information about user preferences</a>.</p>

<p>Thanks to the modern CSS, we can <em>respond</em> to these things. For example, we can switch to dark mode if the user prefers one, we can limit motion if the user requests it, we can make clickable areas bigger if the device has a touch screen, and so on. By having this kind of <strong>dialogue with the browser</strong>, exchanging information (it gives us data on the user, and we give it hints on how to display our content), we <strong>empower the user</strong> in the result. The content would be displayed in the way <em>they</em> want. That makes our website far more inclusive and accessible.</p>

<p>After all, the users know what they need best. If they set the default font size to 64 pixels, they would be grateful if we respected that value. We don’t know why they did it (maybe they have some kind of vision impairment, or maybe they simply have a screen far away from them); we only know they did it &mdash; and we respect that.</p>

<p>And that’s responsive design for me.</p>

<div class="signature">
  <img src="https://www.smashingmagazine.com/images/logo/logo--red.png" alt="Smashing Editorial" width="35" height="46" loading="lazy" decoding="async" />
  <span>(gg, yk)</span>
</div>


              </article>
            </body>
          </html>
        ]]></content:encoded></item><item><author>Victor Ayomipo</author><title>Solo Development: Learning To Let Go Of Perfection</title><link>https://www.smashingmagazine.com/2025/01/solo-development-learning-to-let-go-of-perfection/</link><pubDate>Fri, 10 Jan 2025 14:00:00 +0000</pubDate><guid>https://www.smashingmagazine.com/2025/01/solo-development-learning-to-let-go-of-perfection/</guid><description>The best and worst thing about solo development is the “solo” part. There’s a lot of freedom in working alone, and that freedom can be inspiring, but it can also become a debilitating hindrance to productivity and progress. Victor Ayomipo shares his personal lessons on what it takes to navigate solo development and build the “right” app.</description><content:encoded><![CDATA[
          <html>
            <head>
              <meta charset="utf-8">
              <link rel="canonical" href="https://www.smashingmagazine.com/2025/01/solo-development-learning-to-let-go-of-perfection/" />
              <title>Solo Development: Learning To Let Go Of Perfection</title>
            </head>
            <body>
              <article>
                <header>
                  <h1>Solo Development: Learning To Let Go Of Perfection</h1>
                  
                    
                    <address>Victor Ayomipo</address>
                  
                  <time datetime="2025-01-10T14:00:00&#43;00:00" class="op-published">2025-01-10T14:00:00+00:00</time>
                  <time datetime="2025-01-10T14:00:00&#43;00:00" class="op-modified">2026-02-09T03:03:08+00:00</time>
                </header>
                
                

<p>As expected from anyone who has ever tried building anything solo, my goal was not to build an app but <em>the</em> app &mdash; the one app that’s so good you wonder how you ever survived without it. I had everything in place: wireframes, a to-do list, project structure &mdash; you name it. Then I started building. Just not the product. I started with the landing page for it, which took me four days, and I hadn’t even touched the app’s core features yet. The idea itself was so good I had to start marketing it right away!</p>

<p>I found myself making every detail <em>perfect</em>: every color, shadow, gradient, font size, margin, and padding had to be spot on. I don’t even want to say how long the logo took.</p>

<blockquote><strong>Spoiler</strong>:<br />No one cares about your logo.</blockquote>

<p>Why did I get so stuck on something that was never even part of the core app I wanted so badly to build? Why wasn’t I nagging myself to move on when I clearly needed to?</p>

<p>The reality of solo development is that there is <strong>no one to tell you when to stop</strong> or simply say, <em>“Yo, this is good enough! Move on.“</em> Most users don’t care whether a login button is yellow or green. What they want (and need) is a button that works and solves their problem when clicking it.</p>

<h2 id="test-early-and-often">Test Early And Often</h2>

<blockquote>Unnecessary tweaks, indecisive UI decisions, and perfectionism are the core reasons I spend more time on things than necessary.</blockquote>

<p>Like most solo developers, I also started with the hope of pushing out builds with the efficiency of a large-scale team. But it is easier said than done.</p>

<p>When building solo, you start coding, then you maybe notice a design flaw, and you switch to fixing it, then a bug appears, and you try fixing that, and <em>voilà</em> &mdash; the day is gone. There comes a time when it hits you that, <em>“You know what? It’s time to build messy.”</em> That’s when good intentions of project and product management go out the window, and that’s when I find myself working by the seat of my pants rather than plowing forward with defined goals and actionable tasks that are based on good UI/UX principles, like storyboards, user personas, and basic prioritization.</p>

<p>This realization is something you have to experience to grasp fully. The trick I’ve learned is to focus on getting something out there for people to see and then work on actual feedback. In other words,</p>

<blockquote class="pull-quote">
  <p>
    <a class="pull-quote__link" aria-label="Share on Twitter" href="https://twitter.com/share?text=%0aIt%e2%80%99s%20more%20important%20to%20get%20the%20idea%20out%20there%20and%20iterate%20on%20it%20than%20reaching%20for%20perfection%20right%20out%20of%20the%20gate.%0a&url=https://smashingmagazine.com%2f2025%2f01%2fsolo-development-learning-to-let-go-of-perfection%2f">
      
It’s more important to get the idea out there and iterate on it than reaching for perfection right out of the gate.

    </a>
  </p>
  <div class="pull-quote__quotation">
    <div class="pull-quote__bg">
      <span class="pull-quote__symbol">“</span></div>
  </div>
</blockquote>

<p>Because guess what? Even if you have the greatest app idea in the world, you’re never going to make it perfect until you start receiving feedback on it. You’re no mind reader &mdash; as much as we all want to be one &mdash; and some insights (often the most relevant) can only be received through real user feedback and analytics. Sure, your early assumptions may be correct, but how do you know until you ship them and start evaluating them?</p>

<p>Nowadays, I like to tell others (and myself) to work from <strong>hypotheses</strong> instead of <strong>absolutes</strong>. Make an assertion, describe how you intend to test it, and then ship it. With that, you can gather relevant insights that you can use to get closer to perfection &mdash; whatever that is.</p>

<div data-audience="non-subscriber" data-remove="true" class="feature-panel-container">

<aside class="feature-panel" style="">
<div class="feature-panel-left-col">

<div class="feature-panel-description"><p>Meet <strong><a data-instant href="https://www.smashingconf.com/online-workshops/">Smashing Workshops</a></strong> on <strong>front-end, design &amp; UX</strong>, with practical takeaways, live sessions, <strong>video recordings</strong> and a friendly Q&amp;A. With Brad Frost, Stéph Walter and <a href="https://smashingconf.com/online-workshops/workshops">so many others</a>.</p>
<a data-instant href="smashing-workshops" class="btn btn--green btn--large" style="">Jump to the workshops&nbsp;↬</a></div>
</div>
<div class="feature-panel-right-col"><a data-instant href="smashing-workshops" class="feature-panel-image-link">
<div class="feature-panel-image">
<img
    loading="lazy"
    decoding="async"
    class="feature-panel-image-img"
    src="/images/smashing-cat/cat-scubadiving-panel.svg"
    alt="Feature Panel"
    width="257"
    height="355"
/>

</div>
</a>
</div>
</aside>
</div>

<h2 id="strength-in-recognizing-weakness">Strength In Recognizing Weakness</h2>

<p>Let’s be real: Building a full application on your own is not an easy feat. I’d say it’s like trying to build a house by yourself; it seems doable, but the reality is that it takes a lot more hands than the ones you have to make it happen. And not only to make it happen but to make it happen well.</p>

<p>There’s only so much one person can do, and admitting your strengths and weaknesses up-front will serve you well by avoiding the trap that you can do it all alone.</p>

<p>I once attempted to build a project management app alone. I knew it might be difficult, but I was confident. Within a few days, this “simple” project grew legs and expanded with new features like team collaboration, analytics, time tracking, and custom reports being added, many of which I was super excited to make.</p>

<p>Building a full app takes a lot of time. Think about it; you’re doing the work of a team all alone without any help. There’s no one to provide you with design assets, content, or back-end development. No stakeholder to <a href="https://css-tricks.com/the-impact-of-team-collaboration-and-communication-on-projects/">“swoop and poop”</a> on your ideas (which might be a good thing). Every decision, every line of code, and every design element is 100% on you alone.</p>

<p>It is technically possible to build a full-featured app solo, but when you think about it, there’s a reason why the concept of MVP exists. Take Instagram, for example; it wasn’t launched with reels, stories, creator’s insights, and so on. It started with one simple thing: <em>photo sharing</em>.</p>

<p>All I’m trying to say is <strong>start small</strong>, <strong>launch</strong>, and <strong>let users guide the evolution of the product</strong>. And if you can recruit more hands to help, that would be even better. Just remember to leverage your strengths and reinforce your weaknesses by leaning on other people’s strengths.</p>

<h2 id="yes-think-like-an-mvp">Yes, Think Like an MVP</h2>

<p>The concept of a <strong>minimum viable product</strong> (MVP) has always been fascinating to me. In its simplest form, it means building the basic version of your idea that technically works and getting it in front of users. Yes, this is such a straightforward and widely distributed tip, but it’s still one of the hardest principles for solo developers to follow, particularly for me.</p>

<p>I mentioned earlier that my “genius” app idea grew legs. And lots of them. I had more ideas than I knew what to do with, and I hadn’t even written a reasonable amount of code! Sure, this app could be enhanced to support face ID, dark mode, advanced security, real-time results, and a bunch of other features. But all these could take months of development for an app that you’re not even certain users want.</p>

<p>I’ve learned to ask myself: <em>“What would this project look like if it was easy to build?”.</em> It’s so surreal how the answer almost always aligns with what users want. If you can distill your grand idea into a single indispensable idea that does one or two things <em>extremely well</em>, I think you’ll find &mdash; as I have &mdash; that the final result is laser-focused on solving real user problems.</p>

<p>Ship the simplest version first. Dark mode can wait. All you need is a well-defined idea, a hypothesis to test, and a functional prototype to validate that hypothesis; anything else is probably noise.</p>

<div class="partners__lead-place"></div>

<h2 id="handle-imperfection-gracefully">Handle Imperfection Gracefully</h2>

<p>You may have heard about the <a href="https://medium.com/the-liberators/ship-it-fast-what-does-it-mean-why-does-it-matter-and-what-can-you-improve-3ad13d9786b4">“Ship it Fast” approach to development</a> and instantly recognize the parallels between it and what I’ve discussed so far. In a sense, “Ship it Fast” is ultimately another way of describing an MVP: get the idea out fast and iterate on it just as quickly.</p>

<p>Some might disagree with the ship-fast approach and consider it reckless and unprofessional, which is understandable because, as developers, we care deeply about the quality of our work. However,</p>

<blockquote class="pull-quote">
  <p>
    <a class="pull-quote__link" aria-label="Share on Twitter" href="https://twitter.com/share?text=%0aThe%20ship-fast%20mentality%20is%20not%20to%20ignore%20quality%20but%20to%20push%20something%20out%20ASAP%20and%20learn%20from%20real%20user%20experiences.%20Ship%20it%20now%20%e2%80%94%20perfect%20it%20later.%0a&url=https://smashingmagazine.com%2f2025%2f01%2fsolo-development-learning-to-let-go-of-perfection%2f">
      
The ship-fast mentality is not to ignore quality but to push something out ASAP and learn from real user experiences. Ship it now — perfect it later.

    </a>
  </p>
  <div class="pull-quote__quotation">
    <div class="pull-quote__bg">
      <span class="pull-quote__symbol">“</span></div>
  </div>
</blockquote>

<p>That’s why I like to tell other developers that <strong>shipping an MVP is the safest, most professional way to approach development</strong>. It forces you to stay in scope and on task without succumbing to your whimsies. I even go so far as to make myself swear an “Oath of Focus” at the start of every project.</p>

<blockquote>I, Vayo, hereby solemnly swear (with one hand on this design blueprint) to make no changes, no additions, and no extra features until this app is fully built in all its MVP glory. I pledge to avoid the temptations of endless tweaking and the thoughts of “just one more feature.”<br /><br />Only when a completed prototype is achieved will I consider any new features, enhancements, or tweaks.<br /><br />Signed,<br />Vayo, Keeper of the MVP</blockquote>

<p>Remember, there’s no one there to hold you accountable when you develop on your own. Taking a brief moment to pause and accepting that my first version won’t be flawless helps put me in the right headspace early in the project.</p>

<h2 id="prioritize-what-matters">Prioritize What Matters</h2>

<p>I have noticed that no matter what I build, there’s always going to be bugs. Always. If Google still has bugs in the Google Notes app, trust me, then it’s fine for a solo developer to accept that bugs will always be a part of any project.</p>

<p>Look at flaky tests. For instance, you could run a test over 1,000 times and get all greens, and then the next day, you run the same test, an error shows. It’s just the nature of software development. And for the case of endlessly adding features, it never ends either. There’s always going to be a new feature that you’re excited about. The challenge is <strong>to curb some of that enthusiasm and shelve it responsibly</strong> for a later time when it makes sense to work on it.</p>

<p>I’ve learned to categorize bugs and features into two types: <strong>intrusive</strong> and <strong>non-intrusive</strong>. Intrusive are those things that prevent projects from functioning properly until fixed, like crashes and serious errors. The non-intrusive items are silent ones. Sure, they should be fixed, but the product will work just fine and won’t prevent users from getting value if they aren’t addressed right away.</p>

<p>You may want to categorize your bugs and features in other ways, and I’ve seen plenty of other examples, including:</p>

<ul>
<li>High value, low value;</li>
<li>High effort, low effort;</li>
<li>High-cost, low-cost;</li>
<li>Need to have, nice to have.</li>
</ul>

<p>I’ve even seen developers and teams use these categorizations to create some fancy priority “score” that considers each category. <strong>Whatever it is that helps you stay focused and on-task is going to be the right approach for you more than what specific category you use.</strong></p>

<h2 id="live-with-your-stack">Live With Your Stack</h2>

<p>Here’s a classic conundrum in development circles:</p>

<blockquote>Should I use React? Or NextJS? Or wait, how about Vue? I heard it’s more optimized. But hold on, I read that React Redux is dead and that Zustand is the new hot tool.</blockquote>

<p>And just like that, you’ve spent an entire day thinking about nothing but the tech stack you’re using to build the darn thing.</p>

<p>We all know that an average user could care less about the tech stack under the hood. Go ahead and ask your mom what tech stack WhatsApp is built on, and let me know what she says. Most times, it’s just us who obsesses about tech stacks, and that usually only happens when we’re asked to check under the hood.</p>

<p>I have come to accept that there will always be new tech stacks released every single day with the promise of 50% performance and 10% less code. That new tool might scale better, but do I actually have a scaling problem with my current number of <em>zero</em> users? Probably not.</p>

<p>My advice:</p>

<blockquote class="pull-quote">
  <p>
    <a class="pull-quote__link" aria-label="Share on Twitter" href="https://twitter.com/share?text=%0aPick%20the%20tools%20you%20work%20with%20best%20and%20stick%20to%20those%20tools%20until%20they%20start%20working%20against%20you.%0a&url=https://smashingmagazine.com%2f2025%2f01%2fsolo-development-learning-to-let-go-of-perfection%2f">
      
Pick the tools you work with best and stick to those tools until they start working against you.

    </a>
  </p>
  <div class="pull-quote__quotation">
    <div class="pull-quote__bg">
      <span class="pull-quote__symbol">“</span></div>
  </div>
</blockquote>

<p>There’s no use fighting something early if something you already know and use gets the job done. Basically, <strong>don’t prematurely optimize or constantly chase the latest shiny object</strong>.</p>

<h2 id="do-design-before-the-first-line-of-code">Do Design Before The First Line of Code</h2>

<p>I know lots of solo developers out there suck at design, and I’m probably among the top 50. My design process has traditionally been to open VS Code, create a new project, and start building the idea in whatever way comes to mind. No design assets, comps, or wireframes to work with &mdash; just pure, unstructured improvisation. That’s not a good idea, and it’s a habit I’m actively trying to break.</p>

<p>These days, I make sure to have <strong>a blueprint of what I’m building</strong> before I start writing code. Once I have that, I make sure to follow through and not change anything to respect my “Oath of Focus.”</p>














<figure class="
  
    break-out article__image
  
  
  ">
  
    <a href="https://files.smashing.media/articles/solo-development-learning-to-let-go-of-perfection/1-blueprint-design-project.jpg">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="593"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/solo-development-learning-to-let-go-of-perfection/1-blueprint-design-project.jpg 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://files.smashing.media/articles/solo-development-learning-to-let-go-of-perfection/1-blueprint-design-project.jpg 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://files.smashing.media/articles/solo-development-learning-to-let-go-of-perfection/1-blueprint-design-project.jpg 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://files.smashing.media/articles/solo-development-learning-to-let-go-of-perfection/1-blueprint-design-project.jpg 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://files.smashing.media/articles/solo-development-learning-to-let-go-of-perfection/1-blueprint-design-project.jpg 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/solo-development-learning-to-let-go-of-perfection/1-blueprint-design-project.jpg"
			
			sizes="100vw"
			alt="A blueprint of the design"
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      (<a href='https://files.smashing.media/articles/solo-development-learning-to-let-go-of-perfection/1-blueprint-design-project.jpg'>Large preview</a>)
    </figcaption>
  
</figure>

<p>I like how many teams call comps and wireframes “project artifacts.” They are pieces of evidence that provide a source of truth for how something looks and works. You might be the sort of person who works better with sets of requirements, and that’s totally fine. But having some sort of documentation that you can point back to in your work is like having a turn-by-turn navigation on a long road trip &mdash; it’s indispensable for getting where you need to go.</p>

<p>And what if you’re like me and don’t pride yourself on being the best designer? That’s another opportunity to admit your weaknesses up-front and recruit help from someone with those strengths. That way, you can articulate the goal and focus on what you’re good at.</p>

<div class="partners__lead-place"></div>

<h2 id="give-yourself-timelines">Give Yourself Timelines</h2>

<p>Personally, without deadlines, I’m almost unstoppable at procrastinating. I’ve started setting time limits when building any project, as it helps with procrastination and makes sure something is pushed out at a specified time. Although this won’t work without accountability, I feel the two work hand in hand.</p>

<p>I set a 2&ndash;3 week deadline to build a project. And no matter what, as soon as that time is up, I must post or share the work in its current state on my socials. Because of this, I’m not in my comfort zone anymore because I won’t want to share a half-baked project with the public; I’m conditioned to work faster and get it all done. It’s interesting to see the length of time you can go if you can trick your brain.</p>

<p>I realize that this is an extreme constraint, and it may not work for you. I’m just the kind of person who needs to know what my boundaries are. Setting deadlines and respecting them makes me a more disciplined developer. More than that, it makes me work efficiently because <strong>I stop overthinking things when I know I have a fixed amount of time</strong>, and that leads to faster builds.</p>

<h2 id="conclusion">Conclusion</h2>

<p>The best and worst thing about solo development is the “solo” part. There’s a lot of freedom in working alone, and that freedom can be inspiring. However, all that freedom can be intoxicating, and if left unchecked, it becomes a debilitating hindrance to productivity and progress. That’s a good reason why solo development isn’t for everyone. Some folks will respond a lot better to a team environment.</p>

<p>But if you are a solo developer, then I hope my personal experiences are helpful to you. I’ve had to look hard at myself in the mirror many days to come to realize that I am not a perfect developer who can build the “perfect” app alone. It takes <strong>planning</strong>, <strong>discipline</strong>, and <strong>humility</strong> to make anything, especially the <em>right</em> app that does exactly the <em>right</em> thing.</p>

<p>Ideas are cheap and easy, but stepping out of our freedom and adding our own constraints based on <strong>progress over perfection</strong> is the secret sauce that keeps us moving and spending our time on those essential things.</p>

<h3 id="further-reading-on-smashingmag">Further Reading On SmashingMag</h3>

<ul>
<li>“<a href="https://www.smashingmagazine.com/2023/06/perfect-design-process/">What’s The Perfect Design Process?</a>,” Vitaly Friedman</li>
<li>“<a href="https://www.smashingmagazine.com/2022/07/overcoming-imposter-syndrome-developing-guiding-principles/">Design Under Constraints: Challenges, Opportunities, And Practical Strategies</a>,” Paul Boag</li>
<li>“<a href="https://www.smashingmagazine.com/2023/08/improving-double-diamond-design-process/">Improving The Double Diamond Design Process</a>,” Andy Budd</li>
<li>“<a href="https://www.smashingmagazine.com/2020/09/learnings-coding-artwork/">Unexpected Learnings From Coding Artwork Every Day For Five Years</a>,” Saskia Freeke</li>
</ul>

<div class="signature">
  <img src="https://www.smashingmagazine.com/images/logo/logo--red.png" alt="Smashing Editorial" width="35" height="46" loading="lazy" decoding="async" />
  <span>(gg, yk)</span>
</div>


              </article>
            </body>
          </html>
        ]]></content:encoded></item><item><author>Paul Boag</author><title>The Design Leader Dilemma</title><link>https://www.smashingmagazine.com/2024/12/the-design-leader-dilemma/</link><pubDate>Mon, 23 Dec 2024 10:00:00 +0000</pubDate><guid>https://www.smashingmagazine.com/2024/12/the-design-leader-dilemma/</guid><description>Design leaders are expected to deliver the impossible. Instead of trying, we need to redefine our role from implementor to enabler.</description><content:encoded><![CDATA[
          <html>
            <head>
              <meta charset="utf-8">
              <link rel="canonical" href="https://www.smashingmagazine.com/2024/12/the-design-leader-dilemma/" />
              <title>The Design Leader Dilemma</title>
            </head>
            <body>
              <article>
                <header>
                  <h1>The Design Leader Dilemma</h1>
                  
                    
                    <address>Paul Boag</address>
                  
                  <time datetime="2024-12-23T10:00:00&#43;00:00" class="op-published">2024-12-23T10:00:00+00:00</time>
                  <time datetime="2024-12-23T10:00:00&#43;00:00" class="op-modified">2026-02-09T03:03:08+00:00</time>
                </header>
                
                

<p>Many design leaders find themselves in an impossible situation. On one side, senior management have read articles trumpeting the incredible ROI of user experience design. <a href="https://www.mckinsey.com/capabilities/mckinsey-design/our-insights/the-business-value-of-design">McKinsey</a> tells us that design-led companies achieve 56% higher returns to shareholders. <a href="https://www.forbes.com/sites/forbestechcouncil/2015/11/19/good-ux-is-good-business-how-to-reap-its-benefits/">Forrester</a> reports that every dollar invested in UX brings 100 dollars in return.</p>

<p>Yet the reality I encounter when talking to design leaders is very different. Most are desperately under-resourced, with tiny teams expected to support hundreds of projects across their organizations. The result? We’re spread so thin that we can barely scratch the surface of what needs doing.</p>

<p>The problem isn’t just about resources. It’s about <em>expectations</em> and how we define our role. Too often, we position ourselves (or are positioned by others) as implementors &mdash; the people who do the user research, create the prototypes, and run the usability tests. But with the scale of digital touching every corner of our organizations, that’s simply not sustainable.</p>

<h2 id="time-for-a-new-approach">Time For A New Approach</h2>

<p>We need to stop trying to do everything ourselves and instead focus on empowering others across the organization to improve the user experience. In other words, we need to become true leaders rather than just practitioners.</p>

<p>This isn’t about giving up control or lowering standards. It’s about <strong>maximizing our impact</strong> by working through others. Think about it: would you rather be directly involved in 10% of projects or have some influence over 90% of them?</p>

<div data-audience="non-subscriber" data-remove="true" class="feature-panel-container">

<aside class="feature-panel" style="">
<div class="feature-panel-left-col">

<div class="feature-panel-description"><p>Roll up your sleeves and <strong>boost your UX skills</strong>! Meet <strong><a data-instant href="https://smart-interface-design-patterns.com/">Smart Interface Design Patterns</a></strong>&nbsp;🍣, a 10h video library by Vitaly Friedman. <strong>100s of real-life examples</strong> and live UX training. <a href="https://www.youtube.com/watch?v=3mwZztmGgbE">Free preview</a>.</p>
<a data-instant href="https://smart-interface-design-patterns.com/" class="btn btn--green btn--large" style="">Jump to table of contents&nbsp;↬</a></div>
</div>
<div class="feature-panel-right-col"><a data-instant href="https://smart-interface-design-patterns.com/" class="feature-panel-image-link">
<div class="feature-panel-image"><picture><source type="image/avif" srcSet="https://archive.smashing.media/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/3155f571-450d-42f9-81b4-494aa9b52841/video-course-smart-interface-design-patterns-vitaly-friedman.avif" />
<img
    loading="lazy"
    decoding="async"
    class="feature-panel-image-img"
    src="https://archive.smashing.media/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/8c98e7f9-8e62-4c43-b833-fc6bf9fea0a9/video-course-smart-interface-design-patterns-vitaly-friedman.jpg"
    alt="Feature Panel"
    width="690"
    height="790"
/>
</picture>
</div>
</a>
</div>
</aside>
</div>

<h2 id="what-does-this-look-like-in-practice">What Does This Look Like In Practice?</h2>

<p>First, we need to shift our mindset from doing to enabling. This means:</p>

<ul>
<li>Offering <strong>targeted services</strong> rather than trying to be involved in everything;</li>
<li>Providing <strong>coaching and mentoring</strong> to help others understand UX principles;</li>
<li><strong>Creating resources</strong> that empower others to make better UX decisions;</li>
<li>Setting <strong>standards and guidelines</strong> that can scale across the organization.</li>
</ul>

<p>Let’s break down each of these areas.</p>

<h3 id="targeted-services">Targeted Services</h3>

<p>Instead of trying to be involved in every project, focus on providing specific, high-value services that can make the biggest impact. This might include:</p>

<ul>
<li><strong>Running discovery phases for major initiatives</strong><br />
By strategically initiating discovery phases for critical projects, you ensure that they start with a strong, user-focused foundation. This can involve tools like the <a href="https://boagworld.com/emails/introducing-supa/">Strategic User-Driven Project Assessment (SUPA)</a>, which helps validate ideas by assessing audience value, user needs, feasibility, and risks before committing to major investments. SUPA ensures projects are not just built right but are the right ones to build.</li>
<li><strong>Project-Specific UX Guidance</strong><br />
Regular feedback on design assets throughout a project keeps UX principles front and center. This can be achieved by offering UX audits, periodic check-ins to assess progress, or design reviews at key milestones.</li>
<li><strong>Facilitating workshops and problem-solving sessions</strong><br />
Leading targeted workshops or brainstorming sessions empowers teams to overcome design challenges on their own with your guidance. These tailored sessions help teams understand how to make better user-centered decisions and solve issues themselves, spreading UX capabilities beyond your team.</li>
</ul>

<blockquote>The key is to be strategic about where you spend your time, focusing on activities that will have the greatest ripple effect across the organization.</blockquote>














<figure class="
  
    break-out article__image
  
  
  ">
  
    <a href="https://files.smashing.media/articles/the-design-leader-dilemma/1-supa-vision.png">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="616"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/the-design-leader-dilemma/1-supa-vision.png 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://files.smashing.media/articles/the-design-leader-dilemma/1-supa-vision.png 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://files.smashing.media/articles/the-design-leader-dilemma/1-supa-vision.png 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://files.smashing.media/articles/the-design-leader-dilemma/1-supa-vision.png 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://files.smashing.media/articles/the-design-leader-dilemma/1-supa-vision.png 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/the-design-leader-dilemma/1-supa-vision.png"
			
			sizes="100vw"
			alt="A page with a female figure in a superman costume with UX written on it and some text next to it, which reads as SUPA Visions: Spot USer Problems Before They Become Disasters"
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      Carrying out a SUPA reduces the risk that users will fail to embrace a new digital service and helps avoid expensive reworking later. (<a href='https://files.smashing.media/articles/the-design-leader-dilemma/1-supa-vision.png'>Large preview</a>)
    </figcaption>
  
</figure>

<h3 id="coaching-and-mentoring">Coaching And Mentoring</h3>

<p>One of the most effective ways to scale your impact is through coaching. This could include:</p>

<ul>
<li><strong>UX Office Hours</strong><br />
Designate times where anyone in the organization can drop in to get quick UX advice. This informal setting can solve small issues before they snowball and helps stakeholders learn as they go.</li>
<li><strong>One-on-One or Group Coaching</strong><br />
Scheduled check-ins with individuals or teams are great opportunities to address challenges directly, mentor those who need extra support, and ensure alignment with best practices. Regular 1:1 or group coaching keeps UX priorities on track and provides valuable guidance when and where it’s needed most.</li>
<li><strong>Tailored Problem-Solving Sessions</strong><br />
Providing bespoke guidance for specific challenges that teams encounter empowers them to tackle design obstacles while internalizing the principles of good UX. These problem-solving sessions can be invaluable in ensuring teams can autonomously address future problems.</li>
</ul>














<figure class="
  
    break-out article__image
  
  
  ">
  
    <a href="https://files.smashing.media/articles/the-design-leader-dilemma/2-calendly.png">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="550"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/the-design-leader-dilemma/2-calendly.png 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://files.smashing.media/articles/the-design-leader-dilemma/2-calendly.png 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://files.smashing.media/articles/the-design-leader-dilemma/2-calendly.png 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://files.smashing.media/articles/the-design-leader-dilemma/2-calendly.png 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://files.smashing.media/articles/the-design-leader-dilemma/2-calendly.png 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/the-design-leader-dilemma/2-calendly.png"
			
			sizes="100vw"
			alt="Calendly homepage"
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      Use a tool like Calendly to enable colleagues to easily book consultation sessions while ensuring that you have blocks of time reserved for other activities. (<a href='https://files.smashing.media/articles/the-design-leader-dilemma/2-calendly.png'>Large preview</a>)
    </figcaption>
  
</figure>

<blockquote>The goal isn’t to turn everyone into UX experts but to help them understand enough to make better decisions in their daily work.</blockquote>

<p>It’s also important to recognize that others might not initially deliver work at the same level of quality that you would. This is okay. The primary goal is to get people engaged and excited about UX. If we criticize them every time they fall short of perfection, we risk undermining their enthusiasm. Instead, we need to foster a <strong>supportive environment</strong> where improvement happens over time.</p>

<div class="partners__lead-place"></div>

<h3 id="creating-resources">Creating Resources</h3>

<p>Develop tools and resources that help others apply UX principles independently. For example:</p>

<ul>
<li><strong>Design Systems</strong><br />
Create and maintain a comprehensive <a href="https://www.figma.com/blog/design-systems-101-what-is-a-design-system/">design system</a> that integrates UX best practices into the UI across the organization. A well-crafted design system ensures that everyone, from developers to designers, aligns on consistent best practices, making it easier for teams to work independently while still maintaining high standards. This includes reusable code components, clear documentation, and alignment between design and development.</li>
<li><strong>UX Tool Suite</strong><br />
Providing teams with pre-selected tools for user research, prototyping, and user testing helps maintain quality and saves time. With tools for everything from user research to usability testing, you provide the resources teams need to conduct UX activities on their own without extensive onboarding.</li>
<li><strong>Research Repository</strong><br />
Maintain a centralized repository of user research findings that can be accessed by anyone across the organization. A well-organized research repository can reduce duplication of effort, provide insights across different initiatives, and allow teams to learn from each other’s findings. This promotes consistent application of user insights across projects.</li>
<li><strong>Supplier Lists</strong><br />
Providing a vetted list of suppliers and external agencies helps ensure consistency when work is outsourced. It provides quick access to high-quality resources, mitigates risk, and builds trust with suppliers who understand your standards.</li>
<li><strong>Self-Service Training Resources</strong><br />
Create a library of on-demand training materials that teams can access when needed. This should include video tutorials, interactive exercises, case studies, and step-by-step guides for common UX tasks like conducting user interviews, creating personas, or running usability tests. Unlike scheduled workshops, self-paced learning allows people to access knowledge exactly when they need it, leading to better retention and practical application.</li>
</ul>

<blockquote>These resources should be practical and accessible, making it easy for teams to do the right thing.</blockquote>














<figure class="
  
    break-out article__image
  
  
  ">
  
    <a href="https://files.smashing.media/articles/the-design-leader-dilemma/3-repository-ux-tools.png">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="662"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/the-design-leader-dilemma/3-repository-ux-tools.png 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://files.smashing.media/articles/the-design-leader-dilemma/3-repository-ux-tools.png 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://files.smashing.media/articles/the-design-leader-dilemma/3-repository-ux-tools.png 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://files.smashing.media/articles/the-design-leader-dilemma/3-repository-ux-tools.png 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://files.smashing.media/articles/the-design-leader-dilemma/3-repository-ux-tools.png 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/the-design-leader-dilemma/3-repository-ux-tools.png"
			
			sizes="100vw"
			alt="Example of a repository of UX tools"
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      Create a repository of UX tools that people can use, along with training to help them utilize these tools effectively. (<a href='https://files.smashing.media/articles/the-design-leader-dilemma/3-repository-ux-tools.png'>Large preview</a>)
    </figcaption>
  
</figure>

<h3 id="setting-standards">Setting Standards</h3>

<p>Create a framework that guides UX decisions across the organization:</p>

<ul>
<li><strong>Design Principles</strong><br />
Establish core design principles that align with your organization’s values and user-centered goals. These principles help ensure consistency and clarity in decision-making. For example, define around six to ten principles that stakeholders across the organization have voted on and agreed upon, ensuring broader buy-in and consistent decision-making.</li>
<li><strong>Policies for UX</strong><br />
Develop clear <a href="https://www.smashingmagazine.com/2019/05/digital-policy-interview-kristina-podnar/">policies that standardize</a> processes like work requests, user research and testing, and stakeholder involvement. These policies help set expectations, keep efforts aligned with organizational goals, and make it easier for non-UX professionals to understand and comply with best practices.</li>
<li><strong>Project Prioritization Policies</strong><br />
Having clear guidelines on how projects are prioritized ensures that UX gets the attention it needs in the planning stages, preventing it from being overlooked or marginalized. Establish policies that align project value to user needs and organizational priorities.</li>
</ul>

<blockquote>The key is to make these standards helpful rather than bureaucratic &mdash; they should enable better work, not create unnecessary obstacles.</blockquote>

<div class="partners__lead-place"></div>

<h2 id="bringing-it-all-together">Bringing It All Together</h2>

<p>All of these elements should come together in what I call a <a href="https://boagworld.com/digital-strategy/digital-playbook/">UX Playbook</a> &mdash; a single source of truth that contains everything teams need to deliver better user experiences. This isn’t just another document to gather dust; it’s a living resource that demonstrates your value as a leader and helps others get started on their UX journey.</p>














<figure class="
  
    break-out article__image
  
  
  ">
  
    <a href="https://files.smashing.media/articles/the-design-leader-dilemma/4-uk-government-digital-service-manual.png">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="550"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/the-design-leader-dilemma/4-uk-government-digital-service-manual.png 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://files.smashing.media/articles/the-design-leader-dilemma/4-uk-government-digital-service-manual.png 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://files.smashing.media/articles/the-design-leader-dilemma/4-uk-government-digital-service-manual.png 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://files.smashing.media/articles/the-design-leader-dilemma/4-uk-government-digital-service-manual.png 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://files.smashing.media/articles/the-design-leader-dilemma/4-uk-government-digital-service-manual.png 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/the-design-leader-dilemma/4-uk-government-digital-service-manual.png"
			
			sizes="100vw"
			alt="UK Government Digital Service Manual"
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      We should learn from the Government Digital Service Manual and create a UX playbook that consolidates all the resources, policies, and training we provide. (<a href='https://files.smashing.media/articles/the-design-leader-dilemma/4-uk-government-digital-service-manual.png'>Large preview</a>)
    </figcaption>
  
</figure>

<p>The shift from practitioner to leader isn’t easy. It requires letting go of some control and trusting others to carry forward UX principles. But it’s the only way to create lasting change at scale.</p>

<p>If you’re struggling with this transition, <a href="https://smashingconf.com/online-workshops/workshops/ux-design-leadership-paul-boag/">I am running a workshop on design leadership</a> in February. I would love to discuss your situation there.</p>

<div class="signature">
  <img src="https://www.smashingmagazine.com/images/logo/logo--red.png" alt="Smashing Editorial" width="35" height="46" loading="lazy" decoding="async" />
  <span>(yk, il)</span>
</div>


              </article>
            </body>
          </html>
        ]]></content:encoded></item><item><author>Paul Boag</author><title>AI’s Transformative Impact On Web Design: Supercharging Productivity Across The Industry</title><link>https://www.smashingmagazine.com/2024/11/ai-transformative-impact-web-design-supercharging-productivity/</link><pubDate>Tue, 19 Nov 2024 09:00:00 +0000</pubDate><guid>https://www.smashingmagazine.com/2024/11/ai-transformative-impact-web-design-supercharging-productivity/</guid><description>Discover how AI is reshaping web design, boosting productivity in design, coding, UX, and copywriting while amplifying human creativity in a new article by Paul Boag.</description><content:encoded><![CDATA[
          <html>
            <head>
              <meta charset="utf-8">
              <link rel="canonical" href="https://www.smashingmagazine.com/2024/11/ai-transformative-impact-web-design-supercharging-productivity/" />
              <title>AI’s Transformative Impact On Web Design: Supercharging Productivity Across The Industry</title>
            </head>
            <body>
              <article>
                <header>
                  <h1>AI’s Transformative Impact On Web Design: Supercharging Productivity Across The Industry</h1>
                  
                    
                    <address>Paul Boag</address>
                  
                  <time datetime="2024-11-19T09:00:00&#43;00:00" class="op-published">2024-11-19T09:00:00+00:00</time>
                  <time datetime="2024-11-19T09:00:00&#43;00:00" class="op-modified">2026-02-09T03:03:08+00:00</time>
                </header>
                
                

<p>As I sit down to write this article, I can’t help but marvel at the incredible changes sweeping through our industry. For the first time in my career, I feel like <strong>we’re no longer limited by our technology but by our imagination</strong>. Well, almost. Artificial Intelligence (AI) is reshaping the web design landscape in ways we could only dream of a few years ago, and I’m excited to share with you how it’s supercharging our productivity across various aspects of our work.</p>

<h2 id="ai-is-a-partner-not-a-competitor">AI Is A Partner, Not A Competitor</h2>

<p>Now, before we dive in, let me assure you: <strong>AI isn’t here to replace us</strong>. At least, not for a while yet. There are still crucial areas where human expertise reigns supreme. AI struggles with strategic planning that considers the nuances of human behavior and market trends. It can’t match our emotional intelligence when navigating client relationships and team dynamics. And when it comes to creative thinking that pushes boundaries and creates truly innovative solutions, we humans still have the upper hand.</p>

<p>But here’s the exciting part: AI is becoming an invaluable tool that’s supercharging our productivity. Think of it as having a highly capable intern at your disposal. As the Nielsen Norman Group aptly put it in their article “<a href="https://www.nngroup.com/articles/ai-intern/">AI as an Intern</a>,” we need to approach AI tools with the <strong>right mindset</strong>. Double-check their work, use them for initial drafts rather than final products, and provide specific instructions and relevant context.</p>

<blockquote class="pull-quote">
  <p>
    <a class="pull-quote__link" aria-label="Share on Twitter" href="https://twitter.com/share?text=%0aThe%20key%20to%20harnessing%20AI%e2%80%99s%20power%20lies%20in%20working%20with%20it%20collaboratively.%0a&url=https://smashingmagazine.com%2f2024%2f11%2fai-transformative-impact-web-design-supercharging-productivity%2f">
      
The key to harnessing AI’s power lies in working with it collaboratively.

    </a>
  </p>
  <div class="pull-quote__quotation">
    <div class="pull-quote__bg">
      <span class="pull-quote__symbol">“</span></div>
  </div>
</blockquote>

<p>Don’t expect perfect results on the first try. Instead, engage in a back-and-forth conversation, refining the AI output through iteration. This process of continuous improvement is where AI truly shines, dramatically speeding up our workflow.</p>

<p>Let’s explore how AI is reshaping different areas of our industry, looking at some of the many tools available to us.</p>

<h2 id="ai-in-design-unleashing-creativity-and-efficiency">AI In Design: Unleashing Creativity And Efficiency</h2>

<p>In the realm of design, AI is proving to be a game-changer. It’s particularly adept at:</p>

<ul>
<li>Collaborating on layout;</li>
<li>Generating the perfect image;</li>
<li>Refining and adapting existing imagery.</li>
</ul>

<p>Take <a href="https://www.figma.com/ai/">AI in Figma</a>, for instance. It’s become my go-to for generating dummy content and tidying up my layers. The time saved on these mundane tasks allows me to focus more on the creative aspects of design.</p>

<p>Generative imagery tools like <a href="https://www.krea.ai/home">Krea</a>, which uses <a href="https://flux1.ai/">Flux</a>, have revolutionized how we source visuals. Gone are the days of endlessly scrolling through stock libraries. Now, we can describe exactly what we need, and AI will create it for us. This level of <strong>customization</strong> and <strong>specificity</strong> is a game changer for creating unique, on-brand visuals.</p>

<p><a href="https://www.relume.io/">Relume</a> is another tool I’ve found incredibly useful. It’s great for a collaborative back-and-forth over designs or for quickly putting together designs for smaller sites. The ability to iterate rapidly with AI assistance has significantly sped up my design process.</p>














<figure class="
  
    break-out article__image
  
  
  ">
  
    <a href="https://files.smashing.media/articles/ai-transformative-impact-web-design-supercharging-productivity/1-relume-ai-website-designers.png">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="525"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/ai-transformative-impact-web-design-supercharging-productivity/1-relume-ai-website-designers.png 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://files.smashing.media/articles/ai-transformative-impact-web-design-supercharging-productivity/1-relume-ai-website-designers.png 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://files.smashing.media/articles/ai-transformative-impact-web-design-supercharging-productivity/1-relume-ai-website-designers.png 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://files.smashing.media/articles/ai-transformative-impact-web-design-supercharging-productivity/1-relume-ai-website-designers.png 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://files.smashing.media/articles/ai-transformative-impact-web-design-supercharging-productivity/1-relume-ai-website-designers.png 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/ai-transformative-impact-web-design-supercharging-productivity/1-relume-ai-website-designers.png"
			
			sizes="100vw"
			alt="A screenshot from Relume"
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      Relume and other AI website designers are perfect for creating initial drafts or handling web design projects on a tight budget. (<a href='https://files.smashing.media/articles/ai-transformative-impact-web-design-supercharging-productivity/1-relume-ai-website-designers.png'>Large preview</a>)
    </figcaption>
  
</figure>

<p>And let’s not forget about Adobe. Their upcoming tools, such as lighting matching for composite images, are set to take our design capabilities to new heights. If you want to see more of what’s on the horizon, I highly recommend checking out the latest <a href="https://www.youtube.com/@Adobe/videos">Adobe Max presentations</a>.</p>

<div data-audience="non-subscriber" data-remove="true" class="feature-panel-container">

<aside class="feature-panel" style="">
<div class="feature-panel-left-col">

<div class="feature-panel-description"><p><p>Meet <a data-instant href="/the-smashing-newsletter/"><strong>Smashing Email Newsletter</strong></a> with useful tips on front-end, design &amp; UX. Subscribe and <strong>get “Smart Interface Design Checklists”</strong> &mdash; a <strong>free PDF deck</strong> with 150+ questions to ask yourself when designing and building almost <em>anything</em>.</p><div><section class="nlbf"><form action="//smashingmagazine.us1.list-manage.com/subscribe/post?u=16b832d9ad4b28edf261f34df&amp;id=a1666656e0" method="post"><div class="nlbwrapper"><label for="mce-EMAIL-hp" class="sr-only">Your (smashing) email</label><div class="nlbgroup"><input type="email" name="EMAIL" class="nlbf-email" id="mce-EMAIL-hp" placeholder="Your email">
<input type="submit" value="Meow!" name="subscribe" class="nlbf-button"></div></div></form><style>.c-garfield-the-cat .nlbwrapper{margin-bottom: 0;}.nlbf{display:flex;padding-bottom:.25em;padding-top:.5em;text-align:center;letter-spacing:-.5px;color:#fff;font-size:1.15em}.nlbgroup:hover{box-shadow:0 1px 7px -5px rgba(50,50,93,.25),0 3px 16px -8px rgba(0,0,0,.3),0 -6px 16px -6px rgba(0,0,0,.025)}.nlbf .nlbf-button,.nlbf .nlbf-email{flex-grow:1;flex-shrink:0;width:auto;margin:0;padding:.75em 1em;border:0;border-radius:11px;background:#fff;font-size:1em;box-shadow:none}.promo-box .nlbf-button:focus,.promo-box input.nlbf-email:active,.promo-box input.nlbf-email:focus{box-shadow:none}.nlbf-button:-ms-input-placeholder,.nlbf-email:-ms-input-placeholder{color:#777;font-style:italic}.nlbf-button::-webkit-input-placeholder,.nlbf-email::-webkit-input-placeholder{color:#777;font-style:italic}.nlbf-button:-ms-input-placeholder,.nlbf-button::-moz-placeholder,.nlbf-button::placeholder,.nlbf-email:-ms-input-placeholder,.nlbf-email::-moz-placeholder,.nlbf-email::placeholder{color:#777;font-style:italic}.nlbf .nlbf-button{transition:all .2s ease-in-out;color:#fff;background-color:#0168b8;font-weight:700;box-shadow:0 1px 1px rgba(0,0,0,.3);width:100%;border:0;border-left:1px solid #ddd;flex:2;border-top-left-radius:0;border-bottom-left-radius:0}.nlbf .nlbf-email{border-top-right-radius:0;border-bottom-right-radius:0;width:100%;flex:4;min-width:150px}@media all and (max-width:650px){.nlbf .nlbgroup{flex-wrap:wrap;box-shadow:none}.nlbf .nlbf-button,.nlbf .nlbf-email{border-radius:11px;border-left:none}.nlbf .nlbf-email{box-shadow:0 13px 27px -5px rgba(50,50,93,.25),0 8px 16px -8px rgba(0,0,0,.3),0 -6px 16px -6px rgba(0,0,0,.025);min-width:100%}.nlbf .nlbf-button{margin-top:1em;box-shadow:0 1px 1px rgba(0,0,0,.5)}}.nlbf .nlbf-button:active,.nlbf .nlbf-button:focus,.nlbf .nlbf-button:hover{cursor:pointer;color:#fff;background-color:#0168b8;border-color:#dadada;box-shadow:0 1px 1px rgba(0,0,0,.3)}.nlbf .nlbf-button:active,.nlbf .nlbf-button:focus{outline:0!important;text-shadow:1px 1px 1px rgba(0,0,0,.3);box-shadow:inset 0 3px 3px rgba(0,0,0,.3)}.nlbgroup{display:flex;box-shadow:0 13px 27px -5px rgba(50,50,93,.25),0 8px 16px -8px rgba(0,0,0,.3),0 -6px 16px -6px rgba(0,0,0,.025);border-radius:11px;transition:box-shadow .2s ease-in-out}.nlbwrapper{display:flex;flex-direction:column;justify-content:center}.nlbf form{width:100%}.nlbf .nlbgroup{margin:0}.nlbcaption{font-size:.9em;line-height:1.5em;color:#fff;border-radius:11px;padding:.5em 1em;display:inline-block;background-color:#0067b859;text-shadow:1px 1px 1px rgba(0,0,0,.3)}.wf-loaded-stage2 .nlbf .nlbf-button{font-family:Mija}.mts{margin-top: 5px !important;}.mbn{margin-bottom: 0 !important;}</style></section><p class="mts mbn"><small class="promo-box__footer mtm block grey"><em>Once a week. Useful tips on <a href="https://www.smashingmagazine.com/the-smashing-newsletter/">front-end &amp; UX</a>. Trusted by 207.000 friendly folks.</em></small></p></div></p>
</div>
</div>
<div class="feature-panel-right-col">
<div class="feature-panel-image">
<img
    loading="lazy"
    decoding="async"
    class="feature-panel-image-img"
    src="/images/smashing-cat/cat-firechat.svg"
    alt="Feature Panel"
    width="310"
    height="400"
/>

</div>

<p></div>
</aside>
</div></p>

<h2 id="ai-in-coding-boosting-developer-productivity">AI In Coding: Boosting Developer Productivity</h2>

<p>The impact of AI on coding is nothing short of revolutionary. According to a <a href="https://www.mckinsey.com/capabilities/mckinsey-digital/our-insights/unleashing-developer-productivity-with-generative-ai#/">McKinsey study</a>, developers using AI tools performed coding tasks like code generation, refactoring, and documentation <strong>20%-50% faster on average</strong> compared to those not using AI tools. That’s a significant productivity boost!</p>

<p>AI is helping developers in several key areas:</p>

<ul>
<li>Coding faster;</li>
<li>Debugging more efficiently;</li>
<li>Automatically generating code comments;</li>
<li>Writing basic code.</li>
</ul>

<p>To put this into perspective, <a href="https://www.forbes.com/sites/jackkelly/2024/11/01/ai-code-and-the-future-of-software-engineers/">AI now writes 25% of the code at Google</a>. That’s a staggering figure from one of the world’s leading tech companies.</p>














<figure class="
  
    break-out article__image
  
  
  ">
  
    <a href="https://files.smashing.media/articles/ai-transformative-impact-web-design-supercharging-productivity/2-cursor-ai-code-editor.png">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="525"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/ai-transformative-impact-web-design-supercharging-productivity/2-cursor-ai-code-editor.png 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://files.smashing.media/articles/ai-transformative-impact-web-design-supercharging-productivity/2-cursor-ai-code-editor.png 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://files.smashing.media/articles/ai-transformative-impact-web-design-supercharging-productivity/2-cursor-ai-code-editor.png 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://files.smashing.media/articles/ai-transformative-impact-web-design-supercharging-productivity/2-cursor-ai-code-editor.png 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://files.smashing.media/articles/ai-transformative-impact-web-design-supercharging-productivity/2-cursor-ai-code-editor.png 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/ai-transformative-impact-web-design-supercharging-productivity/2-cursor-ai-code-editor.png"
			
			sizes="100vw"
			alt="A screenshot from Cursor AI"
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      Cursor AI and GitHub Copilot have significantly sped up how fast developers can deliver code. (<a href='https://files.smashing.media/articles/ai-transformative-impact-web-design-supercharging-productivity/2-cursor-ai-code-editor.png'>Large preview</a>)
    </figcaption>
  
</figure>

<p>Tools like <a href="https://www.cursor.com/">Cursor AI</a> and <a href="https://github.com/features/copilot/plans">GitHub Copilot</a> are at the forefront of this revolution, offering features such as:</p>

<ul>
<li>AI pair programming with predictive code edits;</li>
<li>Natural language code editing;</li>
<li>Chat interfaces for asking questions and getting help.</li>
</ul>

<p>I’ve personally been amazed by what ChatGPT 01-Preview can do. I’ve used it to build simple WordPress plugins in minutes, tasks that would have taken me significantly longer in the past.</p>

<h2 id="ai-in-ux-enhancing-user-research-and-analysis">AI In UX: Enhancing User Research And Analysis</h2>

<p>In the field of User Experience (UX), AI is opening up new possibilities for research and analysis. It’s allowing us to:</p>

<ul>
<li>Conduct user research at scale;</li>
<li>Analyze open-ended qualitative feedback;</li>
<li>Query analytic data using natural language;</li>
<li>Predict user behavior.</li>
</ul>

<p>I’ve found ChatGPT to be an invaluable tool for data analysis, particularly when it comes to making sense of analytics and survey responses. It can quickly identify patterns and insights that might take us hours to uncover manually.</p>

<p>Tools like <a href="https://www.strella.io/">Strella</a> are pushing the boundaries of what’s possible in user research. AI can now perform <strong>user interviews at scale</strong>, allowing us to gather insights from a much larger pool of users than ever before.</p>

<p><a href="https://attentioninsight.com/">Attention Insight</a> is another fascinating tool. It uses AI to predict where people will look on a page, providing valuable data for optimizing layouts and user interfaces.</p>














<figure class="
  
    break-out article__image
  
  
  ">
  
    <a href="https://files.smashing.media/articles/ai-transformative-impact-web-design-supercharging-productivity/3-attention-insight.png">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="525"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/ai-transformative-impact-web-design-supercharging-productivity/3-attention-insight.png 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://files.smashing.media/articles/ai-transformative-impact-web-design-supercharging-productivity/3-attention-insight.png 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://files.smashing.media/articles/ai-transformative-impact-web-design-supercharging-productivity/3-attention-insight.png 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://files.smashing.media/articles/ai-transformative-impact-web-design-supercharging-productivity/3-attention-insight.png 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://files.smashing.media/articles/ai-transformative-impact-web-design-supercharging-productivity/3-attention-insight.png 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/ai-transformative-impact-web-design-supercharging-productivity/3-attention-insight.png"
			
			sizes="100vw"
			alt="A screenshot from Attention Insight"
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      Attention Insight uses AI to accurately predict where people will look on a website. (<a href='https://files.smashing.media/articles/ai-transformative-impact-web-design-supercharging-productivity/3-attention-insight.png'>Large preview</a>)
    </figcaption>
  
</figure>

<p><a href="https://clarity.microsoft.com/">Microsoft Clarity</a> has also upped its game, allowing us to ask questions about our analytic insights, heatmaps, and session recordings. This natural language interface makes it easier than ever to extract meaningful insights from our data.</p>

<div class="partners__lead-place"></div>

<h2 id="ai-in-copywriting-elevating-content-quality-and-efficiency">AI In Copywriting: Elevating Content Quality And Efficiency</h2>

<p>When it comes to copywriting, AI is proving to be a powerful ally. It’s helping us:</p>

<ul>
<li>Transform poor-quality stakeholder content into web-optimized copy;</li>
<li>Brainstorm value propositions and create high-converting copy;</li>
<li>Craft compelling business cases and strategy documentation;</li>
<li>Write standard operating procedures.</li>
</ul>

<p><a href="https://affiliate.notion.so/dvibk5g88zi1-4y5a7">Notion AI</a> has become one of my go-to tools for content creation. It combines the best of ChatGPT and <a href="https://claude.ai/">Claude</a>, allowing it to draw upon a wide range of provided source material to write detailed documentation, articles, and reports.</p>














<figure class="
  
    break-out article__image
  
  
  ">
  
    <a href="https://files.smashing.media/articles/ai-transformative-impact-web-design-supercharging-productivity/4-notion-ai.png">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="525"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/ai-transformative-impact-web-design-supercharging-productivity/4-notion-ai.png 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://files.smashing.media/articles/ai-transformative-impact-web-design-supercharging-productivity/4-notion-ai.png 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://files.smashing.media/articles/ai-transformative-impact-web-design-supercharging-productivity/4-notion-ai.png 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://files.smashing.media/articles/ai-transformative-impact-web-design-supercharging-productivity/4-notion-ai.png 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://files.smashing.media/articles/ai-transformative-impact-web-design-supercharging-productivity/4-notion-ai.png 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/ai-transformative-impact-web-design-supercharging-productivity/4-notion-ai.png"
			
			sizes="100vw"
			alt="A screenshot from Notion AI"
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      Notion AI has created one of the most versatile AI tools on the market by combining ChatGPT and Claude. (<a href='https://files.smashing.media/articles/ai-transformative-impact-web-design-supercharging-productivity/4-notion-ai.png'>Large preview</a>)
    </figcaption>
  
</figure>

<p>ChatGPT has been a game-changer for improving the quality of website copy. It can take user questions and bullet-point answers from subject specialists and transform them into web-optimized content. I’ve found it particularly useful for defining value propositions and writing high-converting copy.</p>

<p>For refining existing content, the <a href="https://hemingwayapp.com/">Hemingway Editor</a> is invaluable. It can take the existing copy and make it clearer, more concise, and easier to scan &mdash; essential qualities for effective web content.</p>

<h2 id="ai-in-administration-streamlining-mundane-tasks">AI In Administration: Streamlining Mundane Tasks</h2>

<p>AI isn’t just transforming the technical aspects of our work; it’s also making a significant impact on those mundane administrative tasks that often eat up our time. By leveraging AI, we can streamline various aspects of our daily workflow, allowing us to focus more on high-value activities.</p>

<p>Here are some ways AI is helping us tackle administrative tasks more efficiently:</p>

<ul>
<li>Getting our thoughts down faster;</li>
<li>Writing better emails;</li>
<li>Summarizing long emails or Slack threads;</li>
<li>Speeding up research;</li>
<li>Backing up arguments with relevant data.</li>
</ul>

<p>Let me share some personal experiences with AI tools that have transformed my administrative workflow:</p>

<p>I’ve dramatically <strong>increased my writing speed</strong> using <a href="https://www.flowvoice.ai/?referral=PAUL16">Flow</a>. This tool has taken me from typing at 49 words per minute to dictating at over 95 words per minute. Not only does it allow me to dictate, but it also tidies up my words to ensure they read well and are grammatically correct.</p>














<figure class="
  
    break-out article__image
  
  
  ">
  
    <a href="https://files.smashing.media/articles/ai-transformative-impact-web-design-supercharging-productivity/5-flow.png">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="525"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/ai-transformative-impact-web-design-supercharging-productivity/5-flow.png 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://files.smashing.media/articles/ai-transformative-impact-web-design-supercharging-productivity/5-flow.png 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://files.smashing.media/articles/ai-transformative-impact-web-design-supercharging-productivity/5-flow.png 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://files.smashing.media/articles/ai-transformative-impact-web-design-supercharging-productivity/5-flow.png 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://files.smashing.media/articles/ai-transformative-impact-web-design-supercharging-productivity/5-flow.png 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/ai-transformative-impact-web-design-supercharging-productivity/5-flow.png"
			
			sizes="100vw"
			alt="A screenshot from Flow"
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      Flow has finally made my dream of dictation a reality. Now, I can get my thoughts out of my head as quickly as I can express them. (<a href='https://files.smashing.media/articles/ai-transformative-impact-web-design-supercharging-productivity/5-flow.png'>Large preview</a>)
    </figcaption>
  
</figure>

<p>For email writing, I’ve found <a href="https://www.fixkey.ai/">Fixkey</a> to be invaluable. It helps me rewrite or reformat copy quickly. I’ve even set up <strong>a prompt that tones down my emails</strong> when I’m feeling particularly irritable, ensuring they sound reasonable and professional.</p>

<p>Dealing with long email threads or Slack conversations can be time-consuming. That’s where <a href="https://sparkmailapp.com/">Spark</a> comes in handy. It summarizes lengthy threads, saving me valuable time. Interestingly, this feature is now built into iOS for all notifications, making it even more accessible.</p>

<p>When it comes to research, <a href="https://notebooklm.google.com/">Google Notebook LLM</a> has been a game-changer. I can feed it large amounts of data on a subject and quickly extract valuable insights. This tool has significantly sped up my research process.</p>

<p>Lastly, if I need to back up an argument with a statistic or quote, <a href="https://www.perplexity.ai/">Perplexity</a> has become my go-to resource. It quickly finds relevant sources I can quote, <strong>adding credibility to my work</strong> without the need for extensive manual searches.</p>

<div class="partners__lead-place"></div>

<h2 id="conclusion-embracing-ai-for-a-more-productive-future">Conclusion: Embracing AI For A More Productive Future</h2>

<p>As I wrap up this article, I realize I’ve only scratched the surface of what AI can do for our industry. <strong>The real challenge isn’t in the technology itself but in breaking out of our established routines and taking the time to experiment with what’s possible.</strong></p>

<blockquote class="pull-quote">
  <p>
    <a class="pull-quote__link" aria-label="Share on Twitter" href="https://twitter.com/share?text=%0aI%20believe%20we%20need%20to%20cultivate%20a%20new%20habit:%20pausing%20before%20each%20new%20task%20to%20consider%20how%20AI%20could%20help%20us%20approach%20it%20differently.%20The%20winners%20in%20this%20new%20reality%20will%20be%20those%20who%20can%20best%20integrate%20this%20technology%20into%20their%20workflow.%0a&url=https://smashingmagazine.com%2f2024%2f11%2fai-transformative-impact-web-design-supercharging-productivity%2f">
      
I believe we need to cultivate a new habit: pausing before each new task to consider how AI could help us approach it differently. The winners in this new reality will be those who can best integrate this technology into their workflow.

    </a>
  </p>
  <div class="pull-quote__quotation">
    <div class="pull-quote__bg">
      <span class="pull-quote__symbol">“</span></div>
  </div>
</blockquote>

<p>AI isn’t replacing us &mdash; it’s empowering us to work <strong>smarter</strong> and <strong>more efficiently</strong>. By embracing these tools and learning to collaborate effectively with AI, we can focus more on the aspects of our work that truly require human creativity, empathy, and strategic thinking.</p>

<p>If you’re feeling overwhelmed by the rapid pace of change, don’t worry. We’re all learning and adapting together. Remember, the goal isn’t to become an AI expert overnight but to gradually incorporate these tools into your work in ways that make sense for you and your projects.</p>

<div class="signature">
  <img src="https://www.smashingmagazine.com/images/logo/logo--red.png" alt="Smashing Editorial" width="35" height="46" loading="lazy" decoding="async" />
  <span>(yk)</span>
</div>


              </article>
            </body>
          </html>
        ]]></content:encoded></item><item><author>Eleanor Hecks</author><title>How A Bottom-Up Design Approach Enhances Site Accessibility</title><link>https://www.smashingmagazine.com/2024/10/how-bottom-up-design-approach-enhances-site-accessibility/</link><pubDate>Fri, 04 Oct 2024 09:00:00 +0000</pubDate><guid>https://www.smashingmagazine.com/2024/10/how-bottom-up-design-approach-enhances-site-accessibility/</guid><description>You can’t overstate the importance of accessible website design. By the same token, bottom-up philosophies are crucial in modern site-building. A detail-oriented approach makes it easier to serve a more diverse audience along several fronts. Making the most of this opportunity will both extend your reach to new niches and make the web a more equitable place.</description><content:encoded><![CDATA[
          <html>
            <head>
              <meta charset="utf-8">
              <link rel="canonical" href="https://www.smashingmagazine.com/2024/10/how-bottom-up-design-approach-enhances-site-accessibility/" />
              <title>How A Bottom-Up Design Approach Enhances Site Accessibility</title>
            </head>
            <body>
              <article>
                <header>
                  <h1>How A Bottom-Up Design Approach Enhances Site Accessibility</h1>
                  
                    
                    <address>Eleanor Hecks</address>
                  
                  <time datetime="2024-10-04T09:00:00&#43;00:00" class="op-published">2024-10-04T09:00:00+00:00</time>
                  <time datetime="2024-10-04T09:00:00&#43;00:00" class="op-modified">2026-02-09T03:03:08+00:00</time>
                </header>
                
                

<p>Accessibility is key in modern web design. A site that doesn’t consider how its user experience may differ for various audiences &mdash; especially those with disabilities &mdash; will fail to engage and serve everyone equally. One of the best ways to prevent this is to approach your site from <strong>a bottom-up perspective</strong>.</p>

<h2 id="understanding-bottom-up-design">Understanding Bottom-Up Design</h2>

<p>Conventional, top-down design approaches start with the big picture before breaking these goals and concepts into smaller details. Bottom-up philosophies, by contrast, consider the minute details first, eventually achieving the broader goal piece by piece.</p>

<p>This alternative way of thinking is important for accessibility in general because it reflects how neurodivergent people commonly think. While non-autistic people <a href="https://psychcentral.com/autism/why-people-with-autism-are-more-logical">tend to think from a top-down perspective</a>, those with autism often employ a bottom-up way of thinking.</p>

<p>Of course, there is considerable variation, and researchers have identified <a href="https://www.psychologytoday.com/us/blog/mind-matters-from-menninger/202204/autism-acceptance-great-minds-dont-think-alike">at least three specialist thinking types</a> within the autism spectrum:</p>

<ul>
<li><strong>Visual thinkers</strong> who think in images;</li>
<li><strong>Pattern thinkers</strong> who think of concepts in terms of patterns and relationships;</li>
<li><strong>Verbal thinkers</strong> who think only in word detail.</li>
</ul>

<p>Still, research shows that people with autism and ADHD <a href="https://journals.sagepub.com/doi/full/10.1177/27546330241229004">show a bias toward bottom-up thinking</a> rather than the top-down approach you often see in neurotypical users. Consequently, a top-down strategy means you may miss details your audience may notice, and your site may not feel easily usable for all users.</p>














<figure class="
  
    break-out article__image
  
  
  ">
  
    <a href="https://files.smashing.media/articles/how-bottom-up-design-approach-enhances-site-accessibility/1-top-down-strategy-design.png">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="613"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/how-bottom-up-design-approach-enhances-site-accessibility/1-top-down-strategy-design.png 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://files.smashing.media/articles/how-bottom-up-design-approach-enhances-site-accessibility/1-top-down-strategy-design.png 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://files.smashing.media/articles/how-bottom-up-design-approach-enhances-site-accessibility/1-top-down-strategy-design.png 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://files.smashing.media/articles/how-bottom-up-design-approach-enhances-site-accessibility/1-top-down-strategy-design.png 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://files.smashing.media/articles/how-bottom-up-design-approach-enhances-site-accessibility/1-top-down-strategy-design.png 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/how-bottom-up-design-approach-enhances-site-accessibility/1-top-down-strategy-design.png"
			
			sizes="100vw"
			alt="Visualization of a top-down strategy with an inverted pyramid"
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      (<a href='https://files.smashing.media/articles/how-bottom-up-design-approach-enhances-site-accessibility/1-top-down-strategy-design.png'>Large preview</a>)
    </figcaption>
  
</figure>

<p>As a real-world example, consider the task of writing an essay. Many students are instructed to start an essay assignment by thinking about the main point they want to convey and then create an outline with points that support the main argument. This is top-down thinking &mdash; starting with the big picture of the topic and then gradually breaking down the topic into points and then later into words that articulate these points.</p>














<figure class="
  
    break-out article__image
  
  
  ">
  
    <a href="https://files.smashing.media/articles/how-bottom-up-design-approach-enhances-site-accessibility/2-bottom-up-design.png">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="617"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/how-bottom-up-design-approach-enhances-site-accessibility/2-bottom-up-design.png 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://files.smashing.media/articles/how-bottom-up-design-approach-enhances-site-accessibility/2-bottom-up-design.png 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://files.smashing.media/articles/how-bottom-up-design-approach-enhances-site-accessibility/2-bottom-up-design.png 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://files.smashing.media/articles/how-bottom-up-design-approach-enhances-site-accessibility/2-bottom-up-design.png 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://files.smashing.media/articles/how-bottom-up-design-approach-enhances-site-accessibility/2-bottom-up-design.png 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/how-bottom-up-design-approach-enhances-site-accessibility/2-bottom-up-design.png"
			
			sizes="100vw"
			alt="Visualization of a bottom-up approach in the form of a pyramid"
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      (<a href='https://files.smashing.media/articles/how-bottom-up-design-approach-enhances-site-accessibility/2-bottom-up-design.png'>Large preview</a>)
    </figcaption>
  
</figure>

<p>In contrast, someone who uses a bottom-up thinking approach might start an essay with no outline but rather just by freely jotting down every idea that comes to mind as it comes to mind &mdash; perhaps starting with one particular idea or example that the writer finds interesting and wants to explore further and branching off from there. Then, once all the ideas have been written out, the writer goes back to group related ideas together and arrange them into a logical outline. This writer starts with the small details of the essay and then works these details into the big picture of the final form.</p>

<p>In web design, in particular, a bottom-up approach means <strong>starting with the specifics of the user experience instead of the desired effect</strong>. You may determine a readable layout for a single blog post, then ask how that page relates to others and slowly build on these decisions until you have several well-organized website categories.</p>

<p>You may even get more granular. Say you start your site design by placing a menu at the bottom of a mobile site to make it easier to tap with one hand, improving ease of use. Then, you build a drop-down menu around that choice &mdash; placing the most popular or needed options at the bottom instead of the top for easy tapping. From there, you may have to rethink larger-scale layouts to work around those interactive elements being lower on the screen, slowly addressing larger categories until you have a finished site design.</p>














<figure class="
  
    break-out article__image
  
  
  ">
  
    <a href="https://files.smashing.media/articles/how-bottom-up-design-approach-enhances-site-accessibility/3-bottom-up-design.png">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="642"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/how-bottom-up-design-approach-enhances-site-accessibility/3-bottom-up-design.png 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://files.smashing.media/articles/how-bottom-up-design-approach-enhances-site-accessibility/3-bottom-up-design.png 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://files.smashing.media/articles/how-bottom-up-design-approach-enhances-site-accessibility/3-bottom-up-design.png 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://files.smashing.media/articles/how-bottom-up-design-approach-enhances-site-accessibility/3-bottom-up-design.png 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://files.smashing.media/articles/how-bottom-up-design-approach-enhances-site-accessibility/3-bottom-up-design.png 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/how-bottom-up-design-approach-enhances-site-accessibility/3-bottom-up-design.png"
			
			sizes="100vw"
			alt="A example of a bottom-up design with a menu placed at the bottom"
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      (<a href='https://files.smashing.media/articles/how-bottom-up-design-approach-enhances-site-accessibility/3-bottom-up-design.png'>Large preview</a>)
    </figcaption>
  
</figure>

<p>In either case, the idea of bottom-up design is to <strong>begin with the most specific problems</strong> someone might have. You then address them in sequence instead of determining the big picture first.</p>

<div data-audience="non-subscriber" data-remove="true" class="feature-panel-container">

<aside class="feature-panel" style="">
<div class="feature-panel-left-col">

<div class="feature-panel-description"><p>Meet <strong><a data-instant href="https://www.smashingconf.com/online-workshops/">Smashing Workshops</a></strong> on <strong>front-end, design &amp; UX</strong>, with practical takeaways, live sessions, <strong>video recordings</strong> and a friendly Q&amp;A. With Brad Frost, Stéph Walter and <a href="https://smashingconf.com/online-workshops/workshops">so many others</a>.</p>
<a data-instant href="smashing-workshops" class="btn btn--green btn--large" style="">Jump to the workshops&nbsp;↬</a></div>
</div>
<div class="feature-panel-right-col"><a data-instant href="smashing-workshops" class="feature-panel-image-link">
<div class="feature-panel-image">
<img
    loading="lazy"
    decoding="async"
    class="feature-panel-image-img"
    src="/images/smashing-cat/cat-scubadiving-panel.svg"
    alt="Feature Panel"
    width="257"
    height="355"
/>

</div>
</a>
</div>
</aside>
</div>

<h2 id="benefits-of-a-bottom-up-approach-for-accessible-design">Benefits Of A Bottom-Up Approach For Accessible Design</h2>

<p>While neither bottom-up nor top-down approaches dominate the industry, some web engineers prefer the bottom-up approach due to the various accessibility benefits this process provides. This strategy has several accessibility benefits.</p>

<h3 id="putting-user-needs-first">Putting User Needs First</h3>

<p>The biggest benefit of bottom-up methods is that they <strong>prioritize the user’s needs</strong>.</p>

<blockquote class="pull-quote">
  <p>
    <a class="pull-quote__link" aria-label="Share on Twitter" href="https://twitter.com/share?text=%0aTop-down%20approaches%20seem%20organized,%20but%20they%20often%20result%20in%20a%20site%20that%20reflects%20the%20designer%e2%80%99s%20choices%20and%20beliefs%20more%20than%20it%20serves%20your%20audience.%0a&url=https://smashingmagazine.com%2f2024%2f10%2fhow-bottom-up-design-approach-enhances-site-accessibility%2f">
      
Top-down approaches seem organized, but they often result in a site that reflects the designer’s choices and beliefs more than it serves your audience.

    </a>
  </p>
  <div class="pull-quote__quotation">
    <div class="pull-quote__bg">
      <span class="pull-quote__symbol">“</span></div>
  </div>
</blockquote> 

<p>Consider some of the complaints that social media users have made over the years related to usability and accessibility for the everyday user. For example, many users complain that their Facebook feed will randomly refresh as they scroll for the sake of providing users with the most up-to-date content. However, the feature makes it virtually impossible to get back to a post a user viewed that they didn’t think to save. Likewise, TikTok’s watch history feature <a href="https://www.distractify.com/p/did-tiktok-remove-watch-history">has come and gone over the years</a> and still today is difficult for many users to find without viewing an outside tutorial on the subject.</p>

<p>This is a common problem: <a href="https://webaim.org/projects/million/#wcag">95.9% of the largest one million homepages</a> have Web Content Accessibility Guidelines (WCAG) errors. While a bottom-up alternative doesn’t mean you won’t make any mistakes, it may make them less likely, as bottom-up thinking <a href="https://uk.indeed.com/career-advice/career-development/bottom-up-processing">often improves your awareness</a> of new stimuli so you can catch things you’d otherwise overlook. It’s easier to meet user’s needs when you build your entire site around their experience instead of looking at UX as an afterthought.</p>














<figure class="
  
    break-out article__image
  
  
  ">
  
    <a href="https://files.smashing.media/articles/how-bottom-up-design-approach-enhances-site-accessibility/4-exampleberkshire-hathaway.png">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="418"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/how-bottom-up-design-approach-enhances-site-accessibility/4-exampleberkshire-hathaway.png 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://files.smashing.media/articles/how-bottom-up-design-approach-enhances-site-accessibility/4-exampleberkshire-hathaway.png 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://files.smashing.media/articles/how-bottom-up-design-approach-enhances-site-accessibility/4-exampleberkshire-hathaway.png 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://files.smashing.media/articles/how-bottom-up-design-approach-enhances-site-accessibility/4-exampleberkshire-hathaway.png 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://files.smashing.media/articles/how-bottom-up-design-approach-enhances-site-accessibility/4-exampleberkshire-hathaway.png 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/how-bottom-up-design-approach-enhances-site-accessibility/4-exampleberkshire-hathaway.png"
			
			sizes="100vw"
			alt="An example of  Berkshire Hathaway website with bad accessessibility"
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      (<a href='https://files.smashing.media/articles/how-bottom-up-design-approach-enhances-site-accessibility/4-exampleberkshire-hathaway.png'>Large preview</a>)
    </figcaption>
  
</figure>

<p>Consider this <a href="https://www.berkshirehathaway.com/">example from Berkshire Hathaway</a>, a multi-billion-dollar holding company. The overall design philosophy is understandable: It’s simple and direct, choosing to focus on information instead of fancy aesthetics that may not suit the company image. However, you could argue it loses itself in this big picture.</p>

<p>While it is simple, the lack of menus or color contrast and the small font make it harder to read and a little overwhelming. This confusion can counteract any accessibility benefits of its simplicity.</p>














<figure class="
  
    break-out article__image
  
  
  ">
  
    <a href="https://files.smashing.media/articles/how-bottom-up-design-approach-enhances-site-accessibility/5-example-berkshire-hathaway-redesign.png">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="553"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/how-bottom-up-design-approach-enhances-site-accessibility/5-example-berkshire-hathaway-redesign.png 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://files.smashing.media/articles/how-bottom-up-design-approach-enhances-site-accessibility/5-example-berkshire-hathaway-redesign.png 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://files.smashing.media/articles/how-bottom-up-design-approach-enhances-site-accessibility/5-example-berkshire-hathaway-redesign.png 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://files.smashing.media/articles/how-bottom-up-design-approach-enhances-site-accessibility/5-example-berkshire-hathaway-redesign.png 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://files.smashing.media/articles/how-bottom-up-design-approach-enhances-site-accessibility/5-example-berkshire-hathaway-redesign.png 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/how-bottom-up-design-approach-enhances-site-accessibility/5-example-berkshire-hathaway-redesign.png"
			
			sizes="100vw"
			alt=""
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      (<a href='https://files.smashing.media/articles/how-bottom-up-design-approach-enhances-site-accessibility/5-example-berkshire-hathaway-redesign.png'>Large preview</a>)
    </figcaption>
  
</figure>

<p>Alternatively, even a simple website redesign could include intuitive menus, additional contrast, and accessible font for easy navigation across the site.</p>














<figure class="
  
    break-out article__image
  
  
  ">
  
    <a href="https://files.smashing.media/articles/how-bottom-up-design-approach-enhances-site-accessibility/6-homepage-scope.png">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="414"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/how-bottom-up-design-approach-enhances-site-accessibility/6-homepage-scope.png 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://files.smashing.media/articles/how-bottom-up-design-approach-enhances-site-accessibility/6-homepage-scope.png 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://files.smashing.media/articles/how-bottom-up-design-approach-enhances-site-accessibility/6-homepage-scope.png 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://files.smashing.media/articles/how-bottom-up-design-approach-enhances-site-accessibility/6-homepage-scope.png 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://files.smashing.media/articles/how-bottom-up-design-approach-enhances-site-accessibility/6-homepage-scope.png 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/how-bottom-up-design-approach-enhances-site-accessibility/6-homepage-scope.png"
			
			sizes="100vw"
			alt="Example of a better web design on Scope website"
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      (<a href='https://files.smashing.media/articles/how-bottom-up-design-approach-enhances-site-accessibility/6-homepage-scope.png'>Large preview</a>)
    </figcaption>
  
</figure>

<p>The <a href="https://www.scope.org.uk/">homepage for U.K. charity Scope</a> offers a better example of web design centered around users’ needs. Concise, clear menus line the top of the page to aid quicker, easier navigation. The color scheme is simple enough to avoid confusion but provides enough contrast to make everything easy to read &mdash; something the sans-serif font further helps.</p>

<h3 id="ensuring-accessibility-from-the-start">Ensuring Accessibility From The Start</h3>

<p>A top-down method also makes catering to a diverse audience difficult because you may need to <strong>shoehorn features into an existing design</strong>.</p>

<p>For example, say, a local government agency creates a website focused on providing information and services to a general audience of residents. The site originally featured high-resolution images, bright colors, and interactive charts.</p>














<figure class="
  
    break-out article__image
  
  
  ">
  
    <a href="https://files.smashing.media/articles/how-bottom-up-design-approach-enhances-site-accessibility/7-government-agency-website.png">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="553"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/how-bottom-up-design-approach-enhances-site-accessibility/7-government-agency-website.png 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://files.smashing.media/articles/how-bottom-up-design-approach-enhances-site-accessibility/7-government-agency-website.png 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://files.smashing.media/articles/how-bottom-up-design-approach-enhances-site-accessibility/7-government-agency-website.png 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://files.smashing.media/articles/how-bottom-up-design-approach-enhances-site-accessibility/7-government-agency-website.png 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://files.smashing.media/articles/how-bottom-up-design-approach-enhances-site-accessibility/7-government-agency-website.png 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/how-bottom-up-design-approach-enhances-site-accessibility/7-government-agency-website.png"
			
			sizes="100vw"
			alt="An example of a local government agency website, which is not accessible"
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      (<a href='https://files.smashing.media/articles/how-bottom-up-design-approach-enhances-site-accessibility/7-government-agency-website.png'>Large preview</a>)
    </figcaption>
  
</figure>

<p>However, they realize the images are not accessible to people navigating the site with screen readers, while multiple layers of submenus are difficult for keyboard-only users. Further, the bright colors make it hard for visually impaired users to read the site’s information.</p>

<p>The agency, realizing these accessibility concerns, adds captions to each image. However, the captions disrupt the originally intended visual aesthetics and user flow. Further, adjusting the bright colors would involve completely rethinking the site’s entire color palette. If these considerations had been made before the site was built, the site build could have specifically accommodated these elements while still creating an aesthetically pleasing and user-friendly result.</p>














<figure class="
  
    break-out article__image
  
  
  ">
  
    <a href="https://files.smashing.media/articles/how-bottom-up-design-approach-enhances-site-accessibility/8-accessible-government-agency-website.png">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="553"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/how-bottom-up-design-approach-enhances-site-accessibility/8-accessible-government-agency-website.png 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://files.smashing.media/articles/how-bottom-up-design-approach-enhances-site-accessibility/8-accessible-government-agency-website.png 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://files.smashing.media/articles/how-bottom-up-design-approach-enhances-site-accessibility/8-accessible-government-agency-website.png 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://files.smashing.media/articles/how-bottom-up-design-approach-enhances-site-accessibility/8-accessible-government-agency-website.png 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://files.smashing.media/articles/how-bottom-up-design-approach-enhances-site-accessibility/8-accessible-government-agency-website.png 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/how-bottom-up-design-approach-enhances-site-accessibility/8-accessible-government-agency-website.png"
			
			sizes="100vw"
			alt="An example of a local government agency website after re-design to make it more accessible"
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      (<a href='https://files.smashing.media/articles/how-bottom-up-design-approach-enhances-site-accessibility/8-accessible-government-agency-website.png'>Large preview</a>)
    </figcaption>
  
</figure>

<p>Alternatively, a site initially built with high contrast, a calm color scheme, clear typography, simple menus, and reduced imagery would make this site much more accessible to a wide user base from the get-go.</p>














<figure class="
  
    break-out article__image
  
  
  ">
  
    <a href="https://files.smashing.media/articles/how-bottom-up-design-approach-enhances-site-accessibility/9-awwwards-website.png">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="416"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/how-bottom-up-design-approach-enhances-site-accessibility/9-awwwards-website.png 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://files.smashing.media/articles/how-bottom-up-design-approach-enhances-site-accessibility/9-awwwards-website.png 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://files.smashing.media/articles/how-bottom-up-design-approach-enhances-site-accessibility/9-awwwards-website.png 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://files.smashing.media/articles/how-bottom-up-design-approach-enhances-site-accessibility/9-awwwards-website.png 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://files.smashing.media/articles/how-bottom-up-design-approach-enhances-site-accessibility/9-awwwards-website.png 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/how-bottom-up-design-approach-enhances-site-accessibility/9-awwwards-website.png"
			
			sizes="100vw"
			alt="Awwwards homepage"
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      (<a href='https://files.smashing.media/articles/how-bottom-up-design-approach-enhances-site-accessibility/9-awwwards-website.png'>Large preview</a>)
    </figcaption>
  
</figure>

<p>As a real-world example, <a href="https://www.awwwards.com/">consider the Awwwards</a> website. There are plenty of menus to condense information and ease navigation without overloading the screen &mdash; a solid accessibility choice. However, there does not seem to be consistent thought in these menus’ placement or organization.</p>














<figure class="
  
    break-out article__image
  
  
  ">
  
    <a href="https://files.smashing.media/articles/how-bottom-up-design-approach-enhances-site-accessibility/10-awwwards-website-menus.png">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="416"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/how-bottom-up-design-approach-enhances-site-accessibility/10-awwwards-website-menus.png 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://files.smashing.media/articles/how-bottom-up-design-approach-enhances-site-accessibility/10-awwwards-website-menus.png 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://files.smashing.media/articles/how-bottom-up-design-approach-enhances-site-accessibility/10-awwwards-website-menus.png 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://files.smashing.media/articles/how-bottom-up-design-approach-enhances-site-accessibility/10-awwwards-website-menus.png 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://files.smashing.media/articles/how-bottom-up-design-approach-enhances-site-accessibility/10-awwwards-website-menus.png 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/how-bottom-up-design-approach-enhances-site-accessibility/10-awwwards-website-menus.png"
			
			sizes="100vw"
			alt="Awwwards homepage with highlighted menus at the top and bottom and a scrolling top bar"
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      (<a href='https://files.smashing.media/articles/how-bottom-up-design-approach-enhances-site-accessibility/10-awwwards-website-menus.png'>Large preview</a>)
    </figcaption>
  
</figure>

<p>There are far too many menus; some are at the top while others are at the bottom, and a scrolling top bar adds further distractions. It seems like Awwwards may have added additional menus as an afterthought to improve navigation. This leads to inconsistencies and crowding because they did not begin with this thought.</p>

<p>In contrast,</p>

<blockquote class="pull-quote">
  <p>
    <a class="pull-quote__link" aria-label="Share on Twitter" href="https://twitter.com/share?text=%0aBottom-up%20alternatives%20address%20usability%20issues%20from%20the%20beginning,%20which%20results%20in%20a%20more%20functional,%20accessible%20website.%0a&url=https://smashingmagazine.com%2f2024%2f10%2fhow-bottom-up-design-approach-enhances-site-accessibility%2f">
      
Bottom-up alternatives address usability issues from the beginning, which results in a more functional, accessible website.

    </a>
  </p>
  <div class="pull-quote__quotation">
    <div class="pull-quote__bg">
      <span class="pull-quote__symbol">“</span></div>
  </div>
</blockquote>

<p>Redesigning a system to address a usability issue it didn’t originally make room for is challenging. It can lead to errors like broken links and other unintended consequences that may hinder access for other visitors. Some sites have even claimed to lose <a href="https://support.google.com/webmasters/thread/40281085/90-of-our-traffic-is-lost-business-is-down?hl=en">90% of their traffic</a> after a redesign. While bottom-up approaches won’t eliminate those possibilities, they make them <em>less likely</em> by centering everything around usage from the start.</p>














<figure class="
  
    break-out article__image
  
  
  ">
  
    <a href="https://files.smashing.media/articles/how-bottom-up-design-approach-enhances-site-accessibility/11-vasa-museum-website.png">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="395"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/how-bottom-up-design-approach-enhances-site-accessibility/11-vasa-museum-website.png 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://files.smashing.media/articles/how-bottom-up-design-approach-enhances-site-accessibility/11-vasa-museum-website.png 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://files.smashing.media/articles/how-bottom-up-design-approach-enhances-site-accessibility/11-vasa-museum-website.png 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://files.smashing.media/articles/how-bottom-up-design-approach-enhances-site-accessibility/11-vasa-museum-website.png 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://files.smashing.media/articles/how-bottom-up-design-approach-enhances-site-accessibility/11-vasa-museum-website.png 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/how-bottom-up-design-approach-enhances-site-accessibility/11-vasa-museum-website.png"
			
			sizes="100vw"
			alt="Homepage of the Vasa Museum website"
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      (<a href='https://files.smashing.media/articles/how-bottom-up-design-approach-enhances-site-accessibility/11-vasa-museum-website.png'>Large preview</a>)
    </figcaption>
  
</figure>

<p>The <a href="https://www.vasamuseet.se/en">website for the Vasa Museum</a> in Stockholm, Sweden, showcases a more cohesive approach to ensuring accessibility. Like Awwwards, it uses menus to aid navigation and organization, but there seems to be more forethought into these features. All menus are at the top, and there are fewer of them, resulting in less clutter and a faster way to find what you’re looking for. The overall design complements this by keeping things simple and neat so that the menus stand out.</p>

<h3 id="increasing-awareness">Increasing Awareness</h3>

<p>Similarly, bottom-up design ensures you don’t miss as many accessibility concerns. When you start at the top, before determining what details fit within it, you may not consider all the factors that influence it. Beginning with the specifics instead makes it easier to spot and address problems you would’ve missed otherwise.</p>

<p>This awareness is particularly important for serving a diverse population. An estimated <a href="https://www.who.int/news-room/fact-sheets/detail/disability-and-health">16% of the global population</a> &mdash; 1.6 billion people &mdash; have a significant disability. That means there’s a huge range of varying needs to account for, but most people lack firsthand experience living with these conditions. Consequently, it’s easy to miss things impacting others’ UX. You can overcome that knowledge gap by asking how everyone can use your site first.</p>














<figure class="
  
    break-out article__image
  
  
  ">
  
    <a href="https://files.smashing.media/articles/how-bottom-up-design-approach-enhances-site-accessibility/12-run-usability-test.jpg">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="533"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/how-bottom-up-design-approach-enhances-site-accessibility/12-run-usability-test.jpg 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://files.smashing.media/articles/how-bottom-up-design-approach-enhances-site-accessibility/12-run-usability-test.jpg 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://files.smashing.media/articles/how-bottom-up-design-approach-enhances-site-accessibility/12-run-usability-test.jpg 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://files.smashing.media/articles/how-bottom-up-design-approach-enhances-site-accessibility/12-run-usability-test.jpg 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://files.smashing.media/articles/how-bottom-up-design-approach-enhances-site-accessibility/12-run-usability-test.jpg 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/how-bottom-up-design-approach-enhances-site-accessibility/12-run-usability-test.jpg"
			
			sizes="100vw"
			alt="A person holding a pink sticky-note, which states ‘Run a usability test’"
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      Image source: <a href='https://unsplash.com/photos/person-holding-pink-sticky-note-WC6MJ0kRzGw'>Unsplash</a>. (<a href='https://files.smashing.media/articles/how-bottom-up-design-approach-enhances-site-accessibility/12-run-usability-test.jpg'>Large preview</a>)
    </figcaption>
  
</figure>

<div class="partners__lead-place"></div>

<h2 id="bottom-up-vs-top-down-which-is-best-for-you">Bottom-Up vs. Top-Down: Which Is Best for You?</h2>

<p>As these benefits show, a bottom-up design philosophy can be helpful when building an accessible site. Still, top-down methods can be advantageous at times, too. Which is best depends on your situation.</p>

<p>Top-down approaches are <strong>a good way to ensure a consistent brand image</strong>, as you start with the overall idea and base future decisions on this concept. It also makes it easier to create <strong>a design hierarchy</strong> to facilitate decision-making within your team. When anyone has a question, they can turn to whoever is above them or refer to the broader goals. Such organization can also mean faster design processes.</p>

<p>Bottom-up methods, by contrast, are better when accessibility for a diverse audience is your main concern. It may be harder to keep everyone on the same overall design philosophy page, but it usually produces <strong>a more functional website</strong>. You can catch and solve problems early and pay great attention to detail. However, this can mean longer design cycles, which can incur extra costs.</p>

<p>It may come down to what your team is most comfortable with. People think and work differently, with some preferring a top-down approach while others find bottom-up more natural. Combining the two &mdash; starting with a top-down model before tackling updates from a bottom-up perspective &mdash; can be beneficial, too.</p>

<h2 id="strategies-for-implementing-a-bottom-up-design-model">Strategies For Implementing A Bottom-Up Design Model</h2>

<p>Should you decide a bottom-up design method is best for your goals, here are some ways you can embrace this philosophy.</p>

<h3 id="talk-to-your-existing-user-base">Talk To Your Existing User Base</h3>

<p>One of the most important factors in bottom-up web design is to center everything around your users. As a result, your existing user base &mdash; whether from a separate part of your business or another site you run &mdash; is the perfect place to start.</p>

<p>Survey customers and web visitors about their experience on your sites and others. Ask what pain points they have and what features they’d appreciate. Any commonalities between responses deserve attention. You can also <a href="https://www.w3.org/WAI/standards-guidelines/wcag/">turn to WCAG standards</a> for inspiration on accessible functionality, but first-hand user feedback should form the core of your mission.</p>

<h3 id="look-to-past-projects-for-accessibility-gaps">Look To Past Projects For Accessibility Gaps</h3>

<p>Past sites and business projects can also reveal what specifics you should start with. Look for any accessibility gaps by combing through old customer feedback and update histories and using these sites yourself to find issues. Take note of any barriers or usability concerns to address in your next website.</p>

<p>Remember to document everything you find as you go. Up to <a href="https://blog.box.com/ai-summarization-definition-and-best-practices">90% of organizations’ data</a> is unstructured, making it difficult to analyze later. Reversing that trend by organizing your findings and recording your accessible design process will streamline future accessibility optimization efforts.</p>

<h3 id="divide-tasks-but-communicate-often">Divide Tasks But Communicate Often</h3>

<p>Keep in mind that <strong>a bottom-up strategy can be time-consuming</strong>. One of the reasons why top-down alternatives are popular is because they’re efficient. You can overcome this gap by splitting tasks between smaller teams. However, these groups must communicate frequently to ensure separate design considerations work as a cohesive whole.</p>

<p>A DevOps approach is helpful here. DevOps has helped <a href="https://www.atlassian.com/whitepapers/devops-survey-2020">49% of its adopters</a> achieve a faster time to market, and 61% report higher-quality deliverables. It also includes space for both detailed work and team-wide meetings to keep everyone on track. Such benefits ensure you can remain productive in a bottom-up strategy.</p>

<div class="partners__lead-place"></div>

<h2 id="accessible-websites-need-a-bottom-up-design-approach">Accessible Websites Need A Bottom-Up Design Approach</h2>

<p>You can’t overstate the importance of accessible website design. By the same token, bottom-up philosophies are crucial in modern site-building. A detail-oriented approach makes it easier to serve a more diverse audience along several fronts. Making the most of this opportunity will both extend your reach to new niches and make the web a more equitable place.</p>

<p>The <a href="https://www.w3.org/WAI/standards-guidelines/wcag/">Web Accessibility Initiative’s WCAG standards</a> are a good place to start. While these guidelines don’t necessarily describe how to apply a bottom-up approach, they do outline critical user needs and accessibility concerns your design should consider. The site also offers a free and comprehensive <a href="https://www.w3.org/WAI/courses/foundations-course/">Digital Accessibility Foundations course</a> for designers and developers.</p>

<p>Familiarizing yourself with these standards and best practices will make it easier to understand your audience before you begin designing your site. You can then build a more accessible platform from the ground up.</p>

<p>Additionally, the following are some valuable related reads that can act as inspiration in accessibility-centered and user-centric design.</p>

<ul>
<li><a href="https://www.amazon.com/Inclusive-Design-Digital-World-Accessibility/dp/148425015X"><em>Inclusive Design for a Digital World: Designing with Accessibility in Mind</em></a> by Regine M. Gilbert</li>
<li><a href="https://www.amazon.com/Practical-Web-Inclusion-Accessibility-Comprehensive/dp/1484254511"><em>Practical Web Inclusion and Accessibility: A Comprehensive Guide to Access Needs</em></a> by Ashley Firth</li>
<li><a href="https://www.amazon.com/Dont-Make-Think-Revisited-Usability/dp/0321965515"><em>Don’t Make Me Think, Revisited: A Common Sense Approach to Web Usability</em></a> by Steve Krug</li>
</ul>

<p>By employing bottom-up thinking as well as resources like these in your design approach, you can create websites that not only meet current accessibility standards but actively encourage site use among users of all backgrounds and abilities.</p>

<h3 id="further-reading-on-smashingmag">Further Reading On SmashingMag</h3>

<ul>
<li>“<a href="https://deploy-preview-9934--smashing-prod.netlify.app/2024/07/getting-bottom-minimum-wcag-conformant-interactive-element-size/">Getting To The Bottom Of Minimum WCAG-Conformant Interactive Element Size</a>,” Eric Bailey</li>
<li>“<a href="https://deploy-preview-9934--smashing-prod.netlify.app/2024/06/how-make-strong-case-accessibility/">How To Make A Strong Case For Accessibility</a>,” Vitaly Friedman</li>
<li>“<a href="https://www.smashingmagazine.com/2023/02/guide-accessible-form-validation/">A Guide To Accessible Form Validation</a>,” Sandrina Pereira</li>
<li>“<a href="https://www.smashingmagazine.com/2023/01/creating-high-contrast-design-system-css-custom-properties/">Creating A High-Contrast Design System With CSS Custom Properties</a>,” Brecht De Ruyte</li>
</ul>

<div class="signature">
  <img src="https://www.smashingmagazine.com/images/logo/logo--red.png" alt="Smashing Editorial" width="35" height="46" loading="lazy" decoding="async" />
  <span>(yk)</span>
</div>


              </article>
            </body>
          </html>
        ]]></content:encoded></item><item><author>Paul Boag</author><title>The Big Difference Between Digital Product And Web Design</title><link>https://www.smashingmagazine.com/2024/09/big-difference-between-digital-product-and-web-design/</link><pubDate>Tue, 03 Sep 2024 09:00:00 +0000</pubDate><guid>https://www.smashingmagazine.com/2024/09/big-difference-between-digital-product-and-web-design/</guid><description>Designing for digital products requires a different mindset than traditional websites. It’s all about continuous adaptation, refining, and iterating as user behavior and needs evolve. Paul Boag reflects on the key differences, including how the frequency of usage impacts your design approach and what you can do about it.</description><content:encoded><![CDATA[
          <html>
            <head>
              <meta charset="utf-8">
              <link rel="canonical" href="https://www.smashingmagazine.com/2024/09/big-difference-between-digital-product-and-web-design/" />
              <title>The Big Difference Between Digital Product And Web Design</title>
            </head>
            <body>
              <article>
                <header>
                  <h1>The Big Difference Between Digital Product And Web Design</h1>
                  
                    
                    <address>Paul Boag</address>
                  
                  <time datetime="2024-09-03T09:00:00&#43;00:00" class="op-published">2024-09-03T09:00:00+00:00</time>
                  <time datetime="2024-09-03T09:00:00&#43;00:00" class="op-modified">2026-02-09T03:03:08+00:00</time>
                </header>
                
                

<p>In the early days of the web, I remember how annoying it was when print designers would claim they could design websites, too. They assumed that just because they could design for one medium, they could design for the other.</p>

<p>That assumption often led to bad user experiences. The skills for effective web design are quite different from those for print design.</p>

<p>A similar thing happens today. Designers know how to design traditional marketing and e-commerce sites. They, therefore, presume they have the skills to work on SaaS apps and other digital projects.</p>

<p>But when it comes to design, there’s <strong>a big distinction between traditional websites and digital products</strong>. If we want to work on digital products, we need to understand those differences and adopt a different approach to our work.</p>

<h2 id="people-interact-with-digital-products-more-regularly">People Interact with Digital Products More Regularly</h2>

<p>The biggest difference is that users interact with digital products <em>more</em> than most websites.</p>

<p>Think about your own web use. What are the sites you visit most often? If you listed your top ten, well over half would be some form of digital product, from a social media application to a productivity tool.</p>

<p>So, with that in mind, let’s dive into the specifics of <em>how</em> the frequency of usage impacts our design approach and what we can do about it.</p>

<div data-audience="non-subscriber" data-remove="true" class="feature-panel-container">

<aside class="feature-panel" style="">
<div class="feature-panel-left-col">

<div class="feature-panel-description"><p>Meet <strong><a data-instant href="/printed-books/touch-design-for-mobile-interfaces/">Touch Design for Mobile Interfaces</a></strong>, Steven Hoober’s brand-new guide on <strong>designing for mobile</strong> with proven, universal, human-centric guidelines. <strong>400 pages</strong>, jam-packed with in-depth user research and <strong>best practices</strong>.</p>
<a data-instant href="https://www.smashingmagazine.com/printed-books/touch-design-for-mobile-interfaces/" class="btn btn--green btn--large" style="">Jump to table of contents&nbsp;↬</a></div>
</div>
<div class="feature-panel-right-col"><a data-instant href="https://www.smashingmagazine.com/printed-books/touch-design-for-mobile-interfaces/" class="feature-panel-image-link">
<div class="feature-panel-image"><picture><source type="image/avif" srcSet="https://archive.smashing.media/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/14bcab88-b622-47f6-a51d-76b0aa003597/touch-design-book-shop-opt.avif" />
<img
    loading="lazy"
    decoding="async"
    class="feature-panel-image-img"
    src="https://archive.smashing.media/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/b14658fc-bb2d-41a6-8d1a-70eaaf1b8ec8/touch-design-book-shop-opt.png"
    alt="Feature Panel"
    width="480"
    height="697"
/>
</picture>
</div>
</a>
</div>
</aside>
</div>

<h2 id="why-frequency-of-use-matters-so-much">Why Frequency of Use Matters So Much</h2>

<p>The more we interact with a web app or website, the more important the overall user experience becomes. Users develop <strong>deeper connections</strong> with digital products. They also form <strong>more complex mental models of products</strong> they use often. This changes how they see the app in two fundamental ways.</p>

<h3 id="friction-becomes-significantly-more-irritating">Friction Becomes Significantly More Irritating</h3>

<p>First, friction points become increasingly annoying. Users interact with a digital product many times per day. Any small problem in the interface compounds quickly.</p>

<p>When you encounter a clunky UI or confusing workflow on a website you only visit once in a while, it’s frustrating but easy to overlook. But, when that same friction occurs in an app you use multiple times per day, it becomes a major source of irritation.</p>

<h3 id="change-undermines-our-procedural-knowledge">Change Undermines Our Procedural Knowledge</h3>

<p>Second, the more we use an app, the more familiar we become with it and how it works. We end up using the app automatically, without even thinking, much like when you’ve been driving a car for years, you don’t think about the process. This is known as <a href="https://en.wikipedia.org/wiki/Procedural_knowledge">procedural knowledge</a>.</p>

<p>This is great news for digital product designers, as it means we can create interfaces that become <strong>second nature</strong> to our users. But, if we break their mental models or introduce unexpected changes, we risk causing frustration and disruption.</p>

<p>So, knowing these two things, how does this affect our approach to digital product design? Well, let’s start by considering the problem of friction.</p>

<h2 id="fixing-friction-points">Fixing Friction Points</h2>

<p>As digital product designers, we need to become obsessed with removing friction from the user experience. Failure to do so will alienate users over time and ultimately lead to churn.</p>

<p>To mitigate friction, we need to constantly seek out friction points. We need to diagnose the exact problem and then test any solution to ensure it does, in fact, make things better.</p>

<p>So, how exactly do we find friction points?</p>

<h3 id="finding-friction">Finding Friction</h3>

<p>The most obvious way is to <strong>listen to customers</strong>. User feedback is crucial in identifying friction points in the user experience. However, we can’t simply rely on that. Analytics can be your friend, too.</p>














<figure class="
  
    break-out article__image
  
  
  ">
  
    <a href="https://files.smashing.media/articles/big-difference-between-digital-product-and-web-design/1-microsoft-clarity-insights.png">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="486"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/big-difference-between-digital-product-and-web-design/1-microsoft-clarity-insights.png 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://files.smashing.media/articles/big-difference-between-digital-product-and-web-design/1-microsoft-clarity-insights.png 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://files.smashing.media/articles/big-difference-between-digital-product-and-web-design/1-microsoft-clarity-insights.png 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://files.smashing.media/articles/big-difference-between-digital-product-and-web-design/1-microsoft-clarity-insights.png 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://files.smashing.media/articles/big-difference-between-digital-product-and-web-design/1-microsoft-clarity-insights.png 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/big-difference-between-digital-product-and-web-design/1-microsoft-clarity-insights.png"
			
			sizes="100vw"
			alt="Screenshot from Microsoft Clarity with essential insights"
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      Microsoft Clarity offers essential insights to pinpoint issues on your app. (<a href='https://files.smashing.media/articles/big-difference-between-digital-product-and-web-design/1-microsoft-clarity-insights.png'>Large preview</a>)
    </figcaption>
  
</figure>

<p>Microsoft Clarity offers essential insights to pinpoint issues on your app.</p>

<p>I would highly recommend using a tool like <a href="https://clarity.microsoft.com/projects">Microsoft Clarity</a>. It gives detailed insights into user behavior. They help find points of friction. These include the following:</p>

<ul>
<li><strong>Rage clicks</strong>: Where individuals continuously click on something due to frustration.</li>
<li><strong>Dead clicks</strong>: Where people click on something that is not clickable.</li>
<li><strong>Excessive scrolling</strong>: Where users scroll up and down looking for something.</li>
<li><strong>Quick backs</strong>: Where a person accidentally lands on a screen and promptly navigates back to the previous one.</li>
<li><strong>Error messages</strong>: Where the user is triggering an error in the system.</li>
</ul>

<p>These will help you identify potential friction points that you can then investigate further.</p>

<div class="partners__lead-place"></div>

<h3 id="diagnosing-friction">Diagnosing Friction</h3>

<p>Once you know where things are going wrong, you can use heat maps and session recordings in Clarity. They will help you understand the problem. Why are people excessively scrolling or rage-clicking, for example?</p>














<figure class="
  
    break-out article__image
  
  
  ">
  
    <a href="https://files.smashing.media/articles/big-difference-between-digital-product-and-web-design/2-clarity-session-recordings.png">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="486"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/big-difference-between-digital-product-and-web-design/2-clarity-session-recordings.png 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://files.smashing.media/articles/big-difference-between-digital-product-and-web-design/2-clarity-session-recordings.png 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://files.smashing.media/articles/big-difference-between-digital-product-and-web-design/2-clarity-session-recordings.png 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://files.smashing.media/articles/big-difference-between-digital-product-and-web-design/2-clarity-session-recordings.png 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://files.smashing.media/articles/big-difference-between-digital-product-and-web-design/2-clarity-session-recordings.png 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/big-difference-between-digital-product-and-web-design/2-clarity-session-recordings.png"
			
			sizes="100vw"
			alt="A screenshot of session recordings in Clarity"
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      Session recordings are valuable for pinpointing particular problems in the interface. (<a href='https://files.smashing.media/articles/big-difference-between-digital-product-and-web-design/2-clarity-session-recordings.png'>Large preview</a>)
    </figcaption>
  
</figure>

<p>Session recordings are valuable for pinpointing particular problems in the interface.</p>

<p>If the heat maps or session recordings don’t make things clear, that is where you would need to consider <strong>usability testing</strong>.</p>

<p>Once you understand the problem, you can then begin exploring solutions and testing them rigorously to ensure they effectively reduce friction.</p>

<h3 id="testing-your-friction-busting-solutions">Testing Your Friction Busting Solutions</h3>

<p>How you test your solution to the point of friction will depend on the size and complexity of the changes you need to make.</p>

<p>For small changes, such as tweaking the UI or changing some text, A/B testing is often the best approach. You show the new solution to a subset of your users and measure the impact on those indicators of frustration.</p>

<p>But A/B testing isn’t always the right approach. If your app has lower levels of traffic, getting results from a statistically significant A/B test can be time-consuming.</p>

<p>Also, when your solution involves big changes, like adding new features or redesigning many screens, A/B testing can be expensive. That is because you need to first fully develop the solution before you can test it, meaning that it can prove costly if that solution turns out not to work.</p>

<p>Your best approach in such situations is to <strong>create a prototype for remote testing</strong>.</p>

<p>Initially, I usually conduct unfacilitated testing with a tool such as <a href="https://maze.co/">Maze</a>. Unfacilitated testing is easy to set up. It requires minimal time investment, and Maze offers analytics, so you don’t necessarily need to watch every session back.</p>














<figure class="
  
    break-out article__image
  
  
  ">
  
    <a href="https://files.smashing.media/articles/big-difference-between-digital-product-and-web-design/3-maze-remote-testing.png">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="486"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/big-difference-between-digital-product-and-web-design/3-maze-remote-testing.png 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://files.smashing.media/articles/big-difference-between-digital-product-and-web-design/3-maze-remote-testing.png 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://files.smashing.media/articles/big-difference-between-digital-product-and-web-design/3-maze-remote-testing.png 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://files.smashing.media/articles/big-difference-between-digital-product-and-web-design/3-maze-remote-testing.png 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://files.smashing.media/articles/big-difference-between-digital-product-and-web-design/3-maze-remote-testing.png 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/big-difference-between-digital-product-and-web-design/3-maze-remote-testing.png"
			
			sizes="100vw"
			alt="Screenshot of Maze homepage where it says that User insights available at the speed of product development"
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      Maze serves as a valuable resource for conducting remote testing, offering both test data and recordings for each test. (<a href='https://files.smashing.media/articles/big-difference-between-digital-product-and-web-design/3-maze-remote-testing.png'>Large preview</a>)
    </figcaption>
  
</figure>

<p>Maze serves as a valuable resource for conducting remote testing, offering both test data and recordings for each test.</p>

<p>If testing uncovers issues you can’t fix, then try <strong>facilitated testing</strong>. Facilitated testing enables you to delve into any arising issues by asking questions.</p>

<p>Once you have a solution that works, it’s time to roll that feature out. But you need to be careful at this point because of the procedural knowledge I mentioned earlier.</p>

<div class="partners__lead-place"></div>

<h2 id="dealing-with-the-dangers-of-procedural-knowledge">Dealing With the Dangers of Procedural Knowledge</h2>

<p>Introducing fixes to a user interface has a good chance of breaking a user’s procedural knowledge. Interface elements are often moved and so are no longer where users expect to find them, or they look different, and so users miss them.</p>

<p>This can upset many existing customers. That can panic stakeholders and lead to rash decisions.</p>

<p>To some extent, you need to accept that this is inevitable and prepare stakeholders for this eventuality. Users will normally adapt in a couple of weeks of regular use, and so there is no immediate need to panic.</p>

<p>That said, there are things you can do to mitigate the reaction.</p>

<ol>
<li>To start with, you can <strong>let people know that change is coming</strong>. This allows people to mentally adapt to the change before it occurs.</li>
<li>Secondly, if the change is significant, you may wish to <strong>give people the ability to opt out of it</strong>, at least in the short term. That is why some apps roll out features in beta and give users the option to opt in or out. This provides a sense of control that reduces people’s reactions.</li>
<li>Finally, you can also <strong>provide guidance within the user interface itself</strong>. Tooltips and overlays can show users where features have been moved so new interface elements can be highlighted.</li>
</ol>














<figure class="
  
    break-out article__image
  
  
  ">
  
    <a href="https://files.smashing.media/articles/big-difference-between-digital-product-and-web-design/4-slack-tooltips.png">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="498"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/big-difference-between-digital-product-and-web-design/4-slack-tooltips.png 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://files.smashing.media/articles/big-difference-between-digital-product-and-web-design/4-slack-tooltips.png 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://files.smashing.media/articles/big-difference-between-digital-product-and-web-design/4-slack-tooltips.png 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://files.smashing.media/articles/big-difference-between-digital-product-and-web-design/4-slack-tooltips.png 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://files.smashing.media/articles/big-difference-between-digital-product-and-web-design/4-slack-tooltips.png 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/big-difference-between-digital-product-and-web-design/4-slack-tooltips.png"
			
			sizes="100vw"
			alt="Screenshot from Slack onboarding with an open tooltip"
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      Slack use tooltips to explain how their interface works. (<a href='https://files.smashing.media/articles/big-difference-between-digital-product-and-web-design/4-slack-tooltips.png'>Large preview</a>)
    </figcaption>
  
</figure>

<p>Slack use tooltips to explain how their interface works.</p>

<p>The key is to strike a balance. You must add needed improvements while causing minimal disruption to users’ workflows. You will also need to carefully monitor adoption and adapt accordingly.</p>

<h2 id="change-the-way-we-work">Change The Way We Work</h2>

<p>That constant monitoring and adaptation lies at the heart of digital product design. You cannot rely solely on the initial solution but must be prepared to continuously refine and iterate as user behavior and needs evolve.</p>

<div class="signature">
  <img src="https://www.smashingmagazine.com/images/logo/logo--red.png" alt="Smashing Editorial" width="35" height="46" loading="lazy" decoding="async" />
  <span>(yk)</span>
</div>


              </article>
            </body>
          </html>
        ]]></content:encoded></item><item><author>Preethi Sam</author><title>The Things Users Would Appreciate In Mobile Apps</title><link>https://www.smashingmagazine.com/2024/04/things-users-would-appreciate-mobile-apps/</link><pubDate>Fri, 05 Apr 2024 12:00:00 +0000</pubDate><guid>https://www.smashingmagazine.com/2024/04/things-users-would-appreciate-mobile-apps/</guid><description>What can we do to make a mobile app better? What subsidiary features are worth providing for our users? I have some ideas. You might, too. So, let’s compare our notes. Without any prescriptions attached, here are seven features I believe can palpably improve a user’s experience with a mobile app.</description><content:encoded><![CDATA[
          <html>
            <head>
              <meta charset="utf-8">
              <link rel="canonical" href="https://www.smashingmagazine.com/2024/04/things-users-would-appreciate-mobile-apps/" />
              <title>The Things Users Would Appreciate In Mobile Apps</title>
            </head>
            <body>
              <article>
                <header>
                  <h1>The Things Users Would Appreciate In Mobile Apps</h1>
                  
                    
                    <address>Preethi Sam</address>
                  
                  <time datetime="2024-04-05T12:00:00&#43;00:00" class="op-published">2024-04-05T12:00:00+00:00</time>
                  <time datetime="2024-04-05T12:00:00&#43;00:00" class="op-modified">2026-02-09T03:03:08+00:00</time>
                </header>
                
                

<p>Remember the “mobile first” mantra? The idea was born out of the early days of responsive web design. Rather than design and build for the “desktop” up front, a “mobile-first” approach treats small screens as first-class citizens. There’s a reduced amount of real estate, certainly less than the number of pixels we get from the viewport of Firefox expanded fullscreen on a 27-inch studio monitor.</p>

<p>The constraint is a challenge to make sure that <strong>whatever is sent to mobile devices is directly relevant to what users should need</strong>; nothing more, nothing less. Anything more additive to the UI can be reserved for wider screens where we’re allowed to stretch out and make more liberal use of space.</p>

<div class="break-out">
<pre><code class="language-css">/&#42; A sample CSS snippet for a responsive main content &#42;/

/&#42; Base Styles &#42;/
.main-content {
  container: main / inline-size;
}

.gallery {
  display: grid;
  gap: 1rem;
}

/&#42; Container is wider than or equal to 700px &#42;/
@container main (width &gt;= 700px) {
  .gallery {
    grid-template-columns: 1fr 1fr;
  }
}

/&#42; Container is wider than or equal to 1200px &#42;/
@container main (width &gt;= 1200px) {
  .gallery {
    grid-template-columns: repeat(4, 1fr);
  }
}
</code></pre>
</div>

<p>Now, I’m not here to admonish anyone who isn’t using a mobile-first approach when designing and building web interfaces. If anything, the last five or so years <a href="https://www.youtube.com/watch?v=aHUtMbJw8iA">have shown us just how unpredictable of a medium the web is</a>, including what sort of device is displaying our work all the way down to a user’s individual preferences.</p>

<p>Even so, there are things that any designer and developer should consider when working with mobile interfaces. Now that we’re nearly 15 years into responsive web design as a practice and craft, users are beginning to form opinions about what to expect when trying to do certain things in a mobile interface. I know that I have expectations. I am sure you have them as well.</p>

<p>I’ve been keeping track of the mobile interfaces I use and have started finding common patterns that <em>feel</em> mobile in nature but are more desktop-focused in practice. While keeping track of the mobile interfaces I use, I’ve found common patterns that are unsuitable for small screens and thus could use some updates. Here are some reworked features that are worth considering for mobile interfaces.</p>

<div data-audience="non-subscriber" data-remove="true" class="feature-panel-container">

<aside class="feature-panel" style="">
<div class="feature-panel-left-col">

<div class="feature-panel-description"><p><p>Meet <a data-instant href="/the-smashing-newsletter/"><strong>Smashing Email Newsletter</strong></a> with useful tips on front-end, design &amp; UX. Subscribe and <strong>get “Smart Interface Design Checklists”</strong> &mdash; a <strong>free PDF deck</strong> with 150+ questions to ask yourself when designing and building almost <em>anything</em>.</p><div><section class="nlbf"><form action="//smashingmagazine.us1.list-manage.com/subscribe/post?u=16b832d9ad4b28edf261f34df&amp;id=a1666656e0" method="post"><div class="nlbwrapper"><label for="mce-EMAIL-hp" class="sr-only">Your (smashing) email</label><div class="nlbgroup"><input type="email" name="EMAIL" class="nlbf-email" id="mce-EMAIL-hp" placeholder="Your email">
<input type="submit" value="Meow!" name="subscribe" class="nlbf-button"></div></div></form><style>.c-garfield-the-cat .nlbwrapper{margin-bottom: 0;}.nlbf{display:flex;padding-bottom:.25em;padding-top:.5em;text-align:center;letter-spacing:-.5px;color:#fff;font-size:1.15em}.nlbgroup:hover{box-shadow:0 1px 7px -5px rgba(50,50,93,.25),0 3px 16px -8px rgba(0,0,0,.3),0 -6px 16px -6px rgba(0,0,0,.025)}.nlbf .nlbf-button,.nlbf .nlbf-email{flex-grow:1;flex-shrink:0;width:auto;margin:0;padding:.75em 1em;border:0;border-radius:11px;background:#fff;font-size:1em;box-shadow:none}.promo-box .nlbf-button:focus,.promo-box input.nlbf-email:active,.promo-box input.nlbf-email:focus{box-shadow:none}.nlbf-button:-ms-input-placeholder,.nlbf-email:-ms-input-placeholder{color:#777;font-style:italic}.nlbf-button::-webkit-input-placeholder,.nlbf-email::-webkit-input-placeholder{color:#777;font-style:italic}.nlbf-button:-ms-input-placeholder,.nlbf-button::-moz-placeholder,.nlbf-button::placeholder,.nlbf-email:-ms-input-placeholder,.nlbf-email::-moz-placeholder,.nlbf-email::placeholder{color:#777;font-style:italic}.nlbf .nlbf-button{transition:all .2s ease-in-out;color:#fff;background-color:#0168b8;font-weight:700;box-shadow:0 1px 1px rgba(0,0,0,.3);width:100%;border:0;border-left:1px solid #ddd;flex:2;border-top-left-radius:0;border-bottom-left-radius:0}.nlbf .nlbf-email{border-top-right-radius:0;border-bottom-right-radius:0;width:100%;flex:4;min-width:150px}@media all and (max-width:650px){.nlbf .nlbgroup{flex-wrap:wrap;box-shadow:none}.nlbf .nlbf-button,.nlbf .nlbf-email{border-radius:11px;border-left:none}.nlbf .nlbf-email{box-shadow:0 13px 27px -5px rgba(50,50,93,.25),0 8px 16px -8px rgba(0,0,0,.3),0 -6px 16px -6px rgba(0,0,0,.025);min-width:100%}.nlbf .nlbf-button{margin-top:1em;box-shadow:0 1px 1px rgba(0,0,0,.5)}}.nlbf .nlbf-button:active,.nlbf .nlbf-button:focus,.nlbf .nlbf-button:hover{cursor:pointer;color:#fff;background-color:#0168b8;border-color:#dadada;box-shadow:0 1px 1px rgba(0,0,0,.3)}.nlbf .nlbf-button:active,.nlbf .nlbf-button:focus{outline:0!important;text-shadow:1px 1px 1px rgba(0,0,0,.3);box-shadow:inset 0 3px 3px rgba(0,0,0,.3)}.nlbgroup{display:flex;box-shadow:0 13px 27px -5px rgba(50,50,93,.25),0 8px 16px -8px rgba(0,0,0,.3),0 -6px 16px -6px rgba(0,0,0,.025);border-radius:11px;transition:box-shadow .2s ease-in-out}.nlbwrapper{display:flex;flex-direction:column;justify-content:center}.nlbf form{width:100%}.nlbf .nlbgroup{margin:0}.nlbcaption{font-size:.9em;line-height:1.5em;color:#fff;border-radius:11px;padding:.5em 1em;display:inline-block;background-color:#0067b859;text-shadow:1px 1px 1px rgba(0,0,0,.3)}.wf-loaded-stage2 .nlbf .nlbf-button{font-family:Mija}.mts{margin-top: 5px !important;}.mbn{margin-bottom: 0 !important;}</style></section><p class="mts mbn"><small class="promo-box__footer mtm block grey"><em>Once a week. Useful tips on <a href="https://www.smashingmagazine.com/the-smashing-newsletter/">front-end &amp; UX</a>. Trusted by 207.000 friendly folks.</em></small></p></div></p>
</div>
</div>
<div class="feature-panel-right-col">
<div class="feature-panel-image">
<img
    loading="lazy"
    decoding="async"
    class="feature-panel-image-img"
    src="/images/smashing-cat/cat-firechat.svg"
    alt="Feature Panel"
    width="310"
    height="400"
/>

</div>

<p></div>
</aside>
</div></p>

<h2 id="economically-sized-forms">Economically-Sized Forms</h2>

<p>There are myriad problems that come up while completing mobile forms &mdash; e.g., small tap targets, lack of offline support, and incorrect virtual keyboards, to name a few &mdash; but it’s how a mobile form interacts with the device’s virtual keyboard that draws my ire the most.</p>

<p>The keyboard obscures the form more times than not. You tap a form field, and the keyboard slides up, and &mdash; <em>poof!</em> &mdash; it’s as though half the form is chopped out of view. If you’re thinking, <em>Meh, all that means is a little extra scrolling</em>, consider that scrolling isn’t always a choice. If the page is a short one with only the form on it, it’s highly possible what you see on the screen is what you get.</p>














<figure class="
  
    break-out article__image
  
  
  ">
  
    <a href="https://files.smashing.media/articles/things-users-would-appreciate-mobile-apps/1-mobile-form-iphone-text-field.png">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="448"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/things-users-would-appreciate-mobile-apps/1-mobile-form-iphone-text-field.png 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://files.smashing.media/articles/things-users-would-appreciate-mobile-apps/1-mobile-form-iphone-text-field.png 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://files.smashing.media/articles/things-users-would-appreciate-mobile-apps/1-mobile-form-iphone-text-field.png 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://files.smashing.media/articles/things-users-would-appreciate-mobile-apps/1-mobile-form-iphone-text-field.png 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://files.smashing.media/articles/things-users-would-appreciate-mobile-apps/1-mobile-form-iphone-text-field.png 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/things-users-would-appreciate-mobile-apps/1-mobile-form-iphone-text-field.png"
			
			sizes="100vw"
			alt="Mobile form on an iPhone with a text field in focus and the virtual keyboard obscuring the next form fields."
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      Tap a field, and things get both zoomed in and chopped off. (<a href='https://files.smashing.media/articles/things-users-would-appreciate-mobile-apps/1-mobile-form-iphone-text-field.png'>Large preview</a>)
    </figcaption>
  
</figure>

<p>A more delightful user experience for mobile forms is to take a “less is more” approach. <strong>Display one form field at a time for an economical layout</strong> that allows the field and virtual keyboard to co-exist in harmony without any visual obstructions. Focusing the design on the top half of the viewport with room for navigation controls and microcopy creates a seamless flow from one form input to the next.</p>














<figure class="
  
    break-out article__image
  
  
  ">
  
    <a href="https://files.smashing.media/articles/things-users-would-appreciate-mobile-apps/2-whole-page-entering-email-details.jpg">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="450"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/things-users-would-appreciate-mobile-apps/2-whole-page-entering-email-details.jpg 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://files.smashing.media/articles/things-users-would-appreciate-mobile-apps/2-whole-page-entering-email-details.jpg 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://files.smashing.media/articles/things-users-would-appreciate-mobile-apps/2-whole-page-entering-email-details.jpg 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://files.smashing.media/articles/things-users-would-appreciate-mobile-apps/2-whole-page-entering-email-details.jpg 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://files.smashing.media/articles/things-users-would-appreciate-mobile-apps/2-whole-page-entering-email-details.jpg 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/things-users-would-appreciate-mobile-apps/2-whole-page-entering-email-details.jpg"
			
			sizes="100vw"
			alt="A whole page for entering email details alone."
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      A whole page for entering email details alone. (<a href='https://files.smashing.media/articles/things-users-would-appreciate-mobile-apps/2-whole-page-entering-email-details.jpg'>Large preview</a>)
    </figcaption>
  
</figure>

<h2 id="more-room-for-searching">More Room For Searching</h2>

<p>Search presents a dichotomy: It is incredibly useful, yet is treated as an afterthought, likely tucked in the upper-right corner of a global header, out of view and often further buried by hiding the form input until the user clicks some icon, typically a magnifying glass. (It’s ironic we minimize the UI with a magnifying glass, isn’t it?)</p>














<figure class="
  
    break-out article__image
  
  
  ">
  
    <a href="https://files.smashing.media/articles/things-users-would-appreciate-mobile-apps/3-mobile-header-site.jpg">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="284"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/things-users-would-appreciate-mobile-apps/3-mobile-header-site.jpg 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://files.smashing.media/articles/things-users-would-appreciate-mobile-apps/3-mobile-header-site.jpg 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://files.smashing.media/articles/things-users-would-appreciate-mobile-apps/3-mobile-header-site.jpg 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://files.smashing.media/articles/things-users-would-appreciate-mobile-apps/3-mobile-header-site.jpg 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://files.smashing.media/articles/things-users-would-appreciate-mobile-apps/3-mobile-header-site.jpg 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/things-users-would-appreciate-mobile-apps/3-mobile-header-site.jpg"
			
			sizes="100vw"
			alt="Mobile header of a site with a hamburger menu labeled Menu on the left and an icon that combines a magnifying glass with a hamburger menu labeled Resources."
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      In this example, combining iconography convolutes the meaning of what the component is and does. The label also fails to accurately identify the feature. (<a href='https://files.smashing.media/articles/things-users-would-appreciate-mobile-apps/3-mobile-header-site.jpg'>Large preview</a>)
    </figcaption>
  
</figure>

<p>The problem with burying search in a mobile context is two-fold:</p>

<ol>
<li>The feature is less apparent, and</li>
<li>The space to enter a search query, add any filters, and display results is minimized.</li>
</ol>

<p>That may very well be acceptable if the site has only a handful of pages to navigate. However, if the search allows a user to surface relevant content and freely move about an app, then you’re going to want to give it higher prominence.</p>

<blockquote class="pull-quote">
  <p>
    <a class="pull-quote__link" aria-label="Share on Twitter" href="https://twitter.com/share?text=%0aAny%20service-oriented%20mobile%20app%20can%20improve%20user%20experience%20by%20providing%20a%20search%20box%20that%e2%80%99s%20immediately%20recognizable%20and%20with%20enough%20breathing%20room%20for%20tapping%20a%20virtual%20keyboard.%0a&url=https://smashingmagazine.com%2f2024%2f04%2fthings-users-would-appreciate-mobile-apps%2f">
      
Any service-oriented mobile app can improve user experience by providing a search box that’s immediately recognizable and with enough breathing room for tapping a virtual keyboard.

    </a>
  </p>
  <div class="pull-quote__quotation">
    <div class="pull-quote__bg">
      <span class="pull-quote__symbol">“</span></div>
  </div>
</blockquote>














<figure class="
  
    break-out article__image
  
  
  ">
  
    <a href="https://files.smashing.media/articles/things-users-would-appreciate-mobile-apps/4-smashing-magazine-homepage-mobile.jpg">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="458"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/things-users-would-appreciate-mobile-apps/4-smashing-magazine-homepage-mobile.jpg 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://files.smashing.media/articles/things-users-would-appreciate-mobile-apps/4-smashing-magazine-homepage-mobile.jpg 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://files.smashing.media/articles/things-users-would-appreciate-mobile-apps/4-smashing-magazine-homepage-mobile.jpg 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://files.smashing.media/articles/things-users-would-appreciate-mobile-apps/4-smashing-magazine-homepage-mobile.jpg 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://files.smashing.media/articles/things-users-would-appreciate-mobile-apps/4-smashing-magazine-homepage-mobile.jpg 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/things-users-would-appreciate-mobile-apps/4-smashing-magazine-homepage-mobile.jpg"
			
			sizes="100vw"
			alt="Smashing Magazine homepage in mobile view. The left side captures the site’s search form in its initial state. The right side shows the search form in its focused state, revealing the virtual keyboard."
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      The Smashing Magazine homepage displayed at a mobile breakpoint. (<a href='https://files.smashing.media/articles/things-users-would-appreciate-mobile-apps/4-smashing-magazine-homepage-mobile.jpg'>Large preview</a>)
    </figcaption>
  
</figure>

<p>Some sites even have search forms that occupy the full screen without surrounding components, offering a “distraction-free” interface for typing queries.</p>














<figure class="
  
    break-out article__image
  
  
  ">
  
    <a href="https://files.smashing.media/articles/things-users-would-appreciate-mobile-apps/5-mobile-header-site-search-feature-expanded.jpg">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="284"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/things-users-would-appreciate-mobile-apps/5-mobile-header-site-search-feature-expanded.jpg 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://files.smashing.media/articles/things-users-would-appreciate-mobile-apps/5-mobile-header-site-search-feature-expanded.jpg 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://files.smashing.media/articles/things-users-would-appreciate-mobile-apps/5-mobile-header-site-search-feature-expanded.jpg 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://files.smashing.media/articles/things-users-would-appreciate-mobile-apps/5-mobile-header-site-search-feature-expanded.jpg 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://files.smashing.media/articles/things-users-would-appreciate-mobile-apps/5-mobile-header-site-search-feature-expanded.jpg 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/things-users-would-appreciate-mobile-apps/5-mobile-header-site-search-feature-expanded.jpg"
			
			sizes="100vw"
			alt="Mobile header of a site with the search feature expanded to a fullscreen view, allowing the search box to use more space without clutter."
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      Even though the search feature in the first example was convoluted in its initial state, it is allowed to go fullscreen when it is opened, providing users with ample space for completing a search query. (<a href='https://files.smashing.media/articles/things-users-would-appreciate-mobile-apps/5-mobile-header-site-search-feature-expanded.jpg'>Large preview</a>)
    </figcaption>
  
</figure>

<div class="partners__lead-place"></div>

<h2 id="no-drop-downs-if-possible">No Drop-Downs, If Possible</h2>

<p>The <code>&lt;select&gt;</code> element can negatively impact mobile UX in two glaring ways:</p>

<ol>
<li>An expanding <code>&lt;select&gt;</code> with so many options that it produces excessive scrolling.</li>
<li>Scrolling excessively, particularly on long pages, produces an awkward situation where the page continues scrolling after already scrolling through the list of <code>&lt;option&gt;</code>s.</li>
</ol>

<p>I’ll come across these situations, stare at my phone, and ask:</p>

<blockquote>Do I really need a <code>&lt;select&gt;</code> populated with one hundred years to submit my birthdate?</blockquote>

<p>Seems like an awful lot of trouble to sort through one hundred years compared to manually typing in a four-digit value myself.</p>














<figure class="
  
    break-out article__image
  
  
  ">
  
    <a href="https://files.smashing.media/articles/things-users-would-appreciate-mobile-apps/6-mockup-mobile-form.jpg">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="450"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/things-users-would-appreciate-mobile-apps/6-mockup-mobile-form.jpg 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://files.smashing.media/articles/things-users-would-appreciate-mobile-apps/6-mockup-mobile-form.jpg 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://files.smashing.media/articles/things-users-would-appreciate-mobile-apps/6-mockup-mobile-form.jpg 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://files.smashing.media/articles/things-users-would-appreciate-mobile-apps/6-mockup-mobile-form.jpg 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://files.smashing.media/articles/things-users-would-appreciate-mobile-apps/6-mockup-mobile-form.jpg 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/things-users-would-appreciate-mobile-apps/6-mockup-mobile-form.jpg"
			
			sizes="100vw"
			alt="Mockup of a mobile form with name, date, and email fields. The date field is expanded with options running vertically off the screen"
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      A <code>&lt;select&gt;</code> menu that contains a large list of options can lead to awkward scrolling situations. (<a href='https://files.smashing.media/articles/things-users-would-appreciate-mobile-apps/6-mockup-mobile-form.jpg'>Large preview</a>)
    </figcaption>
  
</figure>

<p>A better pattern for making list selections, if absolutely needed, in a space-constrained mobile layout could be something closer to the ones used by iOS and Android devices by default. Sure, there’s scrolling involved, but within a confined space that leaves the rest of the UI alone.</p>














<figure class="
  
    break-out article__image
  
  
  ">
  
    <a href="https://files.smashing.media/articles/things-users-would-appreciate-mobile-apps/7-datepicker.jpg">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="450"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/things-users-would-appreciate-mobile-apps/7-datepicker.jpg 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://files.smashing.media/articles/things-users-would-appreciate-mobile-apps/7-datepicker.jpg 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://files.smashing.media/articles/things-users-would-appreciate-mobile-apps/7-datepicker.jpg 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://files.smashing.media/articles/things-users-would-appreciate-mobile-apps/7-datepicker.jpg 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://files.smashing.media/articles/things-users-would-appreciate-mobile-apps/7-datepicker.jpg 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/things-users-would-appreciate-mobile-apps/7-datepicker.jpg"
			
			sizes="100vw"
			alt="Datepicker following a similar pattern to iOS with scrolling fields instead of a dropdown."
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      (<a href='https://files.smashing.media/articles/things-users-would-appreciate-mobile-apps/7-datepicker.jpg'>Large preview</a>)
    </figcaption>
  
</figure>

<h2 id="a-restrained-overview">A Restrained Overview</h2>

<p>A dashboard overview in a mobile app is something that displays key data to users right off the bat, surfacing common information that the user would otherwise have to seek out. There are great use cases for dashboards, many of which you likely interact with daily, like your banking app, a project management system, or even a page showing today’s baseball scores. The WordPress dashboard is a perfect example, showing site activity, security checks, traffic, and more.</p>














<figure class="
  
    break-out article__image
  
  
  ">
  
    <a href="https://files.smashing.media/articles/things-users-would-appreciate-mobile-apps/8-wordpress-administrative-dashboard.png">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="551"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/things-users-would-appreciate-mobile-apps/8-wordpress-administrative-dashboard.png 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://files.smashing.media/articles/things-users-would-appreciate-mobile-apps/8-wordpress-administrative-dashboard.png 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://files.smashing.media/articles/things-users-would-appreciate-mobile-apps/8-wordpress-administrative-dashboard.png 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://files.smashing.media/articles/things-users-would-appreciate-mobile-apps/8-wordpress-administrative-dashboard.png 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://files.smashing.media/articles/things-users-would-appreciate-mobile-apps/8-wordpress-administrative-dashboard.png 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/things-users-would-appreciate-mobile-apps/8-wordpress-administrative-dashboard.png"
			
			sizes="100vw"
			alt="WordPress administrative dashboard with two columns of widgets displaying site activity."
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      The WordPress administrative dashboard displays a summary of various site activities at a glance. (<a href='https://files.smashing.media/articles/things-users-would-appreciate-mobile-apps/8-wordpress-administrative-dashboard.png'>Large preview</a>)
    </figcaption>
  
</figure>

<p>Dashboards are just fine. But the sensitive information they might contain is what worries me when I’m viewing a dashboard on a mobile device.</p>

<p>Let’s say I’m having dinner with friends at a restaurant. We split the check. To pay my fair share, I take out my phone and log into my banking app, and… the home screen displays my bank balance in big, bold numbers to the friends sitting right next to me, one of whom is the gossipiest of the bunch. There goes a bit of my pride.</p>

<p>That’s an extreme illustration because not all apps convey that level of sensitive information. But many do, and the care we put into protecting a user’s information from peeping eyeballs is only becoming more important as entire industries, like health care and education, lean more heavily into online experiences.</p>

<p><strong>My advice</strong>: <em>Hide sensitive information until prompted by the user to display it.</em></p>

<blockquote class="pull-quote">
  <p>
    <a class="pull-quote__link" aria-label="Share on Twitter" href="https://twitter.com/share?text=%0aIt%e2%80%99s%20generally%20a%20good%20practice%20to%20obscure%20sensitive%20information%20and%20have%20a%20liberal%20definition%20of%20what%20constitutes%20sensitive%20information.%0a&url=https://smashingmagazine.com%2f2024%2f04%2fthings-users-would-appreciate-mobile-apps%2f">
      
It’s generally a good practice to obscure sensitive information and have a liberal definition of what constitutes sensitive information.

    </a>
  </p>
  <div class="pull-quote__quotation">
    <div class="pull-quote__bg">
      <span class="pull-quote__symbol">“</span></div>
  </div>
</blockquote>














<figure class="
  
    break-out article__image
  
  
  ">
  
    <a href="https://files.smashing.media/articles/things-users-would-appreciate-mobile-apps/9-bank-app-mockup.jpg">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="450"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/things-users-would-appreciate-mobile-apps/9-bank-app-mockup.jpg 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://files.smashing.media/articles/things-users-would-appreciate-mobile-apps/9-bank-app-mockup.jpg 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://files.smashing.media/articles/things-users-would-appreciate-mobile-apps/9-bank-app-mockup.jpg 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://files.smashing.media/articles/things-users-would-appreciate-mobile-apps/9-bank-app-mockup.jpg 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://files.smashing.media/articles/things-users-would-appreciate-mobile-apps/9-bank-app-mockup.jpg 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/things-users-would-appreciate-mobile-apps/9-bank-app-mockup.jpg"
			
			sizes="100vw"
			alt="Bank app mockup showing an account overview with a bank balance hidden behind a ‘Tap here to view’ prompt."
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      Hiding sensitive information behind a user prompt is an effective approach to protect it from onlookers while continuing to provide convenient access. (<a href='https://files.smashing.media/articles/things-users-would-appreciate-mobile-apps/9-bank-app-mockup.jpg'>Large preview</a>)
    </figcaption>
  
</figure>

<h2 id="shortcuts-provided-in-the-login-flow">Shortcuts Provided In The Login Flow</h2>

<p>There’s a natural order to things, particularly when logging into a web app. We log in, see a welcome message, and are taken to a dashboard before we tap on some item that triggers some sort of action to perform. In other words, it takes a few steps and walking through a couple of doors to get to accomplish what we came to do.</p>

<p>What if we put actions earlier in the login flow? As in, they are displayed right along with the login form. This is what we call a <strong>shortcut</strong>.</p>

<p>Let’s take the same restaurant example from earlier, where I’m back at dinner and ready to pay. This time, however, I will open a different bank app. This one has shortcuts next to the login form, one of which is a “Scan to Pay” option. I tap it, log in, and am taken straight to the scanning feature that opens the camera on my device, completely bypassing any superfluous welcome messaging or dashboard. This spares the user both time and effort (and prevents sensitive information from leaking into view to boot).</p>














<figure class="
  
    break-out article__image
  
  
  ">
  
    <a href="https://files.smashing.media/articles/things-users-would-appreciate-mobile-apps/10-mobile-ux-bank-mockup.jpg">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="450"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/things-users-would-appreciate-mobile-apps/10-mobile-ux-bank-mockup.jpg 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://files.smashing.media/articles/things-users-would-appreciate-mobile-apps/10-mobile-ux-bank-mockup.jpg 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://files.smashing.media/articles/things-users-would-appreciate-mobile-apps/10-mobile-ux-bank-mockup.jpg 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://files.smashing.media/articles/things-users-would-appreciate-mobile-apps/10-mobile-ux-bank-mockup.jpg 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://files.smashing.media/articles/things-users-would-appreciate-mobile-apps/10-mobile-ux-bank-mockup.jpg 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/things-users-would-appreciate-mobile-apps/10-mobile-ux-bank-mockup.jpg"
			
			sizes="100vw"
			alt="Bank screen mockup with a row of shortcut actions represented by icons below a login form."
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      Signing in can take a more personalized path by offering shortcuts. (<a href='https://files.smashing.media/articles/things-users-would-appreciate-mobile-apps/10-mobile-ux-bank-mockup.jpg'>Large preview</a>)
    </figcaption>
  
</figure>

<p>Mobile operating systems also provide options for shortcuts when long-pressing an app’s icon on the home screen, which also can be used to an app’s advantage.</p>














<figure class="
  
    break-out article__image
  
  
  ">
  
    <a href="https://files.smashing.media/articles/things-users-would-appreciate-mobile-apps/11-whatsapp-icon-open-contextual-menu.png">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="450"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/things-users-would-appreciate-mobile-apps/11-whatsapp-icon-open-contextual-menu.png 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://files.smashing.media/articles/things-users-would-appreciate-mobile-apps/11-whatsapp-icon-open-contextual-menu.png 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://files.smashing.media/articles/things-users-would-appreciate-mobile-apps/11-whatsapp-icon-open-contextual-menu.png 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://files.smashing.media/articles/things-users-would-appreciate-mobile-apps/11-whatsapp-icon-open-contextual-menu.png 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://files.smashing.media/articles/things-users-would-appreciate-mobile-apps/11-whatsapp-icon-open-contextual-menu.png 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/things-users-would-appreciate-mobile-apps/11-whatsapp-icon-open-contextual-menu.png"
			
			sizes="100vw"
			alt="WhatsApp icon next to an open contextual menu with options to search, chat, scan codes, and share."
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      It may be possible to leverage an operating system’s default controls, like the long-press feature in iOS. (<a href='https://files.smashing.media/articles/things-users-would-appreciate-mobile-apps/11-whatsapp-icon-open-contextual-menu.png'>Large preview</a>)
    </figcaption>
  
</figure>

<h2 id="the-right-keyboard-configuration">The Right Keyboard Configuration</h2>

<p>All modern mobile operating systems are smart enough to tailor the virtual keyboard for specialized form inputs. A form field markup with <code>type=&quot;email&quot;</code>, for instance, triggers an onscreen keyboard that shows the “<code>@</code>&rdquo; key in the primary view, preventing users from having to tap <code>Shift</code> to reveal it in a subsequent view. The same is true with URLs, where a “<code>.com</code>” key surfaces for inputs with <code>type=&quot;url&quot;</code>.</p>














<figure class="
  
    break-out article__image
  
  
  ">
  
    <a href="https://files.smashing.media/articles/things-users-would-appreciate-mobile-apps/12-onscreen-keyboard-email-field.jpg">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="450"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/things-users-would-appreciate-mobile-apps/12-onscreen-keyboard-email-field.jpg 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://files.smashing.media/articles/things-users-would-appreciate-mobile-apps/12-onscreen-keyboard-email-field.jpg 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://files.smashing.media/articles/things-users-would-appreciate-mobile-apps/12-onscreen-keyboard-email-field.jpg 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://files.smashing.media/articles/things-users-would-appreciate-mobile-apps/12-onscreen-keyboard-email-field.jpg 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://files.smashing.media/articles/things-users-would-appreciate-mobile-apps/12-onscreen-keyboard-email-field.jpg 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/things-users-would-appreciate-mobile-apps/12-onscreen-keyboard-email-field.jpg"
			
			sizes="100vw"
			alt="Onscreen keyboard for an email field, with ‘@’ key shown upfront"
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      Onscreen keyboard for an email field, with <code>@</code> key shown upfront. (<a href='https://files.smashing.media/articles/things-users-would-appreciate-mobile-apps/12-onscreen-keyboard-email-field.jpg'>Large preview</a>)
    </figcaption>
  
</figure>

<p>The right keyboard saves the effort of hunting down relevant special characters and numbers for specific fields. All we need to do is to use the right attributes and semantics for those fields, like, <code>type=email</code>, <code>type=url</code>, <code>type=tel</code>, and such.</p>

<div class="break-out">
<pre><code class="language-html">&lt;!-- Input Types for Virtual Keyboards --&gt;
&lt;input type="text"&gt;   &lt;!-- default --&gt;
&lt;input type="tel"&gt;    &lt;!-- numeric keyboard --&gt;
&lt;input type="number"&gt; &lt;!-- numeric keyboard --&gt;
&lt;input type="email"&gt;  &lt;!-- displays @ key --&gt;
&lt;input type="url"&gt;    &lt;!-- displays .com key --&gt;
&lt;input type="search"&gt; &lt;!-- displays search button --&gt;
&lt;input type="date"&gt;   &lt;!-- displays date picker or wheel controls --&gt;
</code></pre>
</div>

<div class="partners__lead-place"></div>

<h2 id="bigger-fonts-with-higher-contrast">Bigger Fonts With Higher Contrast</h2>

<p>This may have been one of the first things that came to your mind when reading the article title. That’s because small text is prevalent in mobile interfaces. It’s not wrong to scale text in response to smaller screens, but where you set the lower end of the range may be too small for many users, even those with great vision.</p>

<p>The default size of body text is <code>16px</code> on the web. That’s thanks to user agent styling that’s consistent across all browsers, including those on mobile platforms. But what exactly is the ideal size for mobile? The answer is not entirely clear. For example, Apple’s <a href="https://developer.apple.com/design/human-interface-guidelines/typography">Human Interface Guidelines</a> do not specify exact font sizes but rather focus on the use of Dynamic Text that adjusts the size of content to the user’s device-level preferences. Google’s Material Design guidelines are more concrete but are based on three scales: small, medium, and large. The following table shows the minimum font sizes for each scale based on the system’s <a href="https://m3.material.io/styles/typography/type-scale-tokens">typography tokens</a>.</p>

<table class="tablesaw break-out">
    <thead>
        <tr>
            <th>Scale</th>
            <th>Body Text (pt)</th>
      <th>Body Text (px)</th>
        </tr>
    </thead>
    <tbody>
        <tr>
            <td>Small</td>
            <td><code>12pt</code></td>
      <td><code>16px</code></td>
        </tr>
        <tr>
            <td>Medium</td>
            <td><code>14pt</code></td>
      <td><code>18.66px</code></td>
        </tr>
        <tr>
            <td>Large</td>
            <td><code>16pt</code></td>
      <td><code>21.33px</code></td>
        </tr>
    </tbody>
</table>

<p>The real standard we ought to be looking at is the current WCAG 2.2, and here’s <a href="https://www.w3.org/TR/WCAG22/#dfn-large-scale">what it says</a> on the topic:</p>

<blockquote>“When using text without specifying the font size, the smallest font size used on major browsers for unspecified text would be a reasonable size to assume for the font.”</blockquote>

<p>So, bottom line is that the bottom end of a font’s scale matches the web’s default <code>16px</code> if we accept Android’s “Small” defaults. But even then, there are caveats because WCAG is more focused on <strong>contrast</strong> than <strong>size</strong>. Like, if the font in use is thin by default, WCAG suggests bumping up the font size to produce a higher contrast ratio between the text and the background it sits against.</p>

<p>There are many, many articles that can give you summaries of various typographical guidelines and how to adhere to them for optimal font sizing. The best advice I’ve seen, however, is Eric Bailey rallying us to <a href="https://css-tricks.com/reader-mode-the-button-to-beat/">“beat the “Reader Mode” button</a>. Eric is talking more specifically about preventing clutter in an interface, but the same holds for font sizing. If the text is tiny or thin, I’m going to bash that button on your site with no hesitation.</p>














<figure class="
  
    break-out article__image
  
  
  ">
  
    <a href="https://files.smashing.media/articles/things-users-would-appreciate-mobile-apps/13-kindle-reading-app-mobile-device.png">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/things-users-would-appreciate-mobile-apps/13-kindle-reading-app-mobile-device.png 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://files.smashing.media/articles/things-users-would-appreciate-mobile-apps/13-kindle-reading-app-mobile-device.png 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://files.smashing.media/articles/things-users-would-appreciate-mobile-apps/13-kindle-reading-app-mobile-device.png 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://files.smashing.media/articles/things-users-would-appreciate-mobile-apps/13-kindle-reading-app-mobile-device.png 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://files.smashing.media/articles/things-users-would-appreciate-mobile-apps/13-kindle-reading-app-mobile-device.png 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/things-users-would-appreciate-mobile-apps/13-kindle-reading-app-mobile-device.png"
			
			sizes="100vw"
			alt="The Kindle reading app on a mobile device with font sizing and style controls."
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      The Kindle reading app on a mobile device with font sizing and style controls. (<a href='https://files.smashing.media/articles/things-users-would-appreciate-mobile-apps/13-kindle-reading-app-mobile-device.png'>Large preview</a>)
    </figcaption>
  
</figure>

<h2 id="wrapping-up">Wrapping Up</h2>

<p>Everything we’ve covered here in this article is personal irritations I feel when interacting with different mobile interfaces. I’m sure you have your own set of annoyances, and if you do, I’d love to read them in the comments if you’re willing to share. And someone else is likely to have even more examples.</p>

<p>The point is that we’re in some kind of <strong>“post-responsive” era of web design</strong>, one that looks beyond how elements stack in response to the viewport to consider user preferences, privacy, and providing optimal experiences at any breakpoint regardless of whatever device is used.</p>

<div class="signature">
  <img src="https://www.smashingmagazine.com/images/logo/logo--red.png" alt="Smashing Editorial" width="35" height="46" loading="lazy" decoding="async" />
  <span>(gg, yk)</span>
</div>


              </article>
            </body>
          </html>
        ]]></content:encoded></item></channel></rss>