Why do linux GUIs look like they do? (like shit)
October 18, 2013 1:28 AM   Subscribe

I've got some old laptops I want to breathe new life into by installing linux on them and choosing a performant window manager. Whether its GNOME or KDE or any other GUI though, theres something very je ne sais quoi about the way they look that I can't get over. Even ubuntu's unity interface has it.. I can't quite put my finger on what it is exactly. Its the way the text looks, the way the buttons and windows look.. menus.. its kind of everything. Does anyone know what I mean? help me understand what it is exactly i'm referring to.. in other words, why can mac os and windows look so slick but linux always kind of looks like shit?
posted by postergeist to Computers & Internet (25 answers total) 7 users marked this as a favorite
I feel exactly the same way, but I always assumed it was because free projects like gnome/kde/whatever don't have the same amount of resources as Apple, Microsoft or Google (same reason gmail is so popular, you can get free email anywhere but it just feels nice to use) to throw at HCI guys to work on things like QoE and APIs to facilitate additional development.

It bothers me to the extent that I will install old versions of Windows on machines before trying to make a linux box. The only machines I have running linux are servers that are strictly CLI from ssh. It has the added benefit of making me pretty good with vim/sed/regex/etc, but zero utility for web browsing, media, games, etc.
posted by GooseOnTheLoose at 2:00 AM on October 18, 2013

One aspect is just about what you're used to. New things look weird. I find Windows and OSX jarring on the rare occasions when I use them now.

Another is as GooseOnTheLoose says, Linux GUIs don't have the design effort lavished on them that proprietary systems with a revenue stream can afford.

Another is specifically about fonts. For reasons to do with patents and copyright, this has historically been a weak spot.
posted by i_am_joe's_spleen at 2:13 AM on October 18, 2013

I don't have any in-depth knowledge of the software substratum, but I've been using Linux for about 3 years now (first SuSE and now Mint) and I have to say I feel the opposite as you do about the look and feel thing. My overall sense is that linux cosmetics are plain but undistracting, while Windows and Mac have all manner of superfluous eye candy and a facile and slick corporate vibe. Windows visuals in particular now make me cringe.

A lot of it's just what you're used to, I suppose.

But: different linux desktops have different looks, so its worth shopping around. I vastly prefer the Cinnamon environment that comes with Mint over any KDE, for instance, on grounds of aesthetics alone. Any any environment is wildly configurable, too, if you want to get into that.

And: the handling of fonts is often not optimal out-of-the box in linux, i've found. Kerning and rasterization algorithms and stuff like that. There are tweaks that googling may help you discover. And sometimes the bunch of fonts that come with the system are limited. Copying the actual fonts from a Windows distribution into your linux fonts folder is easy to do and will make an obvious improvement, though it's frowned upon by purists and the legalistically upright.
posted by bertran at 2:18 AM on October 18, 2013 [2 favorites]

Response by poster: Yes, this will definitely digress into a debate about personal taste and of course thats part of it. But it's not 'what i'm used to' per se. I started using the 'internet' before the web was a standard and it was mostly telnet. Then it was DOS, Windows 3.1, VAX and UNIX in college, Linux and Windows and recently MAC OS.

But I think theres something else going on here and thats what i'm trying to put my finger on. It has to do with rendering somehow. I'm curious about the actual technological reasons, if there are any, not so much the human effort or lack thereof.

As far as the design effort though, I wouldn't agree with the above. The ubuntu folks obviously went through a lot of trouble to be competitive in the GUI market when they made unity, to appeal to people who want something more 'corporate' looking as one of you has said. But yet, unity still has that linuxy quality about it.

I've heard the reasoning about fonts and anti-aliasing, rasterization before. Maybe a better question is, what makes MAC OS or Windows what they are in this respect that linux lacks? I'm not sure i'm convinced by the lack-of-design-effort argument
posted by postergeist at 2:58 AM on October 18, 2013

Linux GUIs tend not to have any overall guiding design principles based on ergonomic studies. It is just people imitating what they have seen elsewhere and copying the surface appearance but not the underlying behaviour and consistency ("monkey see, monkey do"). This is the problem with Ubuntu, it is imitation without insight.

If no one is paid to enforce quality and consistency these properties will generally be absent.
posted by epo at 3:10 AM on October 18, 2013 [5 favorites]

+1 on Winterhill's comment. After years on Linux, and specifically Xubuntu for the last 2+ years, anything on Windows just looks off to me. I have a MacBook Pro at work and I will say I think Ubuntu clearly is trying to emulate Apple's design sensibility, although I don't think they completely succeeded.

I wonder if part of it might be graphics driver? If you are using the default open source graphic driver you might be missing something in how stuff gets rendered? A recent kernel update borked my desktop box due to an incompatibility with the proprietary graphics driver, so I had to fall back to the generic open source driver. I noticed the GUI was less refined, things looked more boxy. It took a day to get used to it.
posted by COD at 4:22 AM on October 18, 2013

The bad reputation of Linux UI is largely inconsistency and jarring variety due to the variety of contributors and lack of an enforced standard. Some of the recent Ubuntu corporate sheen has an aesthetic that some like but open a few random apps and the inside may be several visually very different graphic packages.
posted by sammyo at 4:43 AM on October 18, 2013

The best reason I can come up with for linux GUIs looking the way they do is: because they can. Apple and Microsoft's share price depend on them having one vision for how their product should look and behave. With linux, it's a much looser focus; apart from Ubuntu, there's no single group or person driving how things should look or behave. Apple and Microsoft exist to sell more computers, since their new OSs always work best on the newest hardware. Linux exists to … see, there are many ways to answer that. Consequently, there are hundreds of ways to have a linux box configured, just as there are thousands of ways to define a current linux box. Current Mac OS and Windows machines are multi-core, multi-gigabyte Intel 64 machines. Your toaster could be a linux box.

One thing that might help with the display shittiness: colour calibration. Every linux I've seen comes with a completely flat stock colour calibration. With CRTs, that didn't used to be a problem. Backlit LCDs, however, look very cold and blue, and (subjectively) Apple and Microsoft seem to have warmed up their colour a bit. Mac OS and Windows still need to be calibrated to get proper colour display, but linux doesn't seem to make any correction for this.
posted by scruss at 4:53 AM on October 18, 2013 [1 favorite]

Response by poster: So is it fair to say based on these responses that linux could look as good or better than anything MS or Apple does? So there's nothing inherent about the linux OS itself that limits possibilities?
posted by postergeist at 5:18 AM on October 18, 2013 [1 favorite]

Maybe a better question is, what makes MAC OS or Windows what they are in this respect that linux lacks?

If I recall correctly, it's a GUI that's tightly integrated into the operating system. With Linux, the vast majority of GUIs are built on top of X11, and though X11 has gotten much better about enabling applications to directly communicate with graphics cards and memory, it's still not as close-to-the-OS as is the case with Windows and MacOS. This is the justification for the development of Wayland.

On the flip side, you can't do ssh -X and expect to run a native Windows or MacOS app with the display redirected to your local X11 server precisely because everything's so tightly integrated, so it's a bit of a tradeoff.
posted by RonButNotStupid at 5:53 AM on October 18, 2013 [1 favorite]

So there's nothing inherent about the linux OS itself that limits possibilities?

Chrome looks about the same to me on Windows and Linux, so it must not be anything inherent. Or at least nothing that can't be worked around.
posted by paper chromatographologist at 5:58 AM on October 18, 2013 [1 favorite]

Subpixel font rendering is hard to get working in Linux, generally due to graphics driver issues. That could be part of the issue.

Also, the hinting in the default fonts used in many Linux distros isn't as good as the default MacOS ones and Win7; it's about on par with WinXP. This may have changed in newer distributions though (I'm still using F16).

But to answer your most recent question: no, there is no reason why a Linux desktop can't look very, very good. If that's important to you and you want to spend some time tweaking it, you can get subpixel font rendering and install really high-quality commercial fonts and icon sets that are to your liking, etc.; there is no underlying reason why the OS itself can't display it just fine.

There is sort of a sub-hobby of creating really slick-looking Linux desktops and taking screenshots of them (those are from back in 2010 but you get the idea). There is literally no limit to what you can do, since the software is all customizable.

That said, out-of-the-box distributions have to strike a balance between looking nice and running well on older hardware (because reusing older hardware is a big use case for Linux desktops), and have to deal with people like me who would rather the desktop environment not take up 1MB more RAM than necessary and all basically view the UI as nothing but a thing that allows me to run Chrome and a bunch of xterms.

Another part of the issue is that I suspect most Linux developers — the vast majority of the people actually writing the software — use the commandline very, very heavily. So GUI components like file managers, which basically duplicate functionality that an experienced user can do more efficiently via the CLI, aren't being developed by the developers for their own use, they're being developed by the developers for a hypothetical "grandma user" who can't use the CLI. And I think this leads a lot of aspects of default Linux GUIs to be really ... basic. There's a sort of usability gap, where the default interfaces are fine if you're the hypothetical grandma who just wants to send emails to her kids, and they're also fine if you're a really experienced *nix user who is just going to launch a bunch of xterms or rip the whole thing out and replace it with a tiling window manager, but if you're in that middle ground (coming from MacOS or Windows especially, experienced at using a GUI efficiently) the defaults can seem alternately training-wheels-y or like a thin veneer over a gaping maw of dangerous moving parts.

How Windows and MacOS avoid the same problem, when both of them have powerful CLIs of their own (in the case of Windows, PowerShell, admittedly not installed by default but I'm sure it's probably part of the standard image Microsoft developers use) is a good question. I suspect they just have lots of HX and UI people beating on the thing, which is not especially fun and so it's hard to find volunteers willing to do it. Canonical in theory has the resources to do it for Ubuntu, but they're obsessed with their hypothetical grandmas and cargo-cult Apple emulation.

tl;dr: Linux as an OS is fine, the defaults are just not to your liking. Take a look at some screenshots, find something you like, and it's probably pretty straightforward to install a different GUI.
posted by Kadin2048 at 6:22 AM on October 18, 2013 [14 favorites]

I think we can eliminate the "slick" factor. It's subjective. Some folks like the shininess, some folks don't.

It's the reality that the best designers are going to migrate to businesses who pay them top dollar. They are not going to work for free as a Linux volunteer. That, however, does not mean they will turn out the best designs, or even be free to create their designs as they see fit.

Until rather recently, developers -- coders -- did most of the GUI design work in Linux, more or less as an afterthought, and the results showed ample evidence of that.

Developers wield almost unchallenged influence on the course Linux takes. That developer community is surprisingly conservative, and has often condescendingly brushed off components of Linux GUI's as "eye candy". This is changing but new designs still receive hostile receptions and accusations of ignoring user (i.e., developer) input.

Linux developers also often lack the resources and/or interest to test their products adequately and repeatedly during development with groups of non-technical users. As a result, most of the evaluation and criticism their designs receive can come from other developers who, by definition, lack the perspective of a typical mainstream user. This can be a real issue in the design of Linux products.

That said, in terms of actual functionality, the major Linux GUI's are superior to Windows and comparable to OS X. (The universal presence of virtual workspaces, alone, pushes them beyond Windows.) Whether they are "slick" enough to satisfy someone depends of that individual's personal taste.

Font rendering: Depending on the distribution in use, font rendering in Linux is superior. Some of the techniques needed to deliver that violate the free software principles of some distributions and/or patents held by Apple, Microsoft, etc. (The patent issue is especially very real for Linux companies like Red Hat that are based in the U.S. and have substantial financial assets at risk.)

Font rendering, for example, on Ubuntu, which is not based in the U.S., is tweaked to look very good on LCD screens out of the box.

Perception of font rendering, of course, is very subjective and subject to many variables. Linux offers a greater ability to adjust font rendering than OS X or Windows. (OS X, as I recall, only allows you to toggle subpixel rendering, while Windows only offers Cleartype to adjust the 6 different ways it renders fonts.)

Font display quality is essential for me, and I use Linux as a result. I use OS X as well, but it falls behind by an edge. Windows is not even in the same game. I recently tried to use Windows 8 and 7 on a new $3000 ThinkPad and gave up because the font rendering was the worst I've seen in years, on any platform. Beyond subjective perception, fonts were displayed incorrectly, misshapen and broken. I posted questions here and on some Windows forums but received no responses beyond "run Cleartype" or "you'll get used to it".

Finally, Linux distribution rarely provide Microsoft fonts out of the box. As a result, web pages that specify one of those fonts without offering fallbacks to alternatives can look pretty poorly in the distribution has not mapped an appropriate font to the Microsoft fonts. E.g, a typical font specification in CSS is "font-family: Arial, Helvetica, sans-serif". This will use Arial (Microsoft) if present, fall back to Helvertica (Apple),and then to the generic sans-serif.)
posted by justcorbly at 6:50 AM on October 18, 2013 [1 favorite]

Response by poster: great answers thanks everyone
posted by postergeist at 7:23 AM on October 18, 2013

Just wanted to add that Elementary OS is a Linux distribution that intentionally worked to make a beautiful interface. I've been using it for a month and love it.
posted by Piano Raptor at 7:52 AM on October 18, 2013 [1 favorite]

Two potential reasons I can think of, which I think are largely expansions on what people have noted above.

First: I've been using Linux for almost two decades, and use Windows, OSX, iOS and Android regularly as well. When I sit down on one of those other platforms, the first thing I do is shut off as much of the graphic flash as I can: Square the windows, make them opaque, turn off any graphic gradients, simplify icons, make all control elements fixed size (ie: no changes on mouseovers, things like that), remove any animations. I would imagine that many Linux users, being also Linux developers, like the same sort of simplicity and spare responsiveness that I do, and so that's what we build.

(And as an aside, I have less technical friends who run Linux, and when they see how my computer is configured they say "oooh, make mine look like that", so it's not just developers, there are a lot of general users who like a much simpler spare work environment.)

Second: X, the windowing system that Linux has evolved with, has never included a widget set (buttons, input fields, etc). This is something that's overlaid on it by desktop environments and application libraries. Most of the widget sets interoperate fairly well these days, but they all grew up under different constraints and different developers, so it's completely possible that one app uses Tk (looks very square and clunky), another app uses Qt, a third uses Gtk, and a forth does some homegrown event handling. Each of these have a very different look to them, and this means that apps don't have a consistency of design.
posted by straw at 8:10 AM on October 18, 2013 [2 favorites]

I run Xfce with RGB antialiasing turned on and hinting set to Slight, and to my eye it's nicer than both Windows and Mac.

Again to my eye, KDE looks like arse and Unity and Gnome 3 are both unspeakably awful. Gnome 2, once again with RGB antialiasing and Slight hinting, looked about as nice as Xfce but was somewhat slower.
posted by flabdablet at 8:50 AM on October 18, 2013

This is more of a tech-culture observation than a tech-implementation thing.

There's an ongoing push-pull in Linux desktop development between what you might call the Enlightenment and Ratpoison schools.

All of this is enabled to some degree by the seven-layer dip that is X, and by a development model that both encourages forks as a means of dealing with unresolved disagreements and relies upon continued enthusiasm from developers for projects to evolve.

Having run Linux on at least one of my systems for 15 years or so, I can tell you that I had my period of desktop-tweaking in my early 20s and eventually grew out of it. Over time, my sense of Linux desktop development has been of a rotating cast of twentysomething desktop tweakers who age out.
posted by holgate at 8:54 AM on October 18, 2013 [1 favorite]

Linux GUIs tend to be fairly flat. Both OSX and Windows went through a phase in the past of going to enormous effort to appear '3D' in lots of very subtle ways. For instance the text in the titlebar of an OSX application window is rendered in such a way that it appears to have been stamped into the body of the titlebar.

Recently, the trend in UIs has been back towards a flat, 'computerised' look (eg Windows Metro, IOs7, Android Jelly Bean etc) so the pendulum is swinging back again & Linux GUIs are suddenly on-trend :)

There's also the text-rendering. My experience is that with the right rendering options, Linux font rendering is much better than either OSX or Windows, but that's probably because I prefer correctly anti-aliased sub-pixel placement of small lettering to the strongly hinted font shapes that Windows (and to an extent OSX) go in for.
posted by pharm at 9:52 AM on October 18, 2013 [1 favorite]

A lot of good answers already. But I'd say as a broad generalization that

a) Talented artists and UI designers don't tend to participate in open source like programmers do
b) Open-sourcing and loose collaboration simply doesn't work very well for art. Two developers can merge their code and (often) get a workable result. Two artists with utterly different visions can't effectively "merge" their work.
posted by drjimmy11 at 12:03 PM on October 18, 2013 [2 favorites]

Have you seen this Men's Wearhouse commercial? Linux people will happily continue to wear that metaphorical beige jacket or that ghastly '80s shirt for as long as they fit, concentrating instead on the new technology rather than throwing away the whole outfit just to build another suit.
posted by straw at 12:07 PM on October 18, 2013 [1 favorite]

I would say that I probably come from a view that the pinnacle of GUI perfection was achieved with NeXTSTEP or BeOS, which are the style of themes that I naturally gravitate to if I am on a X11 Linux system.
posted by wcfields at 12:59 PM on October 18, 2013 [2 favorites]

Honestly, this question reads to me like it's coming from 2005. Back then, I would have agreed with the premise of your question, but today, I find I need at least one open source mod to make Windows look half-decent, whereas at least Ubuntu looks great straight out of the box.

I have to agree with justcorbly regarding fonts. I have an old Dell laptop with a 1920x1200 display (WHY CAN'T YOU GET THESE ANY MORE *sob*) that dual-boots Ubuntu 12.10 with out-of-the-box font rendering and Windows 7. I find the Ubuntu GUI vastly superior, mostly on account of how fonts display. Windows is what's familiar for me, but text on Windows is still eye kryptonite. Especially Chrome on Windows, sweet Jesus.

Also, I know this isn't exactly part of the GUI, but as far as interface design goes, the Windows default CLI is garbage. Powershell is an improvement, but it still fails to allow cut and paste hotkeys and looks like I'm using a windows 3.1 telnet client. Since I'm not planning on downloading ASCII pr0n from a local BBS, any Windows box I'm forced to use for an extended period of time gets the Console2 treatment.
posted by [expletive deleted] at 1:22 PM on October 18, 2013

I use a linux machine at work a lot. I use VNC to connect to it from my windows laptop. When I'm using "alt-tab" to switch between applications, it's almost always clear which is linux/VNC.

I never really noticed *why* it was easy to identify the linux window. Usually on linux I have emacs and a terminal window open, but recently I started using "soffice" to look at spreadsheets and word docs in linux (not something I usually do). When I have spreadsheets open on linux, it's much harder to identify the vnc/linux window when switching with "alt-tab".

Could part of it just be that linux looks different because of what we use it for?
posted by sarah_pdx at 11:23 PM on October 18, 2013

I have an old Dell laptop with a 1920x1200 display (WHY CAN'T YOU GET THESE ANY MORE *sob*)

Because Windows.

I am typing this on a Dell Inspiron 8200 laptop I bought in 2000. It has a 1600x1200 display, which looks crisp and beautiful and never does anything stupid using Xfce.
posted by flabdablet at 9:35 PM on October 19, 2013

« Older How are these tricked out Thinkpads selling so...   |   Help me pick an entree for a curry dinner Newer »
This thread is closed to new comments.