Seems to me that free software community is lacking UI/UX Designers and so looks and feels considerably less "cool" than commercial counterparts. What do you think?
I think free software has caught up on the prettiness score. KDE Plasma 5 looks pretty slick. Graphic designers might niggle at aspects of it, but the layperson won't care.
However, human factors is undervalued. There's a cultural issue in free software wherein good UI is rejected as being for sissies and not worth the effort. Hacking is a social activity, and hackers naturally like to make stuff for other hackers. Hackers tend to be the kind of person who has a lot of patience for tedious bullshit, or they would have thrown up their hands in despair long before becoming a hacker. And so you often hear people defend poor UI with talk of "investing in tools" and "if <UI annoyance> is enough to stop you, you don't have the patience for <activity> anyway". Which is possibly true! But it's a gatekeeping self-fulfilling prophecy.
The trouble is, by the time you're expert enough to write software, you've long since forgotten what good UI even looks like:
"I liken starting one's computing career with Unix, say as a undergraduate, to being born in East Africa. It is intolerably hot, your body is covered with lice and flies, you are malnourished and you suffer from numerous curable diseases. But, as far as young East Africans can tell, this is simply the natural condition and they live within it. By the time they find out differently, it is too late. They already think that the writing of shell scripts is a natural act." — Ken Pier, Xerox PARC
Part of the problem is likely that it's often difficult for non-programmers to contribute to open source projects directly.
If I as a software engineer have a new feature I'd like to add to an open source project, I can usually just write that feature myself and submit a PR that the project maintainer can review and merge with minimal effort. But what if a UI/UX designer wants to contribute an improved UI for a particular feature? They could probably create a mockup and submit it to the repository as an issue, but then who's going to actually go and implement those changes?
FOSS projects absolutely have big accessibility problems. Many projects are still centered around mailing lists, IRC channels, and diff patches and some don’t even use what’s comes to be the “standard” version tracker (git). This is massively unwelcoming to even newer software engineers, let alone UI/UX people.
And while Plasma 5 looks good for OSS, it is far from consumer-ready. Look at the KDE Plasma 5 press release [0] versus the macOS Catalina press release [1]. KDE's looks like it was made in Wordpress.
Look at this screenshot of Plasma shutting down [2].
The 'shutdown' text is so poorly aligned that it would give a proper UX designer heart palpitations. Compare to the iOS 'scandal' when calendar dates were mis-aligned by several pixels [3].
Overall, consumers do care about this - much more than you think. It's a non-negligable reason why Apple has the premium status that it does, particularly amongst creative industries (film, music, design).
Good OSS UI/UX <<<<<< good commercial UI/UX. That's the state of the union (with the exception of few products like Firefox) and I wish it would change.
Just choose - we have to accept this. Nice UX or freedom - the big corporates will always win the battle of UX. Free software will always be less cool. Choose.
"you'll have fashionable and functional technology - but at the cost of freedom"
We have to accept that if users only choose something "that just works" or it works better than the Free alternative then they are not choosing Freedom.
Of course reading the above doesn't in any way mean that Free software shouldn't try to have good design, UI and UX, just that Free software will always lose if that's the main criteria to choose from. And there's a danger of knowing that this war could never be won that it might not be worth fighting. This also needs to be accepted and acknowledged - we have to fight the war but change the terms.
Simply look at any HN thread about Free software or alternative services and you will find the majority of users right here basically saying "well I support Freedom in theory but this non free thing is simply nicer to use".
I don't accept that this is binary choice. The free software movement has failed to attract designers and UX minded people. As dTal said in a sibling comment:
"There's a cultural issue in free software wherein good UI is rejected as being for sissies and not worth the effort"
So there's the answer. Once the movement (whatever that is) becomes more open to accept that good software doesn't stop at being free then it might have a change to take on the world.
The problem there is, what happens when you get more than one chef in the kitchen?
If you want to see what I mean, checkout the Desktop Environment scene. There's so many different views on what is good UX, that if you have 1000 different designers trying to make a UI to the same program, you end up with 1000 different interpretations of what this program should "look like".
Free Software doesn't end up looking the way it does because anyone wants it to look bad; it's the way it is because that's all anyone in particular needs it to be.
I don't need a GUI for diff and patch. Some people prefer one, and that's fine. Those people can go ahead and get any of the many implementations of a visual diff/patch program. That is their choice, just as it is mine to just use the command line utility as an example.
UI/UX as it is taught in the industry comes hand-in-hand with curation, which implies a level of control over the end-user's choices in user experience, dependency graph, etc. Software freedom accepts that the ugly choice is still a choice. And maintenance-wise, that choice (the uglier, low dependency one) is a heck of a sensible default from the distribution maintainer's point of view. Same functional capability, and a heck of a lot less cruft to work with.
Besides which, in my experience, most UX folks I meet are cripplingly dependent on a single technology stack I personally have no desire to see everything reimplemented in, which is JavaScript/HTML/CSS.
I'd suffer through learning something like TCL/TK before resorting to adopting that nightmare of a toolchain. I'm what you might call a curmudgeonly old man in taste however, so that comes with the territory.
There is also the resource intensive vs. pretty trade-off to be made as well. Do I want that sexy Aero/Peek, pseudo 3D, everything has an animation look sucking up my potentially valuable and short supply CPU cycles? Or is minimalist X with a minimal window manager without widgets or gadgets or whatever they call all those extra doodads these days good enough?
Software tradeoffs are unfortunately an issue of always on engineering all the time. Something a lot of people don't necessarily find compatible with their tastes. It's certainly a good thing more people are talking about it though. Will have to keep my eye out for new distro's if the more UX savvy take a bite into making something.
The point is that no one will outside of an inconsequentially small group will adopt user-facing free software if it isn't easy to use and if it doesn't have a slick and intuitive UI.
Programmers perhaps do not care for this. But everyone else does. A good, competitive UI is non-optional.
> [Free Software looks bad] because that's all anyone in particular needs it to be.
This is the fundamental disconnect! It's all programmers need it to be. Regular, normal people? They also need it to be fluid, pretty, and intuitive.
Yeah, that's a need, not a want, as much as we might wish it otherwise. We might wish that people had the strength of will/whatever to stick with comparatively worse UIs in exchange for freedom, but we know that's not true, and that won't happen.
> UI/UX as it is taught in the industry comes hand-in-hand with curation [...] Software freedom accepts that the ugly choice is still a choice.
These are not mutually exclusive. UI/UX in free software can come by default as a highly refined and curated experience, with an option to switch things out if you want.
---
I agree that there is a fundamental tradeoff in time and resources between implementing "real features" and UI/UX. Even big corporations with billions of dollars to burn struggle with this. But what we need to realize is that UI/UX is a real feature.
If our priority is getting more people to adopt OSS, then it needs to be done. If our priority is getting shit done in the short term, well - I guess you can hold off on it.
The way I see it is that free software is not designed to have these kinds of processes that makes commercial grade software good and widespread.
Of course, UI/UX is hard problem so does writing hardware drivers or optimise kernel code. Even if you use a command line tool, like GIT it has a good UX to it.
git: 'deff' is not a git command. See 'git --help'.
The most similar command is
diff
I really like this and it shows that free software developers care about UX as long as it's in their domain and expertise they can execute.
> I don't need a GUI for diff and patch. Some people prefer one, and that's fine.
You have a good attitude toward this, but then there's people like RMS who flat out wants to ban JavaScript in the browser because "proprietary software". That's not how you succeed with a mission like this. (but I also don't think the state of open source software is too bad either)
> most UX folks I meet are cripplingly dependent on a single technology stack
Then don't ask them to implement the UI part. It's also fine to ask for a prototype in JS/CSS that you can reimplement with the best tools you see fit.
> minimalist X with a minimal window manager without widgets or gadgets or whatever they call all those extra doodads these days good enough?
A good minimalist design is really hard to pull off, so it's good enough, but as hard as making something really shiny.
Tradeoffs are really there so aligning them with your goals is essential.
I'm also a big fan of Git's UX in that regard. Solid point.
W.R.T. Stallman, I sort of agree with him. JavaScript as a portal for code getting on my machine that is ruthlessly obfuscated so I cannot efficiently determine what it is doing is a danger that I personally have significant qualms with wanting to support. I don't mind dynamic webpages, and the functionality it enables, but I absolutely abhor some use cases it enables; namely browser fingerprinting, runtime code encryption/decryption of payloads within the code, and other deceptive practices like running a cryptocoin miner or exfiltrating information I'm not okay with a la exploits like Spectre and Meltdown.
If people were decent and considerate with their JavaScript I'd be more amenable to it. However, the blatant abuse of the technology I've seen perpetrated by the industry just turns me off of it altogether.
>Then don't ask them to implement the UI part. It's also fine to ask for a prototype in JS/CSS that you can reimplement with the best tools you see fit.
Fair.
>A good minimalist design is really hard to pull off, so it's good enough, but as hard as making something really shiny.
Also fair. Do you happen to be a UX person? You sound like a blast to work with.
It's all valid points, but I personally don't care, I rarely see a page that obnoxious because of its JS use. Most sites I find repulsive is their use of ads. Now if there were no JS in browsers, these site would still plant heaps of ads only with CSS, it's not the code execution to blame. If the publisher controls the layout then it's game over for freedom :)
> Do you happen to be a UX person?
Not a label I'd put in my title, but I like UX, it's an integral part of building good products so I spent fair bit of time exercising it. I'm a full stack developer and who likes to build experiences users love.
> Nice UX or freedom - the big corporates will always win the battle of UX. Free software will always be less cool.
The big corporations will probably always win the battle of new and shiny. But free software can win the battle of UX, if we stop chasing the tail of the fashion de jour of UI design from big corporations.
Image how much more free software could do for users it we didn't waste all our efforts trying to match the looks of the big corp. software.
I do think there is an opportunity nowadays, because commercial software has gone down a highly disliked path of anti privacy, clickbait, optimize for addiction.
Now seems to be the time for alternatives to pop up that:
- Look and feel good enough
- Open source
- Respecting privacy
- Immune to (most) criticism because of blockchain or similar
Theres defiantly a lot of free software that suffers from engineer UI but I find the UI of Apple and Google shockingly poor. Their UI focus is on encouraging the user to do what Google / Apple want not what the end user wants.
Free software gives people freedom to have what they want but figuring out what you want and setting it up takes effort. Many people are like dogs they don't think freedom is worth the effort if they can be kept by a master that feeds them regularly.
Often times achieving your desired result with free software is onerous, even if you know what you want know what you’re doing. This is a problem I’ve encountered several times just trying to achieve a desktop setup that works for me; I always eventually arrive at living with countless tiny issues or writing what I want from scratch.
True, but I also have to say that latest GNOME 3 and newest GTK apps look actually really really nice. I did not like the looks of GNOME 3 when it came out, but now it's on par/even nicer than macOS. The issue is that not every application is on latest GTK and thus while working, do not have the unified look.
A lot of commercial software focuses on building cool GUIs because selling the software is the whole point. The point of community maintained software is to solve some problem some people have and so that’s what gets focused on.
I don’t think tacking “cool stuff” onto free software is the answer, I would argue education is.
Much like how we educate kids on the dangers of false advertising we should educate them on the dangers of non-free software.
I agree with you, but what I mean is people will be more inclined to use software that looks good - more broadly good UI/UX and I don't mean gimmicks. That's just how it is.
>Seems to me that free software community is lacking UI/UX Designers and so looks and feels considerably less "cool" than commercial counterparts.
I keep reading this argument here. Does no one here use Windows 10? What kind of drugs would you have to be smoking to believe that Windows 8 or 10 looks "cool"? Sure, MacOSX looks "cool", I'll give it that (it doesn't work that great though), but Windows is far and away more widely-used than MacOSX, and is basically the standard-bearer for "commercial software" when we're talking about UI/UX, and it's really ugly.
Is having two different control center applications part of that "polish"? The last thing I'd call Windows is "polished"; instead, it looks like a great example of software built by strict evolution.
However, human factors is undervalued. There's a cultural issue in free software wherein good UI is rejected as being for sissies and not worth the effort. Hacking is a social activity, and hackers naturally like to make stuff for other hackers. Hackers tend to be the kind of person who has a lot of patience for tedious bullshit, or they would have thrown up their hands in despair long before becoming a hacker. And so you often hear people defend poor UI with talk of "investing in tools" and "if <UI annoyance> is enough to stop you, you don't have the patience for <activity> anyway". Which is possibly true! But it's a gatekeeping self-fulfilling prophecy.
The trouble is, by the time you're expert enough to write software, you've long since forgotten what good UI even looks like:
"I liken starting one's computing career with Unix, say as a undergraduate, to being born in East Africa. It is intolerably hot, your body is covered with lice and flies, you are malnourished and you suffer from numerous curable diseases. But, as far as young East Africans can tell, this is simply the natural condition and they live within it. By the time they find out differently, it is too late. They already think that the writing of shell scripts is a natural act." — Ken Pier, Xerox PARC