Mac OS X has some objectively bad UX

TL;DR: OS X heavily prioritizes aesthetics and vibes over usability; it repeatedly violates well-established HCI principles, which substantially slows interaction and increases error rates.

Back in 2024, I mentioned to a friend that I didn't like Mac OS X because of its objectively poor UX, and he laughed at me and retorted that my perception of its bad UX was purely subjective; I then proceeded to list some of the ways OS X objectively violates good UX principles, and then he admitted he struggles with Mac's UI too. It's since occurred to me that this could make for an interesting blog post, so here we go:

  • The bottom dock, aka "how to speedrun wasting the most-valuable pixels on the screen":
    • It violates Fitt's Law by neglecting to utilize the most-accessible parts of a display: the corners. These locations require the least amount of aiming to point at, and accordingly take the least amount of time to hit. Windows, for all its faults, has traditionally done a much better job of this: the bottom-left corner opens your application selector, and the right shows/hides the desktop.
    • It does not visually connect to the bottom edge. While its bounding box does, humans instinctively aim where things are displayed unless they have been educated to the contrary; this means that for many people, this dock violates Fitt's Law on the edge too — not just on the corners.
    • It does not make effective use of horizontal space: its icons have square bounding boxes instead of rectangular ones. At the top/bottom edges of a display, the only size relevant for aiming is width because the edge catches your cursor. So a 1px-tall by 200px-wide edge-target is dramatically easier to hit than a 48×48px target, even though the latter has 48× as much height. An icon magnifying a little bit on hover still gets you nowhere close to the width you would get by evenly partitioning the full display width, and it imposes a moving target cost. To add insult to injury, Mac leaves vast portions of the bottom edge completely unused. Windows XP, for comparison, has wide, short buttons for tasks, and is accordingly much-more-usable (Windows 7, unfortunately, commits the same sin as MacOS, here.).
    • It is very tall, which wastes a considerable amount screen real-estate. The way Apple decided to address this shortcoming was by having the dock disappear when you maximize things. Unfortunately, this "solution" adds a delay to mouse task-switching, as you now have to move your cursor to the bottom of the screen, wait for the bar to reappear, then aim at your target. This is terrible usability! The last thing I want is a forced delay in a core flow!
    • The current-application indicator is visually indistinct compared to what other desktop environments provide. Windows, for example, gives you a clear bounding box to indicate which application is currently selected, and this comprises far more pixels than a small black dot, thus making it much easier (and faster) to see. Worse: depending on your choice of background, this black dot may fail WCAG AA. Why even bother having it at that point? And you have to look past the app icon to see it, making it even less-likely that you will if you aren't explicitly searching for it.
  • Issues with the top bar:
    • Everything in the top bar (except for the global menu) would have comfortably fit on a wider bottom bar (see Windows for an example); there was no reason to waste so much screen real estate on a second bar. Worse, it means you now have to traverse the full height of the screen to go between targets on the two bars. On Windows, everything is together in one place.
      • I do appreciate the space savings of not having to fit a menu inside every app; but you can easily do this by just putting the menu into each app's titlebar. There's a KDE titlebar out there that let's you do this, and I can confirm that it's a good solution.
    • The top bar prevents you from using Fitt's Law to easily click things in application windowbars. In Windows, you can mindlessly throw your mouse cursor to the top-right of the screen and click to close an application, no aiming required; not so in Mac, where you must carefully aim at the top left, hoping you do not accidentally click the Apple logo by mistake. You also can't throw your cursor to the top and double-click to minimize an application. And you can't throw your cursor to the top-left to open the application's menu. Ubuntu Unity, which had a top bar and top-left window buttons, actually cared to solve this issue: maximized windows have their controls appear inside the top bar. Yet 16 years after Unity debuted and solved this problem, Apple has still learned nothing.
    • Having any fixed element at the top of the screen prevents using the top edge for application actions. What is your most-used application? Almost certainly your web-browser. What does that have? Tabs. Your top edge should be free so that you can switch tabs by aimlessly throwing your cursor at them. On MacOS, you must carefully aim at each tab to switch.
  • Issues with the application titlebar:
    • There is zero indication as to what the buttons do — you have to click them and memorize the resulting action. This is not accessible, and it's not excusable when almost everything — from other operating systems to websites — use icons for these buttons.
    • The buttons are not accessible to the colorblind. You should not rely on color as the sole way to communicate function.
    • The buttons do not visually extend to the edges of the titlebar. This makes them look like smaller targets than their actual bounding boxes, which means users spend more time aiming at them than is actually necessary.
    • In UX, there is a well-known principle that you should stick with widespread patterns unless you have a good reason to do otherwise, because people spend most of their time using other people's products. Whether these buttons are in the top-left or the top-right is of little consequence either which way in and of themselves, so you should place them where everyone else places them. Most things put those buttons in the top-right corner (not just Windows; apps too: look at Facebook's chat dialogs, for example). Mac deliberately chose an anti-pattern for afaik no reason other than to stand out. Because of this, Mac users have to use one pattern for their desktop and a different pattern for the websites they visit. This is dumb.

I am very sure there are other instances of bad design throughout the rest of the OS, but thankfully I have not had the mispleasure of having to use OS X very much in my life.

It is important to note that the above failings are not failures in graphical design (Mac has always done a fine job here.), but rather in human interaction and usability. These failings result in measurable losses to speed and higher rates of misclicks. (There are good reasons why academia established principles like Fitt's Law, Hick's Law, the Steering Law, etc.) For something you may spend a large portion of your life using, you should want a desktop environment designed to work with you, not against you; and MacOS, for whatever reason, seems largely to go out of its way to work against you.

For many of these shortcomings, there is an easy workaround: just use keyboard shortcuts. This truth is, however, not valid as a retort to my points, because it's literally saying "don't even bother using the obvious flow, use a hidden flow instead". If the obvious flow weren't dysfunctional, there wouldn't be a need to resort to a hidden flow; and to argue that keyboard shortcuts are the solution is to admit that the core flow is so flawed as to be unworthy of use.

Also, I want to state this clearly: I am not a WIndows fanboy. Indeed, my primary OS since 2010 has been, with a couple unfortunate interludes, GNU/Linux (mostly Arch, btw). But for the core desktop experience, pre-11 Windows fundamentally destroys MacOS, so I have used it as the primary point of comparison in this post because Windows (unlike, say, KDE) is immediately legible to virtually every reader.
To make it extra clear that I'm not wantonly Apple-bashing, I want to point out something only Mac does that is a very clear UX win: you can copy text from a terminal by pressing Command+C instead of Ctrl+Shift+C. I've wished I could do this on Linux ever since I first tried OS X.
Also: These complaints are not unique to OS X. Windows 11, ElementaryOS, Pop!_OS, Gnome 3, and countless others make many of the same mistakes. Indeed, as time goes on, the core desktop experience across most operating systems has been continuously degrading since around 2009 (the release of Windows 7), and the last time anyone meaningfully tried to rethink the desktop was Gnome 3 and Unity, which shipped in 2011 — those were 15 years ago! I want people to pause and start thinking about whether their UIs actually make sense. Your desktop environment matters, and we need to go back to treating it like it does. Please stop treating it as a matter of vibes and aesthetic taste; it's actually far-more a matter of HCI engineering and ergonomics. The function must come before the form; your desktop envionment is a tool.

As an aside: I do not understand why UX designers, who certainly know better, would prefer to use a desktop environment whose sins they themselves could easily articulate if they were to, at any point, think to critique its flows the way they do the ones they make at work. I don't mean this as a jab against UX designers; I love their profession and maybe someday I'll be one myself; I'm just stating that this is an indisputable irony: A situation where we take for granted something we could easily have outdone if it ever occurred to us to do so.


You'll only receive email when they publish something new.

More from Miles Huff's Blog
All posts