Hacker Newsnew | past | comments | ask | show | jobs | submitlogin
Ask HN: Why did major desktop OSes settle on a macOS-like taskbar?
36 points by poisonborz on June 10, 2023 | hide | past | favorite | 59 comments
Glancing at the new Debian 12 screenshots, I realised that in the past years most major desktop OSes transitioned to a macOS-esque (middle-aligned, bottom) large icon taskbar. Why? Being a fan of the "classic" labeled taskbar, taskbar items with text could provide a lot more info (document or media title, current path etc) and even the elongated click area is larger and more predictable. Also presenting just icons means there has to be a second level grouping if the same app has multiple windows.

Touch displays? Should be irrelevant in desktop mode. High DPI screens that demand dense rectangular items? The tradeoff seems to be big to be just that.



Well you're describing GNOME, and most desktop Linux distributions default to GNOME. So your question is really "why do they default to GNOME".

"most major desktop OSes" is an interesting phrase because there aren't that many. macOS obviously pioneered the "dock", and Windows eventually copied it, because that's what Microsoft does. The only other "major" desktop operating systems are the various distributions of Linux. BSD-based operating systems are in no way "major".

If you don't like the dock, you would probably like KDE Plasma.


NextSTEP's dock likely inspired macOS, I would guess.


It's pretty easy in windows to switch from the moronic centered taskbar


I'm pretty allergic to the dock, and KDE takes great care of me.


Windows 11 is bringing back the option of labels and never combine app icons https://www.theverge.com/2023/4/20/23690960/microsoft-window...


The options for desktop environments on the BSDs is pretty much the same options as Linux.


I've noticed that too, and the decision seems to be more about fashion than usability to me. I noticed that it tended to happen as MacOS became popular; not as the design was better or the use-cases changed.

This MacOS dock has been around for a long time. It was actually copied from NextSTEP, which was cloned in WindowMaker, which was one of the most popular window managers for unix in the early 2000s.

But even then, the most "mainstream" window managers were copying Windows, which was the most popular OS of the day. Free Software developers would aspire to create something mainstream, and would look to copy whatever was mainstream. Back then it was windows. Today it's MacOS.


Of course it's fashion. It's pretty and doesn't hurt anyone. Just select apps with thr keyboard


It does hurt in a "mess up your spatial awareness" way by not having icons in the exact same spot as the dock resizes to cater for the number of running applications.

The windows 10 task bar is best, left aligned icons that once pinned sit in the exact same spot.


As someone who is noticing more and more Macs where they used to be Windows before, I agree. The mainstream is moving from Windows to MacOS, and the "industry leader to ripoff" is likewise changing over.


My guess: Text is of rare utility these days. Say right now I have:

Discord -- Title irrelevant

Kontact -- Title irrelevant

Firefox -- Title irrelevant, there's a million tabs

VS Code -- Title irrelevant, mostly.

Remmina -- Title relevant for once, multiple of those.

Terminals -- Title rarely relevant, I just tend to have one per display.

A lot of normal usage moved online, which means it's one of the hundred tabs people end up with. For a lot of people, working with documents is rare, and working with multiple in separate windows is very rare. Things that deal with many files like IDEs do so internally.


> Firefox -- Title irrelevant, there's a million tabs

Far from irrelevant, the title is how you keep apart all those tabs. Of course this more or less implies you use some vertical organisation feature - whether that be the built-in tab list, an extension like Grasshopper to present them as a vertical menu or something in the line of Tree Style Tabs using the sidebar - to be able to actually read the title. I have Grasshopper under the F1 key which makes tab switching painless: hit F1 and start typing part of the title and the selection is limited to whatever matches the typed text. If there is only one hit just hit enter, otherwise use the cursor keys to move to the required tab ad hit enter. No mouse needed but it can be used if so desired.

[1] https://addons.mozilla.org/en-US/firefox/addon/grasshopper-u...


>(middle-aligned, bottom) large icon taskbar.

Wider and wider monitors that are higher and higher resolution, so the bottom left gets farther and smaller from the eyes. Nevermind multi-monitor setups.

>Being a fan of the "classic" labeled taskbar, taskbar items with text could provide a lot more info

Text requires translation/localization, which is extra work, which is extra cost. Pick a generic, ideally universal icon and it's once-and-done. Also, not everyone can or will read.

>the elongated click area is larger and more predictable.

While I agree, ultimately most people are going to find working with a mouse to be complicated and arduous because it's simply not a "natural, human" action.

>presenting just icons means there has to be a second level grouping if the same app has multiple windows.

You can have multiple buttons with the same icon, you know. A good example of this being the taskbar from Windows 10 and prior with window groupings disabled.

>Touch displays? Should be irrelevant in desktop mode.

The unfortunate reality is the desktop form factor has become a second-class citizen, best we (as in us nerds and graybeards and wizards) get used to it because that reality doesn't care for our chagrin.

>High DPI screens that demand dense rectangular items? The tradeoff seems to be big to be just that.

If anything, higher resolution screens demand circular things because they obviously look smoother than on lower resolution screens.


> Wider and wider monitors that are higher and higher resolution, so the bottom left gets farther and smaller from the eyes. Nevermind multi-monitor setups.

This is easily solved by having a 'bottom left' for every screen, something I wish Windows offered natively. OpenShell does, and I've configured my awesomewm instance to do so. It still makes the most sense to me and is the way I'm most productive.

> Text requires translation/localization, which is extra work, which is extra cost. Pick a generic, ideally universal icon and it's once-and-done. Also, not everyone can or will read.

Text is necessary to distinguish instances of open applications. Not having the ability to do that decreases productivity. I would think the amount of computer users unable to read text is an extreme minority, and I'm counting people using accessibility options to read text when I say that.


>I would think the amount of computer users unable to read text is an extreme minority

Can they read? Probably yes. Will they read? Probably not.

Incidentally, you demonstrated my point almost perfectly: Not everyone can or will read.


> Can they read? Probably yes. Will they read? Probably not.

If they don't want to read, as opposed to being unable to read, they are irrelevant to the point being made.

> Incidentally, you demonstrated my point almost perfectly

I read your point, I just disagreed with it. Still do.


I said that not everyone can or will read. This is the third time I repeat this, actually. You didn't read, neither the first nor second time, which demonstrated my point perfectly.

Text is meaningless when people will not read. Ask any programmer or customer service monkey demanding to know what error message a user is running across. Most people will not read, even when demanded to read what is on the screen word for word. "I get an error." "What is the error?" "I see an error." "What does the error say?" "It's an error, fix it!"

A lot of computer people don't like how Windows BSODs became more cryptic and meaningless ("simplified"), but this is simply because nobody reads them. Likewise Windows Update changelogs, nobody reads them.

I don't necessarily agree with the trend of removing text from everything, I find text much more descriptive than cryptic monotone hieroglyphs. But I can understand and respect why the computing world is trending this way: Text is expensive to make and maintain, and not everyone appreciates them.


> I said that not everyone can or will read. This is the third time I repeat this, actually. You didn't read, neither the first nor second time, which demonstrated my point perfectly.

Once again I did read your point, I simply disagree, and still do. Ironically it's only you who doesn't seem to be reading here.

If you're going to continue to insist that isn't the case, then there really isn't any point in trying to have a discussion with you since you can't do the bare minimum and assume good faith.


Let me put it this way then: You are disagreeing to the notion most people ("computer users", as you put it) can't read.

That's fine, and I even agree with you there; most people fortunately are literate today.

The thing is I also never made such a notion nor was it the only notion I put forth. Again: "Not everyone can or will read." Emphasis mine.

This is the fourth time I'm repeating myself, by the way. No, you still aren't reading. I do thank you once again for demonstrating my point, but this is getting a little ridiculous.


I'm not demonstrating your point for you, despite your continued insistence of that, and again, you really do seem to be refusing to read, not me. I agree it's getting ridiculous.

Let me repeat something I said earlier since you apparently missed it:

If they don't want to read, as opposed to being unable to read, they are irrelevant to the point being made.

Now, do you actually have a useful point to make in response? Or just more nonsense about how I'm supposedly demonstrating your point despite that not being at all the case?

If the latter, since you already have said it's ridiculous, and I agree, I'd ask you simply not respond to end this chain here.


Users who will not read are nonetheless absolutely relevant because they are still users of your program.

Development resources are finite, so it's natural and proper to excise the unnecessary and focus on what is truly worth developing.

If maintaining text is expensive (translations/localizations) and at least some users will not appreciate them anyway, why keep the text if just using icons is cheaper and can suffice? I don't agree with this trend, but I do understand and respect where it is coming from.


I agree with your last point. I disagree though that just icons can suffice, only in the sense that productivity is lost because without text, there is not a way to easily distinguish between multiple instances of a program.

The thing is, the text has to be maintained anyway, it's still there, for example in tooltips, so not giving users an option to show it has no real defense that I can see.


macOS doesn't really have multiple instances of running applications. Apps have a single instance with multiple windows, and the mechanism for managing windows and open apps is separate.

A lot of Windows applications now also behave like that behind-the-scenes, though that isn't the default behavior and requires some cross-process signaling.


> macOS doesn't really have multiple instances of running applications.

So if I wanted to start multiple instances of TeXStudio, I'm unable to do so?

I don't use a mac often, but when I have and I've put on less common programs that do have multiple instances, they have worked fine.


You can launch new instances from the terminal with

  open -n -a <Application>
If you want you can also launch a new instance using sudo to get root privileges in them as well.


So then it is possible, which again means I need text to tell them apart instead of just an icon.


Yeah as far as I know to change the name of the launching app you would have to duplicate the app bundle and rename it. But if you go that far you could also change the icon as well.


It's _technically possible_ but nobody does it, it's mostly available as an escape hatch to debug applications and run things as other users.


You'd open a new window within the currently running TeXStudio process with File > New (Window|Document). Some apps also let you open new windows through the context menu of their Dock icons.

You can force a new process by launching through the Terminal but this is not frequently done.


The program takes a parameter to open a new instance "--start-always', this is needed to load a different session. No idea if that is needed on mac or if a new 'window' would suffice.

Either way I need text to tell my instances, or windows apart.


> Pick a generic, ideally universal icon and it's once-and-done.

I think text is pretty essential, but if we're not going to be allowed that, at least make the icon actually representative of its function. One of the reason I find having the text so important is that icons have become increasingly inscrutable.


Taskbar configurations date back to 1987's NextStep (the NeXT OS graphical shell), which is found in the WindowMaker and AfterStep window managers ... and in fact OSX's Aqua is based on NeXT, with internals still discoverable from that.

There was also the CDE (Common Desktop Environment) and its precursor VUE, which was found on HPUX, dating to 1988, originally by Apollo Computer and Domain/OS

<https://en.wikipedia.org/wiki/Visual_User_Environment>

<https://en.wikipedia.org/wiki/Common_Desktop_Environment>

I've personally largely found fat menubars, particularly at the top or bottom of landscape displays, to be annoying, and initially used twm, mwm, and fvwm without the dock. I eventually adopted WindowMaker, though with a vertically-aligned dock. I tend to invoke tools either from window menus or a terminal shell.

As to why the dock is so widely adopted:

Having a standard dock helps with support as there's a standard utility and support scripts can walk through clicking on specific items.

UI/UX follow conventions. Apple's OSX is a widely-used (though not the majority) desktop, and its usability is generally highly regarded. I strongly suspect a mix of trend-following and familiarity drives other desktops' favouring this interface.

GNOME and KDE likely document their rationales somewhere. I'm not aware of where, though if someone familiar with those projects does know, I'd appreciate the pointers.


Gnome's Human Interface Guidelines: https://developer.gnome.org/hig/ KDE's Human Interface Guidelines: https://develop.kde.org/hig/

Neither of these specifically document the design rationale behind system docks. However, both a centered dock and a left-aligned dock are attempts to apply Fitts' law to user interface design.

Fitts' law is a foundational principle in modern interface design[0]. In 2002, an experimental study found that expanding docks (such as Apple's dock, in which icons grew bigger as they were focused on) presented many benefits without any theoretical drawbacks.[1] Here is a handy resource that helps visualize Fitts' law and its implications: https://timmarco.com/fitts/

[0]: https://en.wikipedia.org/wiki/Fitts%27s_law

[1]: "Fitts’ Law and Expanding Targets: An Experimental Study, and Applications to User Interface Design" https://www.dgp.toronto.edu/~mjmcguff/research/msc-thesis/ms...


Thanks.

I'm aware of the HIGs for both GNOME and KDE, though I've not looked at them closely for years.

I was rather hoping someone with greater familiarity might know where the origins / adoption of the Dock were specifically discussed.

Searching "dock" on the Gnome HIG site turns up ... nothing.

For KDE there are a few hits, but none appear immediately relevant to this question.

So our mystery remains intact.


Devs want to put the menu where users expect it.

Where do users expect the menu to be? Wherever devs usually put it.

Where do devs usually put the menu? Where the users previously expected it to be, which is wherever devs put it before then, and so on…

There’s an informal way to solve this infinite regression. It’s a focal point - also called a Schelling point for Thomas Schelling, who proposed this idea in his analysis of cooperation without communication. The usual explanation is something like so:

“Imagine you airdrop two people into unfamiliar terrain. Their goal is to find each other. They have no radios or methods of communication. All they have is a map, and the knowledge that the other person has a copy of the same map. The map has several river crossings, a handful of houses, multiple trails, etc. The topographical layer indicates one large hill near the middle. Both subjects will identify the top of that hill as the ‘correct’ meeting place and head there, even though it has some inefficient drawbacks as a meeting place, such as requiring you to walk uphill.”

Developers and users also have to coordinate without (much) communication, so there are similar pressures on user interfaces, except with the added complication that the shared map now includes history and tradition.

Once you learn this concept you will see it everywhere in user interface design. The cog icon, the floppy disk icon, even the vilified hamburger menu icon are all focal points. Login/password entry is done in the center of the screen. Collapsible sidebar menus are on the left.

There were initial reasons for why these things were picked in the first place, but that merely “put them on the map”, so to speak. The reason for the convergence is that once these things were on the map, they naturally revealed themselves to be focal points over time.


I find it interesting that the Dock is what got copied rather than the much more long-standing (dating back to 1983 with the Apple Lisa) global menubar.

A lot of people are saying that the Dock is copied for the purpose of aesthetics, which may be true, but the aesthetic benefit of making the menubar global is arguably greater and comes with less of a functional tradeoff — it reduces the visual redundancy of duplicate window-attached menubars and gets you that clean look that GNOME and a lot of desktop apps are chasing these days, but without replacing proper menus with a messy "junk drawer" hamburger menu.

The Dock is fine, but I can take it or leave it. It's not really good enough to have strong feelings about. Not a huge fan of Win9X style taskbars either though, they get cluttered and unpleasant to scan very easily.


My chief criticism with a global menu bar is the breaking of contexts compared to window-specific menu bars.

Unless I'm working in a maximized window, I need to take my cursor and thus my attention outside of the window I'm working in. That takes mental effort to switch contexts, longer physical distance moving my hand and arm, and additional time incurred from all that extra work.

In a word, it's inefficient.


Probably depends on way of thinking or workflow. It's never been an issue for me.

I also think that regardless, a global menubar is better than a hamburger menu because it allows far more functions to be surfaced in an efficient, consistent, organized manner. Hamburger menus only contain what the developer deems "essential" and have no rhyme or reason, which makes for considerable chunks of functionality that are buried in dialog tunnels.


Are you familiar with Fitts' law? The advantage of the global menu bar is that you don't have to find it: you just flick your cursor quickly upward, and it will stop at the top of the screen, right on the menu bar. This can be more efficient, unless you have for some reason chosen a flat pointer acceleration curve.


Ok, you convinced me about the upward trip. Now what about returning to the app window?


One problem with the global menu bar is that it doesn’t work with point-to-focus window managers.


True, although I think the overlap between DEs making aesthetically-motivated changes and WMs built with point-to-focus in mind is probably small to nonexistent.


The dock is a thing I can tolerate if I have to. A global menubar, however, is something that I find very irritating. I hope that trend never catches on, at least in any way that it can't be disabled.


Plasma supports a global menu bar, though it is not the default.


Yeah, it's great that Plasma makes it an option, but it's somewhat kneecapped by the number of Linux programs that don't make their menus available for Plasma and similar plugins on other DEs (IIRC XFCE has a global menubar plugin) to display. Cross-platform Electron apps on Linux also don't make their menus available, despite almost always having menus under macOS.

For the feature to really be usable you'd almost need to make a distro and patch its packages to have global menubar support.


With all due respect sir, but Debian is not ”a mainstream desktop OS”


Its a mainstream desktop OS in my heart.


Terrible news, so if not Debian then it's finally the year of the (Arch) Linux desktop..?


It's but one of many reasons I haven't switched to Windows 11 for my Windows installs. I know OpenShell exists but still.

It makes no sense to me to not have a taskbar fill the entire span of space it has available, or at least allow it to do so.


It could be argued MAC OS got that bar from CDE

https://en.wikipedia.org/wiki/Common_Desktop_Environment

but my guess it os MAC envy :)


Nope. The MacOS Dock is a direct-line descendent of the NeXTstep Dock, which dates from 1988 and predates CDE by five years.


Yes it is from NeXT, but the the article describes a dock at the bottom of the screen that is centered. NeXT Dock by default was on the left side and vertical, so NeXT is irrelevant per the article. See:

https://en.wikipedia.org/wiki/File:NeXTSTEP_desktop.png

So the first dock I new of as described by the article was CDE. As someone mentioned RisCOS may have preceded it.


I have a NeXTstation on my desk, thanks.

The MacOS X dock, since day one, has been able to be pinned vertically on either side or centered horizontally on the bottom, as a user option. It functions identically regardless. The dock was derived straight from the Rhapsody dock, which was just a port of the NeXTSTEP dock.

The RiscOS shelf thing was a simpler device, but it was a year earlier, agreed. But your claim was that MacOS X's dock is derived from CDE, or I guess now RiscOS, and these claims are very highly dubious. Indeed with a good probability NeXT's engineers had not even seen RiscOS. The NeXTSTEP dock, complete with a black hole (later recycling sign) for trash can, was meant to be reminiscent to how people often laid out icons on the Mac Finder Desktop.


Yes, MAC OS dock came from NeXT, but by default NeXT did not center it on the bottom, the article said middle-aligned.

The only one I remembered doing that did that by default is CDE, not NeXT. Someone else brought up RiscOS.

By your logic, I could say Xerox Alto was the first if a launcher could be added and centered at the bottom manually :)


The RISC OS, specifically the "Arthur" version released in 1987, was the first to have something like the Dock. Look at the screenshot on the Wikipedia page.

https://en.wikipedia.org/wiki/History_of_RISC_OS


Personally I turn labels back on and stacking off in Windows and I can't stand the OSX dock.


> Glancing at the new Debian 12 screenshots, I realised that in the past years most major desktop OSes transitioned to a macOS-esque (middle-aligned, bottom) large icon taskbar. Why?

That's a misinformed take, Gnome is not the only desktop environment available on Debian, it just happen to be listed first in the installer, it's a DE agnostic OS

If you look at the most popular linux distro, the 3 most popular ones (according to distrowatch) uses XFCE as their default DE https://distrowatch.com/, wich provide a traditional labeled task bar by default

https://wiki.debian.org/DesktopEnvironment

And if you look at what people use in the wild, you'll notice that they move away from the setup you describe: https://old.reddit.com/r/unixporn/


It's just fashion. It moves around, and you have plenty of options to change it to how you want.


when did GNOME move its dock to the bottom? I could swear it used to be on the left (but the way I use GNOME, I rarely use the dock so I barely notice...)




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: