10 comments

  • robin_reala15 hours ago
    Meanwhile, GitHub is removing Toasts from Primer, their design system.[1] They’re next to impossible to implement in a way that retains accessibility across all needs, and if you try to restrict their usage to places where accessibility doesn’t matter so much (simple ephemeral confirmations) people misuse them anyway.<p>It’s notable that accessibility isn’t mentioned once in this post, or, in fact, in the component’s documentation.<p>[1] <a href="https:&#x2F;&#x2F;primer.style&#x2F;accessibility&#x2F;toasts&#x2F;" rel="nofollow">https:&#x2F;&#x2F;primer.style&#x2F;accessibility&#x2F;toasts&#x2F;</a>
    • akersten39 minutes ago
      GitHub is also limiting the new PR review page to only show 40 comments from reviewers. Who knows which 40. If you want to see more, they have a banner that tells you to switch back to the legacy view. No idea if they&#x27;ll just silently lose the feature of &quot;seeing all your PR&#x27;s comments&quot; once the legacy view is discontinued.<p>So I wouldn&#x27;t take any inferences from their design system as gospel.
    • CharlesW14 hours ago
      &gt; <i>It’s notable that accessibility isn’t mentioned once in this post, or, in fact, in the component’s documentation.</i><p>It&#x27;s a red flag for sure. That said, there&#x27;s nothing preventing toasts from being accessible: <a href="https:&#x2F;&#x2F;react-spectrum.adobe.com&#x2F;react-aria&#x2F;useToast.html" rel="nofollow">https:&#x2F;&#x2F;react-spectrum.adobe.com&#x2F;react-aria&#x2F;useToast.html</a><p>I think it would be accurate for GitHub to say, &quot;GitHub no longer uses toasts because <i>we didn&#x27;t want to make the effort</i> to make them accessible or usable.&quot;
      • robin_reala10 hours ago
        Spectrum’s Toast docs don’t mention how they make Toasts accessible with screen magnifiers (more widely used than screen readers based on the last WebAIM surveys I saw), so I guess they didn’t consider them?
        • MrJohz2 hours ago
          Everyone knows accessibility is just throwing aria tags at any element you see. The more aria tags there are, the more accessible it must be, right? &#x2F;s
      • thunderfork11 hours ago
        I think that toasts are kind of an attractive nuisance when it comes to accessibility.<p>They can technically, with ample constraints and a great deal of restraint, maybe end up complying with WCAG, etc., but all it takes is one developer saying &quot;well a toast is easy&quot; or &quot;this isn&#x27;t that important, make it auto-dismiss&quot; and you&#x27;re back in bad pattern town.<p>You see this with government web design systems - they have a very limited and constrained palette of patterns, because it allows for more consistency and <i>reliable</i> accessibility, versus having a bunch of tools that you just generally shouldn&#x27;t use.<p>(The GitHub page linked above also makes a great case for how &quot;making toasts accessible&quot; isn&#x27;t as simple as just having the right aria roles - lots of details the Adobe design doesn&#x27;t seem to completely cover, unfortunately)
    • samsolomon6 hours ago
      I’m the design leader for an enterprise software company and would love to get rid of toasts. Places where feedback is immediate don’t need them and simple forms can probably be fine with a banner or alert.<p>Reasons that toasts are difficult to get rid of:<p>- Easy for developers to implement consistently.<p>- Providing feedback where actions are taken on elements not on the screen (like bulk actions on a data grid, or within our workflow).<p>- Dense UIs where actions are taken frequently and injecting an alert or banner to be dismissed adds a ton of work for users. Also, causing the UI to jump isn’t great.<p>Would love to hear solutions to the above.
      • MrJohz2 hours ago
        I quite like the technique of adding a kind of &quot;microtoast&quot; right next to the element that&#x27;s just been clicked&#x2F;updated. So you&#x27;d click a button, and then directly above or below the button (or even on the button, depending on the notification), you add a bit of text saying the action has been completed. That disappears after a short delay, just like a toast. It&#x27;s still got some of the accessibility issues that always come with popping up random elements in the UI, but at least it is directly next to where the user is interacting, so they can easily see that what they&#x27;ve done was successful, or failed, or whatever.<p>This works well for the last category, because it provides feedback but it doesn&#x27;t need to be dismissed. But it also typically needs to be implemented afresh in each place it&#x27;s used, which means more fiddly developer work.<p>All that says, I&#x27;ve lost this battle plenty of times and a lot of the stuff I&#x27;ve worked on ends up getting toasts in the end because they&#x27;re just so much easier to implement than anything else.
    • chipheat12 hours ago
      Not too hopeful with accessibility, as it isn&#x27;t pleasant to use at all with reduced motion enabled. They flicker when added and linger around when swiped away.
    • toddmorey7 hours ago
      When async notifications arrive from background processes… How is the user notified? (Not defending toasts, just curious how to do it better.)
      • toddmorey7 hours ago
        GitHub seems to suggest banners or “Also consider ways to notify the user in other communication channels such as email, notifications, or a push notification in the GitHub app.”<p>On MacOS… emails and push notifications create… toast messages
  • jmercouris15 hours ago
    Toasts are a great way to lose information. They are a terrible design and should not be used. They distract the user, are not dense with information, and provide no value. If a message is important enough for the user to read, it should be a dialog box.
    • jopicornell13 hours ago
      Dialogs are a great way to lose information. They are often dismissed by users that want to do their job and are interrupted by modals. Users focused on their tasks blindly dismiss dialogs.<p>Read the above as a critique to your strong opinion and not an opinion of mine.<p>My opinion is that toasts are great for notifications that can be reviewed&#x2F;checked later, like chat notifications or finished background tasks.<p>What should be avoided, just for the same reason as modals&#x2F;dialogs, is an overuse, causing fatigue.
      • mhitza10 hours ago
        Dialogs don&#x27;t have to be modal, and in the parent comments context they aren&#x27;t.
    • ahallock13 hours ago
      Developers reach for Toasts because they&#x27;re zero effort. Good user experience takes a lot of thought and you can skip all that with Toasts haha.
      • robin_reala9 hours ago
        Zero effort, <i>and they animate</i>. Components that have animation baked in are drug-like in how they hook in designers and devs who are only thinking about the visual presentation.
    • oulipo214 hours ago
      Most of the time they&#x27;re used for a quick visual confirmation that &quot;your operation went right&quot;
      • jmercouris14 hours ago
        The information that the user did something &quot;right&quot; should be responsive next to where the user initiated the action- not in a random corner.
        • nine_k13 hours ago
          That control may not be visible by the time the operation completes.
          • strogonoff6 hours ago
            Toasts are popular, but not the only option if you want to notify the user about completion of a longer-running action when the user may have already switched away from where they started it. Consider a status bar[0] instead. You can make it cute and animated, too!<p>[0] <a href="https:&#x2F;&#x2F;developer.mozilla.org&#x2F;en-US&#x2F;docs&#x2F;Web&#x2F;Accessibility&#x2F;ARIA&#x2F;Reference&#x2F;Roles&#x2F;status_role" rel="nofollow">https:&#x2F;&#x2F;developer.mozilla.org&#x2F;en-US&#x2F;docs&#x2F;Web&#x2F;Accessibility&#x2F;A...</a>.
          • thunderfork11 hours ago
            [dead]
      • tyre12 hours ago
        That’s why confetti exists
  • varun_ch14 hours ago
    I’m far from a UX designer but whenever I use something with toasts I feel like I don’t notice them pop up in my periphery. I think it would be better if the confirmation for an action I did just showed up wherever I performed that action (like a button changing state to a spinner and then either an error or a confirmation)
    • hungrymagnum10 hours ago
      This can be applied for a success (change the button to a green tick mark) or an unsuccessful action (change the button to a red x mark).<p>But what if you want to give details on why the action was unsuccessful? How do you show it near the button or change the button itself?
      • chao-6 hours ago
        <i>&gt;How do you show it near the button?</i><p>What stops you from placing these details you want as near as is reasonable to a button? Alternatively, placing the details near or in some container for the data&#x2F;entity&#x2F;element that the button relates to?
  • araes11 hours ago
    Was really hoping it was an article about making electronics out of fried bread products. &quot;With electrodes wired to our margarine covered breadboard we were able to accomplish ... &quot;
  • Waterluvian13 hours ago
    Despite being the first point made, i feel that it’s likely the name didn’t contribute to its success, and possibly worked against it. It’s not discoverable and it doesn’t tell the reader much of anything. It’s the kind of name you get away with when your product is established by other means.
  • anilakar16 hours ago
    Scrolling that web site on mobile is really choppy.
    • tpetry15 hours ago
      Perfectly smooth on iOS for me.
    • onion2k14 hours ago
      Looking at the replies to your comment makes me think that <i>maybe</i> the browser software isn&#x27;t the only factor that impacts website perf.
    • slig15 hours ago
      Exploded my mobile browser on Android.
    • urban_alien15 hours ago
      VERY laggy on Android FF.
    • leosanchez15 hours ago
      Perfectly smooth on Android FF.
  • nine_k13 hours ago
    &gt; <i>While I’m sacrificing discoverability and clarity, it feels elegant to me</i><p>Sigh. So much of modern &quot;UX design&quot; seems to be lured by this siren call :(
  • djbarnwal12 hours ago
    This was a great read!
  • jgalt21212 hours ago
    &gt; It’s now downloaded over 7,000,000 times per week<p>Why do all these packages have so many downloads? Are all the CI &#x2F; CD routines always downloading a fresh copy and not caching?
    • mmarvin10 hours ago
      Yes, exactly that’s the case.