The problem in my eyes is plateauing. Once a project moves past the first couple of iterations, it rarely interests the original authors enough to make incremental improvements. And since there is no financial incentive to continue, the project usually cools down to eventually be replaced by the following iteration. This means that you rarely get mature software.
1) The GNU utilities have pretty good CLI UI design and there are plenty of us who are perfectly happy with just that and a decent WM like FVWM even on a phone
2) It's not like closed mobile stuff has a great UI either. My favorite example is Apple's camera app. Did you know you can do manual focus with it? It's absolutely impossible to discover but I think it involves a "reverse three finger pinch." I've even had it explained twice to me (and used it) and forgotten how to do it after. I can never remember how when I need it. This garbage makes the TAR UI look like it was designed by an artist.
And while you're right to say that mobile UI design can be bad, is the solution to that really throwing out mobile UI as a concept altogether in favor of ... a window manager designed for a mouse and ketboard, running text terminals on a tiny touchscreen?
Which is a soooo tiny minority that it won't even show up on charts.
> It's absolutely impossible to discover but I think it involves a "reverse three finger pinch."
That's a shitty UX, not UI.
How come your “favorite example” isn’t even a real example...
Sorry I don't use iOS very often (and very rarely use the camera app.)
I think my point still stands though. The UI is not at all discoverable (and not all that ergonomic either which is why most people might tolerate some lack of discoverability.)
When you tap on your screen, the camera focuses on the point you tapped. It also adjusts the exposure to the point you tapped. And right next to where you tapped, a simple slider with a SUN ICON appears, and you can drag that slider to adjust the exposure.
The fact you don't use iOS and the Camera app, I'm fine with that. But you're telling everyone how bad the iPhone UI is without using it and misleading people about how it works. Not quite fair.
In any case, it's easy to pile on Apple, until you try to do it yourself. Let's see this Android OS match something at least half as usable as what the iPhone UI is. It took Android a decade to get there.
I'm having a hard time understanding what it is about the development paradigm that's allergic to good UI design. In good faith I'll assume you meant that "FOSS projects seem to lack good UI design". This I'll agree with, if we're talking about GUI design (others have pointed out that the CLI interfaces are usually great). I really don't think the lacking GUI design is necessarily inherent in FOSS, but I too wonder why more people with design skills aren't attracted to working on FOSS stuff.
There may not be causation, but there is definitely a strong correlation. KDE is approximately 2x as annoying to use as an intensive daily driver compared to a Windows 10 modded with OpenShell (aka Classic Shell) and a few smaller tweaks. I know this because I run them side by side, one for work and one for personal use. Don't get me started on Gnome Shell, it's a train wreck for those familiar with/expecting a classic GUI.
I can understand that on 4” inch phones there were no space for extra buttons, but with 6” screens this became ridiculous. So much for “good” design.
Blew my mind after tearing my hair out that this information was just gone. It's not gone, just hidden in a place you'd never think to look for it.
The menus are inconsistent, options are divided into strange categories, there are several "rabbit hole" menus where entire trees of settings are tucked away rather than just put them at the top level. This could be partly down to having a Chinese phone, but some of those deep menus are from stock Android too.
Early Android phones were way nicer.
Being able to design something friendly to the average user, yet powerful enough to be friendly to power users, is a very difficult task to accomplish.
Developers understand the latter quite well, I think, as they themselves are power user-types. The former... well, that requires having dedicated designers who know how the average user thinks, as well as perhaps guinea pigs in the form of the average user. And that might require a lot more funding, perhaps.
A friend has a pine phone and it’s just not good enough as a daily driver. Forget UI. It needs a reboot regularly.
But yes, I think it would work. I would be happy with a phone that can run Linux desktop software with HDMI. It would need to be powerful enough (which the pinephone is very much not at all), not eat so much battery when the USB dock is plugged in with HDMI and, most importantly as you say, be stable as Linux. The pinephone feels very far removed from any of this.
Personally, I don't really care about the size of the phone; I gladly give up weight for more battery life (I will have to carry a battery anyway otherwise so why not inside the phone). I guess I would rather the (6.5inch) phone have an eInk display but plug into a screen for a full Linux desktop. But sure, there is no real money in that for phone makers as only people like me would buy them. With Android they are next to useless for me though, which is annoying as there are nice Android (eInk) phones out there if they would run Linux.
A pure designer cannot one day find themselves writing code for a major piece of opensource software.
A pure programmer can find themselves arranging some UI and designing a logo on Inkscape, that won't look and feel great.
Put the two together and something magical can happen, though not always, as design is so easy the programmer can be overcome with hubris and discard or ignore the designer advice and do the designing himself, with obvious results.
In a functioning software company, the managers recognize this skill difference and simply order the developers to implement what the designers suggest. They grumpily do. (It’s obviously not always so stereotypical. I’m exaggerating to make a point.)
In a typical OSS project, no one can give orders. The programmers ignore any good design suggestions because they don’t recognize those, and implement their own crappy ideas instead. Sometimes while arrogantly dunking on the designer who tried to make a contribution. Consequently, UX quality is abysmal, and anyone who could fix that is driven away. I don’t see a solution to this.
Sometimes making software more user-friendly may even cause the code to get more "ugly", because instead of a nice and elegant piece of software that only solves the core problem, you now have to deal with all the weirdnesses of how people perceive the problem as well. Taking away complexity on the user's side almost always adds complexity to the code. And if you're the developer, it's very easy to think that the tool you created is perfectly usable, because you understand everything about the mental model that went into it.
User testing. Making user feedback the key driver of UI related decisions.
Most people, let alone programmers, don't realize there's more to "design" than pictures.
Brain computer interfaces… UI's as they exist today are merely an abstraction layer for getting the brain to engage with and process information.
UI design in contrast is a top-down effort. You can't just mix and match various works from people. It's about information flow and consistency. A unified interface has to be agreed upon, and then implemented across the board. And any part of the system that fails to meet that standard, essentially breaks the UI.
Generally, going into an open source project as a stranger and suggesting to make architectural changes without expectation of pushback is not a good idea. Any change there is going to trample on someone else's workflow. You have to build up trust first before people see you as an authority, that is the solution and it's often the only one. It's worked for some projects such as the recent post about Audacity, even though it's a bit of an extreme example because the person was already established as a well-known designer: https://news.ycombinator.com/item?id=26995610
I don't blame the programmer for dismissing suggestions they don't understand but it's also not cool if you were "dunked on" so I'm sorry if that was your experience. Keep in mind that's still better than some, a lot of projects will just ignore suggestions completely if they figure you're just not part of their target audience, and they don't have the budget to expand that audience.
Of course that's not a logical inevitability, things can change with more understanding. Your link actually makes me very happy, I hadn't seen this. Let's hope that this works out, and becomes a model that more OSS project can follow.
Deviantart was a huge platform where people would share art and designs/skins. To some extent that still exists for iOS views.
I think one thing that's different about the deviantart model was that back then apps used to have skinning interfaces. And then designers could focus on just skinning. You could argue that gnome themes are like that. I would disagree, but also skinning isn't quite the same as doing ux.
UI/UX on Mac is a lot easier than UI/UX on gtk applications or QT applications.
On top of that, I don't think most designers understand OSS. It's basically a different universe and these two world don't often interact.
It's about the users and their ability to understand how to work with your software to address their needs and expectations... not about your code, the designer or the manager. Those people are the product, NOT the user.
If I had a dollar for every programmer and manager that thought they knew better and stubbornly cooked up a crappy MVP nobody wanted, I would be able to fund your OSS.
Right now I have ten crappy MVPs to donate and can put down $20 to sponsor others. I could probably have another 5 MVPs out within the next week if work is slow.
Define distraction in terms of computing first.
I feel distracted working on Windows or Mac. As if someone is putting stones everywhere and i have to mangle inbetween
Some approaches on linux, be it gnome or kde or tiled solutions are just so much more efficient
* gnome-shell is GNOME
* plasma-workspace is KDE
* i3-wm and sway — tiling WM and its Wayland successor
* xmonad — WM building framework
Note: these are installed packages among those who opted in, does not strictly reflects usage. Some fun statistics [2].
[1] https://pkgstats.archlinux.de/compare/packages#packages=gnom...
* application name
* ability to max, min, move
* list of running applications
* ability to run other applications
* content length and my progress
* actions on content
I don't need any of these. Like Amazon Echo users probably don't require ever present poster of available actions. Instead I have places — several of work places, generic browsing, messaging, media controls, services.
I choose to use Mac OS, and I celebrate each time they take a step in solving these problems - e.g. making the menu bar hidable, but I am fully aware that if I want something better in these ways I will need to use Linux and customize it to my tastes.
You judge from a subjective view. There's no discoverability in the screenshot you shared.
It's all subjective and a product for the mass market looks different from a product that serves a very specific niche.
Nowhere article stated it's going to be year of Linux userland on the smartphone. It states hope for existence of a niche.
So there is much smaller motivation to improve it.
And even if someone new joins project they will be often also used to weird interface once they contribute.
And do note the nice uncanny valley of no change: in order to improve the UI, you need to understand the program well. In order for that to happen, you need to be proficient with it. In which case, you know how to use the UI and are more likely blind to its downsides.
No it’s not, and yes it is, in the sense that’s a^2 + 2ab + c^2 is not the same thing as (a+b)^2, but they (should and ideally must) evaluate to the same thing. I say ideally because only in the case of using infinite precision arithmetic can you guarantee this for all values of a,b,c.
People blind to these patterns cannot see how to simplify things, whether math or code or UIs.
When I say "I can't use program X because the UI/UX sucks, is there any alternative?" people come out and say "I see no problem with program X, I use it everyday and it rocks"
You've got strange conclusion out of it.
Once you decide you need to do user testing and hardware testing, the cost shoots up. You need to start procuring hardware and finding a place for it to live so automated tests can run on it all the time. That costs money. You need to bring in a lot more testers which requires project management and/or volunteer coordinators. Usually that costs money too. Everything you do needs to go through more stages of design review which also requires extra coordination and project management. These are real things you can have but someone's got to foot the bill.
It is not so bad.
Take three people who never used given software, ask them to do the most basic tasks. And fix the most common problems.
Your (and mine) software is much harder to use than you expect.
You do not need UI/UX people, massive scale testing to fix low hanging fruit.
Take it with pile of salt, I am not some big expert. I just did it with some projects. But it seems to me that in nearly all cases there are glaring issues that would be detected with any amount of testing at all.
Your anecdote is atypical.
https://www.nngroup.com/articles/why-you-only-need-to-test-w...
Modern proprietary OS (mobile and desktop) certainly have more polish, aesthetic taste and cohesion - that last one being the most valuable when compared to much of FOSS. But in terms of usability I'm not convinced they are any better unless we are going back a good 20 years. They have improved looks at the cost of performance and significant ambiguity and thus mental overhead in learning and general operation.
My aging father has used Microsoft OSes since dos, and W10 is the first product he's having real trouble moving to. The reason for that is that he's always been a pc user, and W10 is pushing mobile ux, with a very hard opt-out.
- Unreliability of UI elements (mixed responsiveness, difficult to see what are buttons and what are labels)
- Too much wasted space in their current design language, and related to that
- Too much distraction by visual eye candy (background images behind buttons in the email client, for example)
- Somehow, despite having every advantage in manufacturer driver support, still laggy animations
- After years, search is still bad and unpredictable, to the point I have to type "updat" to go to Windows Update because "update" will take me to Bing to tell me about how to update my PC.
- Inconsistencies. Many of those are because of the decades of backwards compatibility, which I can forgive, but even the modern Windows 10 apps have inconsistent designs[1]. Icons from four Windows versions that can all be seen on the same screen if you navigate deep enough through the seconds, even though Windows uses a unified resource loading mechanism for most system resources.
None of the alternatives are perfect, of course, but some are just _less worse_ in my opinion. Compared to the W10 shell, Gnome feels much snappier to me. Also, after finally fixing the bug that made the Windows 10 start menu break, a new start menu bug has been introduced to my system that makes it impossible to use the search bar in the start menu when it's opened start button on my left screen, breaking "winkey > program name > enter" _again_.
On Linux, audio sometimes breaks, or external monitors only work after an update. When nothing breaks, the system works great. On Windows, everything always kind of works, but not completely. Whatever I'm trying to do, something is broken in a way that's not bad enough to invest time into fixing, but still annoys me to no end. On macOS, you need to buy the expensive Apple hardware or it won't work at all. I have no need for expertly-graded colour-accurate screens sporting extreme resolutions, but you don't get any other options if you want to experience the macOS UI. I can't say much about the most recent macOS UI because I can't even run it, which makes it impossible to compare.
Of these three, I've settled with Linux, especially Gnome, as the "least broken" UI.
In the mid to late years of Windows 7, the Windows UI greatly outperformed most alternatives. With Windows 8, the system got very usable after the 8.1 update came out. After Windows 10, with the introduction of "operating system as a service", the UI seems to be in a perpetual state of "nearly finished, just needs a few more updates" because of the constant addition of more features and integrations.
[1]: Although it's been improving, I still notice stuff like this every now and then: https://www.reddit.com/r/Windows10/comments/7aw5ps/i_just_no...
Its not about taking off - it's about having an alternative that is available even if it's just for 0.01% of users.
Who will develop it, why and most importantly what will it provide compared to alternatives?
And that's the point of libhandy(for GTK/GNOME apps) and Kirigami(KDE) to take desktop Applications and make them work on smaller screens. So you can use the same applications on the phone and Linux desktop. And nice bonus is that optimizing the applications to have low CPU usage will have a positive effect on the linux desktop too.
In the case of postmarketOS to give that devices a second life(Hard work cause mainline linux support of most android Phones is bad).
Imo these days where foss ment ugly gui are slowly over
I can imagine it would be beautiful on mobile pretty soon as well.
https://gitlab.gnome.org/Teams/Design/os-mockups/-/issues/68
I’m essentially imagining a phone OS that decouples the front-end and backend design. Implement the apps as APIs. Implement the UI using HTML5 so more designers can use their existing skills to contribute & the GUI layer can be replaced more easily. The experience would be a refinement of pulling a Docker image and opening a browser to use it on localhost.
Edit: a mobile OS also needs a really nice mobile-first shell app. People do so much with text messaging now that I think they might be open to it…
WebOS lives on as LuneOS (and runs on the pinephone), but FirefoxOS effectively went closed source and became KaiOS.
Don't know about that, chief. Looks like a same old Gnome.