I recently checked out Elementary OS Loki, and I’m impressed with how far the project has come. The team has effectively created its own interface and a core suite of apps using existing open source tools.
So, as a Bad Voltage listener, I searched for @sil’s interview on the Simply Elementary podcast to hear his thoughts. Stuart mentioned how Elementary’s lack of resources as a reason he doesn’t feel comfortable using the distro (who’s around to fix monitor issues or security flaws, for example). Most of the rest of the discussion came back to the same point – the team could do more if it had more resources. I recall this same point being made separately in an episode of Bad Voltage.
Listening, I couldn’t help but wonder why Ubuntu’s design doesn’t seem to have ever progressed as far as Elementary’s despite having loads more employees and bags of cash.
Every release of Ubuntu feels to me like a bunch of patches and add-ons on top of GNOME. I’ve used Ubuntu on-and-off since Intrepid Ibex, and the impression I received was that it took a great deal of effort to introduce minor features. A messaging menu here. Titlebar buttons there. A new interface that moves the dock to the left and a launcher that searches for apps.
Now, eight years later, Ubuntu doesn’t feel all that much more like its own thing and less like a series of patched projects. Shortly after installing 16.10, I encountered three different types of scrollbars and three different styles of displaying menus (Firefox has its own button, Nautilus has a single Files entry in the panel, while most other apps have the global menu). Surely Canonical could assign people to make sure these inconsistencies don’t make it to release day.
The result is I don’t feel confident that Canonical has the capability to make Unity better on the desktop or that Mir won’t be a disappointment. Meanwhile, Elementary OS’s track record has been that I can expect a significantly better experience two years from now than what is there today. This is based on how much better Loki is than Luna or Freya. And for every release there has been a degree of integration and polish in place despite of the team’s relative utter lack of resources.
I know Ubuntu pioneered innovations that Elementary OS now benefits from. Having a great LiveCD/USB installer experience does a lot to make Linux more accessible, for example. I’m not trying to argue that Elementary OS is an objectively better experience. I raise this as an Elementary OS vs Ubuntu question in large part because, as Stuart said in the interview, the two projects share similar goals. Both aim to be Linux for human beings. Fedora, openSUSE, and other distros have different histories that explain why they each went in different directions. I don’t view this as a general Linux question because many communities clearly have other mindsets and priorities.
To be fair to Canonical, Firefox imposes it’s UI on a cross-platform basis to look familiar on every desktop-class OS.
To also be fair to Canonical, and with the caveat that I have never used Elementary, I can only see superficial differences between Ubuntu and Elementary. Yes, Elementary’s window manager is different (and wow, does it look massively similar to macOS), but the bulk of the heavy lifting to bootstrap and support the desktop environment is still being done by Ubuntu at it’s core. Its app store appears to use deb underpinnings, so a legacy debt is due to Debian also.
I’m not saying Elementary is bad, poor or unfavourable — I have no experience to form a positive or negative opinion — but I can see @sil’s point with regard to meeting bug or security rectification obligations. If Elementary is still heavily based on Ubuntu, they can capture release updates from their upstream, but if there is no priority flow to mitigate security issues, then that, to me, is a dealbreaker.
Elementary also appears to be a vanity project to promote other open source projects, e.g. Vala, Gala, Plank and Epiphany, which is their choice of course. But by emulating existing DE designs, rather than charting their own unique course, at what point does “it’s so nice using something that looks like macOS” turn into “wow, I wish I was using macOS instead”?
I think what you are describing here is less an issue with Ubuntu, and a broader issue in open source. The major challenge we face with the Linux desktop today is that we have too much fragmentation in different technologies which causes an inconsistent user experience in apps.
Then again, the same can be said for Mac and Windows. As an example, on my Mac, Spotify, Evernote, Slack, Keynote, and Atom all have totally inconsistent UIs.
This seems a bit harsh on tiny, tiny Dan Fore and his marching band.
One of the things I like about Elementary is that I think they have a good eye for design. They are making opinionated choices and focusing on a core set of technologies. They are also reusing other projects where it makes sense. I see all of this as a good thing.
Sure, it looks like a Mac, but I think that is their inspiration in the same way KDE shares a lot of Windows inspiration. Also, to be fair to Elementary, Apple make great design choices, and I think they are simply inspiring from those choices, which again makes a lot of sense.
I like what the Elementary team are doing. They are doing bold work with few resources and they seem lightweight on the community governance side, which is good. I think they could do great stuff moving forward.
I think the general thrust of your argument is correct, but I also think that you’re overlooking a few things. Perhaps it might make sense to divide these up into headings.
Are elementary really making such radical changes?
Be a little bit wary here of believing the hype. The elementary team talk a good game about how they care about their user experience and visual design more than everyone else does, but they are perhaps not changing as much as they might imply, and everyone else is doing more than might be implied. In fairness, they would say that they’re doing it better than others, rather than more, and I have a lot more sympathy with that position. But the changes they’re making are actually relatively trivial; it’s important to standardise, and to make things more attractive (the aesthetic usability effect is real), but as noted they are resource constrained. Actual major user experience changes – things which involve creating large structure – are pretty much beyond their current capabilities: think of, for example, all apps automatically saving files so you never lose anything, or all apps keeping version history of all saved files so you can always revert, or all apps being automatically sandboxed so they can’t steal data, or all apps being relocateable so you can install more than one version, or, or, or. Lots of big-picture changes which require infrastructure work, which elementary can’t do. Obviously, other upstreams are working on this, and the elementary team contribute to that to their credit, and use these things as they arrive (and Houston is infrastructure, and they’re working on that), but as you note, the resource constraints are likely to keep their changes minimal and relatively trivial unless they get a lot more popular (and more importantly better funded by their community’s growth or generosity). They do a good job of optimising the “how hard is this to do” to “how much impact does this have” ratio, though.
Why aren’t Canonical doing more to change and improve Ubuntu’s design?
This is probably better phrased as “why aren’t they doing that any more, when they used to?”, because Unity was a pretty radical change. The Launcher with its quick menus and overlaid badges and progress bars; the global menu; being able to scrub between indicators and unifying left and right clicks; putting window buttons on the left because that made it integrate better with Unity’s layout when maximised; the window spread: these were all major changes when they happened. (Some of them had already appeared on other platforms, certainly, but that doesn’t make a thing invalid, unless only Xerox get credit for GUIs :)) More importantly, though, most of Canonical’s design effort these days is going into Unity 8, not Unity 7. That’s full of radical design changes: it inherits everything from Unity 7 and makes a bunch more change besides, and the plan is to make the Ubuntu desktop be Unity 8. (Leave aside whether that’s a good idea or not; we’re talking here about where design effort is going, not where it should be going.) So, if you’re not looking at Unity 8 (which I imagine you’re not, because why would you be?) then you’re not seeing what the design team are spending their time on.
Why aren’t project creators doing more to fit in with Ubuntu’s design changes?
As noted, Unity made some fairly serious changes to the desktop. However, Canonical don’t write most of the apps that run in that desktop. And at least some of those app writers aren’t interested in integrating properly into the Ubuntu desktop. Nautilus, and other upstream Gnome projects, are one of them; they prefer app menu buttons to the global menu. Firefox is another; they prefer consistent UI across platforms to doing better integration with the platform they’re currently on. I would also note that elementary has the same problem; this is why they encourage people to use epiphany rather than Chrome, because epiphany integrates better with their desktop and that’s more important than whether it’s a good web browser. This conflict is partially the fault of upstream software developers for not valuing integration into the desktop, and partially the fault of developers of those desktops for pushing different views (so there is no single “desktop” to integrate into; Unity and Gnome Shell and Pantheon and KDE and LXDE are all different). And it’s also partially the fault of users of these desktops, who don’t value this integration and therefore signal to software developers that they don’t need to do it. Windows is the same here, as Jono notes: Windows users in general do not indicate a preference for an app which integrates properly and works like other apps. Mac users do; an app which does things “its own way” or differently to most apps will often be rejected or at least called out precisely for doing that. iOS is similar; Android celebrates divergence (although Google are trying to change that, with Material). The elementary development team do value app integration, but they’re not a big enough deal to have upstream software developers pay attention to their desktop. They’re also trying to build a community of people who also care about it, but they’re not having a great deal of luck with that (as discussed in the interview I did).
These points help get to the heart of my question. Fragmentation in the open source world leads to an inconsistent UI experience in nearly every open source desktop I’ve ever used. This is the case for all the reasons Stuart has put forth.
Yet, to me, Elementary OS is the first distro I’ve used (aside from perhaps Chrome OS and the very short-lived MeeGo netbook edition) that doesn’t feel like a bunch of slapped together parts. Ubuntu 12.04 (which I assume is what we can consider the height of Canonical’s focus on Unity 7) had what looked like an outdated panel and right-click menus that didn’t visually integrate all that well with the sleek Unity Dash and launcher.
Perhaps the answer can be found in the attitude behind the words “relatively trivial.” Since taking the time to make sure fonts look nice, context menus look modern, default apps integrate (even if that means shipping Epiphany rather than Firefox - Something I wish Fedora would do*), and the like aren’t the hard part, Linux distros prefer to leave this for users to tweak themselves. The result is a desktop that never quite feels as polished and user-ready as what people can find in stores.
What Elementary OS is doing isn’t huge, which is what makes it seem so striking to me that other distros haven’t nailed this yet when the Linux world is already filled with teams and developers doing (to agree with Stuart’s point) such harder things.
… Then again, as pointed out, Windows design really is a hot mess and users seem to figure it out well enough.
*I should add that the GNOME 3 experience feels most of the way there. But Fedora is the closest thing to a GNOME OS that you can install, and it comes with Firefox/LibreOffice that are very inconsistent with other GNOME apps. This was a debate addressed in the Simply Elementary interview - do you provide a default suite of apps that are all visually integrated, or do you ship the ones that are the best for the job? I personally think shipping a standardized UI matters most. I understand why an app that I install may not match, but when the default ones don’t, it feels like the distro just doesn’t care.
I don’t think that’s fair. There is a pervasive attitude outside the open source community that that’s how open source people think: that making a desktop that’s integrated and looks modern and attractive isn’t important, and that attitude is wrong. I will happily admit that open source OSes in general tend to not be very good at it, but that is not at all the same thing as not doing it because they don’t think it needs doing. And it’s rather demeaning, to be told after one attempts to do a thing and fails that the failure was because you didn’t care rather than because you did it wrong.
Great! That’s certainly an indication that you should use elementary! In the interview I did with the simply elementary people, I talked about how what the elementary project need is a community of people who value the approach they take, and to not have a community who want to change elementary away from what they want it to be. You’re clearly of the first type; that’s valuable, because it means that your goals for the software and theirs are the same.
I’m sorry. It is hard to tell from the outside the extent to which teams care, and I’m also not aware of whether you were involved with design-related decisions during your time at Canonical. My apologies nonetheless.
I may have misinterpretted your use of trivial to mean easy as opposed to technically minor.
Ubuntu does, indeed, have a UX problem. It is most notable on their mobile side of things, but I find the overall user experience of Unity to be less than ideal. It’s not terrible. I’ve used worse (as I think we all have). But I’d go so far as to say that the experience Unity as it stands today (both visually and workflow-wise) is significantly worse than the user experience of the last GNOME-based Ubuntu release.
I know I’m not the only one that feels that way. And that’s a problem for the Ubuntu team to solve. They do have some talented folk working on it, so it’s entirely possible. But, after many years of Unity, I’d say that – as it sits today – the default Ubuntu experience is a bit slow and cludgey.
On the other hand, elementary absolutely – without any reservations at all – has a better user experience than default Ubuntu. Not only does the user interface respond faster to simple clicks (on older hardware Unity is painfully slow and annoyingly sluggish), but it also generally is more pleasing (that part is somewhat subjective to taste), and more cohesive (that one is just plain straight up true).
That said, there are other desktop environments and distributions that also look excellent and perform well. I would posit that Ubuntu MATE is pretty solid in that regard. Just not stock Ubuntu with Unity.
But, if you like using Unity… more power to ya. That’s why we have choice. I, personally, dislike it greatly. Slow, un-configurable, ugly… It has a few ok features but is, overall, less than pleasing to use. But that’s why I don’t use it. (That and the fact that it doesn’t run on other systems… I have many issues with the technical design of Ubuntu and the direction they’re heading.)
I think we’re in that very murky place of defining UX. To me, yes Elementary OS is beautiful from a UI design stand point; better than MacOS (even if it might be a clone). But, as soon as you run something out of the Elementary app eco system, it’s the same.
Staying with looks, I popped Ubuntu on my partner’s laptop (I usually run Fedora, but have enough trouble keeping up with updates on my own) and with some simple flat themes, got it looking pretty nice (to my eyes). https://github.com/anmoljagetia/Flatabulous
As for defining UX, I would argue that no one has hit the Nirvana because we’d all be using that. IMO, the only Nirvana can be telepathy. I really think, for desktop DEs, muscle memory has got a lot to do with it.