Design newsletter:
https://adamsilver.io/newsletter
Good Design Crash Course (free):
https://adamsilver.io/gdcc
In case you don’t know, toast messages are little messages shown on top of the UI to give feedback about an action that you’ve just taken.
Banning toast messages is an excellent decision because they have bad UX and are terrible for accessibility.
In case you don’t know, toast messages are little messages shown on top of the UI to give feedback about an action that you’ve just taken.
Banning toast messages is an excellent decision because they have bad UX and are terrible for accessibility.
Law 1: Nobody wants to use your form
Law 2: Completion time = Question Time + Pause Time
Here’s the final law:
Law 3: Users will make mistakes no matter how well your form is designed.
Law 1: Nobody wants to use your form
Law 2: Completion time = Question Time + Pause Time
Here’s the final law:
Law 3: Users will make mistakes no matter how well your form is designed.
You may have heard of this rule:
➡︎ Start with one thing per page.
This was first written about by designers Tim Paul and Caroline Jarrett.
In case you’re not familiar...
You may have heard of this rule:
➡︎ Start with one thing per page.
This was first written about by designers Tim Paul and Caroline Jarrett.
In case you’re not familiar...
➡︎ Nobody wants to use your form.
Like I said yesterday, it’s crucial to know because it emphasises respecting the user over trying to make your form fun, engaging, novel or “on brand”.
➡︎ Nobody wants to use your form.
Like I said yesterday, it’s crucial to know because it emphasises respecting the user over trying to make your form fun, engaging, novel or “on brand”.
Here’s a breakdown of the first law which is perfectly captured by a question one of my subscribers asked me:
“How can we bring joy to people who use enterprise applications for 40 hours a week?”
Here’s a breakdown of the first law which is perfectly captured by a question one of my subscribers asked me:
“How can we bring joy to people who use enterprise applications for 40 hours a week?”
Will Myddelton, who led product at GDS said that.
Here's why he said it (and what he suggests instead):
(1) It's confusing - even senior researchers at GDS didn't understand what it meant
Will Myddelton, who led product at GDS said that.
Here's why he said it (and what he suggests instead):
(1) It's confusing - even senior researchers at GDS didn't understand what it meant
→ As a user
→ I need to be able to filter the messages by type
→ So that I can find the message I'm looking for
But that's just a solution written as a need.
Instead it should read more like:
→ As a user
→ I need to be able to filter the messages by type
→ So that I can find the message I'm looking for
But that's just a solution written as a need.
Instead it should read more like:
I hear this from stakeholders (and even UI/UX designers) quite regularly when I share flows with multiple steps.
But here’s the truth:
Users don’t care about clicks, as long as each click takes them logically towards their goal.
The real problem is...
I hear this from stakeholders (and even UI/UX designers) quite regularly when I share flows with multiple steps.
But here’s the truth:
Users don’t care about clicks, as long as each click takes them logically towards their goal.
The real problem is...
For example, rule 7 is:
Every input needs a label
→ Sighted users see them
→ Screen readers announce them
→ Motor-impaired users can more easily set focus to the input thanks to the larger hit area.
For example, rule 7 is:
Every input needs a label
→ Sighted users see them
→ Screen readers announce them
→ Motor-impaired users can more easily set focus to the input thanks to the larger hit area.
And most of them had a lot of UX and accessibility issues.
But I realised that every solution I’ve ever come up with to address these issues can be traced back to 3 simple laws...
And most of them had a lot of UX and accessibility issues.
But I realised that every solution I’ve ever come up with to address these issues can be traced back to 3 simple laws...
I often hear designers and product managers say:
“Let's test both versions and see which is better”
Sounds reasonable, except that there are a bunch of downsides with this (and it’s totally unnecessary)...
I often hear designers and product managers say:
“Let's test both versions and see which is better”
Sounds reasonable, except that there are a bunch of downsides with this (and it’s totally unnecessary)...
For example, let’s imagine you need to ask the user to provide a reason for rejecting an application.
You could use different labels in different contexts, for example:
For example, let’s imagine you need to ask the user to provide a reason for rejecting an application.
You could use different labels in different contexts, for example:
For example, let’s say you have a table with a column that shows acronyms.
You say to yourself “that’s not accessible, because screen reader users will hear “I. M. P. L.”
For example, let’s say you have a table with a column that shows acronyms.
You say to yourself “that’s not accessible, because screen reader users will hear “I. M. P. L.”
Here’s the advantages:
1. Once you know the basics, you can build and iterate much quicker than in Figma - especially for complex journeys.
Here’s the advantages:
1. Once you know the basics, you can build and iterate much quicker than in Figma - especially for complex journeys.
It suggested:
“If you want the hint to appear when the user hovers on the radio button, use a tooltip for a cleaner design”
Let’s break this down:
→ ‘If you want’
Design is not about what you want. It’s about what users need.
It suggested:
“If you want the hint to appear when the user hovers on the radio button, use a tooltip for a cleaner design”
Let’s break this down:
→ ‘If you want’
Design is not about what you want. It’s about what users need.
This is where each component “loads itself” async with a spinner.
This is a slow, inaccessible experience that's totally unnecessary.
Instead, render on the server.
You’ll get the standard, accessible, browser loading indicator for free.
This is where each component “loads itself” async with a spinner.
This is a slow, inaccessible experience that's totally unnecessary.
Instead, render on the server.
You’ll get the standard, accessible, browser loading indicator for free.
In the course, I explain what design actually is (hint: it’s not just about aesthetics).
And I reveal the 4 principles I use every day as a designer to make sure that what I design is actually good.
That is:
In the course, I explain what design actually is (hint: it’s not just about aesthetics).
And I reveal the 4 principles I use every day as a designer to make sure that what I design is actually good.
That is:
You can see in the screenshot that there’s more margin above the button than below it - something most designers would say is sloppy.
And perhaps it is.
You can see in the screenshot that there’s more margin above the button than below it - something most designers would say is sloppy.
And perhaps it is.
Hacker News (if you don’t know) is a site where people discuss and upvote ideas in tech/design.
The gist of my article was:
✅ Use “Your” when communicating to the user
And:
Hacker News (if you don’t know) is a site where people discuss and upvote ideas in tech/design.
The gist of my article was:
✅ Use “Your” when communicating to the user
And:
Should I brave the comments?
Should I brave the comments?
Lots of designers agreed (surprisingly).
But some got a bit upset by it. Thought I was rage baiting or something.
The truth is that modals are much harder to use than a dedicated page.
Lots of designers agreed (surprisingly).
But some got a bit upset by it. Thought I was rage baiting or something.
The truth is that modals are much harder to use than a dedicated page.
1. Click link
2. Go to page
3. Confirm thing
So why use a modal?
I can only think of bad reasons like:
➡︎ 1. It’s quicker than a page refresh
I’ve used pages for years, not seen one issue in research related to speed.
1. Click link
2. Go to page
3. Confirm thing
So why use a modal?
I can only think of bad reasons like:
➡︎ 1. It’s quicker than a page refresh
I’ve used pages for years, not seen one issue in research related to speed.
For example, ‘My account’.
This seems fine for a navigation menu, but it doesn’t make sense in other contexts, like in an email notification...
For example, ‘My account’.
This seems fine for a navigation menu, but it doesn’t make sense in other contexts, like in an email notification...
Users will make mistakes no matter how well your form is designed.
It’s not that you shouldn’t do everything in your power to reduce errors...
Users will make mistakes no matter how well your form is designed.
It’s not that you shouldn’t do everything in your power to reduce errors...