What are some aspects of UI/UX seen in modern websites that really grind your gears?
I wish to understand what elements or aspects of the design of modern websites the end users are annoyed from. Though you are free to express your personal opinions, it would be even more insightful if you could provide objective criticism and suggestions for alternative implementations so that I may incorporate the same in my current and future projects to make them as user friendly as possible.
Some criticisms I have encountered a while back include:
Switches being basically checkboxes with more ambiguous active state
Scrolling animations that prohibit user from linearly scrolling through the page
Make sure that the opinion is not
Related to business/legal matters e.g. Cookie consent notices, ad banners etc.
Too vague e.g. Poor website layout
Highlighting objectively bad practices e.g. Lack of accessibility features
I recognise I could have followed a design system for this question, but I want to understand the situation from the perspective of the end users to see if they have a differing view on what a convenient user experience should be like.
When a page is so bloated with crap, certain elements load much after certain others, leading me to believe the page has loaded, and to click on something jus as somthing else loads and pushes it down/to the side.
I don’t understand the logic of presenting just-arrived users with a popup to sign up for a newsletter or anything. I have just arrived and will need time to see the content before I can make that kind of decision.
likewise, I do not understand moving a video to floating at the bottom corner of a page after I have scrolled past the original location of the video. If I wanted to watch the video, why would I have scrolled past it? Very often reading is superior so moving the video to the corner only adds distraction to my attempt to consume your content.
Please do not overwrite established keyboard shortcuts for browser functions. Even if you have a desktop version of your web-app you should accept that your users are using a browser to access the web-app version of your product and retain all established browser keyboard shortcuts.
Lazy loading of data is counter productive most times. When a set of data is presented by a web page, pagination is fine. This provides a clear indicator that the set of data on the current page is complete, and a CTRL-F can be performed. The process of lazy loading of additional data after scrolling to a certain point provides the end user not visual cue where the current set of results lives within the full set. In the best of cases this means having to continually scroll to the bottom of a page until nothing new loads before doing a search through the results. In the worst of cases lazy-loading will remove earlier entries and make it completely impossible to do a search through presented results.
Is your site or product intended to be end-user data to sell to data brokers? If not, then you should not be engaging in any practices that will result in any data being sold to anyone. If you are selling a physical product or service that is unrelated to end-user data and you still find yourself tempted to sell end-user data, please consider increasing your product’s price instead. This practice makes it seem that your product or service is not of high enough quality for you to make the money you need from it, and instead have to rely on the questionable practice of selling user data to close that gap.
Nagging customers to disable ad blockers is objectively pathetic. Unfortunately these are NECESSARY because the vast majority of sites pushing advertising are doing so through 3rd party services that are NOT moderating the content of the advertisements to remove malware or outright scams. Either accept that this is a security necessity, or insert your advertisements yourself. The vast majority of ad blocking software do so based off of the established codes used by 3rd party ad vendors and manually inserted advertisements will not suffer. Your ad network made this a requirement and you should be punishing them, not your users.
if you have pagination on your site’s content, either allow to next set of results to actually load a new page, or ensure that clicking “Next” also includes moving to the top of the list when the next page is loaded. After clicking “Next” I shouldn’t have to manually scroll up to the top of the new results.
All of your points are valid, in fact I've personally had the same opinions for points 2, 3, 5 and 6 for a while. I wish I could upvote for each of your points
So many sites do this with "trending" or "new" content. Like youtube used to repeat your shorts every 3 or 4 rows of video to try and convince you to watch shorts. Drove me crazy at the time because I have no interest in them.
One terrible combo is infinite scroll plus links in the footer (Bing does this, if you needed another reason not to use that site). I think pagination is generally a better pattern, since you can link to a specific page.
Also lack of back button functionality and having your state reset on refresh are also pet peeves.
Related, pagination can still get broken if you try hard enough. Some sites have pagination, but bump up the id of old posts every time there's a new post, so it's still useless because the links will change content
Sometimes it becomes a race between me and the site implementing infinite scroll to see if I can reach the footer before the site can load more content; the only time I curse my internet connection for being good
One thing i hate most is when websites act like an app without url changes. So when you click "back" in your browser, nothing fucking changes and you are still on the exact same page.
Same thing happens when you change for example a filter on a website showing a list of items. So when you set up the filters and then click on an item, then click "back", everything fully resets because non of it was set in the url.
You can't share the url with anyone because it just opens the website in its default state.
As an example, imagine a website showing all games. You set the filter to show playstation only or sort it by popular.
Then if you click on a game, then go back to the list, everything has reset. Its no longer sorted by popularity. Its no longer playstation only games etc.
It fucking infuriates me.
Or when browsing images or videos, and when you click on one and go back, it goes all the way back to the top. Because the genius that made it wants shit to load as you scroll. And then not store that scroll position in the url. So you are right back to where you started.
Yeah, particularly bad SPAs. All these things can be solved correctly, but implementing an SPA means you suddenly have to solve these problems, which just don't exist with traditional document-like webpages.
I can relate to this too. I try to fight the site out of spite by furiously clicking on the back button of the browser to get me to the home page, and it does show the page for a split second before undoing the redirects and pulling me back to the page I was originally in. In the end I have to succumb to using the website's own navigation buttons to incrementally head back to the starting page.
I personally find fading-in of web elements in scroll to be annoying. Cookies should also have an immediate one-click reject-all button directly visible without having to enter any menu.
Oh, also, any links that are inaccessible by Vimium are annoying.
Cookies should also have an immediate one-click reject-all button
I'm actually fairly certain that to be GDPR compliant they are supposed to have that. At the very least it isn't supposed to default to "accept all" either.
I was intrigued by the existence of a Vim based application for browsing, but not surprised.
How would I come about ensuring compatibility for websites with multiple interactive elements for viewing in Vimium? Do I install and test the website on Vimium during development too?
Fucking with scroll in any way. My browser and OS scroll in a familiar, reliable way and the chances of any change to that a website could possibly make improving my experience are infinitesimal. https://dontfuckwithscroll.com/
I was indeed getting the vibes of reading this article. Setting aside the topic of the website, I enjoy reading articles explaining stuff with this type of humour. Sadly I wouldn't be able to ask ChatGPT to write me one that would leave me with the same satisfaction as this one.
Making the page have empty margins by squeezing all the content into the middle of the page. When I started learning how to make website back in the 90's, this was considered a major no-no. It's really only done these days, because they focus entirely on how it looks on a phone held vertically than on an actual computer. But there's no reason to not have it use the space on devices that can see it.
I agree with this to some extent. For even wider lines of text occupying the entire desktop screen, it actually becomes hard for me to discern which line I am currently reading, causing me to start reading the entire line all over again.
Mobile-first is supposed to be a specific way of implementing responsive design, but I think a lot of people say "job done" after the first step and never get around to the whole responsive thing. I think it's easier to use a mobile layout on desktop than it is to use a desktop layout on mobile, so in that way I think mobile-first is a good principle to follow. But I agree, making a desktop layout that looks good is ignored far too much these days.
The one thing that really grinds my gears above everything else is how on some news sites, there's an autoplaying video at the top of the article that follows you when you try to scroll past it. An autoplaying video is bad enough, but that's just infuriating.
I find news sites tend to make the most aggressively bad UX decisions, most of them are a nightmare to visit even with an adblocker installed.
I use Firefox, Firefox is not a niche/unused browser. There is ZERO excuse for your web forms or pages to not work correctly because I'm using it.
At the very least, all sites should be compatible with the latest form of Edge (gross), Chrome, Firefox and Safari. Those are considered Mainstream browsers. If your site fails to work on them properly, that's one of the easiest ways to make me disappear off the site.
Another big UI thing is infinite load pages. I don't care about the next article in line, give the user a sidebar or bottom container that contains related content, then I as a user can decide to click it or not.
And one last thing that many don't take into consideration. Have a functional print layout of the page. So many sites don't bother making a print layout but, as a user if I see something that I like, I might save it to a PDF, or print it out to show the family. When I do that I don't need the headers(except maybe the title box?), banners, footers, splash screen, ad boxes, comments etc. I only really need the main body content. The print layout will show the URL if enabled, so I can always find my way back to the page without it. A lot of times if I am doing this, it's because it's significantly easier to show my family then having to somehow get them to visit the page.
The part about having proper print layout of the site is actually interesting to me. I just learned about it recently and was curious about how there was explicit CSS support for this. This introduces an entirely new perspective on how a website should be designed to offer reliable print support that I am willing to learn.
Yea, not many sites bother but, the action makes it so much better, especially if the main content was supposed to be something that the user is supposed to digest such as a recipe or wiki site.
The @media print css at-rule makes it super easy as well. just hide everything but what you want to show, and adjust the margins how you like it.
A morbillion javascript frontends, data hoarding middle ends, and another morbillion tracker tags all so you can display 5 sentences of text and a default picture which causes the website to take 5000 years to completely render as you watch Wappalyzer light up like a christmas tree on fire. Use static HTML and CSS ffs, it's there for a reason.
Modern HTTP is such a horrendous steaming pile of crap that I could honestly spend an entire day talking about the horrible ways we accomplish WWW, with about a solid 70% of it being directly attributed to pos Google.
popups when you move your cursor out of the window of the website
unprompted popups
links that break middle mouse button clicks for opening in a new tab
burger menus on an otherwise rather empty website, or pure content site on desktop
gigantic text, where 2 rows take up my entire screen, especially bad on larger monitors
that relatively new sign in with google popup on the top right on some websites
low defaults for amount per page selectors in product lists or similar, the default should depend on how many products fit on my screen, not some arbitrary value
slow loading content, or other requests that take more than ~100ms. With a modern internet connection this shouldn't happen
(not cookie banners in general, but) overly large cookie banners, also the legitimate interest toggle which, most of the time, is enabled by default (you might have interest in my data, but its definitely not legitimate); or cookie banners which block you from reading the site before clicking anything, (I know this is related to legal stuff it is not legally necessary to make invasive cookie banners)
Other people have already mentioned some of these as well
I hate when a website allows me to deselect corporate partners who have access to my data, but rather than deselecting all of them it offers me the chance to manually select 600 or 800 one at a time.
It's a little bit harder than you think, because people will definitely do things like this, and they have to account for that sort of behavior:
It is nice to see that they're working on it, where "they" means part of the W3C (so not just random nobodies):
The purpose of the Open UI, a W3C Community Group, is to allow web developers to style and extend built-in web UI components and controls, such as <select> dropdowns, checkboxes, radio buttons, and date/color pickers.
To do that, we’ll need to fully specify the component parts, states, and behaviors of the built-in controls, as well as necessary accessibility requirements, and provide test suites to ensure compatibility. We’ll also implement polyfills for our extensible web UI controls.
Today, component frameworks and design systems reinvent common web UI controls to give designers full control over their appearance and behavior. We hope to make it unnecessary to reinvent built-in UI controls, but for those who choose to do so, we expect that these design systems will benefit from Open UI’s specifications and test suites.
Long term, we hope that Open UI will establish a standard process for developing high-quality UI controls suitable for addition to the web platform.
The linked site has a bit more about it, but usually you see toggle switches like that with relatively "balanced" options. "On" / "Off" are about the same width when rendered as text. It's easy then to just make the switch big enough for the bigger option and everything's good. What happens if you have "On" and "Some really long text option that should probably be shorter"? The image shows what it looks like toggled to "On", and then goes over two solutions, neither of which are great options:
Use the smallest size and cut off the larger text. Not really a viable option
Use the longest size, but when the shorter option is toggled to, you're left with a bunch of blank space
I've witnessed it is part of dark patterns in most websites. Often the more consumer friendly option in a consent dialog box is greyed out as if the option itself is unavailable. Even I would've been fooled by it if not for my habit of clicking on the button regardless.
I just noticed this on Newegg but when you load the page, it puts a search suggestion of something popular people are searching (today its MH Wilds) in the search bar. I guess the idea is that you can click on it to instantly search for that thing. The problem is, that it takes a beat to load in so by the time you click on the search bar to enter what you wanted, you've accidentally clicked the search suggestion and then are taken to those results, instead of being able to enter the thing you wanted to search for int he first place.
It takes over the right side of the search bar, but depending on the size of the browser window, that could end up taking the majority of the search bar's free space to click on.
Giant tiles or moving pictures instead of small buttons to click to navigate.
I'm not saying I want every website to look like Wikipedia but if I had to choose between mostly text with obviously clickable links vs abstract art with bullshit hit boxes I'll take the "boring" text every single time.
Too many UI devs forget that they need to make it functional and easy to navigate first and THEN you can add flair. Never add pizazz if it inhibits functionality or visibility.
White font on a black background absolutely kills my eyes and I'll enable light mode wherever possible, but some sites force dark mode for the UI with no option to switch to light mode. I can read a paragraph and I'll still see that same paragraph in my vision for several minutes, even if I'm looking away from my monitor.