Blog

  • Opportunities for AI in Accessibility

    Opportunities for AI in Accessibility

    I was completely moved by Joe Dolson’s current article on the crossroads of AI and availability because I found it to be both skeptical about how widespread use of AI is. In fact, I’m very skeptical of AI myself, despite my role at Microsoft as an accessibility technology strategist who helps manage the AI for Accessibility award program. As with any device, AI can be used in very positive, equitable, and visible ways, as well as in destructive, unique, and harmful ways. Additionally, there are a lot of uses in the subpar midsection as well.

    I’d like you to consider this a “yes … and” piece to complement Joe’s post. I’m not trying to reject any of what he’s saying, but rather to give some context to initiatives and options where AI may produce real, positive impacts on people with disabilities. To be clear, I’m not saying that there aren’t real challenges or pressing problems with AI that need to be addressed; there are, and we’ve needed to address them, like, yesterday; instead, I want to take a moment to talk about what’s possible so that we can find it one day.

    Other text

    Joe’s article spends a lot of time addressing computer-vision models ‘ ability to create other words. He raises a number of true points about the state of affairs right now. And while computer-vision concepts continue to improve in the quality and complexity of information in their information, their benefits aren’t wonderful. He argues to be accurate that the state of image research is currently very poor, especially for some graphic types, in large part due to the lack of context-based analysis that exists in the AI systems ( which is a result of having separate “foundation” models for text analysis and image analysis ). Today’s models aren’t trained to distinguish between images that are contextually relevant ( should probably have descriptions ) and those that are purely decorative ( couldn’t possibly need a description ) either. However, I still think there’s possible in this area.

    As Joe points out, far word authoring by human-in-the-loop should definitely be a thing. And if AI can intervene and provide a starting point for alt text, even if the swift reads,” What is this BS?” That’s not correct at all … Let me try to offer a starting point— I think that’s a gain.

    If we can specifically station a design to examine image usage in context, it might help us more quickly determine which images are likely to be elegant and which ones are likely to need a description. That will help clarify which situations require image descriptions, and it will increase authors ‘ effectiveness in making their sites more visible.

    While complex images—like graphs and charts—are challenging to describe in any sort of succinct way ( even for humans ), the image example shared in the GPT4 announcement points to an interesting opportunity as well. Let’s say you came across a map that was simply the name of the table and the type of visualization it was: Pie table comparing smartphone use to have phone use among US households making under$ 30, 000 annually. ( That would be a pretty bad alt text for a chart because it frequently leaves many unanswered questions about the data, but let’s just assume that was the description in place. ) If your browser knew that that image was a pie chart ( because an onboard model concluded this ), imagine a world where users could ask questions like these about the graphic:

    • Do more people use smartphones or other types of smartphones?
    • How many more are there?
    • Is there a group of people that don’t fall into either of these buckets?
    • That number, how many?

    For a moment, the chance to learn more about images and data in this way could be revolutionary for people who are blind and low vision as well as for those with various forms of color blindness, cognitive disabilities, and other issues. Putting aside the realities of large language model ( LLM) hallucinations. It could also be useful in educational contexts to help people who can see these charts, as is, to understand the data in the charts.

    What if you could ask your browser to make a complicated chart simpler? What if you demanded that the line graph be isolated into just one line? What if you could ask your browser to transpose the colors of the different lines to work better for form of color blindness you have? What if you asked it to switch colors in favor of patterns? That seems like a possibility given the chat-based interfaces and our current ability to manipulate images in modern AI tools.

    Now imagine a purpose-built model that could extract the information from that chart and convert it to another format. For instance, it might be able to convert that pie chart (or, better yet, a number of pie charts ) into more usable ( and useful ) formats, like spreadsheets. That would be incredible!

    Matching algorithms

    When Safiya Umoja Noble chose to write her book Algorithms of Oppression, she hit the nail on the head. Although her book focused on the ways that search engines can foster racism, I believe it’s equally true that all computer models have the potential to foster conflict, prejudice, and intolerance. Whether it’s Twitter always showing you the latest tweet from a bored billionaire, YouTube sending us into a Q-hole, or Instagram warping our ideas of what natural bodies look like, we know that poorly authored and maintained algorithms are incredibly harmful. Many of these are the result of a lack of diversity in the people who create and build them. There is real potential for algorithm development when these platforms are built with inclusive features in, though.

    Take Mentra, for example. They serve as a network of employment for people who are neurodivers. Based on more than 75 data points, they match job seekers with potential employers using an algorithm. On the job-seeker side of things, it considers each candidate’s strengths, their necessary and preferred workplace accommodations, environmental sensitivities, and so on. On the employer side, it takes into account each work environment, communication issues relating to each job, and other factors. Mentra made the decision to change the script when it came to the typical employment websites because it was run by neurodivergent people. They use their algorithm to propose available candidates to companies, who can then connect with job seekers that they are interested in, reducing the emotional and physical labor on the job-seeker side of things.

    When more people with disabilities are involved in the development of algorithms, this can lower the likelihood that these algorithms will harm their communities. Diverse teams are crucial because of this.

    Imagine that a social media company’s recommendation engine was tuned to analyze who you’re following and if it was tuned to prioritize follow recommendations for people who talked about similar things but who were different in some key ways from your existing sphere of influence. For instance, if you followed a group of nondisabled white male academics who spoke about AI, it might be advisable to follow those who are disabled, aren’t white, or aren’t men who also speak about AI. If you followed its recommendations, you might learn more about what’s happening in the AI field. These same systems should also use their understanding of biases about particular communities—including, for instance, the disability community—to make sure that they aren’t recommending any of their users follow accounts that perpetuate biases against (or, worse, spewing hate toward ) those groups.

    Other ways that AI can assist people with disabilities

    I’m sure I could go on and on about using AI to assist people with disabilities, but I’m going to make this last section into a bit of a lightning round. In no particular order:

      Voice preservation You might have heard about the voice-preserve offerings from Microsoft, Acapela, or others, or have seen the VALL-E paper or Apple’s Global Accessibility Awareness Day announcement. It’s possible to train an AI model to replicate your voice, which can be a tremendous boon for people who have ALS ( Lou Gehrig’s disease ) or motor-neuron disease or other medical conditions that can lead to an inability to talk. This technology can also be used to create audio deepfakes, so it’s something we need to approach responsibly, but the technology has truly transformative potential.
    • voice recognition Researchers like those in the Speech Accessibility Project are paying people with disabilities for their help in collecting recordings of people with atypical speech. As I type, they are currently hiring people with Parkinson’s and related conditions, and they intend to expand this list as the project develops. More people with disabilities will be able to use voice assistants, dictation software, and voice-response services as a result of this research, which will lead to more inclusive data sets that enable them to use their computers and other devices more effectively and with just their voices.
    • Text transformation. The most recent generation of LLMs is capable of altering already-existing text without giving off hallucinations. This is incredibly empowering for those who have cognitive disabilities and who may benefit from text summaries, simplified versions, or even text that has been prepared for Bionic Reading.

    The importance of diverse teams and data

    Our differences must be acknowledged as important. The intersections of the identities that we exist in have an impact on our lived experiences. These lived experiences—with all their complexities ( and joys and pain ) —are valuable inputs to the software, services, and societies that we shape. Our differences must be reflected in the data we use to develop new models, and those who provide that valuable information must be compensated for doing so. Inclusive data sets produce stronger models that promote more justifiable outcomes.

    Want a model that doesn’t demean or patronize or objectify people with disabilities? Make sure that you include information about disabilities that has been written by people with a variety of disabilities in the training data.

    Want a non-binary language model? You may be able to use existing data sets to build a filter that can intercept and remediate ableist language before it reaches readers. Despite this, AI models won’t be replacing human copy editors anytime soon when it comes to sensitivity reading.

    Want a copilot for coding that provides recommendations that are accessible after the jump? Train it on code that you know to be accessible.


    I have no doubts about how dangerous AI can and will be for people today, tomorrow, and for the rest of the world. However, I also think that we can acknowledge this and make thoughtful, thoughtful, and intentional changes in our approaches to AI that will reduce harm over time as well. Today, tomorrow, and well into the future.


    Many thanks to Kartik Sawhney for supporting the development of this article, Ashley Bischoff for providing me with invaluable editorial support, and, of course, Joe Dolson for the prompt.

  • The Wax and the Wane of the Web

    The Wax and the Wane of the Web

    When you begin to believe you have everything figured out, everyone does change, in my opinion. Simply as you start to get the hang of injections, diapers, and ordinary sleep, it’s time for solid foods, potty training, and nighttime sleep. When those are determined, school and occasional sleeps are in order. The cycle goes on and on.

    The same holds true for those of us who are currently employed in design and development. Having worked on the web for about three years at this point, I’ve seen the typical wax and wane of concepts, strategies, and systems. Every day we as developers and designers re-enter the familiar pattern, a brand-new engineering or thought emerges to shake things up and completely alter the world.

    How we got below

    I built my first website in the mid-’90s. Design and development on the web back then was a free-for-all, with few established norms. For any layout aside from a single column, we used table elements, often with empty cells containing a single pixel spacer GIF to add empty space. We styled text with numerous font tags, nesting the tags every time we wanted to vary the font style. And we had only three or four typefaces to choose from: Arial, Courier, or Times New Roman. When Verdana and Georgia came out in 1996, we rejoiced because our options had nearly doubled. The only safe colors to choose from were the 216 “web safe” colors known to work across platforms. The few interactive elements (like contact forms, guest books, and counters) were mostly powered by CGI scripts (predominantly written in Perl at the time). Achieving any kind of unique look involved a pile of hacks all the way down. Interaction was often limited to specific pages in a site.

    the development of online standards

    At the turn of the century, a new cycle started. Crufty code littered with table layouts and font tags waned, and a push for web standards waxed. Newer technologies like CSS got more widespread adoption by browsers makers, developers, and designers. This shift toward standards didn’t happen accidentally or overnight. It took active engagement between the W3C and browser vendors and heavy evangelism from folks like the Web Standards Project to build standards. A List Apart and books like Designing with Web Standards by Jeffrey Zeldman played key roles in teaching developers and designers why standards are important, how to implement them, and how to sell them to their organizations. And approaches like progressive enhancement introduced the idea that content should be available for all browsers—with additional enhancements available for more advanced browsers. Meanwhile, sites like the CSS Zen Garden showcased just how powerful and versatile CSS can be when combined with a solid semantic HTML structure.

    Server-side language like PHP, Java, and.NET took Perl as the primary back-end computers, and the cgi-bin was tossed in the garbage bin. With these improved server-side equipment, the first period of internet programs started with content-management methods (especially those used in blogs like Blogger, Grey Matter, Movable Type, and WordPress ) In the mid-2000s, AJAX opened gates for sequential interaction between the front end and back finish. Websites now no longer needed to refresh their webpages ‘ content. A grain of Script frameworks like Prototype, YUI, and ruby arose to assist developers build more credible client-side interaction across browsers that had wildly varying levels of standards support. Techniques like image replacement enable the use of fonts by skilled designers and developers. And technologies like Flash made it possible to add animations, games, and even more interactivity.

    These new methods, standards, and technologies greatly boosted the sector’s growth. Web design flourished as designers and developers explored more diverse styles and layouts. However, we still relied heavily on numerous hacks. Early CSS was a huge improvement over table-based layouts when it came to basic layout and text styling, but its limitations at the time meant that designers and developers still relied heavily on images for complex shapes ( such as rounded or angled corners ) and tiled backgrounds for the appearance of full-length columns (among other hacks ). All kinds of nested floats or absolute positioning ( or both ) were necessary for complicated layouts. Flash and image replacement for custom fonts was a great start toward varying the typefaces from the big five, but both hacks introduced accessibility and performance problems. Additionally, JavaScript libraries made it simple to add a dash of interaction to pages without having to spend the money to double or even quadruple the download size for basic websites.

    The web as software platform

    The interplay between the front end and the back end continued to grow, which led to the development of the current era of modern web applications. Between expanded server-side programming languages ( which kept growing to include Ruby, Python, Go, and others ) and newer front-end tools like React, Vue, and Angular, we could build fully capable software on the web. Along with these tools, there were additional options, such as shared package libraries, build automation, and collaborative version control. What was once primarily an environment for linked documents became a realm of infinite possibilities.

    Mobile devices increased in their capabilities as well, and they gave us access to the internet in our pockets at the same time. Mobile apps and responsive design opened up opportunities for new interactions anywhere and any time.

    This fusion of potent mobile devices and potent development tools contributed to the growth of social media and other centralized tools for people to use and interact with. As it became easier and more common to connect with others directly on Twitter, Facebook, and even Slack, the desire for hosted personal sites waned. Social media provided connections on a global scale, with both positive and negative outcomes.

    Want a much more extensive history of how we got here, with some other takes on ways that we can improve? ” Of Time and the Web” was written by Jeremy Keith. Or check out the” Web Design History Timeline” at the Web Design Museum. A fun tour through” Internet Artifacts” is also provided by Neal Agarwal.

    Where we are now

    It seems like we’ve reached yet another significant turning point in the last couple of years. As social-media platforms fracture and wane, there’s been a growing interest in owning our own content again. From the tried-and-true classic of hosting plain HTML files to static site generators and content management systems of all kinds, there are many different ways to create websites. The fracturing of social media also comes with a cost: we lose crucial infrastructure for discovery and connection. Webmentions, RSS, ActivityPub, and other IndieWeb tools can be useful in this regard, but they’re still largely underdeveloped and difficult to use for the less geeky. We can build amazing personal websites and add to them regularly, but without discovery and connection, it can sometimes feel like we may as well be shouting into the void.

    Especially with efforts like Interop, browser support for CSS, JavaScript, and other standards like web components has increased. New technologies gain support across the board in a fraction of the time that they used to. When I first learn about a new feature, I frequently discover that its coverage is already over 80 % when I check the browser support. Nowadays, the barrier to using newer techniques often isn’t browser support but simply the limits of how quickly designers and developers can learn what’s available and how to adopt it.

    With a few commands and a few lines of code, we can currently prototype almost any concept. All the tools that we now have available make it easier than ever to start something new. However, as we upgrade and maintain these frameworks, we eventually pay the upfront costs that these frameworks may initially save in terms of our technical debt.

    If we rely on third-party frameworks, adopting new standards can sometimes take longer since we may have to wait for those frameworks to adopt those standards. These frameworks, which previously made it easier to adopt new techniques sooner, have since evolved into obstacles. These same frameworks often come with performance costs too, forcing users to wait for scripts to load before they can read or interact with pages. And frequently, when scripts fail ( whether due to poor code, network problems, or other environmental factors ), users are left with blank or broken pages.

    Where do we go from here?

    Hacks of today help to shape standards for tomorrow. And there’s nothing inherently wrong with embracing hacks —for now—to move the present forward. Problems only arise when we refuse to acknowledge that they are hacks or when we refuse to take their place. So what can we do to create the future we want for the web?

    Build for the long haul. Optimize for performance, for accessibility, and for the user. weigh the costs of those user-friendly tools. They may make your job a little easier today, but how do they affect everything else? What does each user pay? To future developers? To adoption of standards? Sometimes the convenience may be worth it. Sometimes it’s just a hack that you’ve gotten used to. And sometimes it’s holding you back from even better options.

    Start with standards. Standards continue to evolve over time, but browsers have done a remarkably good job of continuing to support older standards. The same isn’t always the case with third-party frameworks. Sites built with even the hackiest of HTML from the’ 90s still work just fine today. The same can’t be said about websites created with frameworks even after a few years.

    Design with care. Consider the effects of each choice, whether your craft is code, pixels, or processes. The convenience of many a modern tool comes at the cost of not always understanding the underlying decisions that have led to its design and not always considering the impact that those decisions can have. Use the time saved by modern tools to consider more carefully and design with consideration rather than rush to “move fast and break things”

    Always be learning. If you’re constantly learning, you’re also developing. Sometimes it may be hard to pinpoint what’s worth learning and what’s just today’s hack. Even if you were to concentrate solely on learning standards, you might end up focusing on something that won’t matter next year. ( Remember XHTML? ) However, ongoing learning opens up new connections in your brain, and the techniques you learn in one day may be used to guide different experiments in the future.

    Play, experiment, and be weird! This website we created is the most incredible experiment. It’s the single largest human endeavor in history, and yet each of us can create our own pocket within it. Be brave and try something new. Build a playground for ideas. Create absurd experiments in your own crazy science lab. Start your own small business. There has never been a place where we have more room to be creative, take risks, and discover our potential.

    Share and amplify. Share what you think has worked for you as you go through testing, playing, and learning. Write on your own website, post on whichever social media site you prefer, or shout it from a TikTok. Write something for A List Apart! But take the time to amplify others too: find new voices, learn from them, and share what they’ve taught you.

    Make a move and make it happen.

    As designers and developers for the web ( and beyond ), we’re responsible for building the future every day, whether that may take the shape of personal websites, social media tools used by billions, or anything in between. Let’s give everything we produce a positive vibe by infusing our values into everything we do. Create that thing that only you are uniquely qualified to make. Then distribute it, improve it, re-use it, or create something new with it. Learn. Make. Share. Grow. Rinse and repeat. Everything will change whenever you believe you have the ability to use the internet.

  • To Ignite a Personalization Practice, Run this Prepersonalization Workshop

    To Ignite a Personalization Practice, Run this Prepersonalization Workshop

    This is in the photo. You’ve joined a club at your business that’s designing innovative product features with an focus on technology or AI. Or perhaps your business only started using a personalization engine. Either way, you’re designing with statistics. What’s next? When it comes to designing for personalization, there are many warning stories, no immediately achievement, and some guidelines for the baffled.

    The personalization space is real, between the dream of getting it right and the fear of it going wrong ( like when we encounter “persofails” in the spirit of a company that regularly asks regular people to buy more toilet seats ). It’s an particularly confusing place to be a modern professional without a map, a map, or a strategy.

    Because successful personalization is so dependent on each group’s skill, technology, and market position, there are no Lonely Planet and some tour guides for those of you who want to personalize.

    But you can ensure that your group has packed its bags rationally.

    There’s a DIY method to increase your chances for victory. You’ll at least at least disarm your boss ‘ irrational exuberance. Before the group you’ll need to properly plan.

    We refer to it as prepersonalization.

    Behind the audio

    Take into account the DJ have on Spotify, which was introduced last month.

    We’re used to seeing the polished final outcome of a personalization function. A personal have had to be developed, budgeted, and given priority before the year-end prize, the making-of-backstory, or the behind-the-scenes success chest. Before any customisation have goes live in your product or service, it lives amid a delay of valuable ideas for expressing consumer experiences more automatically.

    How do you decide where to position personalization wagers? How do you design regular interactions that didn’t journey up users or—worse—breed mistrust? We’ve discovered that several budgeted programs second required one or more workshops to join key stakeholders and domestic customers of the technology in order to justify their continuing investments. Create it count.

    We’ve closely monitored the same evolution with our consumers, from major software to young companies. In our experience with working on small and large customisation efforts, a program’s best monitor record—and its capacity to weather tough questions, work steadily toward shared answers, and manage its design and engineering efforts—turns on how successfully these prepersonalization activities play out.

    Effective workshops consistently distinguish successful future endeavors from unsuccessful ones, saving countless hours of time, resources, and overall well-being in the process.

    A personalization practice involves a multiyear effort of testing and feature development. Your tech stack is not experiencing a switch-flip. It’s best managed as a backlog that often evolves through three steps:

    1. customer experience optimization ( CXO, also known as A/B testing or experimentation )
    2. always-on automations ( whether rules-based or machine-generated )
    3. mature features or standalone product development ( such as Spotify’s DJ experience )

    This is why we created our progressive personalization framework and why we’re field-testing an accompanying deck of cards: we believe that there’s a base grammar, a set of “nouns and verbs” that your organization can use to design experiences that are customized, personalized, or automated. These cards won’t be necessary for you. But we strongly recommend that you create something similar, whether that might be digital or physical.

    Set the timer for your kitchen.

    How long does it take to cook up a prepersonalization workshop? The evaluation activities that we suggest including can ( and frequently do ) last for weeks. For the core workshop, we recommend aiming for two to three days. Here are a summary of our broad approach and information on the most crucial first-day activities.

    The full arc of the wider workshop is threefold:

      Kickstart: This specifies the terms of engagement as you concentrate on both the potential and the team’s and leadership’s readiness and drive.
    1. Plan your work: This is the heart of the card-based workshop activities where you specify a plan of attack and the scope of work.
    2. Work your plan: This stage essentially entails creating a competitive environment in which team members can individually present their own pilots that each contain a proof-of-concept project, its business case, and its operating model.

    Give yourself at least a day, split into two large time blocks, to power through a concentrated version of those first two phases.

    Kickstart: Apt your appetite

    We call the first lesson the “landscape of connected experience“. It looks at the possibilities for personalization at your company. A connected experience, in our parlance, is any UX requiring the orchestration of multiple systems of record on the backend. A marketing-automation platform and a content-management system could be used together. It could be a digital-asset manager combined with a customer-data platform.

    Give examples of connected experience interactions that you admire, find familiar, or even dislike, as examples of consumer and business-to-business examples. This should cover a representative range of personalization patterns, including automated app-based interactions ( such as onboarding sequences or wizards ), notifications, and recommenders. These cards contain a catalog, which we have. Here’s a list of 142 different interactions to jog your thinking.

    The table must be set up for this. What are the possible paths for the practice in your organization? Here’s a long-form primer and a strategic framework for a broader perspective.

    Assess each example that you discuss for its complexity and the level of effort that you estimate that it would take for your team to deliver that feature ( or something similar ). We break down connected experiences into five categories in our cards: functions, features, experiences, complete products, and portfolios. Size your own build here. This will help to draw attention to the benefits of ongoing investment as well as the difference between what you currently offer and what you intend to offer in the future.

    Next, have your team plot each idea on the following 2×2 grid, which lays out the four enduring arguments for a personalized experience. This is crucial because it emphasizes how personalization can affect your own methods of working as well as your external customers. It’s also a reminder ( which is why we used the word argument earlier ) of the broader effort beyond these tactical interventions.

    Each team member should decide where they would like to place your company’s emphasis on your product or service. Naturally, you can’t prioritize all of them. Here, the goal is to demonstrate how various departments may view their own advantages over the effort, which can be different from one department to the next. Documenting your desired outcomes lets you know how the team internally aligns across representatives from different departments or functional areas.

    The third and final Kickstart activity is about filling in the personalization gap. Is your customer journey well documented? Will data and privacy protection be a significant challenge? Do you have content metadata needs that you have to address? ( We’re pretty sure you do; it’s just a matter of acknowledging the magnitude of that need and finding a solution. ) In our cards, we’ve noted a number of program risks, including common team dispositions. For instance, our Detractor card lists six protracted behavior that is harmful to the development of our country.

    Effectively collaborating and managing expectations is critical to your success. Consider the potential obstacles to your advancement in the future. Press the participants to name specific steps to overcome or mitigate those barriers in your organization. According to research, personalization initiatives face a number of common obstacles.

    At this point, you’ve hopefully discussed sample interactions, emphasized a key area of benefit, and flagged key gaps? Good, you’re all set to go on.

    Hit that test kitchen

    Next, let’s take a look at what you’ll need to create personalization recipes. Personalization engines, which are robust software suites for automating and expressing dynamic content, can intimidate new customers. They give you a variety of options for how your organization can conduct its activities because of their broad and potent capabilities. This presents the question: Where do you begin when you’re configuring a connected experience?

    What’s crucial here is to avoid treating the installed software like a dream kitchen from some imaginary remodeling project ( as one of our client executives memorably put it ). These software engines are more like test kitchens where your team can begin devising, tasting, and refining the snacks and meals that will become a part of your personalization program’s regularly evolving menu.

    Over the course of the workshop, the ultimate menu of the prioritized backlog will come together. And creating “dishes” is the way that you’ll have individual team stakeholders construct personalized interactions that serve their needs or the needs of others.

    The dishes will be made using recipes that have predetermined ingredients.

    Verify your ingredients

    You’ll ensure that you have everything you need to create your desired interaction ( or that you can determine what needs to be added to your pantry like a good product manager ) and that you have validated with the right stakeholders present. These ingredients include the audience that you’re targeting, content and design elements, the context for the interaction, and your measure for how it’ll come together.

    This doesn’t just involve identifying requirements. Documenting your personalizations as a series of if-then statements lets the team:

    1. compare findings to a unified approach for developing features, similar to how artists paint with the same color palette,
    2. specify a consistent set of interactions that users find uniform or familiar,
    3. and establish parity between all important performance indicators and performance metrics.

    This helps you streamline your designs and your technical efforts while you deliver a shared palette of core motifs of your personalized or automated experience.

    Create a recipe.

    What ingredients are important to you? Consider a who-what-when-why construct:

    • Who are your key audience segments or groups?
    • What kind of content will you provide for them, what design elements, and under what circumstances?
    • And for which business and user benefits?

    Five years ago, we created these cards and card categories. We regularly play-test their fit with conference audiences and clients. And there are still fresh possibilities. But they all follow an underlying who-what-when-why logic.

    In the cards in the accompanying photo below, you can typically follow along with right to left in three examples of subscription-based reading apps.

    1. Nurture personalization: When a guest or an unknown visitor interacts with a product title, a banner or alert bar appears that makes it easier for them to encounter a related title they may want to read, saving them time.
    2. Welcome automation: An email is sent when a newly registered user is a subscriber and is able to highlight the breadth of the content catalog.
    3. Winback automation: Before their subscription lapses or after a recent failed renewal, a user is sent an email that gives them a promotional offer to suggest that they reconsider renewing or to remind them to renew.

    A good preworkshop activity might be to consider a first draft of what these cards might be for your organization, though we’ve also found that cocreating the recipes themselves can sometimes help this process. Start with a set of blank cards, and begin labeling and grouping them through the design process, eventually distilling them to a refined subset of highly useful candidate cards.

    The workshop’s later stages, which shift from focusing on cookbooks to focusing on customers, might seem more nuanced. Individual” cooks” will pitch their recipes to the team, using a common jobs-to-be-done format so that measurability and results are baked in, and from there, the resulting collection will be prioritized for finished design and delivery to production.

    Better architecture is necessary for better kitchens.

    Simplifying a customer experience is a complicated effort for those who are inside delivering it. Beware of anyone who contradicts your advice. With that being said,” Complicated problems can be hard to solve, but they are addressable with rules and recipes“.

    When a team is overfitting, it’s because they aren’t designing with their best data, which is why personalization turns into a laugh line. Like a sparse pantry, every organization has metadata debt to go along with its technical debt, and this creates a drag on personalization effectiveness. For instance, your AI’s output quality is in fact impacted by your IA. Spotify’s poster-child prowess today was unfathomable before they acquired a seemingly modest metadata startup that now powers its underlying information architecture.

    You can’t stand the heat, in fact…

    Personalization technology opens a doorway into a confounding ocean of possible designs. Only a disciplined and highly collaborative approach will produce the necessary concentration and intention for success. So banish the dream kitchen. Instead, head to the test kitchen to burn off the fantastical ideas that the doers in your organization have in store for time, to preserve job satisfaction and security, and to avoid unnecessary distractions. There are meals to serve and mouths to feed.

    This framework of the workshop gives you a strong chance at long-term success as well as solid ground. Wiring up your information layer isn’t an overnight affair. However, if you use the same cookbook and the same recipe combination, you’ll have solid ground for success. We designed these activities to make your organization’s needs concrete and clear, long before the hazards pile up.

    Although there are costs associated with purchasing this type of technology and product design, time well spent on sizing up and confronting your unique situation and digital skills. Don’t squander it. The pudding is the proof, as they say.

  • User Research Is Storytelling

    User Research Is Storytelling

    I’ve been fascinated by shows since I was a child. I loved the figures and the excitement—but most of all the reports. I aspired to be an artist. And I believed that I’d get to do the things that Indiana Jones did and go on exciting activities. Perhaps my friends and I had movie ideas to make and sun in. But they never went any farther. However, I did end up working in user experience ( UI). Today, I realize that there’s an element of drama to UX— I hadn’t actually considered it before, but consumer research is story. And to get the most out of customer studies, you must tell a compelling story that involves stakeholders, including the product team and decision-makers, and piques their interest in learning more.

    Think of your favorite film. It more than likely follows a three-act narrative architecture: the installation, the turmoil, and the resolution. The second act shows what exists now, and it helps you get to know the figures and the challenges and problems that they face. Act two sets the scene for the fight and the action begins. Here, difficulties grow or get worse. The solution comes in the third and final work. This is where the issues are resolved and the figures learn and change. This structure, in my opinion, is also a fantastic way to think about customer research, and it might be particularly useful for explaining user research to others.

    Use story as a framework for conducting research

    It’s sad to say, but many have come to see studies as being inconsequential. Research is frequently one of the first things to go when finances or deadlines are tight. Instead of investing in study, some goods professionals rely on manufacturers or—worse—their personal judgment to make the “right” options for users based on their experience or accepted best practices. That might lead to some clubs getting in the way, but it’s too easy to overlook the real problems facing users. To be user-centered, this is something we really avoid. Design is enhanced by consumer research. It keeps it on record, pointing to problems and opportunities. Being aware of the problems with your goods and taking action can help you keep ahead of your competition.

    In the three-act structure, each action corresponds to a part of the process, and each part is important to telling the whole story. Let’s take a look at the various functions and how they relate to customer research.

    Act one: installation

    Fundamental analysis comes in handy because the layout is all about comprehending the background. Basic research ( also called conceptual, discovery, or preliminary research ) helps you understand people and identify their problems. Just like in the movies, you’re learning about the difficulties customers face, what options are available, and how those challenges impact them. To do basic research, you may conduct situational inquiries or journal studies ( or both! ), which may assist you in identifying both problems and opportunities. It doesn’t need to get a great investment in time or money.

    Erika Hall writes about the most effective anthropology, which can be as straightforward as spending 15 hours with a customer and asking them to” Walk me through your morning yesterday.” That’s it. Provide that one ask. Opened up and listen to them for 15 days. Do everything in your power to protect both your objectives and yourself. Bam, you’re doing ethnography”. According to Hall, “[This ] will definitely prove quite fascinating. In the very unlikely event that you didn’t learn anything new or helpful, carry on with increased confidence in your way”.

    This makes perfect sense to me. And I love that this makes consumer studies so visible. You can only attract participants and do it! You don’t need to create a lot of documentation. This can offer a wealth of knowledge about your customers, and it’ll help you better understand them and what’s going on in their life. Understanding where people are coming from is what action one is really all about.

    Maybe Spool talks about the importance of basic research and how it really type the bulk of your research. If you can supplement what you’ve heard in the fundamental studies by using any more user data that you can obtain, such as surveys or analytics, to make recommendations that may need to be investigated further, you might as well use those that can be drawn from those that you can obtain. Together, all this information creates a clearer picture of the state of things and all its deficiencies. And that’s the start of a gripping tale. It’s the place in the story where you realize that the principal characters—or the people in this case—are facing issues that they need to conquer. This is where you begin to develop compassion for the figures and support their success, much like in the movies. And maybe partners are now doing the same. Their concern may be with their company, which may be losing money because people are unable to complete specific tasks. Or probably they do connect with customers ‘ problems. In either case, action one serves as your main strategy for piqueing interest and investment from the participants.

    When partners begin to understand the value of basic research, that is open doors to more opportunities that involve users in the decision-making approach. And that can help goods team become more user-centric. This gains everyone—users, the goods, and partners. It’s similar to winning an Oscar for a film because it frequently results in a favorable and productive outcome for your item. And this can be an opportunity for participants to repeat this process with different products. The secret to this approach is storytelling, and knowing how to tell a compelling story is the only way to entice partners to do more research.

    This brings us to work two, where you incrementally review a design or idea to see whether it addresses the problems.

    Act two: fight

    Act two is all about digging deeper into the problems that you identified in operate one. In order to evaluate a potential solution ( such as a design ), you typically conduct vertical research, such as usability tests, to see if it addresses the problems you identified. The issues may include unfulfilled needs or problems with a circulation or procedure that’s tripping users away. More issues may come up in the process, much like in act two of a movie. It’s here that you learn more about the figures as they grow and develop through this action.

    According to Jakob Nielsen, five users should be normally in usability tests, which means that this number of users can generally identify the majority of the issues:” You learn less and less as you add more and more users because you will keep seeing the same things over and over again… After the second user, you are wasting your time by constantly observing the same findings but no learning much new.”

    There are parallels with storytelling here too, if you try to tell a story with too many characters, the plot may get lost. With fewer participants, each user’s struggles will be more memorable and accessible to other stakeholders when presenting the research. This can help convey the issues that need to be addressed while also highlighting the value of doing the research in the first place.

    Usability tests have been conducted in person for decades, but you can also do them remotely using software like Microsoft Teams, Zoom, or other teleconferencing software. This approach has become increasingly popular since the beginning of the pandemic, and it works well. You might consider in-person usability tests like attending a play and remote sessions as more of a movie watching experience. There are advantages and disadvantages to each. Usability research in person is a much more valuable learning experience. Stakeholders can experience the sessions with other stakeholders. Additionally, you get real-time reactions, including surprises, disagreements, and discussions about what they’re seeing. Much like going to a play, where audiences get to take in the stage, the costumes, the lighting, and the actors ‘ interactions, in-person research lets you see users up close, including their body language, how they interact with the moderator, and how the scene is set up.

    If conducting usability testing in the field is like watching a play that is staged and controlled, where any two sessions may be very different from one another. You can take usability testing into the field by creating a replica of the space where users interact with the product and then conduct your research there. Or you can meet users at their location to conduct your research. With either option, you get to see how things work in context, things come up that wouldn’t have in a lab environment—and conversion can shift in entirely different directions. You have less control over how these sessions end as researchers, but this can occasionally help you understand users even better. Meeting users where they are can provide clues to the external forces that could be affecting how they use your product. In-person usability tests add a level of detail that remote usability tests frequently lack.

    That’s not to say that the “movies” —remote sessions—aren’t a good option. A wider audience can be reached through remote sessions. They allow a lot more stakeholders to be involved in the research and to see what’s going on. And they make access to a much wider range of users in their own country. But with any remote session there is the potential of time wasted if participants can’t log in or get their microphone working.

    You can ask real users questions to understand their thoughts and understanding of the solution as a result of usability testing, whether it is conducted remotely or in person. This can help you not only identify problems but also glean why they’re problems in the first place. You can also test your own ideas and determine whether they are true. By the end of the sessions, you’ll have a much clearer picture of how usable the designs are and whether they work for their intended purposes. The excitement centers on Act 2, but there are also potential surprises in that Act. This is equally true of usability tests. Unexpected things that participants say frequently alter the way you look at things, and these unexpected revelations can lead to unexpected turns in the narrative.

    Unfortunately, user research is sometimes seen as expendable. Usability testing is often the only method of research that some stakeholders believe they ever need, especially in this regard. In fact, if the designs that you’re evaluating in the usability test aren’t grounded in a solid understanding of your users ( foundational research ), there’s not much to be gained by doing usability testing in the first place. Because you narrow down the subject matter of your feedback without understanding the needs of the users. As a result, there’s no way of knowing whether the designs might solve a problem that users have. In the context of a usability test, it’s just feedback on a particular design.

    On the other hand, if you only do foundational research, while you might have set out to solve the right problem, you won’t know whether the thing that you’re building will actually solve that. This demonstrates the value of conducting both directional and foundational research.

    In act two, stakeholders will—hopefully—get to watch the story unfold in the user sessions, which creates the conflict and tension in the current design by surfacing their highs and lows. And in turn, this can encourage stakeholders to take action on the issues raised.

    Act three: resolution

    The third act is about resolving the issues from the first two acts, whereas the first two acts are about understanding the context and the tensions that can compel stakeholders to act. While it’s important to have an audience for the first two acts, it’s crucial that they stick around for the final act. That includes all members of the product team, including developers, UX experts, business analysts, delivery managers, product managers, and any other parties who have a say in the coming development. It allows the whole team to hear users ‘ feedback together, ask questions, and discuss what’s possible within the project’s constraints. And it gives the UX design and research teams more time to clarify, suggest alternatives, or provide more context for their choices. So you can get everyone on the same page and get agreement on the way forward.

    This act is primarily told in voiceover with some audience participation. The researcher is the narrator, who paints a picture of the issues and what the future of the product could look like given the things that the team has learned. They provide the stakeholders with their suggestions and direction for developing this vision.

    Nancy Duarte in the Harvard Business Review offers an approach to structuring presentations that follow a persuasive story. The most effective presenters employ the same methods as great storytellers: By reaffirming the status quo and then revealing a better way, they create a conflict that needs to be resolved, writes Duarte. ” That tension helps them persuade the audience to adopt a new mindset or behave differently”.

    This type of structure aligns well with research results, and particularly results from usability tests. It provides proof for “what is “—the issues you’ve identified. And “what could be “—your recommendations on how to address them. And so forth and forth.

    You can reinforce your recommendations with examples of things that competitors are doing that could address these issues or with examples where competitors are gaining an edge. Or they can be visual, like quick sketches of how a new design could look that solves a problem. These can help generate conversation and momentum. And this continues until the session is over, when you’ve concluded by bridging the gaps and offering suggestions for improvement. This is the part where you reiterate the main themes or problems and what they mean for the product—the denouement of the story. This stage provides stakeholders with the next steps and, hoped, the motivation to take those steps!

    While we are nearly at the end of this story, let’s reflect on the idea that user research is storytelling. The three-act structure of user research contains all the components of a good story:

      Act one: You meet the protagonists ( the users ) and the antagonists ( the problems affecting users ). The plot begins here. In act one, researchers might use methods including contextual inquiry, ethnography, diary studies, surveys, and analytics. These techniques can produce personas, empathy maps, user journeys, and analytics dashboards.
      Act two: Next, there’s character development. The protagonists face problems and difficulties, which they must overcome, and there is conflict and tension. In act two, researchers might use methods including usability testing, competitive benchmarking, and heuristics evaluation. Usability findings reports, UX strategy documents, usability guidelines, and best practices can be included in the output of these.
      Act three: The protagonists triumph and you see what a better future looks like. Researchers may use techniques like storytelling, presentation decks, and digital media in act three. The output of these can be: presentation decks, video clips, audio clips, and pictures.

    The researcher performs a number of tasks: they are the producer, the director, and the storyteller. The participants have a small role, but they are significant characters ( in the research ). And the audience are the stakeholders. But the most important thing is to get the story right and to use storytelling to tell users ‘ stories through research. By the end, the parties should leave with a goal and an eagerness to address the product’s flaws.

    So the next time that you’re planning research with clients or you’re speaking to stakeholders about research that you’ve done, think about how you can weave in some storytelling. User research is ultimately a win-win situation for everyone, and all you need to do is pique stakeholders ‘ interest in how the story ends.

  • From Beta to Bedrock: Build Products that Stick.

    From Beta to Bedrock: Build Products that Stick.

    I’ve lost count of the times I’ve watched promising thoughts go from zero to warrior in a few days before failing to deliver within weeks as a product developer for very long.

    Financial items, which is the industry in which I work, are no exception. It’s tempting to put as many features at the ceiling as possible and expect something sticks because people’s genuine, hard-earned money is on the line, user expectations are high, and crowded market. However, this strategy is a formula for disaster. Why, please:

    The drawbacks of feature-first creation

    It’s simple to get swept up in the enthusiasm of developing innovative features when you start developing a financial product from scratch or are migrating existing client journeys from papers or telephony channels to online bank or mobile apps. You might be thinking,” If I can only put one more thing that solves this particular person problem, they’ll appreciate me”! But what happens if you eventually encounter a roadblock as a result of your security team’s negligence? don’t like it, right? When a difficult-fought film fails to win over viewers or fails owing to unanticipated difficulty?

    The concept of Minimum Viable Product ( MVP ) comes into play in this context. Even though Jason Fried doesn’t usually refer to it that way, his podcast Rework and his book Getting True frequently address this concept. An MVP is a product that offers only sufficient value to your users to keep them interested, but not so much that it becomes difficult to keep up. Although the idea seems simple, it requires a razor-sharp eye, a brutal edge, and the courage to stand up for your position because” the Columbo Effect” makes it easy to fall for something when one always says” just one more thing …” to include.

    The issue with most fund apps is that they frequently turn out to be reflections of the company’s internal politics rather than an knowledge created specifically for the customer. This implies that the priority is to provide as some features and functionalities as possible to satisfy the requirements and desires of competing internal departments as opposed to a distinct value statement that is focused on what people in the real world actually want. These products may therefore quickly become a muddled mess of confusing, related, and finally unlovable client experiences—a feature salad, you might say.

    The significance of the foundation

    What is a better strategy, then? How can we create items that are reliable, user-friendly, and most importantly, stick?

    The concept of “bedrock” comes into play here. The mainstay of your product is really important to people, and Bedrock is that. It’s the fundamental building block that creates benefit and maintains relevance over time.

    The rock must be in and around the standard servicing journeys in the retail banking industry, which is where I work. People only look at their existing account once every blue moon, but they do so daily. They sign up for a credit card every year or two, but they check their stability and pay their bill at least once a quarter.

    The key is in identifying the main tasks that individuals want to complete and therefore persistently striving to make them simple, reliable, and trustworthy.

    But how do you reach the foundation? By focusing on the” MVP” strategy, giving convenience precedence, and working incrementally toward a clear value proposition. This entails removing needless functions and putting the emphasis on providing genuine value to your users.

    It also requires having some fortitude, as your coworkers might not always agree with you immediately. And in some cases, it might even mean making it clear to consumers that you won’t be coming over to their home to prepare their meal. Sometimes you need to use “opinionated user interface design” ( i .e., clumsy workaround for edge cases ) to test a concept or to give yourself some more time to work on something else.

    Realistic methods for creating financially successful products

    What are the main learnings I’ve made from my own research and expertise?

    1. What issue are you attempting to resolve first, and why? Who is it for? Before beginning any project, make sure your goal is completely clear. Make certain it also aligns with the goals of your business.
    2. Avoid the temptation to put too many characteristics at once by focusing on one, key feature and focusing on getting that right before moving on to something else. Choose one that actually adds price, and work from that.
    3. Give ease the precedence it deserves over difficulty when it comes to financial products. Eliminate unwanted details and concentrate solely on what matters most.
    4. Accept ongoing iteration: Bedrock is not a fixed destination; it is a fluid process. Continuously collect customer feedback, make product improvements, and advance in that direction.
    5. Stop, look, and listen: Don’t just go through with testing your product as part of the delivery process; test it consistently in the field. Use it for yourself. Move the A/B testing. User comments on Gatter. Speak to users and make adjustments accordingly.

    The core dilemma

    Building towards rock implies sacrificing some short-term growth prospective in favor of long-term balance, which is an interesting paradox at play here. But the reward is worthwhile because products built with a focus on rock will outlive and surpass their rivals over time and provide users with long-term value.

    How do you begin your quest for core, then? Take it slowly. Start by identifying the underlying factors that your customers actually care about. Focus on developing and improving a second, potent function that delivers real value. And most importantly, make an obsessive effort because, in the words of Abraham Lincoln, Alan Kay, or Peter Drucker ( whew! The best way to foretell the future is to build it, he said.

  • An Holistic Framework for Shared Design Leadership

    An Holistic Framework for Shared Design Leadership

    Picture this: Two people are conversing in what appears to be the same talk about the same pattern issue in a conference room at your tech company. One is talking about whether the staff has the proper skills to handle it. The other examines whether the answer really addresses the user’s issue. Similar place, the same issue, and entirely different perspectives.

    This is the lovely, sometimes messy fact of having both a Design Manager and a Guide Designer on the same group. And you’re asking the right question if you’re wondering how to make this job without creating confusion, coincide, or the feared” to some cooks” situation.

    The conventional solution has been to create clear traces on an organizational chart. The Design Manager handles persons, the Lead Designer handles art. Best, problem is fixed, right? Except that fresh organizational charts are fantasy. In fact, both roles care greatly about crew health, style quality, and shipping great work.

    When you begin to think of your style organization as a pattern organism, the magic happens when you accept collide rather than fight it.

    The biology of a good design team

    Here’s what I’ve learned from years of being on both flanks of this formula: think of your design team as a living organism. The layout manager is guided by the group dynamics, emotional security, and career growth. The Lead Designer concentrates on the body ( the handiwork, the design standards, the hands-on projects that are delivered to users ).

    But just like mind and body aren’t totally separate systems, but, also, do these tasks overlap in significant ways. Without working in harmony with one another, you didn’t have a good person. The technique is to recognize those overlaps and how to manage them gently.

    When we look at how good team really function, three critical devices emerge. Each role must coexist, but one must assume primary responsibility for maintaining a solid structure.

    Individuals & Psychology: The Nervous System

    Major caregiver: Design Manager
    Supporting position: Direct Artist

    Signs, comments, emotional health are all important components of the nervous program. When this technique is good, information flows easily, people feel safe to take risks, and the staff may react quickly to new problems.

    The main caretaker here is the Design Manager. They are keeping track of the team’s emotional state, making sure feedback loops are healthier, and creating the environment for growth. They’re hosting job meetings, managing task, and making sure no single burns out.

    However, the Lead Designer has a significant encouraging position. They’re offering visual feedback on build development needs, identifying stagnant design skills in someone, and pointing out potential growth opportunities that the Design Manager might overlook.

    Design Manager tends to:

    • discussions about careers and career development
    • emotional stability and dynamics of the team
    • Job management and resource planning
    • Systematic evaluations and input
    • Providing understanding options

    Direct Custom supports by:

    • Giving craft-specific evaluation of staff member growth
    • identifying opportunities for growth and style talent gaps
    • Providing design mentoring and assistance
    • indicating when a group is prepared for more challenging tasks.

    The Muscular System: Design, Design, and Execution

    Major caretaker: Lead Designer
    Supporting position: Design Manager

    Power, coordination, and skill development are the hallmarks of the skeletal system. When this technique is healthy, the team can do complicated design work with precision, maintain regular quality, and adjust their craft to fresh challenges.

    The Lead Designer is in charge of everything here. They are establishing design standards, offering craft instruction, and making sure that shipping work meets the required standards. They’re the ones who can tell you if a design decision is sound or if we’re solving the right problem.

    However, the Design Manager has a significant supporting role. They’re making sure the team has the resources and support they need to perform their best work, such as proper nutrition and time for an athlete recovering.

    Lead Designer tends to:

    • Definition of system usage and design standards
    • Feedback on design work that meets the required standards
    • Experience direction for the product
    • Design choices and product-wide alignment are important.
    • advancement of craft and innovation

    Design Manager supports by:

    • ensuring that design standards are understood and accepted by all members of the team
    • Confirming that a direction of experience is being pursued
    • Supporting practices and systems that scale without bottlenecking
    • facilitating design alignment among all teams
    • Providing resources and removing obstacles for outstanding craft work

    The Circulatory System: Strategy &amp, Flow

    Shared caretakers: Lead Designer and Design Manager, respectively.

    The circulatory system is about how decisions, energy, and information flow through the team. When this system is healthy, strategic direction is clear, priorities are aligned, and the team can respond quickly to new opportunities or challenges.

    True partnership occurs in this context. Although both roles are responsible for keeping the circulation strong, they both bring in different viewpoints.

    Lead Designer contributes:

    • The product fulfills the user’s needs.
    • overall experience and product quality
    • Strategic design initiatives
    • User requirements for each initiative are based on research.

    Contributes the design manager:

    • Communication to team and stakeholders
    • Stakeholder management and alignment
    • Inter-functional team accountability
    • Strategic business initiatives

    Both parties work together on:

    • Co-creation of strategy with leadership
    • Team goals and prioritization approach
    • organizational structure decisions
    • Success frameworks and measures

    Keeping the Organism Healthy

    Understanding that all three systems must work together is the key to making this partnership sing. A team with excellent craftmanship but poor psychological protection will eventually burn out. A team with great culture but weak craft execution will ship mediocre work. A team that has both but poor strategic planning will work hard on the wrong things.

    Be Specific About the System You’re Defending.

    When you’re in a meeting about a design problem, it helps to acknowledge which system you’re primarily focused on. Everyone has context for their input.” I’m thinking about this from a team capacity perspective” ( nervous system ) or” I’m looking at this through the lens of user needs” ( muscular system ).

    This is not about staying in your path. It’s about being transparent as to which lens you’re using, so the other person knows how to best add their perspective.

    Create wholesome feedback loops

    The partnerships that I’ve seen have the most effective feedback loops between the systems:

    Nervous system signals to muscular system:” The team is struggling with confidence in their design skills” → Lead Designer provides more craft coaching and clearer standards.

    Nervous system receives the message” The team’s craft skills are improving more quickly than their project complexity.”

    We’re seeing patterns in team health and craft development that suggest we need to adjust our strategic priorities, both systems say to the circulatory system.

    Handle Handoffs Gracefully

    When something switches from one system to another, this partnership’s most crucial moments occur. This might occur when a team’s ( nervous system ) needs to be exposed to a design standard ( muscular system ), or when a strategic initiative ( circulatory system ) needs specific craft execution ( muscular system ).

    Make these transitions explicit. The new component standards have been defined. Can you give me some ideas for how to get the team up to speed? or” We’ve agreed on this strategic direction. From here, I’ll concentrate on the specific user experience approach.

    Stay original and avoid being a tourist.

    The Design Manager who never thinks about craft, or the Lead Designer who never considers team dynamics, is like a doctor who only looks at one body system. Great design leadership requires both parties to be concerned with the entire organism, even when they are not the primary caregiver.

    Rather than making assumptions, one must ask questions. ” What do you think about the team’s craft development in this area”? or” How do you think this is affecting team morale and workload?” keeps both viewpoints present in every choice.

    When the Organism Gets Sick

    Even with clear roles, this partnership can go wrong. Which failure modes are the most prevalent in my experience:

    System Isolation

    The Design Manager ignores craft development and only concentrates on the nervous system. The Lead Designer ignores team dynamics and concentrates solely on the muscular system. Both people retreat to their comfort zones and stop collaborating.

    The signs: Team members receive conflicting messages, work conditions suffer, and morale declines.

    Reconnect around common goals in the treatment. What are you both trying to achieve? It’s typically excellent design work that arrives on time from a capable team. Discover how both systems accomplish that goal.

    Poor Circulation

    There is no clear strategic direction, shifting priorities, or accepting responsibility for keeping information flowing.

    The signs: Team members are unsure of their priorities, work is duplicated or dropped, and deadlines are missed.

    The treatment: Explicitly assign responsibility for circulation. Who is communicating with whom? How frequently? What’s the feedback loop?

    Autoimmune Response

    One person feels threatened by the other’s skill set. The Design Manager thinks the Lead Designer is undermining their authority. The Design Manager is allegedly misunderstanding the craft, according to the Lead Designer.

    The symptoms: defensive behavior, territorial disputes, middle-class teammates, etc.

    The treatment: Remember that you’re both caretakers of the same organism. When one system fails, the entire team suffers. The team thrives when both systems are healthy.

    The Payoff

    Yes, communication is required for this model. Yes, both parties must be able to assume full responsibility for team health. But the payoff is worth it: better decisions, stronger teams, and design work that’s both excellent and sustainable.

    The best of both worlds can be found in strong people leadership and deep craft expertise when both roles are healthy and effective together. When one person is overly sick, on vacation, or overworked, the other can help keep the team’s health. When a decision requires both the people perspective and the craft perspective, you’ve got both right there in the room.

    Most importantly, the framework is flexible. You can use the same system thinking to new challenges as your team grows. Need to launch a design system? Both the muscular system ( standards and implementation ), the nervous system (team adoption and change management ), and both have a tendency to circulate ( communication and stakeholder alignment ).

    Bottom Line

    The relationship between a Design Manager and Lead Designer isn’t about dividing territories. Multipliering impact is what is concerned with. Magic occurs when both roles are aware that they are promoting various aspects of a healthy organism.

    The mind and body work together. The team benefits from both strategic thinking and craftmanship. And most importantly, the work that is distributed to users benefits both sides.

    So the next time you’re in that meeting room, wondering why two people are talking about the same problem from different angles, remember: you’re watching shared leadership in action. And if it’s functioning well, your design team’s mind and body are both strengthening.

  • The Best Movies of 2025 (So Far)

    The Best Movies of 2025 (So Far)

    Sunlight continues to last until late in the evening, and the east coast of the United States ‘ conditions remain consistently scorching. The dog days of summer are certainly here. Perhaps so, the summer movie season is coming to an end. However, the biggest hero picture of the year is already on streaming as of press day, and studios]…]

    The post The Best Movies of 2025 ( So Far ) appeared first on Den of Geek.

    Sunlight continues to last until late in the evening, and the east coast of the United States ‘ conditions remain consistently scorching. The dog days of summer are absolutely here. Perhaps so, the summer movie season is coming to an end. However, the biggest hero picture of the year is already on streaming as of press period, and studios have entered the lull that begins somewhere around mid-August and lasts until the awards season correct picks up next month.

    It is for this purpose that we at Den of Geek tend to wait a little bit later than the center of the year in June to do what amounts to a temperature search. The cinematic calendar has a more accurate lineage between” summers” and” after summer,” though July may mark the beginning of the up half of the year. With that said, there have been a number of exceptional movie released both during the sunny months and well before. So we’ve put together the top 2025 shows in order of relevance for your viewing pleasure. But significantly.

    Jodie Comer in 28 Times After
    Sony Pictures
    cnx. command. cnx ( playerId:” 106e33c0-3911-473c-b599-b1426db57530 ), ): function ( ). render ( “0270c398a82f44f49c23c16122516796” ), }),

    28 Times After

    Some things get better with age, and that includes Danny Boyle and Alex Garland’s creative partnership. While not quite 28 years from the moment they reinvented the zombie genre with the indie breakout 28 Days Later, it’s still been more than two decades since the director and screenwriter have galloped alongside their rage-infected zombies. And to 28 Times After’s defiant credit, it opens with a  bombastic throwback to indie 2000s cinema that is every bit as frenzied as Boyle’s early work.

    The most impressive thing about 28 Times After, however, is what comes afterward. Proving they can conjure youthful rage when it counts, Boyle and Garland quickly pivot to use their post-apocalyptic UK to grapple with more eternal themes like mortality and recognizing the difference between a death with dignity and one without. At times 28 Times After resembles a folk horror movie with its medieval trappings and beatific agrarian setting. There is still an indictment of the modern world here, particularly in a post-Brexit context, but this is a movie about loss, grief, and finally forming a good life. That holds doubly true in any scene that allows Jodie Comer or Ralph Fiennes the time to dominate the frame simply by living in it. 

    Cast of the Ballad of Wallis Island
    Focus Features

    The Ballad of Wallis Island

    The Ballad of Wallis Island was previously made as a short film in 2007 by director James Griffiths and stars/writers Tom Basden and Tim Key. Waiting nearly two decades to turn the concept into a feature proved apropos for the wistful dramedy. While on the one hand, this film serves as satire for many of a creatives ‘ worst fears, including being stranded on a remote island with a disgruntled fan, on the other hand, it is a much more thoughtful reflection on the music and cultural influences that influence us and how those touchstones can become anchors that drag at our feet.

    Such is the alternating lifestyles of both folk singer Herb McGwyer ( Basden ) and eccentric millionaire Charles Heath ( Key ). Charles has invited Herb to play an intimate concert of old 2000s hits for longtime fans on a hard-to-get-to island. However, Herb only discovers that Charles, a lonely fan, makes up the intimate audience when he arrives. Also Charlie invited Herb’s ex-girlfriend and achingly missed collaborator, the now married Nell Mortimer ( Carey Mulligan ) too. Despite having a set that can go many different ways, all the collaborators, including a warmly elegiac Mulligan, manage to make it never anything less than amusing and cozy. Still, even warmth can burn. Sometimes you can’t go home, but if you do make sure there’s an exit strategy that is not dependent on the ebbing of the tide.

    Michael Fassbender in Black Bag
    Focus Features

    Black Bag

    More than one cynic has observed that marriages can be cold wars. However, few actually have government surveillance equipment and the ability to have a body count. If that sounds extreme, then you absolutely must meet George Woodhouse and Kathryn St. Jean, Michael Fassbender and Cate Blanchett’s fascinating MI6 power couple in Steven Soderbergh‘s slippery Black Bag. Benefitting from an erudite and underhanded screenplay by David Koepp ( who hasn’t been this playful in years ), Black Bag is a throwback to a time when sharp thrillers could be seen as date night entertainment for adults who like their thrills served in a frosted glass.

    The divinely performed George and Kathryn invite all of their espionage coworkers, including a dazzling ensemble made up of Regé-Jean Page, Naomie Harris, Tom Burke, and Marisa Abela, to dinner, which is where Black Bag even begins. Unbeknownst to the guests though is that George slipped some truth serum into the roast. It undoubtedly makes for lively table conversation. It also acts as an opening salvo for a story about risks that come with trust, loyalty, and knowing your partner, even in a setting where the stakes are no less high than treason and summary execution.

    Sally Hawkins in Bring Her Back Review
    A24

    Bring Her Back

    You’ll likely be enchanted by Danny and Michael Philippou, twin Australian brothers known as RackaRacka and RackaRacka, because of their upbeat optimism and joie de vivre. Which makes their two incredibly nihilistic horror movies to date, Talk to Me and now Bring Her Back, all the more curiously bleak. Bring Her Back, like their feature film debut, digs deeply into the darkest and most agonizing parts of doubt and grief, and in this case, as it relates to parents and children.

    Take Sally Hawkins ‘ Laura for instance, a gregarious and extroverted foster mother who seems to take sincere interest in Andy ( Billy Barrett ) and Piper ( Sora Wong ). Andy and Piper are step-siblings turned orphans. They also genuinely care about one another, with Piper and the actor portraying her both having visual impairments. So that makes the horror they’re about to be put through by a guardian who is herself unable to let go of the memory of a child she lost all the more insidious, even before demonology and ritualistic incantations emerge. Beyond the horror trappings, Bring Her Back is made so immersive that it’s the naked vulnerability on display in the Philippous ‘ screenplay and the ferocious turn of Hawkins, who in turn channels Bette Davis in Whatever Happened Baby Jane?

    Sophie Thatcher in Companion
    New Line Cinema / WB

    Companion

    Something of a spiritual sequel to The Stepford Wives (others might also say a correction ), Drew Hancock’s Companion kicked off a strong year for horror with this mirthful and pleasantly merciless satire. Companion, told from the perspective of an android with a heart of gold named Iris ( Sophie Thatcher ), bravely defends humanity from synthetics and shrewdly assesses humanity as probably unworthy of saving. Jack Quaid certainly has a ball personifying modern day incel entitlement as Josh, the manosphere louse who rented Iris to be his sentient sex doll until he grew bored.

    Although the plot becomes a little more complicated than you might anticipate, Hancock reveals a talent for comedy and a firm sense of tone as Companion dances between science fiction, heist movie antics, and finally feminist horror emancipation. After making a splash in the genre in last year’s Heretic, Thatcher also confirms she will be a mainstay with a bubbly performance so brimming with life that it even got a bunch of entertainment writers to sympathize with the AI.

    Paul Rudd in Friendship Review
    A24

    Friendship

    Tim Robinson’s brand of comedy can be an acquired taste. His jokes have always been punishingly cruel, relying on him to make you cry until your muscles hurt. Now that sadism has been elevated to a joyous place in Friendship, a new laugher written and directed by Andrew DeYoung that gets a lot of mileage out of our familiarity with Paul Rudd. After all, Paul Rudd is a cool dude, and his on-screen Austin is in fact the coolest with his I Love You Man smile and Anchorman-style swag.

    But it’s only after audiences are encouraged to recognize Robinson’s needy and pathetic Craig is more than just a clinger, but also a kind of milquetoast 2020s Travis Bickle, that the penny drops. Friendship is a comedy told from the delusional perspective of the villain, so watching him destroy his marriage to Kate Mara, his heinous job at a parasitic tech company, and eventually even his bromance with Rudd takes on a biblical degree of schadenfreude. Also, hold out for the toad glands scene.

    Denzel Washington in Lowest 2 Highest 2
    Apple / A24

    Lowest 2 Highest 2

    Akira Kurosawa has remained one of the most malleable and influential filmmakers when it comes to adapting and reimagining his works for other cultures. From The Magnificent Seven to A Fistful of Dollars, to even Bill Nighy’s under-appreciated gem from a few years ago, Living, the Japanese master has inspired many great films in the West (and to be fair was himself not immune from painting the works of William Shakespeare in samurai red). So it is that one of Kurosawa’s less flashy efforts, the 1960s-set ransom thriller High and Low, has proven fertile ground to plant a deeply Americanized and New York-centric Spike Lee joint: Lowest 2 Highest 2.

    The story of a magisterial music executive (Denzel Washington) who sees his kingdom threatened when envious eyes think they have kidnapped his son—but instead snatch the teenage child of Washington’s BFF and ostensible valet (Jeffrey Wright)—Lowest 2 Highest 2 is a throwback thriller and morality tale about the choices that define a soul. Yet the film also marks the fifth collaboration between Lee and Washington, and arguably their most potent since Malcolm X 33 years ago. In this context, the film takes on a seemingly personal quality about the expectations placed on Black artists by a world that thinks it has ownership over their talent and attention. It’s a trenchant, brooding work filled with self-examination and, perhaps, accusation.

    Tom Hiddleston and Annalise Basso in The Life of Chuck
    NEON

    The Life of Chuck

    Stephen King is an author usually celebrated for his gift for suspense and terror. His readers are able to identify him just as well for the ebullient humanism and moral certitude he frequently displays throughout his writing. It seems safe to say that writer-director Mike Flanagan can be counted as one of those devoted admirers. The filmmaker already has given us the best King adaptations made in this century, including Gerald’s Game and Doctor Sleep. The Life of Chuck can now be added to that list. Like Rob Reiner and Frank Darabont before him, Flanagan has picked up one of King’s less well-known tales or short stories that is only the sentimentality and none of the pesky horror crowbarred in. Even with its enigmatic mystery set at the end of the world, it’s entirely the” good vibes”.

    Seriously though, the apocalypse does seem to be nigh in one of the film’s disparate vignettes where disasters around the globe are said to be occurring. But Flanagan nor Life of Chuck, give them any mind while focusing on the failed, but nonetheless enduring, marriage of Marty ( Chiwetel Ejiofor ) and ex-wife Felicia ( Karen Gillan ). The biggest mystery of all is how this story connects with other chapters about a few days in the life of a mild-mannered accountant named Chuck ( Tom Hiddleston, Benjamin Pajak, or Jacob Tremblay, depending on the sequence ). But the logic of the narrative is far less important than the emotional truth it evokes every time one of the Chucks gives into the ache in his heart, or the twinkle in his toes.

    It is truly the most amazing crowd-pleaser one can see this year, and it deserves a much larger audience.

    Molly Gordon in Oh Hi
    Sony Pictures Classics

    Oh, Hi!

    Never let the importance of a secure word and clearly defined boundaries be undervalued. Iris and Isaac ( Molly Gordon and Logan Lerman ) could use more of both in Oh, Hi!, a light but charming comedy from director Sophie Brooks, working from a script she co-wrote with Gordon. Iris and Isaac are on their first romantic getaway from the city when they are caught in a cautionary tale of dating don’ts after discovering handcuffs in their AirBNB.

    Unfortunately it is only while tied up that Isaac makes the insensitive choice to admit he never thought they were a couple, even in spite of the fact that they’re on a weekend holiday with red wine and sautéed scallops. Iris in turn makes the rash decision to not unbound her non-beau until they can, uh, talk things out. Oh, Hello! is a parable about mixed signals and the worst-case scenarios brought on by sexual misadventure. It is a kind of millennial parable. is a bemusing rom-com of a frothy sort. Geraldine Viswanathan and John Reynolds serve as two friends roped into the high-concept crucible, and it’s narrative’s rough edges are smoothed out by a game cast that includes both actors, both of whom play the role of friends, in an ultimately sincere reflection on the dangers of leaving yourself exposed to the world, both figuratively and literally.

    Michael B Jordan in Sinners Review
    WB

    Sinners

    It is still hard to fathom why so many prognosticators second-guessed Ryan Coogler going all-in on an original horror movie via Sinners. More than once Coogler has proven to be a storyteller with superb instincts for marrying artistry with commercial affability, as seen in his soulful work in franchise films like Creed and Black Panther. Still, Sinners is Coogler unchained from IP, fan expectations, or anything but his own muses, which, when captured in stunning IMAX 65mm photography, became a blockbuster legend.

    Simply the way Coogler films rolling fields of cotton in Jim Crow and Depression era Mississippi alone is poignant enough to be worth the price of admission. Coogler uses pulpy genre elements like vampires and bootleggers with itchy trigger fingers to support a larger narrative about the transcendent and everlasting power of Black art, connecting culture with its future and past at the same time. Both his own family history and the Southern folklore and mythology are deeply rooted in the origin of the blues. One magnificent interlude in particular, which occurs when Miles Caton picks up his guitar at a juke joint, carries the movie to a special rarified space. It’s also supremely entertaining to digest all that in a movie where Michael B. Jordan dons dueling fedoras, tommy guns, and Southern accents.

    David Corenswet and Rachel Brosnahan as Superman and Lois Lane
    Warner Bros.

    Superman

    The oldest superhero in the canon has inexplicably proven the most difficult to adapt in the modern age. A live-action Superman who made you both believe and care that a man could fly has remained elusive in the 21st century despite the efforts of numerous directors, showrunners, and storytellers of various ideologies. While James Gunn’s Superman is by no means a perfect film, it is the first time since the days of Christopher Reeve and Dick Donner that the Man of Tomorrow felt vital in the here and now of today.

    A large element of that win comes from the casting. Clark Kent is portrayed in a way that is neither a put-on like Reeve’s interpretation nor a loner’s burden, like the last few big-screen Kal-Els. Corenswet makes an alien born on another planet feel human ( or one might simply say American ). However, this Superman has its origins in Rachel Brosnahan’s flawless Lois Lane. Their chemistry is so infectious it even allows the movie to hover over the picture’s patchier elements, like stuffing in four other superhero pals from” the Justice Gang”, plus plenty of top-heavy worldbuilding. Yes, Superman ‘ 25 tries to do a lot, but what it does best is give the title character back his hope and heart.

    Alison Brie and Dave Franco in Together
    NEON

    Together

    For a long time, Dave Franco and Alison Brie have been the” cool kids” duo of independent film, and writer-director Michael Shanks makes use of this to a sinister effect in Together. A movie focused on a co-dependent and deeply unhappy hipster power couple whose gone to seed in their 30s, it’s arguable whether protagonists Tim ( Franco ) and Millie ( Brie ) even remember a time when they weren’t together upon leaving their former kingdom of Brooklyn for the provincial drudgery of upstate New York.

    When they discover that upstate is more than just teaching positions and hiking trails, their passion and communication skills will be put to the test. Out in the woods awaits a Lovecraftian power that will force the pair to get a whole lot closer in what amounts to some fairly lighthearted body horror. Together has a couple of gross-out sequences inspired by Cronenberg, but it’s really the movie’s ability to use the horror of your body craving to merge—in every sense of the word—with your significant other’s as a kind of high-end, New Age couple’s therapy session that makes Together an oddly wholesome date night flick.

    Josh Brolin in Weapons
    New Line Cinema / WB

    Weapons

    Based solely on this list, it’s obvious that studios and production companies are increasingly leaning toward horror in the creation of successful original stories. But when those stories can be as twisted and satisfying as Zach Cregger’s new sleeper hit, Weapons, it is difficult to argue with the results. A follow-up ( and perhaps a crossover between the two universes )? with Cregger’s Barbarian from 2022, Weapons focuses on a community torn asunder when all the children from a single elementary classroom awaken from their beds at 2: 17 a. m. and vanish to parts unknown in the night.

    Confidently told in a novelistic format with various characters leading their own chapters and narrative timelines—including the teacher of the class that disappeared ( Julia Garner ) and the father of one of the missing children who blames the instructor explicitly ( Josh Brolin ) —Weapons is a patient ensemble piece that at times better resembles a a studio drama from 20 years ago than a horror movie. What is a deeply troubling and satisfying sophomore effort is underpinned by the true malevolence at play and the subtly subtly allusions about adults unable to protect their children from ( ahem ) weapons in the classroom.

    The post The Best Movies of 2025 ( So Far ) appeared first on Den of Geek.

  • Asynchronous Design Critique: Giving Feedback

    Asynchronous Design Critique: Giving Feedback

    One of the most successful soft knowledge we have at our disposal is the ability to work together to improve our patterns while developing our own abilities and opinions, in whatever form it takes, and whatever it may be called.

    Feedback is also one of the most underestimated equipment, and generally by assuming that we’re now great at it, we settle, forgetting that it’s a skill that can be trained, grown, and improved. Bad feedback can cause conflict in jobs, lower motivation, and negatively impact faith and teamwork over the long term. Quality opinions can be a revolutionary force.

    Practicing our knowledge is absolutely a good way to enhance, but the learning gets yet faster when it’s paired with a good base that programs and focuses the exercise. What are some fundamental components of providing effective opinions? And how can comments be adjusted for rural and distributed job settings?

    We can find a long history of sequential opinions on the web: code was written and discussed on mailing lists since the beginning of open source. Currently, engineers engage on pull calls, developers post in their favourite design tools, project managers and sprint masters exchange ideas on tickets, and so on.

    Design analysis is often the label used for a type of input that’s provided to make our job better, jointly. So it generally adheres to many of the principles with comments, but it also has some differences.

    The information

    The material of the feedback serves as the foundation for all effective critiques, so we need to begin there. There are many versions that you can use to design your content. The one that I personally like best—because it’s obvious and actionable—is this one from Lara Hogan.

    Although this formula is typically used to provide feedback to individuals, it likewise fits really well in a style criticism because it finally addresses some of the main inquiries that we work on: What? Where? Why? How? Imagine that you’re giving some comments about some pattern function that spans several screens, like an onboard movement: there are some pages shown, a movement blueprint, and an outline of the decisions made. You notice something that needs to be improved. If you keep the three elements of the equation in mind, you’ll have a mental model that can help you be more precise and effective.

    Here is a comment that could be included in some feedback, and it might appear reasonable at first glance because it appears to partially fulfill the requirements. But does it?

    Not sure about the buttons ‘ styles and hierarchy—it feels off. Can you alter them?

    Observation for design feedback doesn’t just mean pointing out which part of the interface your feedback refers to, but it also refers to offering a perspective that’s as specific as possible. Do you offer the user’s viewpoint? Your expert perspective? A business perspective? The perspective of the project manager A first-time user’s perspective?

    I anticipate that one of these two buttons will go forward and the other will go back when I see them.

    Impact is about the why. Just pointing out a UI element might sometimes be enough if the issue may be obvious, but more often than not, you should add an explanation of what you’re pointing out.

    I anticipate that one of these two buttons will go forward and the other will go back when I see them. But this is the only screen where this happens, as before we just used a single button and an “×” to close. This seems to be breaking the consistency in the flow.

    The question approach is meant to provide open guidance by eliciting the critical thinking in the designer receiving the feedback. Notably, in Lara’s equation she provides a second approach: request, which instead provides guidance toward a specific solution. While that’s a viable option for general feedback, in my experience, going back to the question approach typically leads to the best solutions because designers are generally more at ease with having an open space to experiment with.

    The difference between the two can be exemplified with, for the question approach:

    I anticipate that one of these two buttons will go forward and the other will go back when I see them. But this is the only screen where this happens, as before we just used a single button and an “×” to close. This seems to be breaking the consistency in the flow. Would it make sense to unify them?

    Or, for the request approach:

    I anticipate that one of these two buttons will go forward and the other will go back when I see them. But this is the only screen where this happens, as before we just used a single button and an “×” to close. This seems to be breaking the consistency in the flow. Let’s make sure that all screens have the same pair of forward and back buttons.

    At this point in some situations, it might be useful to integrate with an extra why: why you consider the given suggestion to be better.

    I anticipate that one of these two buttons will go forward and the other will go back when I see them. But this is the only screen where this happens, as before we just used a single button and an “×” to close. This seems to be breaking the consistency in the flow. Let’s make sure that all screens have the same two forward and back buttons so that users don’t get confused.

    Choosing the question approach or the request approach can also at times be a matter of personal preference. I did rounds of anonymous feedback and I reviewed feedback with other people a while back when I was putting a lot of effort into improving my feedback. After a few rounds of this work and a year later, I got a positive response: my feedback came across as effective and grounded. Until I changed teams. Quite unexpected, my next round of criticism from one particular person wasn’t very positive. The reason is that I had previously tried not to be prescriptive in my advice—because the people who I was previously working with preferred the open-ended question format over the request style of suggestions. However, there was a person in this other team who had always preferred specific guidance. So I adapted my feedback for them to include requests.

    One comment that I heard come up a few times is that this kind of feedback is quite long, and it doesn’t seem very efficient. Yes, but no. Let’s explore both sides.

    No, this kind of feedback is effective because the length is a byproduct of clarity, and giving this kind of feedback can provide precisely enough information for a sound fix. Also if we zoom out, it can reduce future back-and-forth conversations and misunderstandings, improving the overall efficiency and effectiveness of collaboration beyond the single comment. Imagine that in the example above the feedback were instead just,” Let’s make sure that all screens have the same two forward and back buttons”. Since the designer receiving this feedback wouldn’t have much to go by, they might just implement the change. In later iterations, the interface might change or they might introduce new features—and maybe that change might not make sense anymore. The designer might assume that the change is about consistency without the explanation, but what if it wasn’t? So there could now be an underlying concern that changing the buttons would be perceived as a regression.

    Yes, this style of feedback is not always efficient because the points in some comments don’t always need to be exhaustive, sometimes because certain changes may be obvious (” The font used doesn’t follow our guidelines” ) and sometimes because the team may have a lot of internal knowledge such that some of the whys may be implied.

    Therefore, the equation above is intended to serve as a mnemonic to reflect and enhance the practice rather than a strict template for feedback. Even after years of active work on my critiques, I still from time to time go back to this formula and reflect on whether what I just wrote is effective.

    The atmosphere

    Well-grounded content is the foundation of feedback, but that’s not really enough. The soft skills of the person who’s providing the critique can multiply the likelihood that the feedback will be well received and understood. It has been demonstrated that only positive feedback can lead to sustained change in people. It can be determined by tone alone whether content is rejected or welcomed.

    Since our goal is to be understood and to have a positive working environment, tone is essential to work on. I’ve tried to summarize the necessary soft skills over the years using a formula that resembles the one for content: the receptivity equation.

    Respectful feedback comes across as grounded, solid, and constructive. It’s the kind of feedback that, whether it’s positive or negative, is perceived as useful and fair.

    Timing refers to the moment when the feedback occurs. To-the-point feedback doesn’t have much hope of being well received if it’s given at the wrong time. If a new feature’s entire high-level information architecture is about to go live when it’s about to be released, it might still be relevant if that questioning raises a significant blocker that no one saw, but those concerns are much more likely to have to wait for a later revision. So in general, attune your feedback to the stage of the project. Early iteration? Iteration later? Polishing work in progress? Each of these needs varies. The right timing will make it more likely that your feedback will be well received.

    Attitude is the equivalent of intent, and in the context of person-to-person feedback, it can be referred to as radical candor. That entails checking whether what we have in mind will actually help the person and improve the overall project before writing. This might be a hard reflection at times because maybe we don’t want to admit that we don’t really appreciate that person. Hopefully that’s not the case, but it can happen, and that’s okay. Acknowledging and owning that can help you make up for that: how would I write if I really cared about them? How can I avoid being passive aggressive? How can I encourage constructive behavior?

    Form is relevant especially in a diverse and cross-cultural work environments because having great content, perfect timing, and the right attitude might not come across if the way that we write creates misunderstandings. There could be many reasons for this, including the fact that occasionally certain words may cause specific reactions, that nonnative speakers may not be able to comprehend all thenuances of some sentences, that our brains may be different and that our world may be perceived differently; hence, neurodiversity must be taken into account. Whatever the reason, it’s important to review not just what we write but how.

    A few years back, I was asking for some feedback on how I give feedback. I was given some sound advice, but I also got a surprise comment. They pointed out that when I wrote” Oh, ]… ]”, I made them feel stupid. That wasn’t my intention at all! I felt really bad, and I just realized that I provided feedback to them for months, and every time I might have made them feel stupid. I was horrified … but also thankful. I quickly changed the way I typed “oh” into my list of replaced words (your choice between aText, TextExpander, or others ), so that it was instantly deleted when I typed “oh.”

    Something to highlight because it’s quite frequent—especially in teams that have a strong group spirit—is that people tend to beat around the bush. It’s important to keep in mind that having a positive attitude doesn’t necessarily mean passing judgment on the feedback; rather, it simply means that you give it constructive and respectful feedback, whether it be difficult or positive. The nicest thing that you can do for someone is to help them grow.

    We have a great advantage in giving feedback in written form: it can be reviewed by another person who isn’t directly involved, which can help to reduce or remove any bias that might be there. When I shared a comment with someone I knew,” How does this sound,”” How can I do it better,” or even” How would you have written it,” I discovered that the two versions had different meanings.

    The format

    Asynchronous feedback also has a significant inherent benefit: we can devote more time to making sure that the suggestions ‘ clarity of communication and actionability fulfill two main objectives.

    Let’s imagine that someone shared a design iteration for a project. You are reviewing it and leaving a comment. There are many ways to accomplish this, and context is of course important, but let’s try to think about some things that might be worthwhile to take into account.

    In terms of clarity, start by grounding the critique that you’re about to give by providing context. This includes specifically describing where you’re coming from: do you know the project well, or do you just see it for the first time? Are you coming from a high-level perspective, or are you figuring out the details? Are there regressions? Which user’s point of view are you addressing when offering feedback? Is the design iteration at a point where it would be okay to ship this, or are there major things that need to be addressed first?

    Even if you’re giving feedback to a team that already has some background information on the project, providing context is helpful. And context is absolutely essential when giving cross-team feedback. If I were to review a design that might be indirectly related to my work, and if I had no knowledge about how the project arrived at that point, I would say so, highlighting my take as external.

    We frequently concentrate on the negatives and attempt to list all the things that could be improved. That’s of course important, but it’s just as important—if not more—to focus on the positives, especially if you saw progress from the previous iteration. Although this may seem superfluous, it’s important to keep in mind that design is a field with hundreds of possible solutions to each problem. So pointing out that the design solution that was chosen is good and explaining why it’s good has two major benefits: it confirms that the approach taken was solid, and it helps to ground your negative feedback. In the longer term, sharing positive feedback can help prevent regressions on things that are going well because those things will have been highlighted as important. Positive feedback can also help, as an added bonus, prevent impostor syndrome.

    There’s one powerful approach that combines both context and a focus on the positives: frame how the design is better than the status quo ( compared to a previous iteration, competitors, or benchmarks ) and why, and then on that foundation, you can add what could be improved. This is powerful because there is a big difference between a critique of a design that is already in good shape and one that is critiqued for a design that isn’t quite there yet.

    Another way that you can improve your feedback is to depersonalize the feedback: the comments should always be about the work, never about the person who made it. It’s” This button isn’t well aligned” versus” You haven’t aligned this button well”. This can be changed in your writing very quickly by reviewing it just before sending.

    In terms of actionability, one of the best approaches to help the designer who’s reading through your feedback is to split it into bullet points or paragraphs, which are easier to review and analyze one by one. You might want to break up the feedback into sections or even between several comments for longer pieces. Of course, adding screenshots or signifying markers of the specific part of the interface you’re referring to can also be especially useful.

    One approach that I’ve personally used effectively in some contexts is to enhance the bullet points with four markers using emojis. A red square indicates that it is something I consider blocking, a yellow diamond indicates that it needs to be changed, and a green circle provides a thorough, positive confirmation. I also use a blue spiral � � for either something that I’m not sure about, an exploration, an open alternative, or just a note. However, I’d only use this strategy on teams where I’ve already established a high level of trust because it might turn out to be quite demoralizing if I deliver a lot of red squares, and I’d have to reframe how I’d communicate that.

    Let’s see how this would work by reusing the example that we used earlier as the first bullet point in this list:

    • 🔶 Navigation—I anticipate that one of these two buttons will go forward and the other will go back when I see them. But this is the only screen where this happens, as before we just used a single button and an “×” to close. This seems to be breaking the consistency in the flow. Let’s make sure that all screens have the same two forward and back buttons so that users don’t get confused.
    • � � Overall— I think the page is solid, and this is good enough to be our release candidate for a version 1.0.
    • � � Metrics—Good improvement in the buttons on the metrics area, the improved contrast and new focus style make them more accessible.
    • Button Style: Using the green accent in this context, which conveys that it is a positive action because green is typically seen as a confirmation color. Do we need to explore a different color?
    • Given the number of items on the page and the overall page hierarchy, it seems to me that the tiles should use Subtitle 2 instead of Subtitle 1. This will keep the visual hierarchy more consistent.
    • � � Background—Using a light texture works well, but I wonder whether it adds too much noise in this kind of page. What is the purpose of using that?

    What about giving feedback directly in Figma or another design tool that allows in-place feedback? These are generally difficult to use because they conceal discussions and are harder to follow, but in the right setting, they can be very effective. Just make sure that each of the comments is separate so that it’s easier to match each discussion to a single task, similar to the idea of splitting mentioned above.

    One final note: say the obvious. Sometimes we might feel that something is clearly right or wrong, and we don’t say it. Or sometimes we might have a doubt that we don’t express because the question might sound stupid. Say it, that’s fine. You might have to reword it a little bit to make the reader feel more comfortable, but don’t hold it back. Good feedback is transparent, even when it may be obvious.

    Another benefit of asynchronous feedback is that written feedback automatically monitors decisions. Especially in large projects,” Why did we do this”? there’s nothing better than open, transparent discussions that can be reviewed at any time, and this could be a question that arises from time to time. For this reason, I recommend using software that saves these discussions, without hiding them once they are resolved.

    Content, tone, and format. Although each of these subjects offers a useful model, focusing on improving eight of the subjects ‘ focus points, including observation, impact, question, timing, attitude, form, clarity, and actionability, is a lot of work to complete at once. One effective approach is to take them one by one: first identify the area that you lack the most (either from your perspective or from feedback from others ) and start there. Then the second, followed by the third, and so on. At first you’ll have to put in extra time for every piece of feedback that you give, but after a while, it’ll become second nature, and your impact on the work will multiply.

    Thanks to Brie Anne Demkiw and Mike Shelton for reviewing the first draft of this article.

  • Asynchronous Design Critique: Getting Feedback

    Asynchronous Design Critique: Getting Feedback

    ” Any remark”? is perhaps one of the worst ways to ask for opinions. It’s obscure and empty ended, and it doesn’t give any indication of what we’re looking for. Getting good opinions starts sooner than we might hope: it starts with the demand.

    It might seem contradictory to start the process of receiving feedback with a problem, but that makes sense if we realize that getting feedback can be thought of as a form of design study. In the same way that we wouldn’t perform any studies without the correct questions to get the insight that we need, the best way to ask for feedback is also to build strong issues.

    Design criticism is never a one-shot process. Sure, any great comments process continues until the project is finished, but this is especially true for layout because architecture work continues iteration after iteration, from a high level to the finest details. Each stage needs its unique set of questions.

    And suddenly, as with any great research, we need to review what we got up, get to the base of its perspectives, and take activity. Problem, generation, and evaluation. This look at each of those.

    The problem

    Being available to input is important, but we need to be specific about what we’re looking for. Just saying” Any remark”?,” What do you think”?, or” I’d like to get your mind” at the end of a presentation—whether it’s in person, over videos, or through a written post—is likely to get a variety of different ideas or, even worse, get everyone to follow the direction of the first person who speaks up. And then… we get frustrated because vague questions like those can turn a high-level flows review into people instead commenting on the borders of buttons. Which might be a hearty topic, so it might be hard at that point to redirect the team to the subject that you had wanted to focus on.

    But how do we get into this situation? It’s a mix of factors. One is that we don’t usually consider asking as a part of the feedback process. Another is how natural it is to just leave the question implied, expecting the others to be on the same page. Another is that in nonprofessional discussions, there’s often no need to be that precise. In short, we tend to underestimate the importance of the questions, so we don’t work on improving them.

    The act of asking good questions guides and focuses the critique. It’s also a form of consent: it makes it clear that you’re open to comments and what kind of comments you’d like to get. It puts people in the right mental state, especially in situations when they weren’t expecting to give feedback.

    There isn’t a single best way to ask for feedback. It just needs to be specific, and specificity can take many shapes. A model for design critique that I’ve found particularly useful in my coaching is the one of stage versus depth.

    Stage” refers to each of the steps of the process—in our case, the design process. In progressing from user research to the final design, the kind of feedback evolves. But within a single step, one might still review whether some assumptions are correct and whether there’s been a proper translation of the amassed feedback into updated designs as the project has evolved. A starting point for potential questions could derive from the layers of user experience. What do you want to know: Project objectives? User needs? Functionality? Content? Interaction design? Information architecture? UI design? Navigation design? Visual design? Branding?

    Here’re a few example questions that are precise and to the point that refer to different layers:

    • Functionality: Is automating account creation desirable?
    • Interaction design: Take a look through the updated flow and let me know whether you see any steps or error states that I might’ve missed.
    • Information architecture: We have two competing bits of information on this page. Is the structure effective in communicating them both?
    • UI design: What are your thoughts on the error counter at the top of the page that makes sure that you see the next error, even if the error is out of the viewport?
    • Navigation design: From research, we identified these second-level navigation items, but once you’re on the page, the list feels too long and hard to navigate. Are there any suggestions to address this?
    • Visual design: Are the sticky notifications in the bottom-right corner visible enough?

    The other axis of specificity is about how deep you’d like to go on what’s being presented. For example, we might have introduced a new end-to-end flow, but there was a specific view that you found particularly challenging and you’d like a detailed review of that. This can be especially useful from one iteration to the next where it’s important to highlight the parts that have changed.

    There are other things that we can consider when we want to achieve more specific—and more effective—questions.

    A simple trick is to remove generic qualifiers from your questions like “good”, “well”, “nice”, “bad”, “okay”, and” cool”. For example, asking,” When the block opens and the buttons appear, is this interaction good”? might look specific, but you can spot the “good” qualifier, and convert it to an even better question:” When the block opens and the buttons appear, is it clear what the next action is”?

    Sometimes we actually do want broad feedback. That’s rare, but it can happen. In that sense, you might still make it explicit that you’re looking for a wide range of opinions, whether at a high level or with details. Or maybe just say,” At first glance, what do you think”? so that it’s clear that what you’re asking is open ended but focused on someone’s impression after their first five seconds of looking at it.

    Sometimes the project is particularly expansive, and some areas may have already been explored in detail. In these situations, it might be useful to explicitly say that some parts are already locked in and aren’t open to feedback. It’s not something that I’d recommend in general, but I’ve found it useful to avoid falling again into rabbit holes of the sort that might lead to further refinement but aren’t what’s most important right now.

    Asking specific questions can completely change the quality of the feedback that you receive. People with less refined critique skills will now be able to offer more actionable feedback, and even expert designers will welcome the clarity and efficiency that comes from focusing only on what’s needed. It can save a lot of time and frustration.

    The iteration

    Design iterations are probably the most visible part of the design work, and they provide a natural checkpoint for feedback. Yet a lot of design tools with inline commenting tend to show changes as a single fluid stream in the same file, and those types of design tools make conversations disappear once they’re resolved, update shared UI components automatically, and compel designs to always show the latest version—unless these would-be helpful features were to be manually turned off. The implied goal that these design tools seem to have is to arrive at just one final copy with all discussions closed, probably because they inherited patterns from how written documents are collaboratively edited. That’s probably not the best way to approach design critiques, but even if I don’t want to be too prescriptive here: that could work for some teams.

    The asynchronous design-critique approach that I find most effective is to create explicit checkpoints for discussion. I’m going to use the term iteration post for this. It refers to a write-up or presentation of the design iteration followed by a discussion thread of some kind. Any platform that can accommodate this structure can use this. By the way, when I refer to a “write-up or presentation“, I’m including video recordings or other media too: as long as it’s asynchronous, it works.

    Using iteration posts has many advantages:

    • It creates a rhythm in the design work so that the designer can review feedback from each iteration and prepare for the next.
    • It makes decisions visible for future review, and conversations are likewise always available.
    • It creates a record of how the design changed over time.
    • Depending on the tool, it might also make it easier to collect feedback and act on it.

    These posts of course don’t mean that no other feedback approach should be used, just that iteration posts could be the primary rhythm for a remote design team to use. And other feedback approaches ( such as live critique, pair designing, or inline comments ) can build from there.

    I don’t think there’s a standard format for iteration posts. But there are a few high-level elements that make sense to include as a baseline:

    1. The goal
    2. The design
    3. The list of changes
    4. The problems

    Each project is likely to have a goal, and hopefully it’s something that’s already been summarized in a single sentence somewhere else, such as the client brief, the product manager’s outline, or the project owner’s request. So this is something that I’d repeat in every iteration post—literally copy and pasting it. The idea is to provide context and to repeat what’s essential to make each iteration post complete so that there’s no need to find information spread across multiple posts. If I want to know about the latest design, the latest iteration post will have all that I need.

    This copy-and-paste part introduces another relevant concept: alignment comes from repetition. So having posts that repeat information is actually very effective toward making sure that everyone is on the same page.

    The design is then the actual series of information-architecture outlines, diagrams, flows, maps, wireframes, screens, visuals, and any other kind of design work that’s been done. In short, it’s any design artifact. For the final stages of work, I prefer the term blueprint to emphasize that I’ll be showing full flows instead of individual screens to make it easier to understand the bigger picture.

    It can also be useful to label the artifacts with clear titles because that can make it easier to refer to them. Write the post in a way that helps people understand the work. It’s not too different from organizing a good live presentation.

    For an efficient discussion, you should also include a bullet list of the changes from the previous iteration to let people focus on what’s new, which can be especially useful for larger pieces of work where keeping track, iteration after iteration, could become a challenge.

    And finally, as noted earlier, it’s essential that you include a list of the questions to drive the design critique in the direction you want. Doing this as a numbered list can also help make it easier to refer to each question by its number.

    Not all iterations are the same. Earlier iterations don’t need to be as tightly focused—they can be more exploratory and experimental, maybe even breaking some of the design-language guidelines to see what’s possible. Then later, the iterations start settling on a solution and refining it until the design process reaches its end and the feature ships.

    I want to highlight that even if these iteration posts are written and conceived as checkpoints, by no means do they need to be exhaustive. A post might be a draft—just a concept to get a conversation going—or it could be a cumulative list of each feature that was added over the course of each iteration until the full picture is done.

    Over time, I also started using specific labels for incremental iterations: i1, i2, i3, and so on. This might look like a minor labelling tip, but it can help in multiple ways:

    • Unique—It’s a clear unique marker. Within each project, one can easily say,” This was discussed in i4″, and everyone knows where they can go to review things.
    • Unassuming—It works like versions ( such as v1, v2, and v3 ) but in contrast, versions create the impression of something that’s big, exhaustive, and complete. Iterations must be able to be exploratory, incomplete, partial.
    • Future proof—It resolves the “final” naming problem that you can run into with versions. No more files named “final final complete no-really-its-done”. Within each project, the largest number always represents the latest iteration.

    To mark when a design is complete enough to be worked on, even if there might be some bits still in need of attention and in turn more iterations needed, the wording release candidate (RC ) could be used to describe it:” with i8, we reached RC” or “i12 is an RC”.

    The review

    What usually happens during a design critique is an open discussion, with a back and forth between people that can be very productive. This approach is particularly effective during live, synchronous feedback. But when we work asynchronously, it’s more effective to use a different approach: we can shift to a user-research mindset. Written feedback from teammates, stakeholders, or others can be treated as if it were the result of user interviews and surveys, and we can analyze it accordingly.

    This shift has some major benefits that make asynchronous feedback particularly effective, especially around these friction points:

    1. It removes the pressure to reply to everyone.
    2. It reduces the frustration from swoop-by comments.
    3. It lessens our personal stake.

    The first friction point is feeling a pressure to reply to every single comment. Sometimes we write the iteration post, and we get replies from our team. It’s just a few of them, it’s easy, and it doesn’t feel like a problem. But other times, some solutions might require more in-depth discussions, and the amount of replies can quickly increase, which can create a tension between trying to be a good team player by replying to everyone and doing the next design iteration. This might be especially true if the person who’s replying is a stakeholder or someone directly involved in the project who we feel that we need to listen to. We need to accept that this pressure is absolutely normal, and it’s human nature to try to accommodate people who we care about. Sometimes replying to all comments can be effective, but if we treat a design critique more like user research, we realize that we don’t have to reply to every comment, and in asynchronous spaces, there are alternatives:

      One is to let the next iteration speak for itself. When the design evolves and we post a follow-up iteration, that’s the reply. You might tag all the people who were involved in the previous discussion, but even that’s a choice, not a requirement.
    • Another is to briefly reply to acknowledge each comment, such as” Understood. Thank you”,” Good points— I’ll review”, or” Thanks. I’ll include these in the next iteration”. In some cases, this could also be just a single top-level comment along the lines of” Thanks for all the feedback everyone—the next iteration is coming soon”!
    • Another is to provide a quick summary of the comments before moving on. Depending on your workflow, this can be particularly useful as it can provide a simplified checklist that you can then use for the next iteration.

    The second friction point is the swoop-by comment, which is the kind of feedback that comes from someone outside the project or team who might not be aware of the context, restrictions, decisions, or requirements —or of the previous iterations ‘ discussions. On their side, there’s something that one can hope that they might learn: they could start to acknowledge that they’re doing this and they could be more conscious in outlining where they’re coming from. Swoop-by comments often trigger the simple thought” We’ve already discussed this …”, and it can be frustrating to have to repeat the same reply over and over.

    Let’s begin by acknowledging again that there’s no need to reply to every comment. If, however, replying to a previously litigated point might be useful, a short reply with a link to the previous discussion for extra details is usually enough. Remember, alignment comes from repetition, so it’s okay to repeat things sometimes!

    Swoop-by commenting can still be useful for two reasons: they might point out something that still isn’t clear, and they also have the potential to stand in for the point of view of a user who’s seeing the design for the first time. Sure, you’ll still be frustrated, but that might at least help in dealing with it.

    The third friction point is the personal stake we could have with the design, which could make us feel defensive if the review were to feel more like a discussion. Treating feedback as user research helps us create a healthy distance between the people giving us feedback and our ego ( because yes, even if we don’t want to admit it, it’s there ). And ultimately, treating everything in aggregated form allows us to better prioritize our work.

    Always remember that while you need to listen to stakeholders, project owners, and specific advice, you don’t have to accept every piece of feedback. You have to analyze it and make a decision that you can justify, but sometimes “no” is the right answer.

    As the designer leading the project, you’re in charge of that decision. Ultimately, everyone has their specialty, and as the designer, you’re the one who has the most knowledge and the most context to make the right decision. And by listening to the feedback that you’ve received, you’re making sure that it’s also the best and most balanced decision.

    Thanks to Brie Anne Demkiw and Mike Shelton for reviewing the first draft of this article.

  • Designing for the Unexpected

    Designing for the Unexpected

    I’m not sure when I first heard this quote, but it’s something that has stayed with me over the years. How do you create services for situations you can’t imagine? Or design products that work on devices yet to be invented?

    Flash, Photoshop, and responsive design

    When I first started designing websites, my go-to software was Photoshop. I created a 960px canvas and set about creating a layout that I would later drop content in. The development phase was about attaining pixel-perfect accuracy using fixed widths, fixed heights, and absolute positioning.

    Ethan Marcotte’s talk at An Event Apart and subsequent article “Responsive Web Design” in A List Apart in 2010 changed all this. I was sold on responsive design as soon as I heard about it, but I was also terrified. The pixel-perfect designs full of magic numbers that I had previously prided myself on producing were no longer good enough.

    The fear wasn’t helped by my first experience with responsive design. My first project was to take an existing fixed-width website and make it responsive. What I learned the hard way was that you can’t just add responsiveness at the end of a project. To create fluid layouts, you need to plan throughout the design phase.

    A new way to design

    Designing responsive or fluid sites has always been about removing limitations, producing content that can be viewed on any device. It relies on the use of percentage-based layouts, which I initially achieved with native CSS and utility classes:

    .column-span-6 {
      width: 49%;
      float: left;
      margin-right: 0.5%;
      margin-left: 0.5%;
    }
    
    
    .column-span-4 {
      width: 32%;
      float: left;
      margin-right: 0.5%;
      margin-left: 0.5%;
    }
    
    .column-span-3 {
      width: 24%;
      float: left;
      margin-right: 0.5%;
      margin-left: 0.5%;
    }

    Then with Sass so I could take advantage of @includes to re-use repeated blocks of code and move back to more semantic markup:

    .logo {
      @include colSpan(6);
    }
    
    .search {
      @include colSpan(3);
    }
    
    .social-share {
      @include colSpan(3);
    }

    Media queries

    The second ingredient for responsive design is media queries. Without them, content would shrink to fit the available space regardless of whether that content remained readable (The exact opposite problem occurred with the introduction of a mobile-first approach).

    Media queries prevented this by allowing us to add breakpoints where the design could adapt. Like most people, I started out with three breakpoints: one for desktop, one for tablets, and one for mobile. Over the years, I added more and more for phablets, wide screens, and so on. 

    For years, I happily worked this way and improved both my design and front-end skills in the process. The only problem I encountered was making changes to content, since with our Sass grid system in place, there was no way for the site owners to add content without amending the markup—something a small business owner might struggle with. This is because each row in the grid was defined using a div as a container. Adding content meant creating new row markup, which requires a level of HTML knowledge.

    Row markup was a staple of early responsive design, present in all the widely used frameworks like Bootstrap and Skeleton.

    1 of 7
    2 of 7
    3 of 7
    4 of 7
    5 of 7
    6 of 7
    7 of 7

    Another problem arose as I moved from a design agency building websites for small- to medium-sized businesses, to larger in-house teams where I worked across a suite of related sites. In those roles I started to work much more with reusable components. 

    Our reliance on media queries resulted in components that were tied to common viewport sizes. If the goal of component libraries is reuse, then this is a real problem because you can only use these components if the devices you’re designing for correspond to the viewport sizes used in the pattern library—in the process not really hitting that “devices that don’t yet exist”  goal.

    Then there’s the problem of space. Media queries allow components to adapt based on the viewport size, but what if I put a component into a sidebar, like in the figure below?

    Container queries: our savior or a false dawn?

    Container queries have long been touted as an improvement upon media queries, but at the time of writing are unsupported in most browsers. There are JavaScript workarounds, but they can create dependency and compatibility issues. The basic theory underlying container queries is that elements should change based on the size of their parent container and not the viewport width, as seen in the following illustrations.

    One of the biggest arguments in favor of container queries is that they help us create components or design patterns that are truly reusable because they can be picked up and placed anywhere in a layout. This is an important step in moving toward a form of component-based design that works at any size on any device.

    In other words, responsive components to replace responsive layouts.

    Container queries will help us move from designing pages that respond to the browser or device size to designing components that can be placed in a sidebar or in the main content, and respond accordingly.

    My concern is that we are still using layout to determine when a design needs to adapt. This approach will always be restrictive, as we will still need pre-defined breakpoints. For this reason, my main question with container queries is, How would we decide when to change the CSS used by a component? 

    A component library removed from context and real content is probably not the best place for that decision. 

    As the diagrams below illustrate, we can use container queries to create designs for specific container widths, but what if I want to change the design based on the image size or ratio?

    In this example, the dimensions of the container are not what should dictate the design; rather, the image is.

    It’s hard to say for sure whether container queries will be a success story until we have solid cross-browser support for them. Responsive component libraries would definitely evolve how we design and would improve the possibilities for reuse and design at scale. But maybe we will always need to adjust these components to suit our content.

    CSS is changing

    Whilst the container query debate rumbles on, there have been numerous advances in CSS that change the way we think about design. The days of fixed-width elements measured in pixels and floated div elements used to cobble layouts together are long gone, consigned to history along with table layouts. Flexbox and CSS Grid have revolutionized layouts for the web. We can now create elements that wrap onto new rows when they run out of space, not when the device changes.

    .wrapper {
      display: grid;
      grid-template-columns: repeat(auto-fit, 450px);
      gap: 10px;
    }

    The repeat() function paired with auto-fit or auto-fill allows us to specify how much space each column should use while leaving it up to the browser to decide when to spill the columns onto a new line. Similar things can be achieved with Flexbox, as elements can wrap over multiple rows and “flex” to fill available space. 

    .wrapper {
      display: flex;
      flex-wrap: wrap;
      justify-content: space-between;
    }
    
    .child {
      flex-basis: 32%;
      margin-bottom: 20px;
    }

    The biggest benefit of all this is you don’t need to wrap elements in container rows. Without rows, content isn’t tied to page markup in quite the same way, allowing for removals or additions of content without additional development.

    This is a big step forward when it comes to creating designs that allow for evolving content, but the real game changer for flexible designs is CSS Subgrid. 

    Remember the days of crafting perfectly aligned interfaces, only for the customer to add an unbelievably long header almost as soon as they’re given CMS access, like the illustration below?

    Subgrid allows elements to respond to adjustments in their own content and in the content of sibling elements, helping us create designs more resilient to change.

    .wrapper {
      display: grid;
      grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
         grid-template-rows: auto 1fr auto;
      gap: 10px;
    }
    
    .sub-grid {
      display: grid;
      grid-row: span 3;
      grid-template-rows: subgrid; /* sets rows to parent grid */
    }

    CSS Grid allows us to separate layout and content, thereby enabling flexible designs. Meanwhile, Subgrid allows us to create designs that can adapt in order to suit morphing content. Subgrid at the time of writing is only supported in Firefox but the above code can be implemented behind an @supports feature query. 

    Intrinsic layouts 

    I’d be remiss not to mention intrinsic layouts, the term created by Jen Simmons to describe a mixture of new and old CSS features used to create layouts that respond to available space. 

    Responsive layouts have flexible columns using percentages. Intrinsic layouts, on the other hand, use the fr unit to create flexible columns that won’t ever shrink so much that they render the content illegible.

    fr units is a way to say I want you to distribute the extra space in this way, but…don’t ever make it smaller than the content that’s inside of it.

    —Jen Simmons, “Designing Intrinsic Layouts”

    Intrinsic layouts can also utilize a mixture of fixed and flexible units, allowing the content to dictate the space it takes up.

    What makes intrinsic design stand out is that it not only creates designs that can withstand future devices but also helps scale design without losing flexibility. Components and patterns can be lifted and reused without the prerequisite of having the same breakpoints or the same amount of content as in the previous implementation. 

    We can now create designs that adapt to the space they have, the content within them, and the content around them. With an intrinsic approach, we can construct responsive components without depending on container queries.

    Another 2010 moment?

    This intrinsic approach should in my view be every bit as groundbreaking as responsive web design was ten years ago. For me, it’s another “everything changed” moment. 

    But it doesn’t seem to be moving quite as fast; I haven’t yet had that same career-changing moment I had with responsive design, despite the widely shared and brilliant talk that brought it to my attention. 

    One reason for that could be that I now work in a large organization, which is quite different from the design agency role I had in 2010. In my agency days, every new project was a clean slate, a chance to try something new. Nowadays, projects use existing tools and frameworks and are often improvements to existing websites with an existing codebase. 

    Another could be that I feel more prepared for change now. In 2010 I was new to design in general; the shift was frightening and required a lot of learning. Also, an intrinsic approach isn’t exactly all-new; it’s about using existing skills and existing CSS knowledge in a different way. 

    You can’t framework your way out of a content problem

    Another reason for the slightly slower adoption of intrinsic design could be the lack of quick-fix framework solutions available to kick-start the change. 

    Responsive grid systems were all over the place ten years ago. With a framework like Bootstrap or Skeleton, you had a responsive design template at your fingertips.

    Intrinsic design and frameworks do not go hand in hand quite so well because the benefit of having a selection of units is a hindrance when it comes to creating layout templates. The beauty of intrinsic design is combining different units and experimenting with techniques to get the best for your content.

    And then there are design tools. We probably all, at some point in our careers, used Photoshop templates for desktop, tablet, and mobile devices to drop designs in and show how the site would look at all three stages.

    How do you do that now, with each component responding to content and layouts flexing as and when they need to? This type of design must happen in the browser, which personally I’m a big fan of. 

    The debate about “whether designers should code” is another that has rumbled on for years. When designing a digital product, we should, at the very least, design for a best- and worst-case scenario when it comes to content. To do this in a graphics-based software package is far from ideal. In code, we can add longer sentences, more radio buttons, and extra tabs, and watch in real time as the design adapts. Does it still work? Is the design too reliant on the current content?

    Personally, I look forward to the day intrinsic design is the standard for design, when a design component can be truly flexible and adapt to both its space and content with no reliance on device or container dimensions.

    Content first 

    Content is not constant. After all, to design for the unknown or unexpected we need to account for content changes like our earlier Subgrid card example that allowed the cards to respond to adjustments to their own content and the content of sibling elements.

    Thankfully, there’s more to CSS than layout, and plenty of properties and values can help us put content first. Subgrid and pseudo-elements like ::first-line and ::first-letter help to separate design from markup so we can create designs that allow for changes.

    Instead of old markup hacks like this—

    First line of text with different styling...

    —we can target content based on where it appears.

    .element::first-line {
      font-size: 1.4em;
    }
    
    .element::first-letter {
      color: red;
    }

    Much bigger additions to CSS include logical properties, which change the way we construct designs using logical dimensions (start and end) instead of physical ones (left and right), something CSS Grid also does with functions like min(), max(), and clamp().

    This flexibility allows for directional changes according to content, a common requirement when we need to present content in multiple languages. In the past, this was often achieved with Sass mixins but was often limited to switching from left-to-right to right-to-left orientation.

    In the Sass version, directional variables need to be set.

    $direction: rtl;
    $opposite-direction: ltr;
    
    $start-direction: right;
    $end-direction: left;

    These variables can be used as values—

    body {
      direction: $direction;
      text-align: $start-direction;
    }

    —or as properties.

    margin-#{$end-direction}: 10px;
    padding-#{$start-direction}: 10px;

    However, now we have native logical properties, removing the reliance on both Sass (or a similar tool) and pre-planning that necessitated using variables throughout a codebase. These properties also start to break apart the tight coupling between a design and strict physical dimensions, creating more flexibility for changes in language and in direction.

    margin-block-end: 10px;
    padding-block-start: 10px;

    There are also native start and end values for properties like text-align, which means we can replace text-align: right with text-align: start.

    Like the earlier examples, these properties help to build out designs that aren’t constrained to one language; the design will reflect the content’s needs.

    Fixed and fluid 

    We briefly covered the power of combining fixed widths with fluid widths with intrinsic layouts. The min() and max() functions are a similar concept, allowing you to specify a fixed value with a flexible alternative. 

    For min() this means setting a fluid minimum value and a maximum fixed value.

    .element {
      width: min(50%, 300px);
    }

    The element in the figure above will be 50% of its container as long as the element’s width doesn’t exceed 300px.

    For max() we can set a flexible max value and a minimum fixed value.

    .element {
      width: max(50%, 300px);
    }

    Now the element will be 50% of its container as long as the element’s width is at least 300px. This means we can set limits but allow content to react to the available space. 

    The clamp() function builds on this by allowing us to set a preferred value with a third parameter. Now we can allow the element to shrink or grow if it needs to without getting to a point where it becomes unusable.

    .element {
      width: clamp(300px, 50%, 600px);
    }

    This time, the element’s width will be 50% (the preferred value) of its container but never less than 300px and never more than 600px.

    With these techniques, we have a content-first approach to responsive design. We can separate content from markup, meaning the changes users make will not affect the design. We can start to future-proof designs by planning for unexpected changes in language or direction. And we can increase flexibility by setting desired dimensions alongside flexible alternatives, allowing for more or less content to be displayed correctly.

    Situation first

    Thanks to what we’ve discussed so far, we can cover device flexibility by changing our approach, designing around content and space instead of catering to devices. But what about that last bit of Jeffrey Zeldman’s quote, “…situations you haven’t imagined”?

    It’s a very different thing to design for someone seated at a desktop computer as opposed to someone using a mobile phone and moving through a crowded street in glaring sunshine. Situations and environments are hard to plan for or predict because they change as people react to their own unique challenges and tasks.

    This is why choice is so important. One size never fits all, so we need to design for multiple scenarios to create equal experiences for all our users.

    Thankfully, there is a lot we can do to provide choice.

    Responsible design 

    “There are parts of the world where mobile data is prohibitively expensive, and where there is little or no broadband infrastructure.”

    I Used the Web for a Day on a 50 MB Budget

    Chris Ashton

    One of the biggest assumptions we make is that people interacting with our designs have a good wifi connection and a wide screen monitor. But in the real world, our users may be commuters traveling on trains or other forms of transport using smaller mobile devices that can experience drops in connectivity. There is nothing more frustrating than a web page that won’t load, but there are ways we can help users use less data or deal with sporadic connectivity.

    The srcset attribute allows the browser to decide which image to serve. This means we can create smaller ‘cropped’ images to display on mobile devices in turn using less bandwidth and less data.

    Image alt text

    The preload attribute can also help us to think about how and when media is downloaded. It can be used to tell a browser about any critical assets that need to be downloaded with high priority, improving perceived performance and the user experience. 

     
     

    There’s also native lazy loading, which indicates assets that should only be downloaded when they are needed.

    …

    With srcset, preload, and lazy loading, we can start to tailor a user’s experience based on the situation they find themselves in. What none of this does, however, is allow the user themselves to decide what they want downloaded, as the decision is usually the browser’s to make. 

    So how can we put users in control?

    The return of media queries 

    Media queries have always been about much more than device sizes. They allow content to adapt to different situations, with screen size being just one of them.

    We’ve long been able to check for media types like print and speech and features such as hover, resolution, and color. These checks allow us to provide options that suit more than one scenario; it’s less about one-size-fits-all and more about serving adaptable content. 

    As of this writing, the Media Queries Level 5 spec is still under development. It introduces some really exciting queries that in the future will help us design for multiple other unexpected situations.

    For example, there’s a light-level feature that allows you to modify styles if a user is in sunlight or darkness. Paired with custom properties, these features allow us to quickly create designs or themes for specific environments.

    @media (light-level: normal) {
      --background-color: #fff;
      --text-color: #0b0c0c;  
    }
    
    @media (light-level: dim) {
      --background-color: #efd226;
      --text-color: #0b0c0c;
    }

    Another key feature of the Level 5 spec is personalization. Instead of creating designs that are the same for everyone, users can choose what works for them. This is achieved by using features like prefers-reduced-data, prefers-color-scheme, and prefers-reduced-motion, the latter two of which already enjoy broad browser support. These features tap into preferences set via the operating system or browser so people don’t have to spend time making each site they visit more usable. 

    Media queries like this go beyond choices made by a browser to grant more control to the user.

    Expect the unexpected

    In the end, the one thing we should always expect is for things to change. Devices in particular change faster than we can keep up, with foldable screens already on the market.

    We can’t design the same way we have for this ever-changing landscape, but we can design for content. By putting content first and allowing that content to adapt to whatever space surrounds it, we can create more robust, flexible designs that increase the longevity of our products. 

    A lot of the CSS discussed here is about moving away from layouts and putting content at the heart of design. From responsive components to fixed and fluid units, there is so much more we can do to take a more intrinsic approach. Even better, we can test these techniques during the design phase by designing in-browser and watching how our designs adapt in real-time.

    When it comes to unexpected situations, we need to make sure our products are usable when people need them, whenever and wherever that might be. We can move closer to achieving this by involving users in our design decisions, by creating choice via browsers, and by giving control to our users with user-preference-based media queries. 

    Good design for the unexpected should allow for change, provide choice, and give control to those we serve: our users themselves.