Pop!_OS 18.04: the state of the art in GNU/Linux on desktop

(And making the case for keeping the App Menu in Gnome 3.)

CC @gnome @todd @cassidyjames

@aral @gnome @todd thanks for the writeup! The app menu discussion is interesting. From my perspective, I've been observing users for around a year and that's a constant hangup, even with experienced users.

@aral @gnome @todd we actually considered removing it in Pop!_OS (using the built-in mechanisms to move it to windows), but decided to hold off in favor of sticking closer to upstream. But I 100% understand & echo the reasoning for removing it.

@aral @gnome @todd at GUADEC, I attended Tobias Bernard's talk about GNOME UI patterns and he also brought up some good points with regards to menus and other patterns in both contrained (phone-sized) and expansive (multi-large-monitor) setups.

@aral @gnome @todd Again, our experiences with engaging with our customers, surveying users, and observing professionals using the software seem to validate these sentiments, so I am confident that the route GNOME takes will be for the better.

@cassidyjames @gnome @todd I have no doubt that people who are used to other paradigms would find it confusing, especially given that apps do not conform to the HIG. If you observed Windows users using macOS, you'd see a lot of confusion. It's not because macOS lacks conceptual coherence. I’d really love to see a conversation around the specific design-related points I raised. As I detailed in the post, the migration is being undertaken based on a set of trivially provable incorrect assumptions.

@aral @gnome @todd I think you made interesting points, but I don't think the original points are "provably incorrect," especially given the context of real world observation. It's a constant pain point for customers.

@aral @gnome @todd It has nothing to do with Windows or other platforms, but solely about making the desktop more accessible while keeping its utility. Which is something we're constantly striving to do at System76.

@aral @gnome @todd I do like some aspects of a separate app menu, but I just think it never panned out to be broadly useful and usable for most people. And when that's the only way to perform certain actions, it actively hurts usability.

@aral @gnome @todd 1. Disconnected from the app window: the majority of GNOME apps which follow the HIG are indeed single-window. So that's already a weak distinction. But forcing users to understand the difference between "the app" as they see it (the window that contains the app) and "the app" as the system sees it is a bit of an outdated, technical distinction. If you don't already know that distinction, it feels arbitrary.

@aral @gnome @todd 2. Doesn’t make sense with multiple monitors: this is probably the largest thing that trips up our users. If your app is not on the "primary" display, then its menu is so far removed from the context of your work. It's a massive amount of eye and mouse travel to get to the app menu—so much so that users simply don't do it. There are other stronger, more contextual signifiers for window focus, which is what tells the user their context.

@aral @gnome @todd 3. No other platform has this pattern: macOS treats its menus rather differently. First, the panel appears on all displays, whereas in GNOME it is pinned to the primary display. Second, macOS always lists several standard app-wide actions (which don't have equivalents in GNOME) across the top bar. Third, almost every app on the platform uses those menus. Lastly, it's a deeply searchable hierarchial menu structure, not a flat, single-level.

@aral @gnome @todd 4. Distinction between app-level and view-level menu items can be murky: this mostly revisits point 1—there is actual murkiness in the most first-party, HIG-abiding apps from GNOME themselves, let along from third-parties. This is again not helped by most GNOME apps being designed to be single-window, plus users not necessarily grasping the technical distinction between an app window and this abstract concept of an app's running process.

@aral @gnome @todd 5. Only accessible for app which currently has focus: this falls apart as display sizes and number grow. We observe many users with two, three, four, or more large displays writing code, checking email, messaging, managing spreadsheets, etc. They don't want to have to click inside a window to focus it, and then go back to the panel (often far, far away from the app window) to perform an action. It's a lot of extra juggling for these users.

@aral @gnome @todd 6. Our own apps use it inconsistently: I agree that this is not a strong argument on its own, but is just another straw on the camel's back. Perhaps the reason first-party, otherwise-HIG-abiding apps aren't properly using the app menu is because its a messy concept to begin with?

@aral @gnome @todd 7. Third-party apps have not widely adopted it, so it mostly sits there empty: similar to point 6—not really an argument in itself. And for the GNOME platform itself, I agree that this should not be a focus. But for the practicality side from System76, most apps our users actually use aren't first-party GNOME ones, they're the Firefoxes, Blenders, Atoms, Curas, etc. that aren't catering to the desktop itself.

@aral @gnome @todd 8. Some new users don’t seem to find it, and e.g. assume that there are no preferences: I'd expand this to cover long-time users, too. I observe years-long GNOME users not knowing how or where to access certain things because the menu is so inconsistently implemented. It causes real, observable interruptions to workflow. While theoretically it could work better if every app ever made perfectly abided by the HIG, we (and our users!) live…

@aral @gnome @todd …in the real, imperfect world of today. Perhaps the HIG formerly asking apps to adapt to this concept was unreasonable in the first place, and it's time to retire the idea that never panned out.

Apologies for the massive wall of text, but you wanted a point-by-point response. :)

In summary, I think the moving away from app menus is a good, practical design decision for System76's users, and it echoes our year+ of real world observations.

@cassidyjames @aral @gnome @todd Thanks for sharing your reasons. I can't argue with optimising for four monitor setups; that's not a use case for the target audience I mostly care about but I understand it might be a sizable portion of your specialist audience.

As I see it, the questions that need to be addressed are: How do I know which app I'm in at a glance? How do you stop the single menu from becoming unwieldy (or worse, multi-level?)

@aral @todd @gnome @cassidyjames

> How do I know which app I'm in at a glance?

The icon and app name will stay up top.

> How do you stop the single menu from becoming unwieldy

GNOME apps generally do not have too many menu items in the first place in order to avoid clutter.

@cassidyjames @aral @gnome @todd I also have reservations about formalising mystery meat navigation (a three-dash menu vs a three-dot menu has no semantic meaning). But I'll stick to writing about the issues in longform in hopes that they will at least help cause some discussion.

At the end of the day, Pop!_OS is your baby and you have a specific vision/direction for it. Of course the decisions, if they're in Gnome, will also affect Purism, etc., as will theirs in return affect you.

@cassidyjames @aral @gnome @todd Exactly this.

I've never met anybody (who isn't a computer geek like us) who actually understood the distinction between apps and windows.

Since the beginning, GNOME Shell made a big effort to be app-centric: single-window apps, grouping multiple windows in alt-tab and the dash, etc… Blurring that distinction even more.

@cassidyjames @aral @gnome @todd
Personally I move it into the window as one of the few changes I make when using pop. I never under stood the need to have one menu option in the top bar and everything else in the window.
For a long time I didn't even know it was a menu because it was by itself and only gnome apps use it.

@aral @cassidyjames @gnome

> I’d really love to see a conversation around the specific design-related points I raised.

As I said in thepast, you'll need to raise that discussion with the folks in #gnome-design. :wink:

Having a writeup on your blog is a nice way of formulating your thoughts coherently, but it doesn't replace a conversation in the appropriate venues.

@aral @gnome eh, asking a user to fire up IRC in order to share their thoughts isn't very effective. They've shared their thoughts openly—it's up to us to listen and distill that into something actionable.

@cassidyjames @aral @gnome Well, Aral isn't just any user, he's a developer and designer. I wouldn't say the same thing to just anybody. :wink:

I agree we should listen. But the people who are most likely to have an impact are not here, and won't see his article unless he goes and find them.

Nothing progresses if we all just write our thoughts on our own blogs, without ever turning that into a conversation.

@aral Glad to see that you've moved to the Linux side :-) Does your XPS 13 with Pop_OS work outside of the box without any tweaks to trackpad or any other hardware?

@aral 3:33 PM...

... half way to hell! 🤔

( also that dooooes look nice, although i'm a sucker for things with minimal bezels. 🤷 )

@aral After watching the video in your post from Thinking Digital, I think you might just be my new favourite person!

Keep doing great work. Design is everywhere!

@neilalexander @aral Haha, thanks Neil. Sadly, living under surveillance capitalism, I feel that decoration is everywhere but design is rather rare (see If you find some time, watch the last video too; it's all about that :)

Sign in to participate in the conversation
Aral’s Mastodon

This is my personal Mastodon.