Ideas on modernizing the open-source desktop

10 hours ago (lwn.net)

> Now, he's trying to convince open-source projects to experiment more and drive the desktop beyond the age-old "windows, icons, menus, pointer" (WIMP) model.

We tried that! It works great on small screens that you poke with your finger. And it made Linus himself switch away from Gnome for a while.

My dream UX would be one with the consistency and customisation of the past. Both Gnome 2 and Win 95 (and 3.1) had title bars of the active window a different color to inactive ones, you could even change the accent color to yellow.

Title bars were much more consistent than now - I don't need individual applications to decide whether they want to put the close button on the left or the right of their custom-styled frame. (To be fair, MacOS is still fairly consistent.) It's like each programmer decided whether their application would use light mode or dark mode rather than leaving the choice up to the user.

This is one of the times when "less is more".

In the end, using any device is all about doing actions (the simplest being reading/viewing, but also editing etc.) on data. Now the biggest difference between desktop and mobile is that the first one is (was?) file oriented while the second one is software (application) oriented. Edit a document, listen to a music, on desktop you would historically navigate to where the file is, then open it with the program of your choice. On mobile, you would almost never do that, you would first open the app and from it select the file you want to interact with. This is changing a lot how you are organizing the way you work. On desktop, it is easy to put related files of different types in the same folder, for example you organize your birthday, you can have the list of the invited people in a excel file with their number, a subfolder with the songs you want to play, some pictures of the venue, a text files with notes and etc. It is not natural at all to organize things like that on mobile. Android and iOS are hiding the files as much as they can. (This is not the case on Ubuntu Touch for example). And it becomes the responsibility of the app to organize the files it can open. This has a big impact on what you expect your desktop manager to done or not. I would personally be very happy if I could organize applications how we can organize files, and simply reopen a work session where I left it (some PDF open, some terminals open, my IDE, my browser...) even weeks after. To complexify the topic even more, the same thinking can be done in the browser, which is basically an OS now...

  • Yes! You’re describing a fundamental dichotomy in approaches to GUIs in general! Historically, we can see the difference and some oscillation very clearly:

    The Xerox Star, the Canon Cat and Apple Lisa’s OSes were largely document oriented, and placed no emphasis on the application at all. The Operating System owned the creation and editing aspects of the document. Developers could only add "tools" that slotted into the existing interfaces the OS provided. You’d never launch an App on any of those OSes, you’d "tear off" a new doc from the stationary pad on a Lisa (that sounds ridiculous as I type it).

    That paradigm really goes against the idea of "Software as a separate product", which is an older idea, starting in the 1960s at IBM (they unbundled HW and SW, partly under anti-trust pressure). The document-centric GUIs/Shells don’t really allow for a separate software market.

    The 1984 Mac was kind of a middle ground, in my mind. It was a platform for discrete Applications (sold separately) but it also had the Finder which let you organise, open and delete documents separately from the Application that edited them.

    Apple and later MS tried to bring the document-first concept back with OpenDoc and OLE respectively. OpenDoc never went anywhere then Jobs killed it, and OLE turned out much smaller in ambition and scope (and I think was never very popular with devs).

    I think ultimately the intuition and perceived benefit behind document centric GUIs is pretty clear: the OS knows what kinds of artefacts it can handle, and presents a consistent and controlled interface to the user. File interoperability problems are minimised. Devs are allowed to extend functionality to an extent, but they can never take over the system or invent a new kind of interaction.

    The App-first paradigm OTOH places more power in the Application developers hands, gives them the means to innovate, and allows for a larger, more diverse, more self-important software market to exist (see iOS).

    Mixing the two, as the Mac does, comes with some confusion and complication for the end user, but I think is ultimately the right balance for everyone.

We could do well with change on the desktop, but very little of the change I've seen during the past 10+ years is actually benefiting the user. Even on Linux, the changes happening are stuff like bugfixes and reducing jank; small incremental improvements that have already been done, but are just getting their final round of polish.

All the other changes I see are just shuffling around the UI, which doesn't really help anyone. And even newer features are either so marginal as to not matter, or can't be trusted to stick around. Why bother to learn a new UI, when all that does is get you back to square 1, and it might not even stick around? I'd be much more interested in tweaking my DE if I could be confident in knowing that those tweaks will persist and not cause other problems down the line, but I have no such assurance.

I don't blame the casuals for hating UI updates. I myself went to Linux to get a more cohesive and stable experience. If we're going to make changes, we need to not break workflows that already exist. New features and workflows need to either not be in the way for established users, or opt-in until they're established and known good. Doing anything else is user hostile, and by this time, given how much we know users don't like changing UI, dare I say, evil.

  • Yeah and when change do occur, its for the worse (e.g. Gnome)

    > Why bother to learn a new UI, when all that does is get you back to square 1, and it might not even stick around

    Exactly. That's why I gave up and stay on i3 and the common tools I use. I've been for a few month under hyprland and yeah no I'll go back to X11+i3 the pain it provides is just not worth it even if the common user would think they're pretty similar.

    I'm already upset that I have to use Windows at work because I've not used it in years and I have to relearn everything again (like every time you want to change some settings it appears that Microsoft has moved them?) that I don't have the free time to spend to do the same on Linux. I just want my computer to work and to work the same unless I specifically decide to change it, not because some update thought it would be cool to move things around

    That sentiment is probably what it means to growing older though

    • << That sentiment is probably what it means to growing older though

      That does not mean you are not right. The tool is supposed to work for you and for your benefit.

      Imagine car update haphazardly changed ways in which doors open ( looking at you Ford ). Is that you growing old or someone is fucking with things they shouldn't.

      1 reply →

    • How is gnome "for the worse"?

      Gnome 3 just works. It takes up reasonably small visual space, shows windows, has multiple desktops, I can do everything with either just a keyboard or with just a mouse. The "explode" overview is fast and I can actually find the stuff I'm looking for even with many windows.

      I much prefer it to a Mac or a Windows machine, where stuff like super+left/right click doesn't work to move/resize windows, has some idiotic model that your app can run with no windows, only apparent by peeking at the top left corner's text, has 2 different maximize/full screen that messes up the virtual desktop order for no reason, and you literally have to get a better alt tab extension because the native is that useless. All this by a company considered to be "good at design".

      Let's not even get started with modern windows's idiosyncrasies.

      27 replies →

    • YMMV.

      I think Gnome is one of the better desktops out there. It goes out of my way and I very much like the changes it brought.

      1 reply →

  • One of the most unfortunate things to happen to Linux on Desktop is Gnome and their childish and contemptuous behaviour towards users. Of close to the 20 years of using linux on desktop the large part of it away from Gnome has been the best.

    In fact, I think decoupling things from Gnome has been one of the best outcomes of Wayland.

    The year of Linux will start the day we have a capable wayland desktop environment that is not foreign to Mac and Windows users without chasing stupid churn. /rant

    • Gnome 3 is one of the best things to happen to Linux on Desktop, and a salient example of actually modernizing the desktop.

  • But why do we need changes on the desktop? What was wrong with the desktops of Gnome 2 / Windows XP / Snow Leopard era? I'll never understand why we couldn't just stick with that - it felt that desktop was solved back then and is going downhill ever since, change for the sake of change, or maybe marketing to make things look prettier.

    • Very little was wrong with those. I'd be very happy if those were the default, plus a few niceties we've found since then.

      But I'd also like us to discover more, to hopefully make the desktop better. The way to do that however, is not by forcing users to try whatever the hot new thing is. The old and known good needs to remain a viable option.

    • I think the OS/2 Workplace Shell was probably the pinnacle. Everything since then has been a functional downgrade with nicer aesthetics (which matter!).

  • I don’t know. Niri took the PaperWM idea and built a first class experience around that, and it’s fantastic. I think that’s the way to do this sort of thing. Have a standalone project do the legwork while keeping legacy desktops stable.

  • I disagree. KDE 6 is really good, and each point upgrade to 6 delivers an improvement.

    • KDE is an experiment to pack 20 big things in a bag that can only hold 5 things. Then add one more thing in next release. And make every pixel clickable.

      1 reply →

    • Care to point out what improvements KDE 6 has got that isn't something that's already been done in some other DE or OS, and isn't a bugfix or polish?

      I haven't daily driven KDE to see what it's truly like, but from a distance it doesn't seem to be doing anything revolutionary or truly new, but I'd love to be proven wrong.

      6 replies →

The meta problem with all this desktop UX design discussion is that it's not actually very problem driven.

Many of us solve our UI problems and we land into our own happy minima.

Many of the UX "solutions" are either invented problems or not my problems or worse, grinding some anti-me agenda.

Like many, a lot of my UX improvements have been to simplify the UI. Tiling, with just a few windows per virtual desktop in herbstluftwm: kitty, emacs, browser and some rare transient application (usually PDF or image viewer).

The idea in the screen shot horrifies me. Why would I buy an expensive high pixel monitor just to use only 10% of it to display a single window? Why would I want to waste CPU to animate the migration of a full window to a single button icon (another example given)?

These UI "innovations" are great for movie props but do they actually help in reality? Not that I see. The "stagnation" of UI to me is more a plateau. Anything truly new must be driven by new "I", no input/output channels between user and computer.

The one interesting idea I saw in the article was Lifestreams. I think storage and recall is something that needs improvement and new ideas because for me that is a problem. I produce and consume too much info while recalling it is hard and while also I often do not produce or consume info that I wish I had.

Again, it's the I/O that drives the progress.

  • Yeah the social media giants cribbed Lifestreams sort of with the timeline but without the search capabilities that were a cornerstone of the paper. You can see glimpses of this metaphor elsewhere with email, rss and news readers but it would be interesting to make that the centralized metaphor of an entire system for all the system's data.

Yo just make Overwatch playable without having to do anything except install the Blizzard app and I'll move over. that simple.

One of the main problems with UX in my opinion is that someone arrives, sees a problem in their own eyes, and try to make changes and impose their views on everyone. Because a lot of that is personal preference, taste, habits, ability, and so on. You can't have a one size fits all solution. If you try you end up discovering that there are many dimensions and that people are scattered around in the space. And either you try to remove dimensions, and yay suddenly you have a one-size-fits-all solution but only because you removed choice (Google is a big offender in that regard), or you realize that you have no right to impose your views, get more humble, and propose a new solution, expanding the choice of others (but that is rare).

  • The problem, in my opinion, isn't that they "do", but they "can". Once the windowing system gave up control, it disempowered the user. For example, allowing apps to change the window chrome. For me that was basically the end of usability of WIMP. We no longer have a strong separation of concerns. we need that back, and we need the user to be in charge of the behavior of the windowing system. my strong preference, for example, is that I cannot interact with any window that doesn't have focus until I give it focus. At some point in the last 20 years, that standard was broken, and I have been stuck ever since accidentally doing things to windows that don't have focus.

  • I think this is why FVWM is around for so long, OpenBSD even still ships it as the default. The configuration is painful but every tiny thing can be adapted. I stopped using it though because other DEs were more actively maintained and so much quicker to configure.

>Scott Jenson has been working on user interfaces (UIs) and user experience (UX) for many years at Apple, Google, and other companies.

Wow, the exact person I don't want designing anything I work with. Go away.

For me it was a major revelation when it was pointed out that, for someone who doesn't want his desktop changed, I did install all sorts of crazy things when I was starting with Linux (Compiz plugins, anyone?). And while Gnome 3 pushed me into Mate, it wasn't because it was different but rather because it was bad. So I'm excited about someone trying something new, particularly someone who realizes that the Desktop is not a tablet.

Here's an idea that I believe I read in HN as "the original purpose of the desktop": add a Desktop Manager that manages which icons are on your desktop and makes it easy to switch.

The desktop is kind of weird, in the sense that it's prime real estate but, at the same time, there's an expectation that you shouldn't put too much stuff there, and then it ends up cluttered anyway. I think it's worth trying a stronger separation between "Desktop" and any other regular folder, emphasizing that the Desktop is where you place links to the files you need right now, but with a mechanism to clear it completely (without losing data) and another to switch which icons you see right now, kind of like browser tab groups. That way, when you're working on a project you place the files you need on the desktop and when you're done you clean it up.

  • The Desktop isn't prime real estate when you are actually using your computer and have windows covering it. Then it becomes cumbersome to access anything on it, even with a one click show desktop button.

    Having the desktop not also be a file dump by default and instead a space for mostly useless widgets was one of the few good things KDE 4 did.

    • Key issue driving any conversation about desktop environments; so many people have vastly different workflows and expectations for their computer.

      Personally, I keep my desktop absolutely sterile, usually some geometric patterned background, and that's it. Autohiding taskbar, no shortcuts, etc. It keeps me from having the "stepping into another room" effect when I sit down at my computer, which I'm very prone to. That means I can hit win/option/spotlight depending on the comp and launch the program I sat down to get into, without thinking "Oh yeah, I meant to edit that excel file..." and going on a 30 minute tangent.

  • I agree, GNOME 3 and all the subsequent versions are so bad. They made GNOME into a glorified tablet environment, but I'm using a desktop, not a tablet, for a reason.

    I'm still mad at GNOME developers for ruining such a good desktop environment.

    Luckily, Linux Mint managed to create a good environment that is as pleasant as using GNOME 2.

    • it's not bad, you don't like it.

      And you don't want to adapt.

      Just watched a video of a guy ranting on Gnome 3 14 years ago, the reasons are just wtf, mentioning things I almost never used in my life.

      I also had issues, but just learned to get over it and now my workflow is excellent while requiring only minimal customization.

    • I bought a tablet to use with Krita and settled on Manjaro because Ubuntu had so many tablet issues. Everything I tried is especially bad with 4k touchscreen/pen. I started with KDE, then Gnome but DE really didn't matter because they're all so terrible - it's now for watching videos or travel only.

  • On old Macs you could drag files and folders on the desktop, work from there, and then put them back where they belonged with a single command, one by one or all at once. Applications used file IDs to refer to them, so all references kept working (not only with the desktop, but with all moves and renames). But old Macs had a different filesystem; modern filesystems are probably not fit for that.

    • On very old Macs, the files did not actually move! Just a flag on file metadata. IIRC, it was System 7 that introduced the Desktop folder.

    • Modern macOS still lets you keep editing a file even if it's moved somewhere else, I think because file editing is done with the actual file ID rather than its bare location on the filesystem.

      Windows, on other hand, prevents you from doing this in my experience.

      1 reply →

  • > The desktop is kind of weird, in the sense that it's prime real estate but, at the same time, there's an expectation that you shouldn't put too much stuff there,

    If we go further into the metaphor of a desktop, there would be sections for tools and sections for pending work. The inkwell versus the blotter, if you will.

    But then, well, what difference is there between a designated permanent zone of the desktop for non-tools, versus a regular window showing some contents of a folder, which the user has chosen to position above an empty area?

    • When I was on Windows there was point in time when I use Stardock's Fences, around or between 2010-2014.

      Pretty nice product as I recall, lots of features to make the "Desktop" more or less dynamic. Pretty soon after I stopped using the "Desktop" entirely.

      [] https://www.stardock.com/products/fences/

    • Persistence. If you're going to have a physical metaphor, don't throw out one of the most useful features of the thing you're emulating.

  • The Amiga Workbench was semi-spatial in that you could snapshot icons in place so their locations would persist, but you could also drag and drop icons everywhere without saving their location and it'd reset next time.

    My current desktop works like that. It's not quite what you're describing, but it's a couple of minor iterations away to allow multiple different snapshots.

Man, there have been so many cool ideas for the Linux desktop in the past, and somehow none of them worked out or were polished into a usable state. Some things I remember: * I think at one point Canonical tried to have a cool personal data sync with Ubuntu One using CouchDB which would have synced all your data between devices directly, not using a cloud? * KDE 4 tired to have everything be a plasmoid (widget)? You could drag contacts to your desktop? But now we mostly have panels and tray popups again * Similar, things like Evolution data server or Akonadi or Telepathy which promised to implement the "backend" for services like email, calendar and chat once and then you could integrate custom UIs into many apps and places in the desktop with a synchronized view (chat with a contact in your email programm? write a calendar appointment from you chat app that your friend sent you?) * Maemo on the N900 had one contact list which served both SMS, Skype and XMPP and starting a chat using any one of those would get you to the same app/interface, same for the call, all happening in a single interface.

That is really the direction of "UX" I'm interested in. Not so much about where to display what, but to make my computing device feel less like an accumulation of applications and data, but to have a more integrated experience, ideally even across devices. My laptop and phone barely talk to each other and the user account on each device is distinct, so sharing resources already fails on authentication not being solved.

I think open source is in a unique position to actually provide a much better UX than any proprietary computing environment, since it's not tied to a single company trying to sell you stuff. Gnome and KDE don't care where you store your emails or calendar, they don't want to upsell you into their cloud storage. Open source is free to integrate the best services in a way that has the best UX and it can even do things like sync directly between your devices, because it doesn't need to generate new business opportunities.

  • 100% agree, bring back LAN messenger, and p2p 'things'. I remember when Opera browser had the 'fridge' which was cool as well (Opera Unite).

    Theres definitely ideas here worth exploring for sure.

  • KDE Connect is a great program in this regard, allowing you to share all kinds of things, including contacts or clipboard contents, between connected devices.

  • I like your ideas. Why not try to build it? You seem to know what you want. If you do, I'll definitely follow your work.

I think he's bang on with his observation that overlapping windows are a relic.

My wife, whose technical level leans her towards wanting to replace her mac mini when a VPN that she'd installed and then disabled left hostile firewall rules in place ("the internet is flaky on this computer"), is jealous of the tiling setup on my desktop (was hyprland; now sway with a custom dwindle layout). I think tiling has an audience beyond nerds, but I think nobody (perhaps with the exception of omarchy) has made a serious attempt at packaging it in a way that's accessible to business/productivity users. KDE's tiling attempts were, at least last time that I checked, somewhat bolted on and half-assed. I wish omarchy success in de-vibing their codebase, but it would be great to have some serious competition in the space.

  • The iPad offered only tiling till about 3.5 years ago, and tiling is still available as an option in Settings.

    And some people connect their iPad to a full-size monitor, keyboard and mouse and use it as their main desktop machine.

    • Fair - I used one only briefly when they first came out. Are there any serious attempts on desktop that I'm overlooking?

I just want someone to put the same concepts and ideas of Windows Phone OS (Lumia era) into desktop computer. That's all I desire. A beautiful type-oriented experience. I feels like with the rise of LLMs and Agents could be even bigger than 20 years ago

https://www.eclipse.org/articles/Article-UI-Guidelines/Conte...

In 2004, the Eclipse IDE established consistent UI guidelines, built upon a cross-platform GUI library. API desgin is great, Looks and feels robust. The future of desktop GUIs looked bright. Little did we know that 25 years later it would turn out to be such a disaster.

  • Care to elaborate? How is eclipse a disaster, and how does that pertain to pushing new ideas for an OS?

    • I'd assume "disaster" refers to "future of desktop GUIs", not to Eclipse.

> The final, particularly strong, objection from the tech community is "don't touch my stuff". People get angry when they have worked hard to get their desktop environment just as they like it and something changes to disrupt that.

Yeah, this can be a little extreme, and I feel we can benefit from being a little more open to trying new things.

The part about designing specifically for large displays and widescreen monitors was interesting. We can also reverse it, though: right now I'm away from home, and I only have this old laptop which is mostly great but has a shitty touchpad as the mouse, and I have to think this must be really common. However, this situation seems to be completely ignored by all desktop UX design. We seem to be pretty good at coming up with ways to use the mouse in our programs, but when the mouse is hard to control and unreliable, it causes pain. I guess I can use ratpoison or something, but that seems to be giving up too much.

Regarding the AI going deep into the filesystem and organizing my data...I'm extremely skeptical of inserting any kind of inherent unpredictability into how I interact with the computer. Giving a command or input should produce a well-defined and predictable (in principle) action. Getting rid of that paradigm fundamentally changes the relationship between the user and the computer in a way that, in my opinion at least, greatly diminishes its usefulness as a tool.

  • Here's another thing that's just completely ignored: touchpad as anything other than a mouse replacement. It's possible for a touchpad to allow things like pinch-to-zoom, but nobody's really doing that. You could even use it as a low res painting tablet.

    • Pinch to zoom and two finger scrolling work well for me in most Windows apps. Apple has a few touchoad gestures that I don't believe have equivalents elsewhere, but they would be pretty neat.

      The main issue with going beyond the mouse is that it involves changes across the event handling stack. For track pads, you have to build multi-touch infrastructure up ro a point and then there is a decision: what are gestures that are handled at a desktop level? What are gestures that get converted into semantically similar events (e.g. tap->LMB click)? What gets passed through as multi-touch? This ends up touching a lot of parts of the desktop software stack and the amount of required buy in to get this done on Linux seems massive.

      1 reply →

    • I guess one problem is that the capability of touchpads really varies. Not all of them support recognizing multiple touch points for example.

      And the original UX issue is much easier solved by bringing a mouse with your laptop.

      1 reply →

    • Well, Apple is doing it. The touchpad experience on macbooks is really on another level than all other laptops and one of the main reasons that's keeping me there.

      2 replies →

    • Pinch-to-zoom is handled by libinput, and exposed to gtk apps. Works fine in firefox. Works in GtkWebkit views. works in Loupe the image viewer. works in Gnome Maps. Even works in Emacs, ffs.

      Are you on X or smth?

      3 replies →

  • > Yeah, this can be a little extreme, and I feel we can benefit from being a little more open to trying new things.

    Sure, sometimes, when we have the time and surplus to deal with changes to things that already work well enough, and are not essential to doing our actual job.

    That should be something you can opt in to.

    Changing things for someone who's actually doing real work on top of the existing setup, is an undesired hurdle.

    People are change-averse because they've been taught that change is costly, and they completely rationally ask "what's in it for me?". You want them to buy in to the change, you better give a good answer to that, one which is a more than negligible benefit in a few cases that the user may not care about. "Good enough" is good _enough_, it doesn't _need_ changes. Any change has to pay for its own retraining cost, in time and mental effort, otherwise it's a net negative for that user.

    Being change-averse is the rational default behavior. Ignoring that, or even belittling it, is disrespecting your users.

  • I think the big issue is that the user doesn't have a choice in many cases. Windows obviously doesn't give the user a choice, they made the start menu much shittier and you had to live with it or go away. Popular distributions like Ubuntu also focus on one desktop environment, and it's often not easy to switch (it's possible of course, but at least when I tried it a long time ago just installing a different desktop wasn't enough).

    Making it easier to choose allows for much more experimentation. I'm using Niri right now, which certainly isn't something you can just give users as a default.

    • > Windows obviously doesn't give the user a choice, they made the start menu much shittier and you had to live with it or go away

      That's obviously wrong, you could install an alternative start menu and stay where you are

  • People from outside the tech community also do not like things changing, they just do not have the same choices or have the same voice. I have come across people who use old versions of Windows because they do not like UI changes, but they cannot do it forever, and they not have another choice.

It's been a week that Valve has started shipped KDE in a VR headset running Linux.

Meanwhile it's been years since KDE Connect allows devices to talk to each, sending SMS on desktop from phone, pausing phone podcast from desktop, sharing files from XR headset to desktop, etc.

A lot could be improved but the modern open-source desktop is already doing great.

I think we could get a long way toward Scott's "working memory" ask by just making a smarter Clipboard Manager.

Many people don't use a clipboard manager at all, and even what exists today would be a huge upgrade for anyone accustomed to only a single clipboard "slot" that's instantly overwritten the next time you copy anything. Windows has one built in (though turned off by default), KDE Plasma ships with one, MacOS has third-party ones IIUC (not a Mac myself).

But imagine a clipboard manager that wherever you hit Ctrl+C also simply grabs the title of the active window and a deep link/URI that points to the cursor's current location (if a browser then it would be a URL, if a local program then some kind of local file:// URI). If you want to be really fancy, snap a screenshot too (maybe make this opt-in both for privacy and screenshot storage size concerns).

Then, whenever you pull up your clipboard history, a) it reminds you where you grabbed whatever text or image or document etc. that is, and b) with one click you can navigate back there.

I think we might get something like half of what Scott is talking about with "working memory" by adding this one affordance to existing clipboard history paradigms.

  • Agreed, I often see colleagues on screenshare using notepad as their clipboard manager and it's painful.

I actually think there's some awesome UX innovation in the world of Linux. In fact, one of the things I love and appreciate about Linux, is that there's such a variety of what the desktop could be. I personally use Elementary OS, which is very polished and reliable, but very much not trying to innovate how a desktop environment fundamentally works.

But for those who want to experiment, I've seen: - Tiling window managers (I3, Awesome, etc) - Highly customizable panels and launchers (Rofi, Lemonbar, etc) - Scrolling window managers (Nori, and others I think)

Honestly, the linux desktop has a lot of criticisms you could level at it, but lack of innovation isn't one. Where Windows and Mac have agreed on a standard that hasn't changed much in the last 10 years, Linux has about a zillion different visions for what a desktop can be.

The Linux desktop does need work, but it's not 100% up to speed yet, either. The ultimate UX can be found when the user has 100% control over the experience and we aren't there yet. Wayland won't allow window size/position to be remembered between sessions and too many UX designers think the desktop is just a big phone. Yes, we need work on UX and the first step should be to get Wayland to allow the user the same flexibility we enjoyed with X11. Using Linux with multiple screens means reverting to X11 just to keep from going nuts.

  • Most people are not remotely concerned about having "100% control over the experience". They want something reliable and understandable.

    Only a relatively small subset of tech enthusiasts want to tweak everything, and there are PLENTY of options for those people.

  • > Wayland won't allow window size/position to be remembered between sessions

    It's not on the program itself to restore its position, but on the compositor, who has every right and control to do just that. AFAIK it does work in plasma Wayland.

I would replace the start menu with a Raycast clone. Most people want to open files, ask a question or run an app they know the name of, not scroll a list of things they might never use. If you add in semantic search users don't even need to know the app name.

It's also a perfect use for local System One models that can classify prompts and forward them to the right module - calculator for math, distrobox for shell commands, LLM for natural language questions and normal search for everything else. Not using a fixed classifier because plugins should be able to add their own question types.

The article mentioned WinFS and relational filesystems. That's another good idea, integrate metadata so you can support use cases like finding all pictures of your dog or all playlists with Ed Sheeran songs (to remove them). Everything bound to the file entries instead of ID3 tags inside the file or app specific databases. It would be a lot more reliable and probably faster.

IIRC bcachefs is already a relational database but I don't know how good the query APIs are. If we can't do full extendable tags then at least add user defined groups/tags like Work and Games and Photos to make finding things easier. People remember what a file is better than where it's stored.

  • > I would replace the start menu with a Raycast clone. Most people want to open files, ask a question or run an app they know the name of, not scroll a list of things they might never use. If you add in semantic search users don't even need to know the app name.

    So I’m looking at the Raycast web site, and aside from the UI being a little different, Raycast seems like it is itself a clone of the already long-existing KDE Plasma start menu (Kickoff) and KRunner? I guess the only thing missing from the KDE one is “AI”. Is there something I am missing about how Raycast is some innovation not already realised in the Linux desktop?

    > If we can't do full extendable tags then at least add user defined groups/tags like Work and Games and Photos to make finding things easier. People remember what a file is better than where it's stored.

    Extended attributes[0] already exist if you want. But, as the linked wiki page indicates, filesystem attributes are fragile. And what is the tangible benefit? In practice, users can already just dump all their files into a random directory and use Baloo or whatever. Which is probably better anyway since it’s easier to have a D-Bus API with multiple user-space implementations than having to wipe and reformat to use a different filesystem if you have some problem with it.

    [0] https://wiki.archlinux.org/title/Extended_attributes

    • Raycast is successful because it's an incredibly widely used and adopted integration layer. The official repo has thousands of plugins, pretty well maintained together, collectively, and there are thousands more out there. https://github.com/raycast/extensions/tree/main/extensions

      KDE krunner has plugins. But there is not afaik a big tent ownership system like Raycast. And krunner is only going to attract KDE users. Raycast is mainly mac, but also, there's Vicinae which runs on a lot more systems, and it can run >50% of the Raycast plugins without a sweat, is designed to be drop in compatible.

      It's also absurdly easy to write Raycast extensions. It uses web platform technologies that "just work", that don't have ornery toolchains and need lots of dev libraries installed. With KRunner you can probably use whatever library you want to do whatever you want, which is good, but hard, where-as with Raycast there's a pretty comprehensive and powerful API that offers a ton, that is well defined, and that other plugins will show you the way on. https://developers.raycast.com/

      7 replies →

  • Last thing I would want AI running on my desk and doing unpredictable things. I love my silly simple Gnome desk or barebones i3 with everything mapped to my preference.

    I can search and enter my search, and expect same results everytime, so muscle memory friendly. Gnome's search does calculation in search just fine, or search files, no need of any models. And app can provide their own search endpoint that gnome uses, to search in the app. Repetable, simple, and light.

    Its boring, but hey, your everyday thing that is your starting point of the day do not need random behavior, or getting dependent on some 3rd party app that suddenly pulls the rug from under you.

    This everything AI is so tiring.

  • > not scroll a list of things they might never use.

    Why would that be the case when you can have a no-scrolling-required list of apps you actually use?

  • Good suggestions yes. Strong ideas. Ultimately the desktop has been content to let the apps take over more and more, while not extending itself. Actually making the OS something that actual activity happens on feels absolutely essential. Making a Raycast/Vicinae (the pretty great open source port) integral feels like it would go a long way towards this end, of offering a consistent way to expose & access the toolbox.

    I'd love to see an agentic OS where the OS and apps can both talk in terms of MCP things like resources, tools, skills. Yes these are primarily geared towards agents, but they are also acceptable machine-to-machine interfaces to script against too (so long as the type signature remains compatible).

    Android's Intents feel related, similar-ish. It's a pity no one bit on PK's WebIntents. That could have been an interesting way to create abstractions for intents, for activities, for stuff happening on the computer. Notably the xopc actually had activities and a journal that let apps contribute meaningful intent to the OS as a whole. But mostly it just ended up as a history viewer there. Android mostly uses intents as a launcher. But this idea of having the activities of the system as available abstractions could go much further.

I don't see it linked, but the talk is available on YouTube [1].

Scott is a very good presenter, and he clearly thinks about this stuff a lot. I really liked the demo for moving windows to the sides of the screen, since it's kind of how I use the alt-tab interface -- look at the preview for the window/app I'm looking for then tab to it or click on it. Having a visual overview of all currently open windows could be useful to me. (It might actually get me to close things I'm not currently working on! Although my dozens and dozens of browser tabs tell a different story...)

[1]: https://www.youtube.com/watch?v=V7AfAcQwLW0

I use Niri and love it. I think manually managing windows is a waste of time, and when I watch normal users they usually struggle with this and their desktop is a disaster zone. I never want to go back to that. Tiling window managers are slightly better, but they still require you do window management.

  • I dunno about this. Haven’t used Niri but it looks like a scroll from 2000 years ago.

    And that brings me to books, which haven’t changed all that much in 700 years.

    And the desktop metaphor hasn’t changed much either, probably because it’s metaphor for how we do things in the real world: on a desktop with documents and pencils, organized how we want them.

    I don’t want my desktop to change in fact all the attempts have largely failed because they don’t model how we as humans work in real life, with a bit of friction and a dash of chaos.

    EDIT: the few places I welcomed changes are: (1) snapping windows; (2) well integrated search. Where we can improve I think is multi modalities. For example, “open my taxes document, please” and an AI opens it for me, then I presume to place it myself.

    So, my thought is that the paradigm holds and will stand the test of time. Where it will change is: imagine you’re a business exec from the 1950’s and you have workers fetching documents for you, organizing things, and bringing the important parts back. For those important parts, we’ll use the traditional metaphor or some derivation thereof.

    So, it will graduate from “desktop” to “office space”. AI agents will occupy their own cubicles. And you’ll be the boss in the corner office with a good view.

Listen, as long as control-alt-T opens a CLI window that I can fullscreen you can do whatever you want with that self-Gratification User Interface crap.

The only change to the CLI since I first learned it over 40 years ago is that it's gotten bigger and clearer and most desktops allow me to have multiple CLIs I can switch between.

A graphical user experience is all about how to limit what I can do in an effort to make it easier to learn. Imagine a hammer designed for ease of use by a beginning carpenter: remove the dangerous claw and nasty thumb-crushing head and replace the handle in case you hold it wrong and you end up with a nice oven mitt. The chattering classes on social media can coo over its colours and textures. Meanwhile actual carpenters smirk, hitch up their trousers (or, often, not) and switch on their nail gun.

So go ahead and build your bike shed with a box a nails and a pair of taupe quilted cotton hammers with a pattern of garden vegetables stamped on the back.

  • > Meanwhile actual carpenters smirk, hitch up their trousers (or, often, not)

    1. Carpenters are often women who like wearing skirts at work 2. Many carpenters are Scottish and prefer to dress traditionally 3. Carpentry is incredibly progressive career where many men wear skirts to work 4. Carpenters regardless of gender like to work nude

    No, wait, I get it now 5. Carpenters let their trousers hang, resulting in the cleavage of their buttocks showing when they reach over.

    Damn, I was getting exited over male carpenters wearing skirts to work.

  • I believe most objections to GUIs come from people who've never experienced good mouse control. If you're not using a high-end gaming mouse and a high refresh rate monitor, with sensitivity/acceleration curve selected with careful thought, on a mouse pad that suits your settings, you probably have bad mouse control.

    Watch some videos of top-ranking aim trainer players so see how high the human skill ceiling is for mouse control, and look at the hardware they're using.

    • I suspect that is a huge factor, indeed. I often see people using bad mice, with uncomfortable shape, bad buttons, bad sensitivity plus often acceleration enabled. Then on top of that, people are putting mouse in some weird locations, like a narrow slit shelf, or far away from the keyboard (because they have a bad sensitivity configured in part). Or even no mouse and just use trackpad (even the superb one like in Macbooks). Of course GUI would feel clunky that way.

  • This is why people find nerds irritating. No one is forcing you to use anything you don’t want to. I use the CLI too, and I’m an Emacs fan, just about the opposite of trendy-flashy. But those of us who also like GUIs for the things they’re good at are interested in making them better.

  • Do you hold your phone to the same standard and do everything from Termux there? Or the GUI disdain is reserved strictly to the PCs?

    • Smartphone UIs are a devastating blow to humankind. They make a real computer just redundant enough that people buy smartphones instead of computers and then just don't do anything that can't be easily done on a smartphone. Furthermore, as doing anything productive is so painful on smartphones, people just passively consume stuff instead.

      1 reply →

    • My phone conveniently integrates the functionality of an emergency communication device with the old calculator watch I used to have. That's about the limit of what the hardware form factor can do without it being an absolutely miserable experience. I don't do real computing on a touch screen.

  • If graphical interfaces are so useless to you, what are you doing in a thread about graphical interfaces?

    People use computers for other stuff than coding. And for most of those workflows a command line doesn't serve.

I watched the video form of this and it was pretty informative, but I left it not really feeling anything was missing from the current desktop in terms of window management. It’s simple and old enough to be pretty well designed already.

What I do find is really lacking is UX inside of many foss apps. So many of them feel like windows xp programs with toolbars that look like junk drawers.

  • I mean I'd love if toolbars would stay and people would stop messing with window decorations.

    I want boring consistency.

    • Toolbars themselves aren’t the issue, it’s too much crap dumped in them, especially when it’s a bunch of very rarely used tools.

      And especially when it’s multiple layers of toolbars like a 2006 Internet Explorer.

      Over the last decade we have seen programs like libreoffice and gimp not really do anything while others like Blender have had massive overhauls pushing the frontier of UI.

People have different ideas of what's good UX, because everybody comes from their own tradition of using desktops. Some people don't see anything wrong worth evolving from with mouse, point, click. The kind of thinking from the article, from someone that only worked on big companies, is the thinking from someone looking for the next big product, which I look with suspicion. At some point this stops being about good UX and starts being about a good product that makes good profit.

True revolution in UX will come from making customisation accessible, so everyone can decide what's best for them without losing their minds in endless customisation rabbit holes or having to rely on big and clumsy organizations.

  • The difference between big-company and FLOSS UX design, including profit-motivated behaviors (a bit indirectly, but it's definitely there), is specifically addressed in the article, so I don't think that's a very fair characterization.

    I actually agree about customization, but that's only part of it, and seems to be pretty orthogonal to what the article is talking about. You can only customize to features that are actually implemented by the system, and coming up with those seems like the harder problem.

  • True revolution in UX will come from making customisation accessible

    ...like it was back in the days when Windows actually had a very customisable UI[1], and then the "skinnable" UIs of the early 2000s (most of which were extremely gaudy, but then again, maybe that was what the majority of the population wanted.) Now it has devolved into little more than this: https://news.ycombinator.com/item?id=46247605

    • Hot Dog Stand is really illustrative of the change in attitude. Previously: "It's your computer, of course you're allowed to make it look ugly." Now: "It's our computer, that's not on brand."

      1 reply →

I feel we've been there before, I clearly remember the compiz/beryl years: they were not just about bling being added to traditional window manager and desktop environments, new window management paradigms were being experimented with (using 3d walls to stick windows and icons on, circular action menus, etc). Whatever stands to supersede the ubiquitous WIMP paradigm has to come up with substantial gains.

Please don't, or more specifically, don't force this on me. I'm trying to get work done, and the last thing I need is to learn an entire new desktop paradigm because CADT. As it is, any time I'm forced to interact with GNOME 3 I want to rip my eyeballs out. If I'm setting up a desktop, Cinnamon for fat systems or XFCE for lean ones do wonders for my sanity.

Simply implementing the NeXTStep v3.3 look and feel would immediately solve most problems, I think.

I used an actual NeXT workstation for 8 months as my only desktop in the mid 1990s and it was the most integrated and best GUI I’ve ever used.

  • Did you ever use OS/2? It wins the crown IMHO because of the object-oriented nature of the Workplace shell. Things like the icons were functional objects that had code and data (and state) owned by them. Also, using Rexx as the scripting engine was a bold and great choice.

  • Have you tried Nextspace? The project is aiming to replicate the look and feel of NeXTSTEP.

Window management (tiling, hot space) is something that could still be improved as noted in the article.

One area where I haven't seen much improvement is in controls. There haven't been any new controls for ages. In the 90's we got the tab control, tree control and spinner. Has the evolution of controls stagnated over the years?

The part where I immediately tune out is A.I. I don't want an A.I. controlling my desktop let alone changing anything on my filesystem. KDE would do well to completely ignore A.I. integration.

I was kinda expecting more concrete examples of what could be done rather than just "go experiment" and "take lead", because if I don't have something that actually has a good idea, proper ergonomics and objective improvement, I'll just go back to tiling console windows with auto completed commands.

I watched the full video and, as with the previous talk, absolutely loved it.

I hope Scott keeps spreading the good word and inspiring others to take different perspectives

No, thanks, I require no modernization. I just need stable, but customizable UI, so that I can customize it once and use it my entire life without needing to adopt to new stuff constantly.

  • > stable, but customizable UI,

    Which you can't get without modernization because pre-modern solutions don't offer that. But also, what do you do throughout your "entire life" if you want to customize something to do what's not implemented? That's also modernization.

    Effectively all you're asking for is a simple opt in so you can change at your own pace

    • > Which you can't get without modernization

      What kind of "modernisation" do you think is necessary for that? XFCE like 12 years ago was already pretty customizable and it remains customizable. Themes, colors, button layouts, some behavior and effects can be changed. XFCE panel allows full customization - I can choose its position, start button logo and text, shortcuts and other elements. It's as flexible as it can be.

      1 reply →

  • I also need an easy backup strategy for it. I want a single file blob somewhere I can throw in Syncthing l, and have it get backed up to the cloud.

    • configuration.nix is that file for me. I gave up entirely on desktops and panels, and instead use xmonad and dmenu. I've had to adapt to exactly zero change in my ux in ten years. For me, enrichment comes from studying and experimenting, not from adapting every month or two to things that make somebody else feel good about changing.

What I'm missing from DEs is a "home folder" per virtual desktop. I want to switch to an empty desktop, `cd` into my project folder, and have all commands scoped to that folder.

For example: - New terminal: CWD is set to folder - File search: scoped to this folder - Run commands from launcher: dir contents are suggested as arguments - Command history: scoped to this folder

I wrote dinu[1] a decade ago but integrating with Wayland compositors is a pain (no widely supported "what workspaces are there"), so I gave up a little.

[1]: https://github.com/weltensturm/dinu/tree/dev

One thing I remember fondly from Windows 3.1 times was Dashboard by Starfish software. It was meant to replace Program Manager and was indeed a very good replacement. It offered multiple desktops, taskbar, program organization, but it was very customizable, so if you didn't want, say, taskbar, you could turn it off; same for all other parts. It could be made very compact and with a global shortcut to bring it to front it was truly handy. Very much like a car dashboard; you operated it from muscle memory.

https://winworldpc.com/product/dashboard/30

There have only been two changes I experienced in the past decades that felt meaningful:

(1) Removing the mouse from as many workflows as possible

(2) Switching to a tiling window manager, in my case i3

Everything else has just been various ways of shuffling things around with no benefit to anyone.

  • we are not the target audience.

    there are living and breathing people who say no to the offer of "do you want an adblocker?", because installing things is scary. even if you offer to do it for them. no. they have something that is held together by the gracious whimsy of the iGoogle deity, and they are in a constant state of bewilderment when it comes to "technology".

My desktop is already perfect and has been for the last 25 years.

The only problem remaining is Chromium not using the PRIMARY selection, so I have to do a weird Ctrl-Shift-C and Shift-V to it but on the way from Chromium, it's 2 Ctrl-C and Shift-V, because Ctrl-Shift-C inside Chromium opens the Developer Tools.

> He talked about the desktop building blocks, basically the familiar WIMP model plus the desktop clipboard, as the way that users move data around. Expert users can move data around quickly, he said, but there's a problem: the desktop is stateless. He called this the curse of direct manipulation; there is no working memory to the desktop. ""If you copy a few too many things to the clipboard, oh sorry, it's gone"". > > Jenson theorized that the reason there are so many desktop environments, window managers, and Wayland compositors for Linux—as well as alternative clipboard managers—is because the desktop isn't quite working right for users. He thought it was really about working memory: ""How do I manage my data in such a way that I can remember it across all of these things and actually use it."" His perspective shifted to asking ""what would we do to working memory to improve the desktop UX?""

I feel this so much.

I think that there's a "better" windowing system where all of your stuff sticks around way more than it used to. Clipboard history, but also just "oh you have these windows open while working on this task".

People have really leaned into coding harnesses + chat windows as a way of grouping together work. I think there's a more general idea in this space. Don't make me explicitly keep track of things, just hold onto it all for me!

There's some universe where my desktop is basically a Notion-like thing, and I can just throw things into semi-persistent workspaces (that I close out when I'm done). Desktop Environments that make this work nicely will be quite cool IMO

(A simple and dumb version of this is the BeOS "group various windows together, even though they aren't from the same application" stuff. Very cool stuff IMO

  • > Clipboard history, but also just "oh you have these windows open while working on this task".

    I feel this. When I first got to learn what a workspace was (in Eclipse, of all things), and I really drilled down into the English meaning of it (I'm Dutch), I thought about exactly what you're describing right now.

    • Yep.

      There's also a thing of wanting "http referer"-style things but at the desktop. I want things that tell me _from where_ I clicked into a page in the browser (like "oh you got here from Slack (at this spot)"

      Desktop history, clipboard history... all associated to certain contexts. Would be quite nice IMO

  • Stateless desktop is a feature. Application state is something I have to mirror in my head to prevent applications from doing unwanted and surprising things.

    IMO, even the clipboard metaphor is too much state. We already have the selection highlight, which has the nice benefit of being directly visible. This should be reduced to a single global selection highlight. Then copy and paste can be replaced by "duplicate highlighted selection here", eliminating the possibility of forgetting what's in the paste buffer.

  • KDE has clipboard history, for the record. Persistent across reboots. I can't understand why it's not more prevalent

  • > Don't make me explicitly keep track of things, just hold onto it all for me! > > There's some universe where my desktop is basically a Notion-like thing, and I can just throw things into semi-persistent workspaces (that I close out when I'm done). Desktop Environments that make this work nicely will be quite cool IMO > > (A simple and dumb version of this is the BeOS "group various windows together, even though they aren't from the same application" stuff. Very cool stuff IMO

    What you're describing sounds like it has been possible for a long time.

    I've been doing it on my Linux desktop for decades. I throw things into workspaces which just ... stay open until I'm done with it. The same windows with the same layout and the same history and state, everything right where I left it. They stick around as long as they need to, which can be weeks, months, even years. I even have some desktops which have stuck around since the 1900s, though they do gradually change and evolve over time.

    ... and any windows from any program can be grouped together. Grouped into a desktop, or even grouped into a single window frame with tabs.

    And nearly everything is automatically logged, so I have detailed history going back well into the past.

    This stuff isn't in the big mainstream UIs, but it is at least possible with a bit of work to set it all up.

Rarely commented upon: It was Windows, with its horrific mess of user settings and sub-settings panels dating back decades, which introduced the idea of just typing in what setting you were looking for and pulling up a list of relevant panels. That was...kind of smart? If you're not going to actually go through and optimize everything? And then MacOS copied it, VSCode copied it... it became the default way to find whatever you were looking for. Need to fix the way your trackpad is working? Here: Instead of spending an hour digging through the mouse and input and keyboard and trackpad and accessibility and all the drivers for everything you own, just type in "speed". Okay, better.

The problem is that this doesn't really fix the underlying issue, which is the bozo explosion of footguns in the UI itself. In fact, it just papers over all the problems.

A good UI needs to be opinionated. And also, getting rid of cruft is at least if not more important than building any new feature.

  • This happened earlier, with various power-user programs that had hundreds of settings leading the charge. I think TOAD for Oracle had this feature back in the 00s. Or does `grep .vimrc` count, perhaps?

  • No, a good UI needs to serve the needs and wants of the user - not those of the developer.

    • No, a good developer needs to anticipate the needs of the user. The ones they didn't even imagine. And then fix the system and take out all the garbage.

      2 replies →

I was at Canonical during the Ubuntu Phone thing, and it was wild to watch that play out. It started out with a bunch of good ideas... but somehow, every last one of those good ideas got overturned and reversed.

Like, "let's put the buttons at the bottom so the user can reach it with their thumb while holding the phone" got turned into "let's put every important button at the top left where it's literally the hardest place on the whole screen for an average user to reach during typical use".

Or, more importantly, it started out as something like... "Debian/Ubuntu has a rich repository of high-quality full-featured battle-tested popular programs curated by community experts, designed by and for users to empower themselves, so lets give users a way to run all those beloved programs on mobile devices". And then it became "let's get rid of the package repository and forbid users from running anything from it, and build a brand new system which is incompatible with everything, and instead has a commercial app store where corps can sell proprietary software and Canonical gets a big cut of each sale, and the OS has only a small set of proof-of-concept placeholder programs, and is designed to restrict the user so corporate partners can have more profit and control".

And then when it didn't work out, the company kinda doubled down on some of the worst parts of it and went all-in on Snappy.

Instead of bringing phones up to the level of a desktop, as promised... the company tried to bring desktops down to the level of a phone. And that trend has been increasingly popular in the corporate Linux world lately... "Androidifying" desktop Linux.

sigh

I'm tired, boss.

  • I was an Ubuntu user at the time. From an outsider's perspective Ubuntu Touch thing looked so promising... then everything went sideways

Douglas Englebart once mentioned that with tools we'll be using for the rest of our lives, most learning curves (even the steep ones) are going to be "worth it" as long they are accompanied by a proportionally steep increase in power. Meanwhile, the average UX person's idea of "modernizing" -- more often than not -- boils down to flattening learning curves. If anything, the UX world's use of the word "modernize" as a synonym for "improve" betrays their philosophical bankruptcy.

If Englebart was right, then the open source desktop is already light-years ahead. It is the only place that provides the option to pick, choose, mix, match, & experiment. That, and the steep-curve GUI needed in one line of work may end up being entirely different from the steep-curve GUI needed in another. The move to "unify" desktop & mobile in the browsers & window managers (free or proprietary) is a glaring example of how one one size does not fit all. I cannot tell you how many people outside of our circle still mourn the loss of scrollbars.

Please give me the option to not use the, "Innovations."

  • The was by far the most common type of comment I saw on this topic on Reddit. Do people think they'll be held at gunpoint?

  • I remember Windows trying to look like my smartphone screen a few years back... that was when I switched to Ubuntu!

I have recently installed Fedora Sway Spin and it's so nice. I did change the configs since I have been using i3/sway for a long time. But otherwise, the default setup is just very sensible.

I guess, the only thing it's missing is an AI agent component, but for now I don't know how to integrate one and trust it that it won't leak my personal data, so I prefer not to mess with that stuff.

> "what would happen if we only designed for large monitors?" What would it unlock if there were desktop designs that ignored laptops and only focused on widescreen monitors?

There's something to this thinking. Large workstation monitors are very much their own thing.

A real example l I've found: Niri (scrolling window manager) is really nice on a laptop but awful on my 6K display. The windows are way too tall, and the induced motion of large windows on a big screen is too much.

I love the future shaped by two things: Omarchy and Pop!_OS. Both give two different worlds, one serves classic Win/MacOS style users while another is new-age AI-native system.

What I found interesting is desktop ui hasn’t changed much from either a windows layout or Mac layout. Isn’t there any other ui which is as useful as those two? Is there no ongoing research on os ui?

  • no mention of Arcan yet, so I'll throw that in the ring..

    https://arcan-fe.com/about/

    personally I think we need to shift from the 'file location' paradigm to tagging (thinking xattr).. that will solve many problems with UI (also raise some for sure).

    • Something I learnt from doing research in this space is that spatial memory is quite powerful, and a hierarchical filesystem taps into that.

      Whereas tagging doesn't align as naturally with the human brain in the same way.

one thing I'll keep on beating the drum on is that microsoft missed an opening with windows 8. WinRT UI was great for mobile, but as noted desktop is different and they tried to force it onto it.

What we need (and to some extent we get in web, i.e. gmail is different based on resolution) is different UIs based on the interface one is using. a single app that can switch between UIs.

I strongly believe the lack of this is why convertibles have remained more of a gimmick than anything else, as in practice you either keep using the app the same way you always did as you switch usages or you use different apps in the the different usage scenarios because they are tailored to that specific usage scenario. Neither are things that really sell the convertible as something with strong usage.

The closest we've gotten is things like DeX on samsung and perhaps what google is rolling out with android.

When I first met Linux desktop in the nineties, I was blown away - and I was completely convinced that Linux would overtake Windows as the preferred desktop within a few years. Little did I know that what we would end up with was a thousand mediocre variants of it, instead of a few awesome ones.

My own Linux desktop experience peaked with Compiz, and I have been on macOS ever since.

  • I don’t know man, Linux desktop in the 90s was extremely rough. It wasn’t until the 2000s with KDE 2 (though really 3 IMO) and GNOME 2 that Linux desktop started showing promise. It was then subsequently dragged down with many alternatives and infighting. Personally I think only KDE kept slowly progressing better. I didn’t even like KDE until GNOME 3 pushed me to it. Every now and then I try GNOME 3 to see where it’s at, and just get baffled by the choices they make. Both Windows and Mac also had baffling choices along the way (in terms of desktop UX). Windows more so obviously, but they both would course correct every now and then. GNOME seems laser focused on some desktop UX vision I can’t even begin to understand.

Microsoft and Apple as leader dropped the ball. Microsoft's several dozen Windows-related teams dont care about UX (maybe UI). Apple is busy making money and mobile.

It really is currently the time and chance for Linux to finally innovate again.

* Alternatives to tree filesystem UNIX introduced (see WinFS, or how Android/iphone manage it)

* Alterantives to WIMP as discussed, specially for large monitors (37" - like 57")

* Every App should provide a REST API to access its functionality remotely (for AI and data exchange. Think OLE/COM in Windows, but good)

* PLAN9 anyone?

Something I am not seeing much discussion about in the article or in the rest of the comments: UX is more than UI. You can have very stable UI and still have significant, targeted UX improvements needed.

Something I find sorely lacking in most modern desktop systems, Linux included, is the performance I expect given the power of the hardware available. Barring that performance increase, better perceived performance through subtle UI changes that elide over waiting moments is nearly as good.

Linux leaves a lot to be desired here. It's easy to bash Windows or Mac, but the performance issues on these systems are often difficult to perceive during normal usage while in Linux it is front and center and harder to understand because Linux is a box of parts.

Good talk.

Even if the desktop turns out to be done though, UX polish like that drag thing is still a good idea. Like why does no major desktop let you just put icons on your desktop the way classic Windows does?

  • > Like why does no major desktop let you just put icons on your desktop the way classic Windows does?

    Because that is a crappy UX where you need to minimize or move windows away to access them.

  • Could be because this promotes a bad UX? In GNOME, you have a dock for your most used applications, which can be launched or navigated to with Super+1/2/3.., there is the apps menu accessible with Super or by clicking the top bar, where you can organize apps as well as search for them. Desktop icons are distracting, and requires you to remove windows obstructing them to access the icons. If every DE just mimicked windows, we wouldn't ever be able to move forward. Though KDE is there for you if you prefer the windows way.

    • Can you show me the studies that show it's bad UX for the reasons you said?

      KDE doesn't let you do it either. You can only put desktop widgets on your KDE desktop.

      2 replies →

I want something like Os/2 Warp. Something with a design principle other than “make it look slick and hide stuff”. Look up CUA too.

Ha I reported that drag and drop bug 20 years ago. Windows does it in an even smarter way - it raises the window on mouse-down but only if the target isn't a drag source.

As I recall X11 doesn't really support that at all so there was no way to implement that on Linux. Doing it on mouse up seems sensible though. I couldn't find my bug report but I bet it was met with "I like it broken".

  • I've avoided that bug throughout more than 20 years of Linux usage just by disabling raise-on-click.

    (Except of course the Gnome folks did they utmost to make that option unavailable back in the Gnome 2 days: Metacity's raise-on-click gconf setting was hobbled so that it could only be disabled in focus-follows-mouse mode. That bit of idiocy was patched out years ago, but the obnoxious text that accompanied it survived in Marco until earlier this year!)

  • > I couldn't find my bug report but I bet it was met with "I like it broken".

    Which is an appropriate response when you yourself don't even want to recognize that others might prefer raising on mouse down, e.g. for lower latency in a much more common operation.

There are so many ways in which the desktop experience could be improved, exactly because, as Jensen pointed out, it has basically stagnated since the 90s.

You could basically look at all the ways that UX has advanced on the Web and almost generate a very long TODO list of things to improve on the desktop. I know there are a lot of people here, especially of the Linux using variety, who revile Web UX, but the things most people complain about (privacy concerns, bloat, document vs app platform) happened specifically because desktop UX stopped innovating 30 years ago.

Some personal peeves, all from having to reimplement these things in projects over the years, which is now many projects because I'm now old, so having to do the same things over and over again is getting annoying:

Multiple Document Interfaces used to have built-in support in GUI toolkits. Pro-oriented editing environments like Visual Studio not-Code and Photoshop gave you the ability to have multiple documents open and operate on then on a single application context. While this is a bespoke implementation in those programs now, that's largely because the UI toolkits didn't keep up with newer features like docking, tabbing, etc. Browsers themselves also had to implement bespoke UI for tabbed documents, again for the same reasons. It's shocking how bad this is in VSCode, where certain kinds of sub-Windows can only be put in certain places, but again, that's because they had to do it from scratch. Now, there is no MDI support in the browser at all, you're left implementing it from scratch, and modern GUI toolkits seem to all just try to ape HTML/CSS (not that I think that's a completely terrible approach, but only because The Desktop Toolkit is Stagnant).

With modern large screens, I find myself at a loss for how to use all the screen real estate effectively. Not that I lack for need, but because I can't seem to get everything I want to see into a comfortable position without sacrificing some other thing. Yet, at the same time, I can't seem to fit much in my own application window. This one is more on me for not having too great of design skills, but I think there are some fundamentally difficult issues to solve here since nobody is going to have a 40” laptop. Fundamentally, the issue is one of being too rigidly reliant on the Application Developer to implement such things as MDI and tool layout. We kind of figured that out with responsive designs break-pointing when going to truly small screens on phones, but I think this could be done more automatically if the GUI toolkit was better.

Smartphones, laptops, and desktops aren't the only 3 workspace sizes. There's also the completely borderless, 3D space of the VR home environment. After experiencing Windows Holographic for the first time and experimenting with using a Hololens as a primary compute device (and then drinking away the massive headache), I found a lot of interesting glimmers of how spatial computing could do a lot for people. I really enjoyed having 2D documents mounted on the wall behind my desk, not needing a screen to take up space on my desk. Having a music player app pinned on a specific spot like a HiFi stereo stack just felt so much more comfortable than wearing headphones, and it was so much easier to turn my body to interact with the stereo rather than sift through my window stack to find the music app. Keeping certain app widgets in certain locations around my house (notes on my refrigerator door, Email away from coding) felt very natural and like it was helping me re-establish balance in my work. But it was all for naught as MS killed Windows Holographic and all the other devices are just pushing virtual 2D screens on which unmodified WIMP interface desktop or mobile apps can run.

Handling the myriad of document types bespoke for every application is extremely bothersome. Having only the file extension for any hint at the content type is extremely unreliable and incomplete (there are thousands of known content types not just image/png, image/jpeg, text/plain, text/markdown, and application/json). Plus, the extension only tells you the container format, the data itself could be in wildly different schemas/encodings, especially when dealing with .json or any audio/video files. Doing deep content inspection is slow and also unreliable because so many JSON-based formats don't reliably implement JSON Schema. This could be solved if we got rid of file extensions and had the full content type string embedded with the file at the File System level. A file's name should be a description of the contained content, not overloaded to store data encoding information.

After writing all of this, it started to dawn on me that these are all the same problem of wanting to composite application together from smaller bits in a unified workspace that I the User control, not dependant on me the Application Developer to provide the support for it. Because, at the application layer, I can't. I can't unify whatever features I'm building with features other app devs have built. We need this to be at the DE level or there isn't a standard to which app devs can work.

Even my complaint about content types fits into this because most of the time I just need to display and play back a file in whatever the one standard way there is to display such a thing. I'd much rather the UI toolkit provided better media players with an OS that went beyond the application window for giving people the ability to composite functionality together. With Adobe Acrobat installed, I as a User should now be able to use PDFs anywhere else I want to view Text or Markdown or Word documents and I as an Application Developer should not have to think about what document formats my users might throw into my application.

The VR home environment makes this issue a lot easier to see, as the Window does not make sense there, but I think this generalizes to 2D, screen-bordered scenarios. Most of the need for better application composition is around not having to rely on every Application Developer to implement everything themselves. Because, when you leave it to App Devs, you get abominations like Snapchat and Instagram.

Ironically, the LWN website's look and feel (and the reasoning behind it) perfectly illustrates why this project is doomed.

I think Linux desktop should stay stable and not experiment much. If special users want special desktops, they can do it themselves. Look at where the constant updates and changes have brought Microsoft and Apple, was there an improvement? If you want something new, then make your distro.

I've been using approximately the same desktop setup for ages, and yet, it often still feels like I'm living in the future because mainstream desktops still haven't really adopted some of the best features, and in some ways are moving backward. This is kind of a disorganized laundry list, but ...

For one, the ability to change how the desktop itself works while it's running, without restarting it... modifying the code on the fly. And if I manage to crash the window manager or some other desktop component, easily just restart it without having to log out or restart all the other programs.

And being able to pretty easily run and manage hundreds of windows. Log in, open one desktop for each project, and just leave it running until the project is done. Maybe reboot for upgrades once every year or two, but otherwise no disruptions.

NO DISRUPTIONS. I don't even have the underlying plumbing installed for notifications and stuff like that. They can try to interrupt me, but they'll find those API calls aren't plugged in to anything.

Freely mixing and matching tiled and floating windows, each of which can be its own tab group with multiple arbitrary windows sharing the same frame. Super handy having free-form placement and grouping of absolutely anything.

No minimized windows. No task bar. No icon tray. No desktop full of icons underneath the windows. The entire screen is one big canvas, to be used however you like. If you need more space, just hit a key to open another desktop.

Manage nearly everything with a keyboard. Mouse usable but not required.

Sloppy focus, of course. (i.e. focus follows mouse, but stays focused if mouse "falls out" of a window into empty space) Not click-to-focus. And definitely no raise-on-click or raise-on-focus.

Mouse keys built into the keyboard, for clicking, scrolling, and moving. Mouse warp too, to teleport the cursor, like having two mouse cursors and a key to swap between them.

A full set of launcher hotkeys which are easily configured and managed by making short shell scripts. Like, F1 to F12 run scripts from ~/bin named like "f1" to "f12", and "shift-f1" and "ctrl-f1" and "shift-alt-f1" and "hyper-shift-ctrl-f1", etc... if a script exists, the key is mapped. Ideally just symlink the named key to a program or script with a more descriptive name, like "shift-f3 -> open-todays-journal-in-vim.sh" or something like that. Easy to see exactly what each key does, with a "ls -l" or similar. (can send a normal f1-f12 event by holding Fn and hitting a number key or the two keys next to the numbers, but I barely ever have a reason to)

Network transparency for everything, of course. It's wild that newer desktops have chosen to remove such a useful feature.

Work at my desk with a notebook to either side, all using a single keyboard+mouse... just slide the cursor off one screen and onto the next. Pick up a notebook and move to the living room. Use its keyboard+mouse to control the notebook plus the television, in much the same way... slide the cursor off one screen and onto the next. Pack up and go to a coffee shop. Control the remote home computers from the local notebook, using their running desktop session. Or run programs natively on several remote computers, with the windows all opened together on one desktop on the notebook.

Automate inputs easily, whenever desired. Record and play macros which work in any program.

Configurations revision-controlled and synced across all my devices, privately, without any data leaking to a corporate cloud.

Organize data into a rich set of nested topic directories or project directories, instead of organizing things by file type into places like "~/Pictures", "~/Documents", etc.

But also, a directory for each day, to hold all the other misc stuff which doesn't fit elsewhere. And a key to easily access it.

Shell scripts can easily know what program I'm using in the GUI, and what directory the focused program is working in, so scripts can take context-sensitive actions.

Automatic private logging of what I do, with easy time tracking and arbitrary queries, using simple plain text log files which are small, easy to grep, and easy to build custom tooling around.

Human-readable plain text everywhere. Plain text files are versatile, powerful, portable, compact, timeless, accessible, and future-proofed.

No churn. No need to retool every few years. Long-lived tools which are mature and robust. Maybe not the flashiest or most fashionable tools, but "bells and whistles" and "useful life" are typically at odds with each other.

A rich vocabulary of small, simple tools which each do one thing well... makes for a powerful, expressive world of deep functionality thanks to the power of language. It empowers the user to do anything they can express. But a small set of huge tools, while initially a bit easier, tends to quickly become limiting and stifling.

I think a lot of the "right answers" for interface design have been figured out for a long time. That is not to say new interfaces are bad... but anything which throws out the old battle-tested solutions in favor of something radically different is going to take a long time to reach anywhere near the same level of usefulness.

Copy Microsoft backward-compatibility focus, Apples aesthetic choices, and media/game-engine API definitions.

Open desktops are like an architect that keeps moving the bathroom doors in a building under perpetual construction. The ecosystem naturally destroys itself every major release cycle, work put into quality of life improvements is lost, and code smell is so terrible people just abandon the projects after it becomes burdensome.

The mistake people make is trying to reason with people about which groups breaking changes take priority. This is why Cinnamon continues to run desktops on systems with broken GPU drivers, and installed as a fail-back GUI plan when Wayland glitches up.

People need to stop telling new users to follow a 15 step CLI tutorial to bring up a broken distribution Desktop. =3

  > He thought that it would be possible to do the things he was demonstrating with Wayland as it is today.

Yeah, with that AND The cooperation and rewrite of every app to actually support usecases like "if dragged to side of screen, get smaller and smaller eventually becoming a widget"

   > People get angry when they have worked hard to get their desktop environment just as they like it and something changes to disrupt that. "And I get that. As I said before, I don't want to change everything." But the world is changing, "and we need to grow our way gently into some new things."

Here is the core of the problem with this kind of "UX designer" persons. You see the need of the user doesn't matter, the world change so a user that is perfectly happy has to adapt to a change he didn't ask for because otherwise the "UX designer" has no life purpose.

Sadly I think that I saw that too many time the useless and hated change just because things had to change. Like android theme instead if fixing bugs...

> Scott Jenson has been working on user interfaces (UIs) and user experience (UX) for many years at Apple, Google, and other companies.

Sorry but that's the last kind of person I want to have any say about my desktop. If I wanted dumbed down mass market design I'd use a mass market OS. Hopefully KDE resists what this guy suggests.

And of course he proves my concerns right at the end:

> The final idea he discussed was a way of gathering ""privacy-preserving data""

No, fuck off. You have not right to gather any data from my systems.

> when I joined, we weren't evil; we were really trying to do the right thing

Says everyone who worked for big tech ever.

.

Linux software isn't lacking in UX design, it has made different tradeoffs and that's OK and often even a strength:

> The developers wanted to put the ellipsis at the end of the file name, but he thought that would lose too much information, and suggested that the ellipses should be in the middle of the file names.

Both solutions hide the same amount of text and which hides more important text is coincidental. On the other hand hiding the end of the filename is more predictable for the user who can choose to put important information first for longer filenames.

> On most Linux systems, though, if a user is trying to click and drag a file from a window in the background it will cause the window to raise as soon as the user does the "mouse down" action. That complicates trying to click and drag a file from one window to another. That is a fundamental action that means that users can't move data into applications quite as easily on Linux as they can on the Mac.

Raising windows on mouse down lowers latency for that action, which is much more common than the edge case of dragging from a partially covered window to one that would be covered if the original window was raised.

> The point he was really trying to make, though, is that the desktop UX had not really changed in 20 years. There were plenty of new ideas and improvements in the 1980s and 1990s, ""and then it just stabilized, and not much has really changed"".

That's good and expected. When a technology matures then improvements become more and more incremental and less and less things you'd recogize as big change. I don't need or want some mighty designer disrupting my workflow with grand new ideas how things should work.

> Much of the UX for Linux systems was originally copied from Windows and the Mac, ""KDE even says it's for Windows users, that it wants to be similar to Windows for users"".

Much but far from all. He's really underplaying the window management improvements like soft-tiling that e.g. KDE has brought to the table and which were subsequently (badly) copied by Windows and not the other way around.

> Jenson theorized that the reason there are so many desktop environments, window managers, and Wayland compositors for Linux—as well as alternative clipboard managers—is because the desktop isn't quite working right for users.

No, it's because "right" is not a constant across all users.

> He noted that the center of a widescreen monitor is good for working with an application, but it becomes more difficult to work on the sides of the monitor. ""It's good for peripheral vision, but not good for working"".

I don't agree with that premise at all - in fact, having at least two widescreen monitors is the bare minimum for developers around me.

Also all the AI detours are just distracting and worst case betray the real motivation. No, you don't actually HAVE to address AI in every talk dude.

And no, the semantic desktop, just like the semantic web, did not fail for primarily technical reasons but because its a solution in search of a problem.

The issue with KDE is not the "UX", the issue is the crashiness and jank, which is an issue of C++ and the OOP-ness of Qt, respectively and no amount of philosophizing will fix that. Users can excuse high memory usage, users can excuse low FPS, users cannot excuse jank and crashes.

It is very hard to pin down the problems with Qt because on the one hand you can produce well-working UIs with QML if you are committed to it, see Telegram which has a near-perfect UX and I've never had it crash on me. But I think this is more of a cultural problem: KDE is spread thin, has no real leadership and tries to create a "inoffensive medium" of a desktop that pleases "everyone".

What would be better is a) finally ditching Qt Widgets completely and using QML for everything across all applications, b) moving towards a more functional-reactive approach and getting rid of the OOP mindset inherited from Qt Widgets (which fuses visual and domain data) - hard to achieve with Qt and c) requiring the developers to use some version of Windows and macOS in between, because it happens often with Linux users that they get "blind" to their own issues habitually, they need to experience what 90% of the world uses, so then they can take the good ideas to KDE. But if you use Linux 100% of the time, obviously it'll be "the best" because you're so used to its jank.

Also, develop a target audience. He hates on Omarchy in the video, but at least Omarchy has a target audience: the agentic-first, keyboard-first hypebro libertarian SaaS web developer. Okay, maybe a niche audience but at least that's something. KDEs target audience is... "everyone". Which then results in a "mid" desktop which just has to be worshipped by the fact that "it's open-source". And now, apparently the target has switched to "corporate users / governments". I'll say this is a bad idea because that's like an abusive relationship, you have constant bureaucracy, have to agree with their politics and views, have tons of red tape and low IT literacy. But at least it's "a" target audience, better than pleasing "everyone".

I will believe KDE cares about UX once they finally fix the clock to have the same font size for date and time, like Windows does it - first rule you learn in web design is to not use too many font sizes and KDE immediately breaks a very basic UX rule and has inconsistent font sizes everywhere. Then afterwards, they need to learn about stem widths and why using "1px borders" and thin fonts is not exactly the best thing for readability or low-resolution monitors. There's just so much wrong with KDE and Qt, architecturally and visually, that the "bad UX" problem is just a downstream result and I don't think a glorified Stage View will fix this.

  • > I will believe KDE cares about UX once they finally fix the clock to have the same font size for date and time, like Windows does it

    At least the date time on KDE taskbar is readable and you can change it to show date and time side by side and that uses same font size for both. Windows taskbar date time are so tiny (with so much empty space around it) and doesn't even change if you change font scaling.

    • On the other hand, Windows doesn't make excuses for literal decades why you can't set the time format to THE international standard which is the only format that makes sense.

Don't touch my stuff objections run strong. Three things: it's a chicken & egg problem, agents help fix this, and third the 'some assembly required' issue.

Some backdrop, a thesis: tech used to be exciting because there was apparent motion, things changing. The dread hadn't set in, and I think that dread set in because tech shifted from close intimiate and touchable technologies we could touch, to far off systems running in some cloud data center/keep. Change was fun when we got to be on for the ride and feel some ownership but change happening to us was annoying.

So lately, it's hard for anyone to know what their preferences really are. We aren't trying a ton of human empowering things. The organizational systems Scott talks about here? We see some absolutely ferverously dedicated people enjoying Niri, enjoying new infinite space tiling systems. That's a rare example though! A couple people stumble their way into it. There's not that WinCustomize era where it's apparent people are active and busy and rebuilding, remixing their world on and on. People aren't in a receiving trying mode, because in part there's not a ton to try, and because there's no scene, people aren't kicking out new things either. The social poverty of the area & lack of things to look forward to mean people aren't looking, and people trying stuff are lucky to get traction, even when it's good.

This admits some of the "don't touch my stuff." Because we haven't been seeing as much upside to change. But also: it's pathetic! These peole have had their spirits crushed and have no peers out there who are having fun, so they can just wallow in their grumpiness. And we need to kind of ignore these users, because they don't know: they think they want not even faster horses but merely horses that stop breaking down or which start only turning left unless you pay premium. Let these naysayers and grumps alone. But more than anything: show the people you can reach good stuff! Activate interests! Try to restore a sense of motion & exciting change! Create more powerful, richer, more beautiful systems!

Agents help though. Change sucks when it gets in the way. The downsides though are lower than ever, if you have systems flexible enough to let agents work them. If something changes in a way you don't like, an agent may well be able to make quick work of it! Tell it, and it'll go fix it.

Last: the granularity of build it yourself systems is not great. Downloading Sway, a desktop shell atop it,then a launcher, then a host of other small utilities to cobble together is a lot of decision making to do, and most of these options for these roles have lots of competitors with little interoperability. The tools that makeup the desktop stand alone, small pieces, and it's up to you to pick each one and loosely couple it, with it's bespoke means of doing so. These patterns of assembly suck. There's significant money heading towards a new omakase system, and I don't think it's necessarily the authoritarianism/fascism per se, the desperation for authority to make sense of the world, but given how scattered the pieces are, I have some sympathy for why they want someone to say they've built the beautiful well hewn omakase thing. And that your agent can customize it.

One of my favorite examples for a system that does compose nicely is astronvim on neovim. It takes some well known very great core plugins for nvim, and builds a little zellij like mini-framework to nvim's tmux atop that: a visual leader key, with menu system builtin. It creates a framework for more to plug into. And then the community has lots and lots of plugins or packs of plugins that it takes from upstream plugins everywhere, and it packages them for astronvim. Hundreds if not thousands of plugins. Most require not that much extra to hook in nicely in to the framework, to make them more apparent, visual, seen in the broader system. The system composes capabilities into itself nicely, integrates. Where-as when you get a regular nvim plugin, it usually can assume either nothing or way too much about what kind of nvim it runs on. It has to define it's own world. I think astronvim is an incredible model for making common layers for assembly, and it's packs show something inbetween a single plugin and an app: it's a unit of software that aggregates a couple other modules, yet is shy of being a full app. That kind of composability of experiences is unique and special: not having to assemble every piece ourselves, and yet not having an entire massive system dropped on us. Figuring out how to deliver better units of capabilities, composable subsystems, is really missing on the desktop and is much needed.

  • Not sure about your thesis. Still excited here, no dread. Linux works pretty well compared to the old days. Open source is stronger than ever.

    > So lately, it's hard for anyone to know what their preferences really are.

    Sway + keybinds for each workspace. Everything in it's place, every time, by pressing 3 keys. Foot terminal opens in sub-ms. MicroVM framework sandboxes workloads. The UX isn't that different from my older setups TBH, only the underlying tech. I'm open to trying new things, but I don't know how you can beat preconfigured workspace keybinds. Would love to hear any ideas though.

    > and have no peers out there who are having fun

    Having lots of fun lately! This LLM stuff is bananas! Not only can you ask your agent to do stuff in plain language, but it's non-deterministic so it's like RNG gambling except you can build a Rube Goldberg machine to increase your odds! Regardless, I'd still be having fun without LLMs. We have amazing languages and incredible hardware these days.

    > the granularity of build it yourself systems is not great

    NixOS takes some of the pain away. You can experiment easily and safely, and you have a single declarative source that captures everything. Admittedly this isn't mainstream, but you're talking about nvim frameworks so... yeah.

    Anyway, chin up friend! There are some of us more stoked than ever on the current state of computing. There's so much exciting change happening it's amazing. I'm grumpy about lots of things, but computers are better than ever IMHO.

Once more- allow people to build "AI"-pipes, by recombining programs and agents via GUI.

[Agent: Fetch cat pictures from the internet] >GetFromFolder> [Agent: Filter for Calicos] >> [Agent: in Gimp paint Cat-Ears on Cats ] >> [Agent: Generated Videos] >> [Agent: Reupload to Youtube]

If you can make a "Explorer" with zero code and which allows to store and share building blocks and pipes, congrats.

It's interesting, but personally I think the idea of a singular desktop model is what is going to die, and we'll instead get workspaces that are a lot more malleable by user intent and preferences and changing and morphing as indiidual users preferences evolve.

I'm stating that on the basis of having Codex mutate my WM while using it (just restarting it without restarting my session) to do things like adding two layer desktops, and snapshotting desktop state, resuming with the applications I want.

There's nothing special about any of that, but what is a bit special is describing a change in desktop behaviour I want, have it churn for a bit and for my live desktop to seamlessly change.

Being able to do that makes it meaningless to lock users into a pre-defined desktop model any more.